From 57bc9b380809ffbc8393f646de261c4c3fdbb5c9 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Fri, 14 Aug 2020 11:19:09 -0400 Subject: [PATCH 01/76] Add missing bash tag settings --- frontend/settings/Skyrim/Bash.Actors.ACBS.json | 0 frontend/settings/Skyrim/Bash.Actors.AIData.json | 0 frontend/settings/Skyrim/Bash.Actors.AIPackages.json | 0 frontend/settings/Skyrim/Bash.Actors.AIPackagesMerge.json | 0 frontend/settings/Skyrim/Bash.Actors.CombatStyle.json | 0 frontend/settings/Skyrim/Bash.Actors.DeathItem.json | 0 frontend/settings/Skyrim/Bash.Actors.Spells.json | 0 frontend/settings/Skyrim/Bash.Actors.SpellsMerge.json | 0 frontend/settings/Skyrim/Bash.Actors.Stats.json | 0 frontend/settings/Skyrim/Bash.All.json | 0 frontend/settings/Skyrim/Bash.Body-F.json | 0 frontend/settings/Skyrim/Bash.Body-M.json | 0 frontend/settings/Skyrim/Bash.Body-Size-F.json | 0 frontend/settings/Skyrim/Bash.Body-Size-M.json | 0 frontend/settings/Skyrim/Bash.C.Acoustic.json | 0 frontend/settings/Skyrim/Bash.C.Climate.json | 2 +- frontend/settings/Skyrim/Bash.C.Encounter.json | 0 frontend/settings/Skyrim/Bash.C.ForceHideLand.json | 1 + frontend/settings/Skyrim/Bash.C.ImageSpace.json | 2 +- frontend/settings/Skyrim/Bash.C.Light.json | 2 +- frontend/settings/Skyrim/Bash.C.Location.json | 0 frontend/settings/Skyrim/Bash.C.LockList.json | 1 + frontend/settings/Skyrim/Bash.C.Music.json | 0 frontend/settings/Skyrim/Bash.C.Name.json | 0 frontend/settings/Skyrim/Bash.C.Owner.json | 2 +- frontend/settings/Skyrim/Bash.C.RecordFlags.json | 0 frontend/settings/Skyrim/Bash.C.Regions.json | 0 frontend/settings/Skyrim/Bash.C.Water.json | 2 +- frontend/settings/Skyrim/Bash.Delev.json | 0 frontend/settings/Skyrim/Bash.Destructable.json | 1 + frontend/settings/Skyrim/Bash.Eyes.json | 0 frontend/settings/Skyrim/Bash.Factions.json | 0 frontend/settings/Skyrim/Bash.Graphics.json | 2 +- frontend/settings/Skyrim/Bash.Hairs.json | 0 frontend/settings/Skyrim/Bash.Invent.json | 0 frontend/settings/Skyrim/Bash.Keywords.json | 1 + frontend/settings/Skyrim/Bash.Lev.json | 0 frontend/settings/Skyrim/Bash.NPC.Class.json | 0 frontend/settings/Skyrim/Bash.NPC.Race.json | 0 frontend/settings/Skyrim/Bash.Names.json | 2 +- frontend/settings/Skyrim/Bash.NpcFaces.json | 0 frontend/settings/Skyrim/Bash.NpcFacesForceFullImport.json | 0 frontend/settings/Skyrim/Bash.ObjectBounds.json | 1 + frontend/settings/Skyrim/Bash.R.AddSpells.json | 0 frontend/settings/Skyrim/Bash.R.ChangeSpells.json | 0 frontend/settings/Skyrim/Bash.R.Description.json | 0 frontend/settings/Skyrim/Bash.R.Head.json | 0 frontend/settings/Skyrim/Bash.R.Skills.json | 0 frontend/settings/Skyrim/Bash.Relations.json | 0 frontend/settings/Skyrim/Bash.Relev.json | 0 frontend/settings/Skyrim/Bash.Scripts.json | 0 frontend/settings/Skyrim/Bash.Sound.json | 0 frontend/settings/Skyrim/Bash.SpellStats.json | 2 +- frontend/settings/Skyrim/Bash.Stats.json | 2 +- frontend/settings/Skyrim/Bash.Text.json | 1 + frontend/settings/Skyrim/Bash.Voice-F.json | 0 frontend/settings/Skyrim/Bash.Voice-M.json | 0 57 files changed, 15 insertions(+), 9 deletions(-) mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Actors.ACBS.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Actors.AIData.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Actors.AIPackages.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Actors.AIPackagesMerge.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Actors.CombatStyle.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Actors.DeathItem.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Actors.Spells.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Actors.SpellsMerge.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Actors.Stats.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.All.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Body-F.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Body-M.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Body-Size-F.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Body-Size-M.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.C.Acoustic.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.C.Climate.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.C.Encounter.json create mode 100755 frontend/settings/Skyrim/Bash.C.ForceHideLand.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.C.ImageSpace.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.C.Light.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.C.Location.json create mode 100755 frontend/settings/Skyrim/Bash.C.LockList.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.C.Music.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.C.Name.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.C.Owner.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.C.RecordFlags.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.C.Regions.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.C.Water.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Delev.json create mode 100755 frontend/settings/Skyrim/Bash.Destructable.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Eyes.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Factions.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Graphics.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Hairs.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Invent.json create mode 100755 frontend/settings/Skyrim/Bash.Keywords.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Lev.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.NPC.Class.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.NPC.Race.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Names.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.NpcFaces.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.NpcFacesForceFullImport.json create mode 100755 frontend/settings/Skyrim/Bash.ObjectBounds.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.R.AddSpells.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.R.ChangeSpells.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.R.Description.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.R.Head.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.R.Skills.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Relations.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Relev.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Scripts.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Sound.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.SpellStats.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Stats.json create mode 100755 frontend/settings/Skyrim/Bash.Text.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Voice-F.json mode change 100644 => 100755 frontend/settings/Skyrim/Bash.Voice-M.json diff --git a/frontend/settings/Skyrim/Bash.Actors.ACBS.json b/frontend/settings/Skyrim/Bash.Actors.ACBS.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Actors.AIData.json b/frontend/settings/Skyrim/Bash.Actors.AIData.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Actors.AIPackages.json b/frontend/settings/Skyrim/Bash.Actors.AIPackages.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Actors.AIPackagesMerge.json b/frontend/settings/Skyrim/Bash.Actors.AIPackagesMerge.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Actors.CombatStyle.json b/frontend/settings/Skyrim/Bash.Actors.CombatStyle.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Actors.DeathItem.json b/frontend/settings/Skyrim/Bash.Actors.DeathItem.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Actors.Spells.json b/frontend/settings/Skyrim/Bash.Actors.Spells.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Actors.SpellsMerge.json b/frontend/settings/Skyrim/Bash.Actors.SpellsMerge.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Actors.Stats.json b/frontend/settings/Skyrim/Bash.Actors.Stats.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.All.json b/frontend/settings/Skyrim/Bash.All.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Body-F.json b/frontend/settings/Skyrim/Bash.Body-F.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Body-M.json b/frontend/settings/Skyrim/Bash.Body-M.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Body-Size-F.json b/frontend/settings/Skyrim/Bash.Body-Size-F.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Body-Size-M.json b/frontend/settings/Skyrim/Bash.Body-Size-M.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.C.Acoustic.json b/frontend/settings/Skyrim/Bash.C.Acoustic.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.C.Climate.json b/frontend/settings/Skyrim/Bash.C.Climate.json old mode 100644 new mode 100755 index 30ce65e..93c6d3b --- a/frontend/settings/Skyrim/Bash.C.Climate.json +++ b/frontend/settings/Skyrim/Bash.C.Climate.json @@ -1 +1 @@ -{"records":"CELL","description":"C.Climate tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell climates.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Climate","hash":"$595B86E0","color":255} \ No newline at end of file +{"records":"CELL","description":"C.Climate tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell climates.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Climate","hash":"865E01E8","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.C.Encounter.json b/frontend/settings/Skyrim/Bash.C.Encounter.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.C.ForceHideLand.json b/frontend/settings/Skyrim/Bash.C.ForceHideLand.json new file mode 100755 index 0000000..ea1c23a --- /dev/null +++ b/frontend/settings/Skyrim/Bash.C.ForceHideLand.json @@ -0,0 +1 @@ +{"records":"CELL","description":"","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"p":1,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.ForceHideLand","hash":"94C8152F","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.C.ImageSpace.json b/frontend/settings/Skyrim/Bash.C.ImageSpace.json old mode 100644 new mode 100755 index a229328..e3b619a --- a/frontend/settings/Skyrim/Bash.C.ImageSpace.json +++ b/frontend/settings/Skyrim/Bash.C.ImageSpace.json @@ -1 +1 @@ -{"records":"CELL","description":"","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","d":1,"c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.ImageSpace","hash":"$B06BA239","color":255} \ No newline at end of file +{"records":"CELL","description":"","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","d":1,"c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.ImageSpace","hash":"B06BA239","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.C.Light.json b/frontend/settings/Skyrim/Bash.C.Light.json old mode 100644 new mode 100755 index 1233825..b4e2a93 --- a/frontend/settings/Skyrim/Bash.C.Light.json +++ b/frontend/settings/Skyrim/Bash.C.Light.json @@ -1 +1 @@ -{"records":"CELL","description":"C.Light tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell lighting or fog.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"s":1,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"s":1,"p":1,"n":"Ambient Colors","c":[{"t":8,"p":1,"n":"Colors","c":[{"t":6,"p":1,"n":"Color #0 (X+)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #1 (X-)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #2 (Y+)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #3 (Y-)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #4 (Z+)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #5 (Z-)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Fresnel Power"}]}]},{"t":6,"s":1,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Light","hash":"$4E94E72C","color":255} \ No newline at end of file +{"records":"CELL","description":"C.Light tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell lighting or fog.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"s":1,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"s":1,"p":1,"n":"Ambient Colors","c":[{"t":8,"p":1,"n":"Colors","c":[{"t":6,"p":1,"n":"Color #0 (X+)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #1 (X-)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #2 (Y+)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #3 (Y-)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #4 (Z+)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #5 (Z-)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Fresnel Power"}]}]},{"t":6,"s":1,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Light","hash":"F7AC4C60","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.C.Location.json b/frontend/settings/Skyrim/Bash.C.Location.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.C.LockList.json b/frontend/settings/Skyrim/Bash.C.LockList.json new file mode 100755 index 0000000..6b2e724 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.C.LockList.json @@ -0,0 +1 @@ +{"records":"CELL","description":"Modifies cell lock list.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.LockList","hash":"1BC13B82","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.C.Music.json b/frontend/settings/Skyrim/Bash.C.Music.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.C.Name.json b/frontend/settings/Skyrim/Bash.C.Name.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.C.Owner.json b/frontend/settings/Skyrim/Bash.C.Owner.json old mode 100644 new mode 100755 index a49d50d..93e40dd --- a/frontend/settings/Skyrim/Bash.C.Owner.json +++ b/frontend/settings/Skyrim/Bash.C.Owner.json @@ -1 +1 @@ -{"records":"CELL","description":"C.Owner tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell ownership.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Owner","hash":"$C13A1CEE","color":255} \ No newline at end of file +{"records":"CELL","description":"C.Owner tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell ownership.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Owner","hash":"B47B0FA0","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.C.RecordFlags.json b/frontend/settings/Skyrim/Bash.C.RecordFlags.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.C.Regions.json b/frontend/settings/Skyrim/Bash.C.Regions.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.C.Water.json b/frontend/settings/Skyrim/Bash.C.Water.json old mode 100644 new mode 100755 index 6ff1581..e1b4490 --- a/frontend/settings/Skyrim/Bash.C.Water.json +++ b/frontend/settings/Skyrim/Bash.C.Water.json @@ -1 +1 @@ -{"records":"CELL","description":"C.Water tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell water type or level.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Water","hash":"$1C99179F","color":255} \ No newline at end of file +{"records":"CELL","description":"C.Water tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell water type or level.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Water","hash":"53C4F93D","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Delev.json b/frontend/settings/Skyrim/Bash.Delev.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Destructable.json b/frontend/settings/Skyrim/Bash.Destructable.json new file mode 100755 index 0000000..076f483 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.Destructable.json @@ -0,0 +1 @@ +{"records":"ACTI,ALCH,AMMO,APPA,ARMO,BOOK,CONT,DOOR,FLOR,FURN,KEYM,LIGH,MISC,MSTT,NPC_,PROJ,SCRL,SLGM,TACT,WEAP","description":"Modifies destructible records.","tree":{"records":[{"t":1,"p":1,"n":"ACTI - Activator","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"PNAM - Marker Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"n":"SNAM - Sound - Looping"},{"t":3,"n":"VNAM - Sound - Activation"},{"t":3,"n":"WNAM - Water Type"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ALCH - Ingestible","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"ETYP - Equipment Type"},{"t":5,"n":"DATA - Weight"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Value"},{"t":3,"n":"Flags"},{"t":3,"n":"Addiction"},{"t":5,"n":"Addiction Chance"},{"t":3,"n":"Sound - Consume"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Projectile"},{"t":3,"n":"Flags"},{"t":5,"n":"Damage"},{"t":3,"n":"Value"}]},{"t":2,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"QUAL - Quality"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMO - Armor","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Male world model","c":[{"t":2,"n":"MOD2 - Model Filename"},{"t":11,"n":"MO2T - Texture Files Hashes"},{"t":7,"n":"MO2S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Female world model","c":[{"t":2,"n":"MOD4 - Model Filename"},{"t":11,"n":"MO4T - Texture Files Hashes"},{"t":7,"n":"MO4S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon 2 (female)","c":[{"t":2,"n":"ICO2 - Large Icon filename"},{"t":2,"n":"MIC2 - Small Icon filename"}]},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"BODT - Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":2,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":8,"n":"Armature","c":[{"t":3,"n":"MODL - Model Filename"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"DNAM - Armor Rating"},{"t":3,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"BOOK - Book","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":2,"n":"DESC - Book Text"},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"n":"Skill"},{"t":3,"n":"Spell"},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"INAM - Inventory Art"},{"t":2,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"CONT - Container","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"DOOR - Door","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"ANAM - Sound - Close"},{"t":3,"n":"BNAM - Sound - Loop"},{"t":3,"n":"FNAM - Flags"}]},{"t":1,"p":1,"n":"FLOR - Flora","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Sound"},{"t":6,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer "},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"},{"t":3,"n":"MNAM - Active Markers \/ Flags"},{"t":6,"n":"WBDT - Workbench Data","c":[{"t":3,"n":"Bench Type"},{"t":3,"n":"Uses Skill"}]},{"t":3,"n":"NAM1 - Associated Spell"},{"t":8,"n":"Markers","c":[{"t":6,"n":"Marker","c":[{"t":3,"n":"ENAM - Marker Index"},{"t":6,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Disabled Points"}]},{"t":3,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"n":"Marker Entry Points","c":[{"t":6,"n":"FNPR - Marker","c":[{"t":3,"n":"Type"},{"t":3,"n":"Entry Points"}]}]},{"t":2,"n":"XMRK - Model Filename"}]},{"t":1,"p":1,"n":"KEYM - Key","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"LIGH - Light","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Time"},{"t":3,"n":"Radius"},{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"n":"Flags"},{"t":5,"n":"Falloff Exponent"},{"t":5,"n":"FOV"},{"t":5,"n":"Near Clip"},{"t":6,"n":"Flicker Effect","c":[{"t":5,"n":"Period"},{"t":5,"n":"Intensity Amplitude"},{"t":5,"n":"Movement Amplitude"}]},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":5,"n":"FNAM - Fade value"},{"t":3,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"MISC - Misc. Item","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"DATA - Flags"},{"t":3,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":3,"n":"Level"},{"t":3,"n":"Level Mult"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags"},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":8,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":8,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"Skill"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"Skill"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"}]},{"t":8,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"},{"t":6,"n":"TINC - Tint Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Alpha"}]},{"t":3,"n":"TINV - Interpolation Value"},{"t":3,"n":"TIAS - Preset"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Gravity"},{"t":5,"n":"Speed"},{"t":5,"n":"Range"},{"t":3,"n":"Light"},{"t":3,"n":"Muzzle Flash - Light"},{"t":5,"n":"Tracer Chance"},{"t":5,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"n":"Explosion"},{"t":3,"n":"Sound"},{"t":5,"n":"Muzzle Flash - Duration"},{"t":5,"n":"Fade Duration"},{"t":5,"n":"Impact Force"},{"t":3,"n":"Sound - Countdown"},{"t":3,"n":"Sound - Disable"},{"t":3,"n":"Default Weapon Source"},{"t":5,"n":"Cone Spread"},{"t":5,"n":"Collision Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Relaunch Interval"},{"t":3,"n":"Decal Data"},{"t":3,"n":"Collision Layer"}]},{"t":6,"n":"Muzzle Flash Model","c":[{"t":2,"n":"NAM1 - Model Filename"},{"t":11,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"SCRL - Scroll","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":6,"n":"DATA - Item","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SOUL - Contained Soul"},{"t":3,"n":"SLCP - Maximum Capacity"},{"t":3,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"TACT - Talking Activator","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"WEAP - Weapon","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Has Scope","c":[{"t":2,"n":"MOD3 - Model Filename"},{"t":11,"n":"MO3T - Texture Files Hashes"},{"t":7,"n":"MO3S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"n":"INAM - Impact Data Set"},{"t":3,"n":"WNAM - 1st Person Model Object"},{"t":3,"n":"SNAM - Attack Sound"},{"t":3,"n":"XNAM - Attack Sound 2D"},{"t":3,"n":"NAM7 - Attack Loop Sound"},{"t":3,"n":"TNAM - Attack Fail Sound"},{"t":3,"n":"UNAM - Idle Sound"},{"t":3,"n":"NAM9 - Equip Sound"},{"t":3,"n":"NAM8 - Unequip Sound"},{"t":6,"n":"DATA - Game Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"},{"t":3,"n":"Damage"}]},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Speed"},{"t":5,"n":"Reach"},{"t":3,"n":"Flags"},{"t":5,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"n":"Base VATS To-Hit Chance"},{"t":3,"n":"Attack Animation"},{"t":3,"n":"# Projectiles"},{"t":3,"n":"Embedded Weapon AV (unused)"},{"t":5,"n":"Range Min"},{"t":5,"n":"Range Max"},{"t":3,"n":"On Hit"},{"t":3,"n":"Flags2"},{"t":5,"n":"Animation Attack Mult"},{"t":5,"n":"Rumble - Left Motor Strength"},{"t":5,"n":"Rumble - Right Motor Strength"},{"t":5,"n":"Rumble - Duration"},{"t":3,"n":"Skill"},{"t":3,"n":"Resist"},{"t":5,"n":"Stagger"}]},{"t":6,"n":"CRDT - Critical Data","c":[{"t":3,"n":"Damage"},{"t":11,"n":"Unknown"},{"t":5,"n":"% Mult"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Effect"}]},{"t":3,"n":"VNAM - Detection Sound Level"},{"t":3,"n":"CNAM - Template"}]}]},"name":"Bash.Destructable","hash":"AD4652D3","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Eyes.json b/frontend/settings/Skyrim/Bash.Eyes.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Factions.json b/frontend/settings/Skyrim/Bash.Factions.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Graphics.json b/frontend/settings/Skyrim/Bash.Graphics.json old mode 100644 new mode 100755 index 4680c90..eada6d2 --- a/frontend/settings/Skyrim/Bash.Graphics.json +++ b/frontend/settings/Skyrim/Bash.Graphics.json @@ -1 +1 @@ -{"records":"ACTI,AMMO,APPA,ARMA,ARMO,ARTO,BOOK,DEBR,DOOR,EFSH,EXPL,FLOR,FURN,GRAS,INGR,LIGH,LSCR,MGEF,MISC,MSTT,PROJ,SCRL,SLGM,STAT,TREE,WEAP,ALCH","description":"Graphics tag from Wrye Bash.\r\n\r\nUsed when the mod is a graphics replacer.\r\n\r\nNote: I tried my best to get all appropriate records and subrecords for Skyrim in the spirit of this Bash Tag, but I may have missed things. Please let me know if I did. -Mator","tree":{"records":[{"t":1,"p":1,"n":"ACTI - Activator","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"PNAM - Marker Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"n":"SNAM - Sound - Looping"},{"t":3,"n":"VNAM - Sound - Activation"},{"t":3,"n":"WNAM - Water Type"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"AMMO - Ammunition","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Projectile"},{"t":3,"n":"Flags"},{"t":5,"n":"Damage"},{"t":3,"n":"Value"}]},{"t":2,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"QUAL - Quality"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":3,"n":"RNAM - Race"},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Male Priority"},{"t":3,"n":"Female Priority"},{"t":3,"n":"Weight slider - Male"},{"t":3,"n":"Weight slider - Female"},{"t":11,"n":"Unknown"},{"t":3,"n":"Detection Sound Value"},{"t":11,"n":"Unknown"},{"t":5,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model Filename"}]},{"t":3,"n":"NAM0 - Male Skin Texture"},{"t":3,"n":"NAM1 - Female Skin texture"},{"t":3,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"n":"NAM3 - Female Skin Texture Swap List"},{"t":9,"n":"Additional Races","c":[{"t":3,"n":"MODL - Race"}]},{"t":3,"n":"SNDD - Footstep Sound"},{"t":3,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Male world model","c":[{"t":2,"n":"MOD2 - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Female world model","c":[{"t":2,"n":"MOD4 - Model Filename"}]},{"t":6,"n":"Icon 2 (female)","c":[{"t":2,"n":"ICO2 - Large Icon filename"}]},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":7,"p":1,"n":"Armature","c":[{"t":3,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"DNAM - Armor Rating"},{"t":3,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":3,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"BOOK - Book","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":2,"n":"DESC - Book Text"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"n":"Skill"},{"t":3,"n":"Spell"},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"DEBR - Debris","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":8,"p":1,"n":"Models","c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model Filename"},{"t":3,"p":1,"n":"Flags"}]}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"ANAM - Sound - Close"},{"t":3,"n":"BNAM - Sound - Loop"},{"t":3,"n":"FNAM - Flags"}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture","lt":"ICO2 - Particle Shader Texture","lf":"DATA - "},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture","lt":"NAM7 - Holes Texture","lf":"ICON - Fill Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture","lt":"NAM8 - Membrane Palette Texture","lf":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture","lt":"NAM9 - Particle Palette Texture","lf":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture","lt":"DATA - ","lf":"NAM8 - Membrane Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":11,"p":1,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}],"lt":"ICON - Fill Texture","lf":"NAM9 - Particle Palette Texture"}]},{"t":1,"p":1,"n":"EXPL - Explosion","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"MNAM - Image Space Modifier"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Light"},{"t":3,"n":"Sound 1"},{"t":3,"n":"Sound 2"},{"t":3,"n":"Impact Data Set"},{"t":3,"n":"Placed Object"},{"t":3,"n":"Spawn Projectile"},{"t":5,"n":"Force"},{"t":5,"n":"Damage"},{"t":5,"n":"Radius"},{"t":5,"n":"IS Radius"},{"t":5,"n":"Vertical Offset Mult"},{"t":3,"n":"Flags"},{"t":3,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"FLOR - Flora","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Sound"},{"t":6,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer "},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"},{"t":3,"n":"MNAM - Active Markers \/ Flags"},{"t":6,"n":"WBDT - Workbench Data","c":[{"t":3,"n":"Bench Type"},{"t":3,"n":"Uses Skill"}]},{"t":3,"n":"NAM1 - Associated Spell"},{"t":8,"n":"Markers","c":[{"t":6,"n":"Marker","c":[{"t":3,"n":"ENAM - Marker Index"}]}]},{"t":8,"n":"Marker Entry Points","c":[{"t":6,"n":"FNPR - Marker","c":[{"t":3,"n":"Type"},{"t":3,"n":"Entry Points"}]}]},{"t":2,"n":"XMRK - Model Filename"}]},{"t":1,"p":1,"n":"GRAS - Grass","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Density"},{"t":3,"n":"Min Slope"},{"t":3,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"n":"Units From Water"},{"t":11,"n":"Unknown"},{"t":3,"n":"Units From Water Type"},{"t":5,"n":"Position Range"},{"t":5,"n":"Height Range"},{"t":5,"n":"Color Range"},{"t":5,"n":"Wave Period"},{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"INGR - Ingredient","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Ingredient Value"},{"t":3,"n":"Flags"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"LIGH - Light","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Time"},{"t":3,"n":"Radius"},{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unknown"}]},{"t":3,"n":"Flags"},{"t":5,"n":"Falloff Exponent"},{"t":5,"n":"FOV"},{"t":5,"n":"Near Clip"},{"t":6,"n":"Flicker Effect","c":[{"t":5,"n":"Period"},{"t":5,"n":"Intensity Amplitude"},{"t":5,"n":"Movement Amplitude"}]},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":5,"n":"FNAM - Fade value"},{"t":3,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":2,"n":"DESC - Description"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]},{"t":3,"n":"NNAM - Loading Screen NIF"},{"t":5,"n":"SNAM - Initial Scale"},{"t":6,"n":"RNAM - Initial Rotation","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Z"}]},{"t":6,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":6,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":2,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"Magic Effect Data","c":[{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Base Cost"},{"t":12,"n":"Assoc. Item"},{"t":3,"n":"Magic Skill"},{"t":3,"n":"Resist Value"},{"t":3,"n":"Counter Effect count"},{"t":11,"n":"Unused"},{"t":3,"n":"Casting Light"},{"t":5,"n":"Taper Weight"},{"t":3,"n":"Hit Shader"},{"t":3,"n":"Enchant Shader"},{"t":3,"n":"Minimum Skill Level"},{"t":6,"n":"Spellmaking","c":[{"t":3,"n":"Area"},{"t":5,"n":"Casting Time"}]},{"t":5,"n":"Taper Curve"},{"t":5,"n":"Taper Duration"},{"t":5,"n":"Second AV Weight"},{"t":3,"n":"Archtype"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Projectile"},{"t":3,"n":"Explosion"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Delivery"},{"t":3,"n":"Second Actor Value"},{"t":3,"n":"Casting Art"},{"t":3,"n":"Hit Effect Art"},{"t":3,"n":"Impact Data"},{"t":5,"n":"Skill Usage Multiplier"},{"t":6,"n":"Dual Casting","c":[{"t":3,"n":"Art"},{"t":5,"n":"Scale"}]},{"t":3,"n":"Enchant Art"},{"t":11,"n":"Unknown"},{"t":11,"n":"Unknown"},{"t":3,"n":"Equip Ability"},{"t":3,"n":"Image Space Modifier"},{"t":3,"n":"Perk to Apply"},{"t":3,"n":"Casting Sound Level"},{"t":6,"n":"Script Effect AI","c":[{"t":5,"n":"Score"},{"t":5,"n":"Delay Time"}]}]}]},{"t":9,"n":"Counter Effects","c":[{"t":3,"n":"ESCE - Effect"}]},{"t":8,"n":"SNDD - Sounds","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Type"},{"t":3,"n":"Sound"}]}]},{"t":2,"n":"DNAM - Magic Item Description"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"DATA - Flags"},{"t":3,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"PROJ - Projectile","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Gravity"},{"t":5,"n":"Speed"},{"t":5,"n":"Range"},{"t":3,"n":"Light"},{"t":3,"n":"Muzzle Flash - Light"},{"t":5,"n":"Tracer Chance"},{"t":5,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"n":"Explosion"},{"t":3,"n":"Sound"},{"t":5,"n":"Muzzle Flash - Duration"},{"t":5,"n":"Fade Duration"},{"t":5,"n":"Impact Force"},{"t":3,"n":"Sound - Countdown"},{"t":3,"n":"Sound - Disable"},{"t":3,"n":"Default Weapon Source"},{"t":5,"n":"Cone Spread"},{"t":5,"n":"Collision Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Relaunch Interval"},{"t":3,"n":"Decal Data"},{"t":3,"n":"Collision Layer"}]},{"t":6,"n":"Muzzle Flash Model","c":[{"t":2,"n":"NAM1 - Model Filename"}]},{"t":3,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"SCRL - Scroll","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":6,"n":"DATA - Item","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SOUL - Contained Soul"},{"t":3,"n":"SLCP - Maximum Capacity"},{"t":3,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"STAT - Static","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"DNAM - Direction Material","c":[{"t":5,"n":"Max Angle (30-120)"},{"t":3,"n":"Material"}]},{"t":8,"n":"MNAM - Distant LOD","c":[{"t":6,"n":"LOD #0 (Level 0)","c":[{"t":2,"n":"Mesh"}]},{"t":6,"n":"LOD #1 (Level 1)","c":[{"t":2,"n":"Mesh"}]},{"t":6,"n":"LOD #2 (Level 2)","c":[{"t":2,"n":"Mesh"}]},{"t":6,"n":"LOD #3 (Level 3)","c":[{"t":2,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TREE - Tree","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Harvest Sound"},{"t":6,"n":"PFPC - Ingredient Production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer"},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"CNAM - Tree Data","c":[{"t":5,"n":"Trunk Flexibility"},{"t":5,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Leaf Amplitude"},{"t":5,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"WEAP - Weapon","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Has Scope","c":[{"t":2,"n":"MOD3 - Model Filename"}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"n":"SNAM - Attack Sound"},{"t":3,"n":"XNAM - Attack Sound 2D"},{"t":3,"n":"NAM7 - Attack Loop Sound"},{"t":3,"n":"TNAM - Attack Fail Sound"},{"t":3,"n":"UNAM - Idle Sound"},{"t":3,"n":"NAM9 - Equip Sound"},{"t":3,"n":"NAM8 - Unequip Sound"},{"t":6,"n":"DATA - Game Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"},{"t":3,"n":"Damage"}]},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Speed"},{"t":5,"n":"Reach"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":5,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"n":"Base VATS To-Hit Chance"},{"t":3,"n":"Attack Animation"},{"t":3,"n":"# Projectiles"},{"t":3,"n":"Embedded Weapon AV (unused)"},{"t":5,"n":"Range Min"},{"t":5,"n":"Range Max"},{"t":3,"n":"On Hit"},{"t":3,"n":"Flags2"},{"t":5,"n":"Animation Attack Mult"},{"t":5,"n":"Unknown"},{"t":5,"n":"Rumble - Left Motor Strength"},{"t":5,"n":"Rumble - Right Motor Strength"},{"t":5,"n":"Rumble - Duration"},{"t":11,"n":"Unknown"},{"t":3,"n":"Skill"},{"t":11,"n":"Unknown"},{"t":3,"n":"Resist"},{"t":11,"n":"Unknown"},{"t":5,"n":"Stagger"}]},{"t":6,"n":"CRDT - Critical Data","c":[{"t":3,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"n":"% Mult"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Effect"}]},{"t":3,"n":"VNAM - Detection Sound Level"},{"t":3,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"ALCH - Ingestible","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"ETYP - Equipment Type"},{"t":5,"n":"DATA - Weight"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Value"},{"t":3,"n":"Flags"},{"t":3,"n":"Addiction"},{"t":5,"n":"Addiction Chance"},{"t":3,"n":"Sound - Consume"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]}]},"name":"Bash.Graphics","hash":"8A68A29F","color":255} \ No newline at end of file +{"records":"ALCH,AMMO,APPA,ARMA,ARMO,ARTO,BOOK,CLAS,CONT,DEBR,DOOR,EFSH,EXPL,FLOR,FURN,GRAS,INGR,KEYM,LIGH,LSCR,MGEF,SCRL,SLGM,SPEL,STAT,TREE,WEAP,WTHR,ACTI","description":"Graphics tag from Wrye Bash.\r\n\r\nUsed when the mod is a graphics replacer.\r\n\r\nNote: I tried my best to get all appropriate records and subrecords for Skyrim in the spirit of this Bash Tag, but I may have missed things. Please let me know if I did. -Mator","tree":{"records":[{"t":1,"p":1,"n":"ALCH - Ingestible","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"ETYP - Equipment Type"},{"t":5,"n":"DATA - Weight"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Value"},{"t":3,"n":"Flags"},{"t":3,"n":"Addiction"},{"t":5,"n":"Addiction Chance"},{"t":3,"n":"Sound - Consume"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Projectile"},{"t":3,"n":"Flags"},{"t":5,"n":"Damage"},{"t":3,"n":"Value"}]},{"t":2,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"QUAL - Quality"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":3,"n":"RNAM - Race"},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Male Priority"},{"t":3,"n":"Female Priority"},{"t":3,"n":"Weight slider - Male"},{"t":3,"n":"Weight slider - Female"},{"t":11,"n":"Unknown"},{"t":3,"n":"Detection Sound Value"},{"t":11,"n":"Unknown"},{"t":5,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model Filename"}]},{"t":3,"n":"NAM0 - Male Skin Texture"},{"t":3,"n":"NAM1 - Female Skin texture"},{"t":3,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"n":"NAM3 - Female Skin Texture Swap List"},{"t":9,"n":"Additional Races","c":[{"t":3,"n":"MODL - Race"}]},{"t":3,"n":"SNDD - Footstep Sound"},{"t":3,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon filename"}]},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":7,"p":1,"n":"Armature","c":[{"t":3,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"DNAM - Armor Rating"},{"t":3,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":3,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"BOOK - Book","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":2,"n":"DESC - Book Text"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"n":"Skill"},{"t":3,"n":"Spell"},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"CLAS - Class","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"DATA - ","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Teaches"},{"t":3,"n":"Maximum training level"},{"t":7,"n":"Skill Weights","c":[{"t":3,"n":"Weight"}]},{"t":5,"n":"Bleedout Default"},{"t":3,"n":"Voice Points"},{"t":7,"n":"Attribute Weights","c":[{"t":3,"n":"Weight"}]}]}]},{"t":1,"p":1,"n":"CONT - Container","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"DEBR - Debris","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":8,"p":1,"n":"Models","c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model Filename"},{"t":3,"p":1,"n":"Flags"}]}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"ANAM - Sound - Close"},{"t":3,"n":"BNAM - Sound - Loop"},{"t":3,"n":"FNAM - Flags"}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture","lt":"ICO2 - Particle Shader Texture","lf":"DATA - "},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture","lt":"NAM7 - Holes Texture","lf":"ICON - Fill Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture","lt":"NAM8 - Membrane Palette Texture","lf":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture","lt":"NAM9 - Particle Palette Texture","lf":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture","lt":"DATA - ","lf":"NAM8 - Membrane Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":11,"p":1,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}],"lt":"ICON - Fill Texture","lf":"NAM9 - Particle Palette Texture"}]},{"t":1,"p":1,"n":"EXPL - Explosion","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"MNAM - Image Space Modifier"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Light"},{"t":3,"n":"Sound 1"},{"t":3,"n":"Sound 2"},{"t":3,"n":"Impact Data Set"},{"t":3,"n":"Placed Object"},{"t":3,"n":"Spawn Projectile"},{"t":5,"n":"Force"},{"t":5,"n":"Damage"},{"t":5,"n":"Radius"},{"t":5,"n":"IS Radius"},{"t":5,"n":"Vertical Offset Mult"},{"t":3,"n":"Flags"},{"t":3,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"FLOR - Flora","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Sound"},{"t":6,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer "},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"},{"t":3,"n":"MNAM - Active Markers \/ Flags"},{"t":6,"n":"WBDT - Workbench Data","c":[{"t":3,"n":"Bench Type"},{"t":3,"n":"Uses Skill"}]},{"t":3,"n":"NAM1 - Associated Spell"},{"t":8,"n":"Markers","c":[{"t":6,"n":"Marker","c":[{"t":3,"n":"ENAM - Marker Index"}]}]},{"t":8,"n":"Marker Entry Points","c":[{"t":6,"n":"FNPR - Marker","c":[{"t":3,"n":"Type"},{"t":3,"n":"Entry Points"}]}]},{"t":2,"n":"XMRK - Model Filename"}]},{"t":1,"p":1,"n":"GRAS - Grass","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Density"},{"t":3,"n":"Min Slope"},{"t":3,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"n":"Units From Water"},{"t":11,"n":"Unknown"},{"t":3,"n":"Units From Water Type"},{"t":5,"n":"Position Range"},{"t":5,"n":"Height Range"},{"t":5,"n":"Color Range"},{"t":5,"n":"Wave Period"},{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"INGR - Ingredient","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Ingredient Value"},{"t":3,"n":"Flags"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"LIGH - Light","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Time"},{"t":3,"n":"Radius"},{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unknown"}]},{"t":3,"n":"Flags"},{"t":5,"n":"Falloff Exponent"},{"t":5,"n":"FOV"},{"t":5,"n":"Near Clip"},{"t":6,"n":"Flicker Effect","c":[{"t":5,"n":"Period"},{"t":5,"n":"Intensity Amplitude"},{"t":5,"n":"Movement Amplitude"}]},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":5,"n":"FNAM - Fade value"},{"t":3,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":2,"n":"DESC - Description"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]},{"t":3,"n":"NNAM - Loading Screen NIF"},{"t":5,"n":"SNAM - Initial Scale"},{"t":6,"n":"RNAM - Initial Rotation","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Z"}]},{"t":6,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":6,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":2,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Base Cost"},{"t":12,"n":"Assoc. Item"},{"t":3,"n":"Magic Skill"},{"t":3,"n":"Resist Value"},{"t":3,"n":"Counter Effect count"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"n":"Minimum Skill Level"},{"t":6,"n":"Spellmaking","c":[{"t":3,"n":"Area"},{"t":5,"n":"Casting Time"}]},{"t":5,"n":"Taper Curve"},{"t":5,"n":"Taper Duration"},{"t":5,"n":"Second AV Weight"},{"t":3,"n":"Archtype"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Projectile"},{"t":3,"n":"Explosion"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Delivery"},{"t":3,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"n":"Impact Data"},{"t":5,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":11,"n":"Unknown"},{"t":11,"n":"Unknown"},{"t":3,"n":"Equip Ability"},{"t":3,"n":"Image Space Modifier"},{"t":3,"n":"Perk to Apply"},{"t":3,"n":"Casting Sound Level"},{"t":6,"n":"Script Effect AI","c":[{"t":5,"n":"Score"},{"t":5,"n":"Delay Time"}]}]}]},{"t":9,"n":"Counter Effects","c":[{"t":3,"n":"ESCE - Effect"}]},{"t":8,"n":"SNDD - Sounds","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Type"},{"t":3,"n":"Sound"}]}]},{"t":2,"n":"DNAM - Magic Item Description"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]}]},{"t":1,"p":1,"n":"SCRL - Scroll","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":6,"n":"DATA - Item","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SOUL - Contained Soul"},{"t":3,"n":"SLCP - Maximum Capacity"},{"t":3,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SPEL - Spell","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"STAT - Static","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"DNAM - Direction Material","c":[{"t":5,"n":"Max Angle (30-120)"},{"t":3,"n":"Material"}]},{"t":8,"n":"MNAM - Distant LOD","c":[{"t":6,"n":"LOD #0 (Level 0)","c":[{"t":2,"n":"Mesh"}]},{"t":6,"n":"LOD #1 (Level 1)","c":[{"t":2,"n":"Mesh"}]},{"t":6,"n":"LOD #2 (Level 2)","c":[{"t":2,"n":"Mesh"}]},{"t":6,"n":"LOD #3 (Level 3)","c":[{"t":2,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TREE - Tree","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Harvest Sound"},{"t":6,"n":"PFPC - Ingredient Production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer"},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"CNAM - Tree Data","c":[{"t":5,"n":"Trunk Flexibility"},{"t":5,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Leaf Amplitude"},{"t":5,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"WEAP - Weapon","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"p":1,"n":"Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model Filename"}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"n":"SNAM - Attack Sound"},{"t":3,"n":"XNAM - Attack Sound 2D"},{"t":3,"n":"NAM7 - Attack Loop Sound"},{"t":3,"n":"TNAM - Attack Fail Sound"},{"t":3,"n":"UNAM - Idle Sound"},{"t":3,"n":"NAM9 - Equip Sound"},{"t":3,"n":"NAM8 - Unequip Sound"},{"t":6,"n":"DATA - Game Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"},{"t":3,"n":"Damage"}]},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Speed"},{"t":5,"n":"Reach"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":5,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"n":"Base VATS To-Hit Chance"},{"t":3,"n":"Attack Animation"},{"t":3,"n":"# Projectiles"},{"t":3,"n":"Embedded Weapon AV (unused)"},{"t":5,"n":"Range Min"},{"t":5,"n":"Range Max"},{"t":3,"n":"On Hit"},{"t":3,"n":"Flags2"},{"t":5,"n":"Animation Attack Mult"},{"t":5,"n":"Unknown"},{"t":5,"n":"Rumble - Left Motor Strength"},{"t":5,"n":"Rumble - Right Motor Strength"},{"t":5,"n":"Rumble - Duration"},{"t":11,"n":"Unknown"},{"t":3,"n":"Skill"},{"t":11,"n":"Unknown"},{"t":3,"n":"Resist"},{"t":11,"n":"Unknown"},{"t":5,"n":"Stagger"}]},{"t":6,"n":"CRDT - Critical Data","c":[{"t":3,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"n":"% Mult"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Effect"}]},{"t":3,"n":"VNAM - Detection Sound Level"},{"t":3,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WTHR - Weather","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"n":"MNAM - Precipitation Type"},{"t":3,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"n":"Cloud Speed","c":[{"t":7,"n":"RNAM - Y Speed","c":[{"t":3,"n":"Layer"}]},{"t":7,"n":"QNAM - X Speed","c":[{"t":3,"n":"Layer"}]}]},{"t":7,"n":"PNAM - Cloud Colors","c":[{"t":6,"n":"Layer","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"n":"JNAM - Cloud Alphas","c":[{"t":6,"n":"Layer","c":[{"t":5,"n":"Sunrise"},{"t":5,"n":"Day"},{"t":5,"n":"Sunset"},{"t":5,"n":"Night"}]}]},{"t":6,"n":"NAM0 - Weather Colors","c":[{"t":6,"n":"Sky-Upper","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Fog Near","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Ambient","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Sunlight","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Sun","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Stars","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Sky-Lower","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Horizon","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Effect Lighting","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Cloud LOD Diffuse","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Cloud LOD Ambient","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Fog Far","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Sky Statics","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Water Multiplier","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Sun Glare","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Moon Glare","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"n":"FNAM - Fog Distance","c":[{"t":5,"n":"Day - Near"},{"t":5,"n":"Day - Far"},{"t":5,"n":"Night - Near"},{"t":5,"n":"Night - Far"},{"t":5,"n":"Day - Power"},{"t":5,"n":"Night - Power"},{"t":5,"n":"Day - Max"},{"t":5,"n":"Night - Max"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"n":"Trans Delta"},{"t":3,"n":"Sun Glare"},{"t":3,"n":"Sun Damage"},{"t":3,"n":"Precipitation - Begin Fade In"},{"t":3,"n":"Precipitation - End Fade Out"},{"t":3,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"n":"Thunder\/Lightning - Frequency"},{"t":3,"n":"Flags"},{"t":6,"n":"Lightning Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"}]},{"t":3,"n":"Visual Effect - Begin"},{"t":3,"n":"Visual Effect - End"},{"t":3,"n":"Wind Direction"},{"t":3,"n":"Wind Direction Range"}]},{"t":3,"n":"NAM1 - Disabled Cloud Layers"},{"t":8,"n":"Sounds","c":[{"t":6,"n":"SNAM - Sound","c":[{"t":3,"n":"Sound"},{"t":3,"n":"Type"}]}]},{"t":8,"n":"Sky Statics","c":[{"t":3,"n":"TNAM - Static"}]},{"t":6,"n":"IMSP - Image Spaces","c":[{"t":3,"n":"Sunrise"},{"t":3,"n":"Day"},{"t":3,"n":"Sunset"},{"t":3,"n":"Night"}]},{"t":6,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"n":"Sunrise"},{"t":3,"n":"Day"},{"t":3,"n":"Sunset"},{"t":3,"n":"Night"}]},{"t":6,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"n":"Aurora","c":[{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]},{"t":3,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"ACTI - Activator","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"PNAM - Marker Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"n":"SNAM - Sound - Looping"},{"t":3,"n":"VNAM - Sound - Activation"},{"t":3,"n":"WNAM - Water Type"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"}]}]},"name":"Bash.Graphics","hash":"F407AD9E","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Hairs.json b/frontend/settings/Skyrim/Bash.Hairs.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Invent.json b/frontend/settings/Skyrim/Bash.Invent.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Keywords.json b/frontend/settings/Skyrim/Bash.Keywords.json new file mode 100755 index 0000000..7173b1c --- /dev/null +++ b/frontend/settings/Skyrim/Bash.Keywords.json @@ -0,0 +1 @@ +{"records":"ALCH,AMMO,ARMO,BOOK,FLOR,FURN,INGR,KEYM,LCTN,MGEF,MISC,NPC_,SCRL,SLGM,SPEL,TACT,WEAP,ACTI","description":"Modifies the lists of keywords attached to things.","tree":{"records":[{"t":1,"p":1,"n":"ALCH - Ingestible","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"ETYP - Equipment Type"},{"t":5,"n":"DATA - Weight"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Value"},{"t":3,"n":"Flags"},{"t":3,"n":"Addiction"},{"t":5,"n":"Addiction Chance"},{"t":3,"n":"Sound - Consume"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":2,"n":"DESC - Description"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Projectile"},{"t":3,"n":"Flags"},{"t":5,"n":"Damage"},{"t":3,"n":"Value"}]},{"t":2,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ARMO - Armor","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Male world model","c":[{"t":2,"n":"MOD2 - Model Filename"},{"t":11,"n":"MO2T - Texture Files Hashes"},{"t":7,"n":"MO2S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Female world model","c":[{"t":2,"n":"MOD4 - Model Filename"},{"t":11,"n":"MO4T - Texture Files Hashes"},{"t":7,"n":"MO4S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon 2 (female)","c":[{"t":2,"n":"ICO2 - Large Icon filename"},{"t":2,"n":"MIC2 - Small Icon filename"}]},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"BODT - Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":2,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"RNAM - Race"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":2,"n":"DESC - Description"},{"t":8,"n":"Armature","c":[{"t":3,"n":"MODL - Model Filename"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"DNAM - Armor Rating"},{"t":3,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"BOOK - Book","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":2,"n":"DESC - Book Text"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"n":"Skill"},{"t":3,"n":"Spell"},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"INAM - Inventory Art"},{"t":2,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"FLOR - Flora","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":11,"n":"PNAM - Unknown"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Sound"},{"t":6,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer "},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":11,"n":"PNAM - Unknown"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"},{"t":3,"n":"MNAM - Active Markers \/ Flags"},{"t":6,"n":"WBDT - Workbench Data","c":[{"t":3,"n":"Bench Type"},{"t":3,"n":"Uses Skill"}]},{"t":3,"n":"NAM1 - Associated Spell"},{"t":8,"n":"Markers","c":[{"t":6,"n":"Marker","c":[{"t":3,"n":"ENAM - Marker Index"},{"t":6,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Disabled Points"}]},{"t":3,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"n":"Marker Entry Points","c":[{"t":6,"n":"FNPR - Marker","c":[{"t":3,"n":"Type"},{"t":3,"n":"Entry Points"}]}]},{"t":2,"n":"XMRK - Model Filename"}]},{"t":1,"p":1,"n":"INGR - Ingredient","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Ingredient Value"},{"t":3,"n":"Flags"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":6,"n":"Magic Effect Data","c":[{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"n":"Assoc. Item"},{"t":3,"n":"Magic Skill"},{"t":3,"n":"Resist Value"},{"t":3,"n":"Counter Effect count"},{"t":3,"n":"Casting Light"},{"t":5,"n":"Taper Weight"},{"t":3,"n":"Hit Shader"},{"t":3,"n":"Enchant Shader"},{"t":3,"n":"Minimum Skill Level"},{"t":6,"n":"Spellmaking","c":[{"t":3,"n":"Area"},{"t":5,"n":"Casting Time"}]},{"t":5,"n":"Taper Curve"},{"t":5,"n":"Taper Duration"},{"t":5,"n":"Second AV Weight"},{"t":3,"n":"Archtype"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Projectile"},{"t":3,"n":"Explosion"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Delivery"},{"t":3,"n":"Second Actor Value"},{"t":3,"n":"Casting Art"},{"t":3,"n":"Hit Effect Art"},{"t":3,"n":"Impact Data"},{"t":5,"n":"Skill Usage Multiplier"},{"t":6,"n":"Dual Casting","c":[{"t":3,"n":"Art"},{"t":5,"n":"Scale"}]},{"t":3,"n":"Enchant Art"},{"t":11,"n":"Unknown"},{"t":3,"n":"Equip Ability"},{"t":3,"n":"Image Space Modifier"},{"t":3,"n":"Perk to Apply"},{"t":3,"n":"Casting Sound Level"},{"t":6,"n":"Script Effect AI","c":[{"t":5,"n":"Score"},{"t":5,"n":"Delay Time"}]}]}]},{"t":8,"n":"Counter Effects","c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"n":"SNDD - Sounds","c":[{"t":6,"n":"","c":[{"t":3,"n":"Type"},{"t":3,"n":"Sound"}]}]},{"t":2,"n":"DNAM - Magic Item Description"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":3,"n":"Level"},{"t":3,"n":"Level Mult"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags"},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":8,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":8,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"Skill"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"Skill"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"}]},{"t":8,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"},{"t":6,"n":"TINC - Tint Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Alpha"}]},{"t":3,"n":"TINV - Interpolation Value"},{"t":3,"n":"TIAS - Preset"}]}]}]},{"t":1,"p":1,"n":"SCRL - Scroll","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":6,"n":"DATA - Item","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SOUL - Contained Soul"},{"t":3,"n":"SLCP - Maximum Capacity"},{"t":3,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SPEL - Spell","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":11,"n":"PNAM - Unknown"},{"t":3,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"WEAP - Weapon","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Has Scope","c":[{"t":2,"n":"MOD3 - Model Filename"},{"t":11,"n":"MO3T - Texture Files Hashes"},{"t":7,"n":"MO3S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"n":"INAM - Impact Data Set"},{"t":3,"n":"WNAM - 1st Person Model Object"},{"t":3,"n":"SNAM - Attack Sound"},{"t":3,"n":"XNAM - Attack Sound 2D"},{"t":3,"n":"NAM7 - Attack Loop Sound"},{"t":3,"n":"TNAM - Attack Fail Sound"},{"t":3,"n":"UNAM - Idle Sound"},{"t":3,"n":"NAM9 - Equip Sound"},{"t":3,"n":"NAM8 - Unequip Sound"},{"t":6,"n":"DATA - Game Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"},{"t":3,"n":"Damage"}]},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Speed"},{"t":5,"n":"Reach"},{"t":3,"n":"Flags"},{"t":5,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"n":"Base VATS To-Hit Chance"},{"t":3,"n":"Attack Animation"},{"t":3,"n":"# Projectiles"},{"t":3,"n":"Embedded Weapon AV (unused)"},{"t":5,"n":"Range Min"},{"t":5,"n":"Range Max"},{"t":3,"n":"On Hit"},{"t":3,"n":"Flags2"},{"t":5,"n":"Animation Attack Mult"},{"t":5,"n":"Rumble - Left Motor Strength"},{"t":5,"n":"Rumble - Right Motor Strength"},{"t":5,"n":"Rumble - Duration"},{"t":3,"n":"Skill"},{"t":3,"n":"Resist"},{"t":5,"n":"Stagger"}]},{"t":6,"n":"CRDT - Critical Data","c":[{"t":3,"n":"Damage"},{"t":11,"n":"Unknown"},{"t":5,"n":"% Mult"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Effect"}]},{"t":3,"n":"VNAM - Detection Sound Level"},{"t":3,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"ACTI - Activator","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count","lf":"KWDA - Keywords"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}],"lt":"KSIZ - Keyword Count"},{"t":6,"n":"PNAM - Marker Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"n":"SNAM - Sound - Looping"},{"t":3,"n":"VNAM - Sound - Activation"},{"t":3,"n":"WNAM - Water Type"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"}]}]},"name":"Bash.Keywords","hash":"0D4F54E6","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Lev.json b/frontend/settings/Skyrim/Bash.Lev.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.NPC.Class.json b/frontend/settings/Skyrim/Bash.NPC.Class.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.NPC.Race.json b/frontend/settings/Skyrim/Bash.NPC.Race.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Names.json b/frontend/settings/Skyrim/Bash.Names.json old mode 100644 new mode 100755 index 0cb8e66..f5fe887 --- a/frontend/settings/Skyrim/Bash.Names.json +++ b/frontend/settings/Skyrim/Bash.Names.json @@ -1 +1 @@ -{"records":"ACTI,AMMO,ARMO,AVIF,BOOK,CLAS,CONT,DIAL,DOOR,ENCH,EXPL,FACT,FLOR,FURN,HAZD,HDPT,INGR,KEYM,LCTN,LIGH,MESG,MGEF,MISC,MSTT,NPC_,PERK,PROJ,QUST,RACE,REFR,SCRL,SHOU,SLGM,SNCT,SPEL,TREE,WATR,WEAP,WRLD,ALCH","description":"Names tag from Wrye Bash.\r\n\r\nUsed when the mod changes the names of things.","tree":{"records":[{"t":1,"p":1,"n":"ACTI - Activator","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"PNAM - Marker Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"n":"SNAM - Sound - Looping"},{"t":3,"n":"VNAM - Sound - Activation"},{"t":3,"n":"WNAM - Water Type"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"AMMO - Ammunition","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Projectile"},{"t":3,"n":"Flags"},{"t":5,"n":"Damage"},{"t":3,"n":"Value"}]},{"t":2,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ARMO - Armor","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Male world model","c":[{"t":2,"n":"MOD2 - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Female world model","c":[{"t":2,"n":"MOD4 - Model Filename"}]},{"t":6,"n":"Icon 2 (female)","c":[{"t":2,"n":"ICO2 - Large Icon filename"}]},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":7,"n":"Armature","c":[{"t":3,"n":"MODL - Model Filename"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"DNAM - Armor Rating"},{"t":3,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":2,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"n":"AVSK - Skill","c":[{"t":5,"n":"Skill Use Mult"},{"t":5,"n":"Skill Offset Mult"},{"t":5,"n":"Skill Improve Mult"},{"t":5,"n":"Skill Improve Offset"}]},{"t":8,"n":"Perk Tree","c":[{"t":6,"n":"Node","c":[{"t":3,"n":"PNAM - Perk"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":2,"n":"DESC - Book Text"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Teaches"},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"INAM - Inventory Art"},{"t":2,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"CLAS - Class","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"DATA - ","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Teaches"},{"t":3,"n":"Maximum training level"},{"t":7,"n":"Skill Weights","c":[{"t":3,"n":"Weight #0 (One Handed)"},{"t":3,"n":"Weight #1 (Two Handed)"},{"t":3,"n":"Weight #2 (Archery)"},{"t":3,"n":"Weight #3 (Block)"},{"t":3,"n":"Weight #4 (Smithing)"},{"t":3,"n":"Weight #5 (Heavy Armor)"},{"t":3,"n":"Weight #6 (Light Armor)"},{"t":3,"n":"Weight #7 (Pickpocket)"},{"t":3,"n":"Weight #8 (Lockpicking)"},{"t":3,"n":"Weight #9 (Sneak)"},{"t":3,"n":"Weight #10 (Alchemy)"},{"t":3,"n":"Weight #11 (Speech)"},{"t":3,"n":"Weight #12 (Alteration)"},{"t":3,"n":"Weight #13 (Conjuration)"},{"t":3,"n":"Weight #14 (Destruction)"},{"t":3,"n":"Weight #15 (Illusion)"},{"t":3,"n":"Weight #16 (Restoration)"},{"t":3,"n":"Weight #17 (Enchanting)"}]},{"t":5,"n":"Bleedout Default"},{"t":3,"n":"Voice Points"},{"t":7,"n":"Attribute Weights","c":[{"t":3,"n":"Weight #0 (Health)"},{"t":3,"n":"Weight #1 (Magicka)"},{"t":3,"n":"Weight #2 (Stamina)"},{"t":3,"n":"Weight #3 (Unknown)"}]}]}]},{"t":1,"p":1,"n":"CONT - Container","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"n":"PNAM - Priority"},{"t":3,"n":"BNAM - Branch"},{"t":3,"n":"QNAM - Quest"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Topic Flags"},{"t":3,"n":"Category"},{"t":3,"n":"Subtype"}]},{"t":2,"n":"SNAM - Subtype Name"},{"t":3,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DOOR - Door","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"ANAM - Sound - Close"},{"t":3,"n":"BNAM - Sound - Loop"},{"t":3,"n":"FNAM - Flags"}]},{"t":1,"p":1,"n":"ENCH - Object Effect","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Enchantment Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Enchantment Amount"},{"t":3,"n":"Target Type"},{"t":3,"n":"Enchant Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Base Enchantment"},{"t":3,"n":"Worn Restrictions"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"EXPL - Explosion","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"MNAM - Image Space Modifier"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Light"},{"t":3,"n":"Sound 1"},{"t":3,"n":"Sound 2"},{"t":3,"n":"Impact Data Set"},{"t":3,"n":"Placed Object"},{"t":3,"n":"Spawn Projectile"},{"t":5,"n":"Force"},{"t":5,"n":"Damage"},{"t":5,"n":"Radius"},{"t":5,"n":"IS Radius"},{"t":5,"n":"Vertical Offset Mult"},{"t":3,"n":"Flags"},{"t":3,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"FACT - Faction","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":10,"n":"Relations","c":[{"t":6,"n":"XNAM - Relation","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Modifier"},{"t":3,"n":"Group Combat Reaction"}]}]},{"t":6,"n":"DATA - Flags","c":[{"t":3,"n":"Flags"}]},{"t":3,"n":"JAIL - Exterior Jail Marker"},{"t":3,"n":"WAIT - Follower Wait Marker"},{"t":3,"n":"STOL - Stolen Goods Container"},{"t":3,"n":"PLCN - Player Inventory Container"},{"t":3,"n":"CRGR - Shared Crime Faction List"},{"t":3,"n":"JOUT - Jail Outfit"},{"t":6,"n":"CRVA - Crime Values","c":[{"t":3,"n":"Arrest"},{"t":3,"n":"Attack On Sight"},{"t":3,"n":"Murder"},{"t":3,"n":"Assault"},{"t":3,"n":"Trespass"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"n":"Steal Multiplier"},{"t":3,"n":"Escape"},{"t":3,"n":"Werewolf"}]},{"t":10,"n":"Ranks","c":[{"t":6,"n":"Rank","c":[{"t":3,"n":"RNAM - Rank#"}]}]},{"t":3,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"n":"VENC - Merchant Container"},{"t":6,"n":"VENV - Vendor Values","c":[{"t":3,"n":"Start Hour"},{"t":3,"n":"End Hour"},{"t":3,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"n":"Only Buys Stolen Items"},{"t":3,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"n":"PLVD - Location","c":[{"t":3,"n":"Type"},{"t":12,"n":"Location Value"},{"t":3,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Sound"},{"t":6,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer "},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"},{"t":3,"n":"MNAM - Active Markers \/ Flags"},{"t":6,"n":"WBDT - Workbench Data","c":[{"t":3,"n":"Bench Type"},{"t":3,"n":"Uses Skill"}]},{"t":3,"n":"NAM1 - Associated Spell"},{"t":8,"n":"Markers","c":[{"t":6,"n":"Marker","c":[{"t":3,"n":"ENAM - Marker Index"}]}]},{"t":8,"n":"Marker Entry Points","c":[{"t":6,"n":"FNPR - Marker","c":[{"t":3,"n":"Type"},{"t":3,"n":"Entry Points"}]}]},{"t":2,"n":"XMRK - Model Filename"}]},{"t":1,"p":1,"n":"HAZD - Hazard","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":3,"n":"MNAM - Image Space Modifier"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Limit"},{"t":5,"n":"Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Image Space Radius"},{"t":5,"n":"Target Interval"},{"t":3,"n":"Flags"},{"t":3,"n":"Spell"},{"t":3,"n":"Light"},{"t":3,"n":"Impact Data Set"},{"t":3,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":3,"n":"DATA - Flags"},{"t":3,"n":"PNAM - Type"},{"t":9,"n":"Extra Parts","c":[{"t":3,"n":"HNAM - Part"}]},{"t":8,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"NAM0 - Part Type"},{"t":2,"n":"NAM1 - Filename"}]}]},{"t":3,"n":"TNAM - Texture Set"},{"t":3,"n":"CNAM - Color"},{"t":3,"n":"RNAM - Valid Races"}]},{"t":1,"p":1,"n":"INGR - Ingredient","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Ingredient Value"},{"t":3,"n":"Flags"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"LCTN - Location","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":8,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":8,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref #0"}]},{"t":8,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":8,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor #0"}]},{"t":8,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":8,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref #0"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":8,"n":"Coordinates","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":8,"n":"Coordinates","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":8,"n":"Coordinates","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref #0"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref #0"}]},{"t":8,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":8,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LIGH - Light","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Time"},{"t":3,"n":"Radius"},{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unknown"}]},{"t":3,"n":"Flags"},{"t":5,"n":"Falloff Exponent"},{"t":5,"n":"FOV"},{"t":5,"n":"Near Clip"},{"t":6,"n":"Flicker Effect","c":[{"t":5,"n":"Period"},{"t":5,"n":"Intensity Amplitude"},{"t":5,"n":"Movement Amplitude"}]},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":5,"n":"FNAM - Fade value"},{"t":3,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"MESG - Message","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"INAM - Icon (unused)"},{"t":3,"n":"QNAM - Owner Quest"},{"t":3,"n":"DNAM - Flags","c":[{"t":4,"n":"Message Box"}]},{"t":3,"n":"TNAM - Display Time"},{"t":8,"n":"Menu Buttons","c":[{"t":6,"n":"Menu Button","c":[{"t":2,"n":"ITXT - Button Text"}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"Magic Effect Data","c":[{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Base Cost"},{"t":12,"n":"Assoc. Item"},{"t":3,"n":"Magic Skill"},{"t":3,"n":"Resist Value"},{"t":3,"n":"Counter Effect count"},{"t":11,"n":"Unused"},{"t":3,"n":"Casting Light"},{"t":5,"n":"Taper Weight"},{"t":3,"n":"Hit Shader"},{"t":3,"n":"Enchant Shader"},{"t":3,"n":"Minimum Skill Level"},{"t":6,"n":"Spellmaking","c":[{"t":3,"n":"Area"},{"t":5,"n":"Casting Time"}]},{"t":5,"n":"Taper Curve"},{"t":5,"n":"Taper Duration"},{"t":5,"n":"Second AV Weight"},{"t":3,"n":"Archtype"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Projectile"},{"t":3,"n":"Explosion"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Delivery"},{"t":3,"n":"Second Actor Value"},{"t":3,"n":"Casting Art"},{"t":3,"n":"Hit Effect Art"},{"t":3,"n":"Impact Data"},{"t":5,"n":"Skill Usage Multiplier"},{"t":6,"n":"Dual Casting","c":[{"t":3,"n":"Art"},{"t":5,"n":"Scale"}]},{"t":3,"n":"Enchant Art"},{"t":11,"n":"Unknown"},{"t":11,"n":"Unknown"},{"t":3,"n":"Equip Ability"},{"t":3,"n":"Image Space Modifier"},{"t":3,"n":"Perk to Apply"},{"t":3,"n":"Casting Sound Level"},{"t":6,"n":"Script Effect AI","c":[{"t":5,"n":"Score"},{"t":5,"n":"Delay Time"}]}]}]},{"t":9,"n":"Counter Effects","c":[{"t":3,"n":"ESCE - Effect"}]},{"t":8,"n":"SNDD - Sounds","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Type"},{"t":3,"n":"Sound"}]}]},{"t":2,"n":"DNAM - Magic Item Description"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"DATA - Flags"},{"t":3,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":12,"n":"Level"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags"},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":10,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":9,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":10,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":7,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"Skill #0 (OneHanded)"},{"t":3,"n":"Skill #1 (TwoHanded)"},{"t":3,"n":"Skill #2 (Marksman)"},{"t":3,"n":"Skill #3 (Block)"},{"t":3,"n":"Skill #4 (Smithing)"},{"t":3,"n":"Skill #5 (HeavyArmor)"},{"t":3,"n":"Skill #6 (LightArmor)"},{"t":3,"n":"Skill #7 (Pickpocket)"},{"t":3,"n":"Skill #8 (Lockpicking)"},{"t":3,"n":"Skill #9 (Sneak)"},{"t":3,"n":"Skill #10 (Alchemy)"},{"t":3,"n":"Skill #11 (Speechcraft)"},{"t":3,"n":"Skill #12 (Alteration)"},{"t":3,"n":"Skill #13 (Conjuration)"},{"t":3,"n":"Skill #14 (Destruction)"},{"t":3,"n":"Skill #15 (Illusion)"},{"t":3,"n":"Skill #16 (Restoration)"},{"t":3,"n":"Skill #17 (Enchanting)"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"Skill #0 (OneHanded)"},{"t":3,"n":"Skill #1 (TwoHanded)"},{"t":3,"n":"Skill #2 (Marksman)"},{"t":3,"n":"Skill #3 (Block)"},{"t":3,"n":"Skill #4 (Smithing)"},{"t":3,"n":"Skill #5 (HeavyArmor)"},{"t":3,"n":"Skill #6 (LightArmor)"},{"t":3,"n":"Skill #7 (Pickpocket)"},{"t":3,"n":"Skill #8 (Lockpicking)"},{"t":3,"n":"Skill #9 (Sneak)"},{"t":3,"n":"Skill #10 (Alchemy)"},{"t":3,"n":"Skill #11 (Speechcraft)"},{"t":3,"n":"Skill #12 (Alteration)"},{"t":3,"n":"Skill #13 (Conjuration)"},{"t":3,"n":"Skill #14 (Destruction)"},{"t":3,"n":"Skill #15 (Illusion)"},{"t":3,"n":"Skill #16 (Restoration)"},{"t":3,"n":"Skill #17 (Enchanting)"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"},{"t":11,"n":"Unused"}]},{"t":9,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":6,"n":"Perk VMAD","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]},{"t":6,"n":"Script Fragments Perk","c":[{"t":3,"n":"Unknown"},{"t":2,"n":"fileName"},{"t":9,"n":"Perk Fragments","c":[{"t":6,"n":"Perk Fragment","c":[{"t":3,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":3,"n":"Unknown"},{"t":2,"n":"scriptName"},{"t":2,"n":"fragmentName"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Trait"},{"t":3,"n":"Level"},{"t":3,"n":"Num Ranks"},{"t":3,"n":"Playable"},{"t":3,"n":"Hidden"}]},{"t":3,"n":"NNAM - Next Perk"},{"t":10,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":6,"n":"PRKE - Header","c":[{"t":3,"n":"Type"},{"t":3,"n":"Rank"},{"t":3,"n":"Priority"}]},{"t":12,"n":"DATA - Effect Data","c":[{"t":6,"n":"Quest + Stage","c":[{"t":3,"n":"Quest"},{"t":3,"n":"Quest Stage"},{"t":11,"n":"Unused"}]}]},{"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Gravity"},{"t":5,"n":"Speed"},{"t":5,"n":"Range"},{"t":3,"n":"Light"},{"t":3,"n":"Muzzle Flash - Light"},{"t":5,"n":"Tracer Chance"},{"t":5,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"n":"Explosion"},{"t":3,"n":"Sound"},{"t":5,"n":"Muzzle Flash - Duration"},{"t":5,"n":"Fade Duration"},{"t":5,"n":"Impact Force"},{"t":3,"n":"Sound - Countdown"},{"t":3,"n":"Sound - Disable"},{"t":3,"n":"Default Weapon Source"},{"t":5,"n":"Cone Spread"},{"t":5,"n":"Collision Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Relaunch Interval"},{"t":3,"n":"Decal Data"},{"t":3,"n":"Collision Layer"}]},{"t":6,"n":"Muzzle Flash Model","c":[{"t":2,"n":"NAM1 - Model Filename"}]},{"t":3,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"QUST - Quest","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":6,"n":"Quest VMAD","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]},{"t":6,"n":"Script Fragments Quest","c":[{"t":3,"n":"Unknown"},{"t":3,"n":"fragmentCount"},{"t":2,"n":"fileName"},{"t":9,"n":"Quest Fragments","c":[{"t":6,"n":"Quest Fragment","c":[{"t":3,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"n":"Quest Stage Index"},{"t":3,"n":"Unknown"},{"t":2,"n":"scriptName"},{"t":2,"n":"fragmentName"}]}]},{"t":9,"n":"Aliases","c":[{"t":6,"n":"Alias","c":[{"t":12,"n":"Object Union","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":9,"n":"Alias Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"DNAM - General","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Priority"},{"t":3,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"n":"Type"}]},{"t":2,"n":"ENAM - Event"},{"t":7,"n":"Text Display Globals","c":[{"t":3,"n":"QTGL - Global"}]},{"t":2,"n":"FLTR - Object Window Filter"},{"t":6,"n":"Quest Dialogue Conditions","c":[{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]}]},{"n":"NEXT - Marker"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]},{"t":10,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"INDX - Stage Index","c":[{"t":3,"n":"Stage Index"},{"t":3,"n":"Flags"},{"t":3,"n":"Unknown"}]}]}]},{"t":8,"n":"Objectives","c":[{"t":6,"n":"Objective","c":[{"t":3,"n":"QOBJ - Objective Index"},{"t":2,"n":"NNAM - Display Text"}]}]},{"t":11,"n":"ANAM - Aliases Marker"},{"t":8,"n":"Aliases","c":[{"t":6,"n":"Alias","c":[{"t":3,"n":"ALST - Reference Alias ID"},{"n":"ALED - Alias End"}]}]},{"t":2,"n":"NNAM - Description"},{"t":8,"n":"Targets","c":[{"t":6,"n":"Target","c":[{"t":6,"n":"QSTA - Target","c":[{"t":3,"n":"Target"},{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":9,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":3,"n":"WNAM - Skin"},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":10,"n":"Skill Boosts","c":[{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]},{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]},{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]},{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]},{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]},{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]},{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"n":"Male Height"},{"t":5,"n":"Female Height"},{"t":5,"n":"Male Weight"},{"t":5,"n":"Female Weight"},{"t":3,"n":"Flags"},{"t":5,"n":"Starting Health"},{"t":5,"n":"Starting Magicka"},{"t":5,"n":"Starting Stamina"},{"t":5,"n":"Base Carry Weight"},{"t":5,"n":"Base Mass"},{"t":5,"n":"Acceleration rate"},{"t":5,"n":"Deceleration rate"},{"t":3,"n":"Size"},{"t":3,"n":"Head Biped Object"},{"t":3,"n":"Hair Biped Object"},{"t":5,"n":"Injured Health Pct"},{"t":3,"n":"Shield Biped Object"},{"t":5,"n":"Health Regen"},{"t":5,"n":"Magicka Regen"},{"t":5,"n":"Stamina Regen"},{"t":5,"n":"Unarmed Damage"},{"t":5,"n":"Unarmed Reach"},{"t":3,"n":"Body Biped Object"},{"t":5,"n":"Aim Angle Tolerance"},{"t":5,"n":"Flight Radius"},{"t":5,"n":"Angular Acceleration Rate"},{"t":5,"n":"Angular Tolerance"},{"t":3,"n":"Flags 2"},{"t":6,"n":"Mount Data","c":[{"t":5,"n":"Offset X"},{"t":5,"n":"Offset Y"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"}]}]},{"n":"MNAM - Male Marker"},{"t":2,"n":"ANAM - Male Skeletal Model"},{"t":11,"n":"MODT - Texture Files Hashes"},{"n":"FNAM - Female Marker"},{"t":2,"n":"ANAM - Female Skeletal Model"},{"t":11,"n":"MODT - Texture Files Hashes"},{"n":"NAM2 - Marker NAM2 #1"},{"t":9,"n":"Movement Type Names","c":[{"t":2,"n":"MTNM - Name"}]},{"t":7,"n":"VTCK - Voices","c":[{"t":3,"n":"Voice #0 (Male)"},{"t":3,"n":"Voice #1 (Female)"}]},{"t":7,"n":"DNAM - Decapitate Armors","c":[{"t":3,"n":"Decapitate Armor #0 (Male)"},{"t":3,"n":"Decapitate Armor #1 (Female)"}]},{"t":7,"n":"HCLF - Default Hair Colors","c":[{"t":3,"n":"Default Hair Color #0 (Male)"},{"t":3,"n":"Default Hair Color #1 (Female)"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]}]}]},{"t":6,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"INDX - Index"}]}]}]},{"t":6,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"INDX - Index"}]}]}]}]},{"t":9,"n":"HNAM - Hairs","c":[{"t":3,"n":"Hair"}]},{"t":9,"n":"ENAM - Eyes","c":[{"t":3,"n":"Eye"}]},{"t":3,"n":"GNAM - Body Part Data"},{"n":"NAM2 - Marker NAM2 #2"},{"n":"NAM3 - Marker NAM3 #3"},{"t":6,"n":"Male Behavior Graph","c":[{"n":"MNAM - Male Data Marker"}]},{"t":6,"n":"Female Behavior Graph","c":[{"n":"FNAM - Female Data Marker"}]},{"t":3,"n":"NAM4 - Material Type"},{"t":3,"n":"NAM5 - Impact Data Set"},{"t":3,"n":"NAM7 - Decapitation FX"},{"t":3,"n":"ONAM - Open Loot Sound"},{"t":3,"n":"LNAM - Close Loot Sound"},{"t":7,"n":"Biped Object Names","c":[{"t":2,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"}]}]},{"t":3,"n":"VNAM - Equipment Flags"},{"t":9,"n":"Equip Slots","c":[{"t":3,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":7,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"n":"Male Head Data","c":[{"n":"MNAM - Male Data Marker"}]},{"t":6,"n":"Female Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"n":"FNAM - Female Data Marker"}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","c":[{"t":3,"n":"Cell"},{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Persistent"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":3,"n":"NAME - Base"},{"t":6,"n":"XMBO - Bound Half Extents","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"XPRM - Primitive","c":[{"t":6,"n":"Bounds","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Color","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"n":"Size","c":[{"t":5,"n":"Width"},{"t":5,"n":"Height"}]},{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation (Quaternion?)","c":[{"t":5,"n":"q1"},{"t":5,"n":"q2"},{"t":5,"n":"q3"},{"t":5,"n":"q4"}]}]},{"t":8,"n":"XPOD - Portal Data","c":[{"t":6,"n":"References #0","c":[{"t":3,"n":"Origin"},{"t":3,"n":"Destination"}]}]},{"t":6,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"n":"Size","c":[{"t":5,"n":"Width"},{"t":5,"n":"Height"}]},{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation (Quaternion?)","c":[{"t":5,"n":"q1"},{"t":5,"n":"q2"},{"t":5,"n":"q3"},{"t":5,"n":"q4"}]}]},{"t":6,"n":"Bound Data","c":[{"t":6,"n":"XRMR - Header","c":[{"t":3,"n":"Linked Rooms Count"},{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"}]}]},{"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"n":"XRDS - Radius"},{"t":10,"n":"Reflected\/Refracted By","c":[{"t":6,"n":"XPWR - Water","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Type"}]}]},{"t":9,"n":"Lit Water","c":[{"t":3,"n":"XLTW - Water"}]},{"t":3,"n":"XEMI - Emittance"},{"t":6,"n":"XLIG - Light Data","c":[{"t":5,"n":"FOV 90+\/-"},{"t":5,"n":"Fade 1.35+\/-"},{"t":11,"n":"Unknown"},{"t":5,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"XALP - Alpha","c":[{"t":3,"n":"Cutoff"},{"t":3,"n":"Base"}]},{"t":6,"n":"XTEL - Teleport Destination","c":[{"t":3,"n":"Door"},{"t":6,"n":"Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]},{"t":3,"n":"Flags"}]},{"t":3,"n":"XTNM - Teleport Message Box"},{"t":3,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"n":"XSCL - Scale"},{"t":3,"n":"XSPC - Spawn Container"},{"t":6,"n":"Activate Parents","c":[{"t":3,"n":"XAPD - Flags"}]},{"t":3,"n":"XLIB - Leveled Item Base Object"},{"t":3,"n":"XLCM - Level Modifier"},{"t":3,"n":"XLCN - Persistent Location"},{"t":3,"n":"XTRI - Collision Layer"},{"t":6,"n":"XLOC - Lock Data","c":[{"t":3,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"n":"Key"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":11,"n":"Unused"}]},{"t":3,"n":"XEZN - Encounter Zone"},{"t":6,"n":"XNDP - Navigation Door Link","c":[{"t":3,"n":"Navigation Mesh"},{"t":3,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"n":"XLRT - Location Ref Type","c":[{"t":3,"n":"Ref #0"}]},{"n":"XIS2 - Ignored by Sandbox"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XCNT - Item Count"},{"t":5,"n":"XCHG - Charge"},{"t":3,"n":"XLRL - Location Reference"},{"t":6,"n":"XESP - Enable Parent","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":8,"n":"Linked References","c":[{"t":6,"n":"XLKR - Linked Reference","c":[{"t":3,"n":"Keyword\/Ref"},{"t":3,"n":"Ref"}]}]},{"t":8,"n":"Patrol","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"XPRD - Idle Time"},{"n":"XPPA - Patrol Script Marker"},{"t":3,"n":"INAM - Idle"}]}]},{"t":3,"n":"XACT - Action Flag"},{"t":5,"n":"XHTW - Head-Tracking Weight"},{"t":5,"n":"XFVC - Favor Cost"},{"n":"ONAM - Open by Default"},{"t":6,"p":1,"n":"Map Marker","c":[{"n":"XMRK - Map Marker Data"},{"t":3,"n":"FNAM - Map Flags"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"TNAM - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"XATR - Attach Ref"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown #0"},{"t":5,"n":"Unknown #1"},{"t":5,"n":"Unknown #2"}]},{"t":6,"n":"DATA - Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"SCRL - Scroll","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":6,"n":"DATA - Item","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"MDOB - Menu Display Object"},{"t":2,"n":"DESC - Description"},{"t":8,"n":"Words of Power","c":[{"t":6,"n":"SNAM - ","c":[{"t":3,"n":"Word"},{"t":3,"n":"Spell"},{"t":5,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SOUL - Contained Soul"},{"t":3,"n":"SLCP - Maximum Capacity"},{"t":3,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SNCT - Sound Category","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"PNAM - Parent"},{"t":3,"n":"VNAM - Static Volume Multiplier"},{"t":3,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SPEL - Spell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"TREE - Tree","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Harvest Sound"},{"t":6,"n":"PFPC - Ingredient Production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer"},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"CNAM - Tree Data","c":[{"t":5,"n":"Trunk Flexibility"},{"t":5,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Leaf Amplitude"},{"t":5,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"WATR - Water","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":7,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"n":"ANAM - Opacity"},{"t":3,"n":"FNAM - Flags"},{"t":11,"n":"MNAM - Unused"},{"t":3,"n":"TNAM - Material"},{"t":3,"n":"SNAM - Open Sound"},{"t":3,"n":"XNAM - Spell"},{"t":3,"n":"INAM - Image Space"},{"t":3,"n":"DATA - Damage Per Second"},{"t":6,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Specular Properties - Sun Specular Power"},{"t":5,"n":"Water Properties - Reflectivity Amount"},{"t":5,"n":"Water Properties - Fresnel Amount"},{"t":11,"n":"Unknown"},{"t":5,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"n":"Shallow Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Deep Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Reflection Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":11,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Displacement Simulator - Starting Size"},{"t":5,"n":"Displacement Simulator - Force"},{"t":5,"n":"Displacement Simulator - Velocity"},{"t":5,"n":"Displacement Simulator - Falloff"},{"t":5,"n":"Displacement Simulator - Dampner"},{"t":5,"n":"Unknown"},{"t":5,"n":"Noise Properties - Noise Falloff"},{"t":5,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"n":"Unknown"},{"t":5,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"n":"Water Properties - Refraction Magnitude"},{"t":5,"n":"Specular Properties - Specular Power"},{"t":5,"n":"Unknown"},{"t":5,"n":"Specular Properties - Specular Radius"},{"t":5,"n":"Specular Properties - Specular Brightness"},{"t":5,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"n":"Water Properties - Reflection Magnitude"},{"t":5,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"n":"Depth Properties - Reflections"},{"t":5,"n":"Depth Properties - Refraction"},{"t":5,"n":"Depth Properties - Normals"},{"t":5,"n":"Depth Properties - Specular Lighting"},{"t":5,"n":"Specular Properties - Sun Sparkle Power"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"n":"NAM0 - Linear Velocity","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"NAM1 - Angular Velocity","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":2,"n":"NAM2 - Noise Texture"},{"t":2,"n":"NAM3 - Unused"},{"t":2,"n":"NAM4 - Unused"}]},{"t":1,"p":1,"n":"WEAP - Weapon","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Has Scope","c":[{"t":2,"n":"MOD3 - Model Filename"}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"n":"INAM - Impact Data Set"},{"t":3,"n":"WNAM - 1st Person Model Object"},{"t":3,"n":"SNAM - Attack Sound"},{"t":3,"n":"XNAM - Attack Sound 2D"},{"t":3,"n":"NAM7 - Attack Loop Sound"},{"t":3,"n":"TNAM - Attack Fail Sound"},{"t":3,"n":"UNAM - Idle Sound"},{"t":3,"n":"NAM9 - Equip Sound"},{"t":3,"n":"NAM8 - Unequip Sound"},{"t":6,"n":"DATA - Game Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"},{"t":3,"n":"Damage"}]},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Speed"},{"t":5,"n":"Reach"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":5,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"n":"Base VATS To-Hit Chance"},{"t":3,"n":"Attack Animation"},{"t":3,"n":"# Projectiles"},{"t":3,"n":"Embedded Weapon AV (unused)"},{"t":5,"n":"Range Min"},{"t":5,"n":"Range Max"},{"t":3,"n":"On Hit"},{"t":3,"n":"Flags2"},{"t":5,"n":"Animation Attack Mult"},{"t":5,"n":"Unknown"},{"t":5,"n":"Rumble - Left Motor Strength"},{"t":5,"n":"Rumble - Right Motor Strength"},{"t":5,"n":"Rumble - Duration"},{"t":11,"n":"Unknown"},{"t":3,"n":"Skill"},{"t":11,"n":"Unknown"},{"t":3,"n":"Resist"},{"t":11,"n":"Unknown"},{"t":5,"n":"Stagger"}]},{"t":6,"n":"CRDT - Critical Data","c":[{"t":3,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"n":"% Mult"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Effect"}]},{"t":3,"n":"VNAM - Detection Sound Level"},{"t":3,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"Unused RNAM","c":[{"t":11,"n":"RNAM - Unknown"}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"}]},{"t":3,"n":"LTMP - Interior Lighting"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XLCN - Location"},{"t":6,"n":"Parent","c":[{"t":3,"n":"WNAM - Worldspace"},{"t":6,"n":"PNAM - ","c":[{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"CNAM - Climate"},{"t":3,"n":"NAM2 - Water"},{"t":3,"n":"NAM3 - LOD Water Type"},{"t":5,"n":"NAM4 - LOD Water Height"},{"t":6,"n":"DNAM - Land Data","c":[{"t":5,"n":"Default Land Height"},{"t":5,"n":"Default Water Height"}]},{"t":2,"n":"ICON - Map Image"},{"t":6,"n":"Cloud Model","c":[{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]}]},{"t":6,"n":"MNAM - Map Data","c":[{"t":6,"n":"Usable Dimensions","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"}]},{"t":6,"n":"Cell Coordinates","c":[{"t":6,"n":"NW Cell","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"}]},{"t":6,"n":"SE Cell","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"}]}]},{"t":6,"n":"Camera Data","c":[{"t":5,"n":"Min Height"},{"t":5,"n":"Max Height"},{"t":5,"n":"Initial Pitch"}]}]},{"t":6,"n":"ONAM - World Map Offset Data","c":[{"t":5,"n":"World Map Scale"},{"t":5,"n":"Cell X Offset"},{"t":5,"n":"Cell Y Offset"},{"t":5,"n":"Cell Z Offset"}]},{"t":5,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"n":"DATA - Flags"},{"t":6,"n":"Object Bounds","c":[{"t":6,"n":"NAM0 - Min","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"}]},{"t":6,"n":"NAM9 - Max","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"}]}]},{"t":3,"n":"ZNAM - Music"},{"t":2,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":2,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"ALCH - Ingestible","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"ETYP - Equipment Type"},{"t":5,"n":"DATA - Weight"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Value"},{"t":3,"n":"Flags"},{"t":3,"n":"Addiction"},{"t":5,"n":"Addiction Chance"},{"t":3,"n":"Sound - Consume"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]}]},"name":"Bash.Names","hash":"$BB2ECCA2","color":255} \ No newline at end of file +{"records":"ALCH,AMMO,APPA,ARMO,AVIF,BOOK,CLAS,CLFM,CONT,DIAL,DOOR,ENCH,EXPL,EYES,FACT,FLOR,FURN,HAZD,HDPT,INGR,KEYM,LCTN,LIGH,MESG,MGEF,MISC,MSTT,NPC_,PERK,PROJ,QUST,RACE,REFR,SCRL,SHOU,SLGM,SNCT,SPEL,TREE,WATR,WEAP,WRLD,ACTI","description":"Names tag from Wrye Bash.\r\n\r\nUsed when the mod changes the names of things.","tree":{"records":[{"t":1,"p":1,"n":"ALCH - Ingestible","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"ETYP - Equipment Type"},{"t":5,"n":"DATA - Weight"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Value"},{"t":3,"n":"Flags"},{"t":3,"n":"Addiction"},{"t":5,"n":"Addiction Chance"},{"t":3,"n":"Sound - Consume"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Projectile"},{"t":3,"n":"Flags"},{"t":5,"n":"Damage"},{"t":3,"n":"Value"}]},{"t":2,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"QUAL - Quality"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMO - Armor","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Male world model","c":[{"t":2,"n":"MOD2 - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Female world model","c":[{"t":2,"n":"MOD4 - Model Filename"}]},{"t":6,"n":"Icon 2 (female)","c":[{"t":2,"n":"ICO2 - Large Icon filename"}]},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":7,"n":"Armature","c":[{"t":3,"n":"MODL - Model Filename"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"DNAM - Armor Rating"},{"t":3,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":2,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"n":"AVSK - Skill","c":[{"t":5,"n":"Skill Use Mult"},{"t":5,"n":"Skill Offset Mult"},{"t":5,"n":"Skill Improve Mult"},{"t":5,"n":"Skill Improve Offset"}]},{"t":8,"n":"Perk Tree","c":[{"t":6,"n":"Node","c":[{"t":3,"n":"PNAM - Perk"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":2,"n":"DESC - Book Text"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Teaches"},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"INAM - Inventory Art"},{"t":2,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"CLAS - Class","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"DATA - ","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Teaches"},{"t":3,"n":"Maximum training level"},{"t":7,"n":"Skill Weights","c":[{"t":3,"n":"Weight #0 (One Handed)"},{"t":3,"n":"Weight #1 (Two Handed)"},{"t":3,"n":"Weight #2 (Archery)"},{"t":3,"n":"Weight #3 (Block)"},{"t":3,"n":"Weight #4 (Smithing)"},{"t":3,"n":"Weight #5 (Heavy Armor)"},{"t":3,"n":"Weight #6 (Light Armor)"},{"t":3,"n":"Weight #7 (Pickpocket)"},{"t":3,"n":"Weight #8 (Lockpicking)"},{"t":3,"n":"Weight #9 (Sneak)"},{"t":3,"n":"Weight #10 (Alchemy)"},{"t":3,"n":"Weight #11 (Speech)"},{"t":3,"n":"Weight #12 (Alteration)"},{"t":3,"n":"Weight #13 (Conjuration)"},{"t":3,"n":"Weight #14 (Destruction)"},{"t":3,"n":"Weight #15 (Illusion)"},{"t":3,"n":"Weight #16 (Restoration)"},{"t":3,"n":"Weight #17 (Enchanting)"}]},{"t":5,"n":"Bleedout Default"},{"t":3,"n":"Voice Points"},{"t":7,"n":"Attribute Weights","c":[{"t":3,"n":"Weight #0 (Health)"},{"t":3,"n":"Weight #1 (Magicka)"},{"t":3,"n":"Weight #2 (Stamina)"},{"t":3,"n":"Weight #3 (Unknown)"}]}]}]},{"t":1,"p":1,"n":"CLFM - Color","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CONT - Container","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"n":"PNAM - Priority"},{"t":3,"n":"BNAM - Branch"},{"t":3,"n":"QNAM - Quest"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Topic Flags"},{"t":3,"n":"Category"},{"t":3,"n":"Subtype"}]},{"t":2,"n":"SNAM - Subtype Name"},{"t":3,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DOOR - Door","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"ANAM - Sound - Close"},{"t":3,"n":"BNAM - Sound - Loop"},{"t":3,"n":"FNAM - Flags"}]},{"t":1,"p":1,"n":"ENCH - Object Effect","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Enchantment Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Enchantment Amount"},{"t":3,"n":"Target Type"},{"t":3,"n":"Enchant Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Base Enchantment"},{"t":3,"n":"Worn Restrictions"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"EXPL - Explosion","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"MNAM - Image Space Modifier"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Light"},{"t":3,"n":"Sound 1"},{"t":3,"n":"Sound 2"},{"t":3,"n":"Impact Data Set"},{"t":3,"n":"Placed Object"},{"t":3,"n":"Spawn Projectile"},{"t":5,"n":"Force"},{"t":5,"n":"Damage"},{"t":5,"n":"Radius"},{"t":5,"n":"IS Radius"},{"t":5,"n":"Vertical Offset Mult"},{"t":3,"n":"Flags"},{"t":3,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"n":"ICON - Texture"},{"t":3,"n":"DATA - Flags"}]},{"t":1,"p":1,"n":"FACT - Faction","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":10,"n":"Relations","c":[{"t":6,"n":"XNAM - Relation","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Modifier"},{"t":3,"n":"Group Combat Reaction"}]}]},{"t":6,"n":"DATA - Flags","c":[{"t":3,"n":"Flags"}]},{"t":3,"n":"JAIL - Exterior Jail Marker"},{"t":3,"n":"WAIT - Follower Wait Marker"},{"t":3,"n":"STOL - Stolen Goods Container"},{"t":3,"n":"PLCN - Player Inventory Container"},{"t":3,"n":"CRGR - Shared Crime Faction List"},{"t":3,"n":"JOUT - Jail Outfit"},{"t":6,"n":"CRVA - Crime Values","c":[{"t":3,"n":"Arrest"},{"t":3,"n":"Attack On Sight"},{"t":3,"n":"Murder"},{"t":3,"n":"Assault"},{"t":3,"n":"Trespass"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"n":"Steal Multiplier"},{"t":3,"n":"Escape"},{"t":3,"n":"Werewolf"}]},{"t":10,"n":"Ranks","c":[{"t":6,"n":"Rank","c":[{"t":3,"n":"RNAM - Rank#"}]}]},{"t":3,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"n":"VENC - Merchant Container"},{"t":6,"n":"VENV - Vendor Values","c":[{"t":3,"n":"Start Hour"},{"t":3,"n":"End Hour"},{"t":3,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"n":"Only Buys Stolen Items"},{"t":3,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"n":"PLVD - Location","c":[{"t":3,"n":"Type"},{"t":12,"n":"Location Value"},{"t":3,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Sound"},{"t":6,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer "},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"},{"t":3,"n":"MNAM - Active Markers \/ Flags"},{"t":6,"n":"WBDT - Workbench Data","c":[{"t":3,"n":"Bench Type"},{"t":3,"n":"Uses Skill"}]},{"t":3,"n":"NAM1 - Associated Spell"},{"t":8,"n":"Markers","c":[{"t":6,"n":"Marker","c":[{"t":3,"n":"ENAM - Marker Index"}]}]},{"t":8,"n":"Marker Entry Points","c":[{"t":6,"n":"FNPR - Marker","c":[{"t":3,"n":"Type"},{"t":3,"n":"Entry Points"}]}]},{"t":2,"n":"XMRK - Model Filename"}]},{"t":1,"p":1,"n":"HAZD - Hazard","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":3,"n":"MNAM - Image Space Modifier"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Limit"},{"t":5,"n":"Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Image Space Radius"},{"t":5,"n":"Target Interval"},{"t":3,"n":"Flags"},{"t":3,"n":"Spell"},{"t":3,"n":"Light"},{"t":3,"n":"Impact Data Set"},{"t":3,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":3,"n":"DATA - Flags"},{"t":3,"n":"PNAM - Type"},{"t":9,"n":"Extra Parts","c":[{"t":3,"n":"HNAM - Part"}]},{"t":8,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"NAM0 - Part Type"},{"t":2,"n":"NAM1 - Filename"}]}]},{"t":3,"n":"TNAM - Texture Set"},{"t":3,"n":"CNAM - Color"},{"t":3,"n":"RNAM - Valid Races"}]},{"t":1,"p":1,"n":"INGR - Ingredient","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Ingredient Value"},{"t":3,"n":"Flags"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"LCTN - Location","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":8,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":8,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref #0"}]},{"t":8,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":8,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor #0"}]},{"t":8,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":8,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref #0"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":8,"n":"Coordinates","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":8,"n":"Coordinates","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":8,"n":"Coordinates","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref #0"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref #0"}]},{"t":8,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":8,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LIGH - Light","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Time"},{"t":3,"n":"Radius"},{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unknown"}]},{"t":3,"n":"Flags"},{"t":5,"n":"Falloff Exponent"},{"t":5,"n":"FOV"},{"t":5,"n":"Near Clip"},{"t":6,"n":"Flicker Effect","c":[{"t":5,"n":"Period"},{"t":5,"n":"Intensity Amplitude"},{"t":5,"n":"Movement Amplitude"}]},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":5,"n":"FNAM - Fade value"},{"t":3,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"MESG - Message","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"INAM - Icon (unused)"},{"t":3,"n":"QNAM - Owner Quest"},{"t":3,"n":"DNAM - Flags","c":[{"t":4,"n":"Message Box"}]},{"t":3,"n":"TNAM - Display Time"},{"t":8,"n":"Menu Buttons","c":[{"t":6,"n":"Menu Button","c":[{"t":2,"n":"ITXT - Button Text"}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"Magic Effect Data","c":[{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Base Cost"},{"t":12,"n":"Assoc. Item"},{"t":3,"n":"Magic Skill"},{"t":3,"n":"Resist Value"},{"t":3,"n":"Counter Effect count"},{"t":11,"n":"Unused"},{"t":3,"n":"Casting Light"},{"t":5,"n":"Taper Weight"},{"t":3,"n":"Hit Shader"},{"t":3,"n":"Enchant Shader"},{"t":3,"n":"Minimum Skill Level"},{"t":6,"n":"Spellmaking","c":[{"t":3,"n":"Area"},{"t":5,"n":"Casting Time"}]},{"t":5,"n":"Taper Curve"},{"t":5,"n":"Taper Duration"},{"t":5,"n":"Second AV Weight"},{"t":3,"n":"Archtype"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Projectile"},{"t":3,"n":"Explosion"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Delivery"},{"t":3,"n":"Second Actor Value"},{"t":3,"n":"Casting Art"},{"t":3,"n":"Hit Effect Art"},{"t":3,"n":"Impact Data"},{"t":5,"n":"Skill Usage Multiplier"},{"t":6,"n":"Dual Casting","c":[{"t":3,"n":"Art"},{"t":5,"n":"Scale"}]},{"t":3,"n":"Enchant Art"},{"t":11,"n":"Unknown"},{"t":11,"n":"Unknown"},{"t":3,"n":"Equip Ability"},{"t":3,"n":"Image Space Modifier"},{"t":3,"n":"Perk to Apply"},{"t":3,"n":"Casting Sound Level"},{"t":6,"n":"Script Effect AI","c":[{"t":5,"n":"Score"},{"t":5,"n":"Delay Time"}]}]}]},{"t":9,"n":"Counter Effects","c":[{"t":3,"n":"ESCE - Effect"}]},{"t":8,"n":"SNDD - Sounds","c":[{"t":6,"n":" #0","c":[{"t":3,"n":"Type"},{"t":3,"n":"Sound"}]}]},{"t":2,"n":"DNAM - Magic Item Description"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"DATA - Flags"},{"t":3,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":12,"n":"Level"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags"},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":10,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":9,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":10,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":7,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"Skill #0 (OneHanded)"},{"t":3,"n":"Skill #1 (TwoHanded)"},{"t":3,"n":"Skill #2 (Marksman)"},{"t":3,"n":"Skill #3 (Block)"},{"t":3,"n":"Skill #4 (Smithing)"},{"t":3,"n":"Skill #5 (HeavyArmor)"},{"t":3,"n":"Skill #6 (LightArmor)"},{"t":3,"n":"Skill #7 (Pickpocket)"},{"t":3,"n":"Skill #8 (Lockpicking)"},{"t":3,"n":"Skill #9 (Sneak)"},{"t":3,"n":"Skill #10 (Alchemy)"},{"t":3,"n":"Skill #11 (Speechcraft)"},{"t":3,"n":"Skill #12 (Alteration)"},{"t":3,"n":"Skill #13 (Conjuration)"},{"t":3,"n":"Skill #14 (Destruction)"},{"t":3,"n":"Skill #15 (Illusion)"},{"t":3,"n":"Skill #16 (Restoration)"},{"t":3,"n":"Skill #17 (Enchanting)"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"Skill #0 (OneHanded)"},{"t":3,"n":"Skill #1 (TwoHanded)"},{"t":3,"n":"Skill #2 (Marksman)"},{"t":3,"n":"Skill #3 (Block)"},{"t":3,"n":"Skill #4 (Smithing)"},{"t":3,"n":"Skill #5 (HeavyArmor)"},{"t":3,"n":"Skill #6 (LightArmor)"},{"t":3,"n":"Skill #7 (Pickpocket)"},{"t":3,"n":"Skill #8 (Lockpicking)"},{"t":3,"n":"Skill #9 (Sneak)"},{"t":3,"n":"Skill #10 (Alchemy)"},{"t":3,"n":"Skill #11 (Speechcraft)"},{"t":3,"n":"Skill #12 (Alteration)"},{"t":3,"n":"Skill #13 (Conjuration)"},{"t":3,"n":"Skill #14 (Destruction)"},{"t":3,"n":"Skill #15 (Illusion)"},{"t":3,"n":"Skill #16 (Restoration)"},{"t":3,"n":"Skill #17 (Enchanting)"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"},{"t":11,"n":"Unused"}]},{"t":9,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":6,"n":"Perk VMAD","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]},{"t":6,"n":"Script Fragments Perk","c":[{"t":3,"n":"Unknown"},{"t":2,"n":"fileName"},{"t":9,"n":"Perk Fragments","c":[{"t":6,"n":"Perk Fragment","c":[{"t":3,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":3,"n":"Unknown"},{"t":2,"n":"scriptName"},{"t":2,"n":"fragmentName"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Trait"},{"t":3,"n":"Level"},{"t":3,"n":"Num Ranks"},{"t":3,"n":"Playable"},{"t":3,"n":"Hidden"}]},{"t":3,"n":"NNAM - Next Perk"},{"t":10,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":6,"n":"PRKE - Header","c":[{"t":3,"n":"Type"},{"t":3,"n":"Rank"},{"t":3,"n":"Priority"}]},{"t":12,"n":"DATA - Effect Data","c":[{"t":6,"n":"Quest + Stage","c":[{"t":3,"n":"Quest"},{"t":3,"n":"Quest Stage"},{"t":11,"n":"Unused"}]}]},{"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Gravity"},{"t":5,"n":"Speed"},{"t":5,"n":"Range"},{"t":3,"n":"Light"},{"t":3,"n":"Muzzle Flash - Light"},{"t":5,"n":"Tracer Chance"},{"t":5,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"n":"Explosion"},{"t":3,"n":"Sound"},{"t":5,"n":"Muzzle Flash - Duration"},{"t":5,"n":"Fade Duration"},{"t":5,"n":"Impact Force"},{"t":3,"n":"Sound - Countdown"},{"t":3,"n":"Sound - Disable"},{"t":3,"n":"Default Weapon Source"},{"t":5,"n":"Cone Spread"},{"t":5,"n":"Collision Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Relaunch Interval"},{"t":3,"n":"Decal Data"},{"t":3,"n":"Collision Layer"}]},{"t":6,"n":"Muzzle Flash Model","c":[{"t":2,"n":"NAM1 - Model Filename"}]},{"t":3,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"QUST - Quest","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":6,"n":"Quest VMAD","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]},{"t":6,"n":"Script Fragments Quest","c":[{"t":3,"n":"Unknown"},{"t":3,"n":"fragmentCount"},{"t":2,"n":"fileName"},{"t":9,"n":"Quest Fragments","c":[{"t":6,"n":"Quest Fragment","c":[{"t":3,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"n":"Quest Stage Index"},{"t":3,"n":"Unknown"},{"t":2,"n":"scriptName"},{"t":2,"n":"fragmentName"}]}]},{"t":9,"n":"Aliases","c":[{"t":6,"n":"Alias","c":[{"t":12,"n":"Object Union","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":9,"n":"Alias Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"DNAM - General","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Priority"},{"t":3,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"n":"Type"}]},{"t":2,"n":"ENAM - Event"},{"t":7,"n":"Text Display Globals","c":[{"t":3,"n":"QTGL - Global"}]},{"t":2,"n":"FLTR - Object Window Filter"},{"t":6,"n":"Quest Dialogue Conditions","c":[{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]}]},{"n":"NEXT - Marker"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":12,"n":"Comparison Value"},{"t":3,"n":"Function"},{"t":11,"n":"Unused"},{"t":12,"n":"Parameter #1"},{"t":12,"n":"Parameter #2"},{"t":3,"n":"Run On"},{"t":12,"n":"Reference"},{"t":3,"n":"Parameter #3"}]}]}]},{"t":10,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"INDX - Stage Index","c":[{"t":3,"n":"Stage Index"},{"t":3,"n":"Flags"},{"t":3,"n":"Unknown"}]}]}]},{"t":8,"n":"Objectives","c":[{"t":6,"n":"Objective","c":[{"t":3,"n":"QOBJ - Objective Index"},{"t":2,"n":"NNAM - Display Text"}]}]},{"t":11,"n":"ANAM - Aliases Marker"},{"t":8,"n":"Aliases","c":[{"t":6,"n":"Alias","c":[{"t":3,"n":"ALST - Reference Alias ID"},{"n":"ALED - Alias End"}]}]},{"t":2,"n":"NNAM - Description"},{"t":8,"n":"Targets","c":[{"t":6,"n":"Target","c":[{"t":6,"n":"QSTA - Target","c":[{"t":3,"n":"Target"},{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":9,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":3,"n":"WNAM - Skin"},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":10,"n":"Skill Boosts","c":[{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]},{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]},{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]},{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]},{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]},{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]},{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"n":"Male Height"},{"t":5,"n":"Female Height"},{"t":5,"n":"Male Weight"},{"t":5,"n":"Female Weight"},{"t":3,"n":"Flags"},{"t":5,"n":"Starting Health"},{"t":5,"n":"Starting Magicka"},{"t":5,"n":"Starting Stamina"},{"t":5,"n":"Base Carry Weight"},{"t":5,"n":"Base Mass"},{"t":5,"n":"Acceleration rate"},{"t":5,"n":"Deceleration rate"},{"t":3,"n":"Size"},{"t":3,"n":"Head Biped Object"},{"t":3,"n":"Hair Biped Object"},{"t":5,"n":"Injured Health Pct"},{"t":3,"n":"Shield Biped Object"},{"t":5,"n":"Health Regen"},{"t":5,"n":"Magicka Regen"},{"t":5,"n":"Stamina Regen"},{"t":5,"n":"Unarmed Damage"},{"t":5,"n":"Unarmed Reach"},{"t":3,"n":"Body Biped Object"},{"t":5,"n":"Aim Angle Tolerance"},{"t":5,"n":"Flight Radius"},{"t":5,"n":"Angular Acceleration Rate"},{"t":5,"n":"Angular Tolerance"},{"t":3,"n":"Flags 2"},{"t":6,"n":"Mount Data","c":[{"t":5,"n":"Offset X"},{"t":5,"n":"Offset Y"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"}]}]},{"n":"MNAM - Male Marker"},{"t":2,"n":"ANAM - Male Skeletal Model"},{"t":11,"n":"MODT - Texture Files Hashes"},{"n":"FNAM - Female Marker"},{"t":2,"n":"ANAM - Female Skeletal Model"},{"t":11,"n":"MODT - Texture Files Hashes"},{"n":"NAM2 - Marker NAM2 #1"},{"t":9,"n":"Movement Type Names","c":[{"t":2,"n":"MTNM - Name"}]},{"t":7,"n":"VTCK - Voices","c":[{"t":3,"n":"Voice #0 (Male)"},{"t":3,"n":"Voice #1 (Female)"}]},{"t":7,"n":"DNAM - Decapitate Armors","c":[{"t":3,"n":"Decapitate Armor #0 (Male)"},{"t":3,"n":"Decapitate Armor #1 (Female)"}]},{"t":7,"n":"HCLF - Default Hair Colors","c":[{"t":3,"n":"Default Hair Color #0 (Male)"},{"t":3,"n":"Default Hair Color #1 (Female)"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]}]}]},{"t":6,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"INDX - Index"}]}]}]},{"t":6,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"INDX - Index"}]}]}]}]},{"t":9,"n":"HNAM - Hairs","c":[{"t":3,"n":"Hair"}]},{"t":9,"n":"ENAM - Eyes","c":[{"t":3,"n":"Eye"}]},{"t":3,"n":"GNAM - Body Part Data"},{"n":"NAM2 - Marker NAM2 #2"},{"n":"NAM3 - Marker NAM3 #3"},{"t":6,"n":"Male Behavior Graph","c":[{"n":"MNAM - Male Data Marker"}]},{"t":6,"n":"Female Behavior Graph","c":[{"n":"FNAM - Female Data Marker"}]},{"t":3,"n":"NAM4 - Material Type"},{"t":3,"n":"NAM5 - Impact Data Set"},{"t":3,"n":"NAM7 - Decapitation FX"},{"t":3,"n":"ONAM - Open Loot Sound"},{"t":3,"n":"LNAM - Close Loot Sound"},{"t":7,"n":"Biped Object Names","c":[{"t":2,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"}]}]},{"t":3,"n":"VNAM - Equipment Flags"},{"t":9,"n":"Equip Slots","c":[{"t":3,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":7,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"n":"Male Head Data","c":[{"n":"MNAM - Male Data Marker"}]},{"t":6,"n":"Female Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"n":"FNAM - Female Data Marker"}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","c":[{"t":3,"n":"Cell"},{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Persistent"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":3,"n":"NAME - Base"},{"t":6,"n":"XMBO - Bound Half Extents","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"XPRM - Primitive","c":[{"t":6,"n":"Bounds","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Color","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"n":"Size","c":[{"t":5,"n":"Width"},{"t":5,"n":"Height"}]},{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation (Quaternion?)","c":[{"t":5,"n":"q1"},{"t":5,"n":"q2"},{"t":5,"n":"q3"},{"t":5,"n":"q4"}]}]},{"t":8,"n":"XPOD - Portal Data","c":[{"t":6,"n":"References #0","c":[{"t":3,"n":"Origin"},{"t":3,"n":"Destination"}]}]},{"t":6,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"n":"Size","c":[{"t":5,"n":"Width"},{"t":5,"n":"Height"}]},{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation (Quaternion?)","c":[{"t":5,"n":"q1"},{"t":5,"n":"q2"},{"t":5,"n":"q3"},{"t":5,"n":"q4"}]}]},{"t":6,"n":"Bound Data","c":[{"t":6,"n":"XRMR - Header","c":[{"t":3,"n":"Linked Rooms Count"},{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"}]}]},{"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"n":"XRDS - Radius"},{"t":10,"n":"Reflected\/Refracted By","c":[{"t":6,"n":"XPWR - Water","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Type"}]}]},{"t":9,"n":"Lit Water","c":[{"t":3,"n":"XLTW - Water"}]},{"t":3,"n":"XEMI - Emittance"},{"t":6,"n":"XLIG - Light Data","c":[{"t":5,"n":"FOV 90+\/-"},{"t":5,"n":"Fade 1.35+\/-"},{"t":11,"n":"Unknown"},{"t":5,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"XALP - Alpha","c":[{"t":3,"n":"Cutoff"},{"t":3,"n":"Base"}]},{"t":6,"n":"XTEL - Teleport Destination","c":[{"t":3,"n":"Door"},{"t":6,"n":"Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]},{"t":3,"n":"Flags"}]},{"t":3,"n":"XTNM - Teleport Message Box"},{"t":3,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"n":"XSCL - Scale"},{"t":3,"n":"XSPC - Spawn Container"},{"t":6,"n":"Activate Parents","c":[{"t":3,"n":"XAPD - Flags"}]},{"t":3,"n":"XLIB - Leveled Item Base Object"},{"t":3,"n":"XLCM - Level Modifier"},{"t":3,"n":"XLCN - Persistent Location"},{"t":3,"n":"XTRI - Collision Layer"},{"t":6,"n":"XLOC - Lock Data","c":[{"t":3,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"n":"Key"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":11,"n":"Unused"}]},{"t":3,"n":"XEZN - Encounter Zone"},{"t":6,"n":"XNDP - Navigation Door Link","c":[{"t":3,"n":"Navigation Mesh"},{"t":3,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"n":"XLRT - Location Ref Type","c":[{"t":3,"n":"Ref #0"}]},{"n":"XIS2 - Ignored by Sandbox"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XCNT - Item Count"},{"t":5,"n":"XCHG - Charge"},{"t":3,"n":"XLRL - Location Reference"},{"t":6,"n":"XESP - Enable Parent","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":8,"n":"Linked References","c":[{"t":6,"n":"XLKR - Linked Reference","c":[{"t":3,"n":"Keyword\/Ref"},{"t":3,"n":"Ref"}]}]},{"t":8,"n":"Patrol","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"XPRD - Idle Time"},{"n":"XPPA - Patrol Script Marker"},{"t":3,"n":"INAM - Idle"}]}]},{"t":3,"n":"XACT - Action Flag"},{"t":5,"n":"XHTW - Head-Tracking Weight"},{"t":5,"n":"XFVC - Favor Cost"},{"n":"ONAM - Open by Default"},{"t":6,"p":1,"n":"Map Marker","c":[{"n":"XMRK - Map Marker Data"},{"t":3,"n":"FNAM - Map Flags"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"TNAM - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"XATR - Attach Ref"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown #0"},{"t":5,"n":"Unknown #1"},{"t":5,"n":"Unknown #2"}]},{"t":6,"n":"DATA - Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"SCRL - Scroll","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":6,"n":"DATA - Item","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"MDOB - Menu Display Object"},{"t":2,"n":"DESC - Description"},{"t":8,"n":"Words of Power","c":[{"t":6,"n":"SNAM - ","c":[{"t":3,"n":"Word"},{"t":3,"n":"Spell"},{"t":5,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SOUL - Contained Soul"},{"t":3,"n":"SLCP - Maximum Capacity"},{"t":3,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SNCT - Sound Category","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"PNAM - Parent"},{"t":3,"n":"VNAM - Static Volume Multiplier"},{"t":3,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SPEL - Spell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"TREE - Tree","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Harvest Sound"},{"t":6,"n":"PFPC - Ingredient Production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer"},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"CNAM - Tree Data","c":[{"t":5,"n":"Trunk Flexibility"},{"t":5,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Leaf Amplitude"},{"t":5,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"WATR - Water","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":7,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"n":"ANAM - Opacity"},{"t":3,"n":"FNAM - Flags"},{"t":11,"n":"MNAM - Unused"},{"t":3,"n":"TNAM - Material"},{"t":3,"n":"SNAM - Open Sound"},{"t":3,"n":"XNAM - Spell"},{"t":3,"n":"INAM - Image Space"},{"t":3,"n":"DATA - Damage Per Second"},{"t":6,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Specular Properties - Sun Specular Power"},{"t":5,"n":"Water Properties - Reflectivity Amount"},{"t":5,"n":"Water Properties - Fresnel Amount"},{"t":11,"n":"Unknown"},{"t":5,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"n":"Shallow Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Deep Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Reflection Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":11,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Displacement Simulator - Starting Size"},{"t":5,"n":"Displacement Simulator - Force"},{"t":5,"n":"Displacement Simulator - Velocity"},{"t":5,"n":"Displacement Simulator - Falloff"},{"t":5,"n":"Displacement Simulator - Dampner"},{"t":5,"n":"Unknown"},{"t":5,"n":"Noise Properties - Noise Falloff"},{"t":5,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"n":"Unknown"},{"t":5,"n":"Unknown"},{"t":5,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"n":"Unknown"},{"t":5,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"n":"Water Properties - Refraction Magnitude"},{"t":5,"n":"Specular Properties - Specular Power"},{"t":5,"n":"Unknown"},{"t":5,"n":"Specular Properties - Specular Radius"},{"t":5,"n":"Specular Properties - Specular Brightness"},{"t":5,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"n":"Water Properties - Reflection Magnitude"},{"t":5,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"n":"Depth Properties - Reflections"},{"t":5,"n":"Depth Properties - Refraction"},{"t":5,"n":"Depth Properties - Normals"},{"t":5,"n":"Depth Properties - Specular Lighting"},{"t":5,"n":"Specular Properties - Sun Sparkle Power"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"n":"NAM0 - Linear Velocity","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"NAM1 - Angular Velocity","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":2,"n":"NAM2 - Noise Texture"},{"t":2,"n":"NAM3 - Unused"},{"t":2,"n":"NAM4 - Unused"}]},{"t":1,"p":1,"n":"WEAP - Weapon","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Has Scope","c":[{"t":2,"n":"MOD3 - Model Filename"}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"n":"INAM - Impact Data Set"},{"t":3,"n":"WNAM - 1st Person Model Object"},{"t":3,"n":"SNAM - Attack Sound"},{"t":3,"n":"XNAM - Attack Sound 2D"},{"t":3,"n":"NAM7 - Attack Loop Sound"},{"t":3,"n":"TNAM - Attack Fail Sound"},{"t":3,"n":"UNAM - Idle Sound"},{"t":3,"n":"NAM9 - Equip Sound"},{"t":3,"n":"NAM8 - Unequip Sound"},{"t":6,"n":"DATA - Game Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"},{"t":3,"n":"Damage"}]},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Speed"},{"t":5,"n":"Reach"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":5,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"n":"Base VATS To-Hit Chance"},{"t":3,"n":"Attack Animation"},{"t":3,"n":"# Projectiles"},{"t":3,"n":"Embedded Weapon AV (unused)"},{"t":5,"n":"Range Min"},{"t":5,"n":"Range Max"},{"t":3,"n":"On Hit"},{"t":3,"n":"Flags2"},{"t":5,"n":"Animation Attack Mult"},{"t":5,"n":"Unknown"},{"t":5,"n":"Rumble - Left Motor Strength"},{"t":5,"n":"Rumble - Right Motor Strength"},{"t":5,"n":"Rumble - Duration"},{"t":11,"n":"Unknown"},{"t":3,"n":"Skill"},{"t":11,"n":"Unknown"},{"t":3,"n":"Resist"},{"t":11,"n":"Unknown"},{"t":5,"n":"Stagger"}]},{"t":6,"n":"CRDT - Critical Data","c":[{"t":3,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"n":"% Mult"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Effect"}]},{"t":3,"n":"VNAM - Detection Sound Level"},{"t":3,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"Unused RNAM","c":[{"t":11,"n":"RNAM - Unknown"}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"}]},{"t":3,"n":"LTMP - Interior Lighting"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XLCN - Location"},{"t":6,"n":"Parent","c":[{"t":3,"n":"WNAM - Worldspace"},{"t":6,"n":"PNAM - ","c":[{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"CNAM - Climate"},{"t":3,"n":"NAM2 - Water"},{"t":3,"n":"NAM3 - LOD Water Type"},{"t":5,"n":"NAM4 - LOD Water Height"},{"t":6,"n":"DNAM - Land Data","c":[{"t":5,"n":"Default Land Height"},{"t":5,"n":"Default Water Height"}]},{"t":2,"n":"ICON - Map Image"},{"t":6,"n":"Cloud Model","c":[{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]}]},{"t":6,"n":"MNAM - Map Data","c":[{"t":6,"n":"Usable Dimensions","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"}]},{"t":6,"n":"Cell Coordinates","c":[{"t":6,"n":"NW Cell","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"}]},{"t":6,"n":"SE Cell","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"}]}]},{"t":6,"n":"Camera Data","c":[{"t":5,"n":"Min Height"},{"t":5,"n":"Max Height"},{"t":5,"n":"Initial Pitch"}]}]},{"t":6,"n":"ONAM - World Map Offset Data","c":[{"t":5,"n":"World Map Scale"},{"t":5,"n":"Cell X Offset"},{"t":5,"n":"Cell Y Offset"},{"t":5,"n":"Cell Z Offset"}]},{"t":5,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"n":"DATA - Flags"},{"t":6,"n":"Object Bounds","c":[{"t":6,"n":"NAM0 - Min","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"}]},{"t":6,"n":"NAM9 - Max","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"}]}]},{"t":3,"n":"ZNAM - Music"},{"t":2,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":2,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"ACTI - Activator","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"PNAM - Marker Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"n":"SNAM - Sound - Looping"},{"t":3,"n":"VNAM - Sound - Activation"},{"t":3,"n":"WNAM - Water Type"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"}]}]},"name":"Bash.Names","hash":"8886AE4C","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.NpcFaces.json b/frontend/settings/Skyrim/Bash.NpcFaces.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.NpcFacesForceFullImport.json b/frontend/settings/Skyrim/Bash.NpcFacesForceFullImport.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.ObjectBounds.json b/frontend/settings/Skyrim/Bash.ObjectBounds.json new file mode 100755 index 0000000..94a79f0 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.ObjectBounds.json @@ -0,0 +1 @@ +{"records":"ACTI,ADDN,ALCH,AMMO,APPA,ARMO,ARTO,ASPC,BOOK,CONT,DOOR,DUAL,ENCH,EXPL,FLOR,FURN,GRAS,HAZD,IDLM,INGR,KEYM,LIGH,LVLI,LVLN,LVSP,MISC,MSTT,NPC_,PROJ,SCRL,SLGM,SOUN,SPEL,STAT,TACT,TREE,TXST,WEAP","description":"Changes the object bounds of things.","tree":{"records":[{"t":1,"p":1,"n":"ACTI - Activator","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"PNAM - Marker Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"n":"SNAM - Sound - Looping"},{"t":3,"n":"VNAM - Sound - Activation"},{"t":3,"n":"WNAM - Water Type"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"DATA - Node Index"},{"t":3,"n":"SNAM - Sound"},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Master Particle System Cap"},{"t":3,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"ETYP - Equipment Type"},{"t":5,"n":"DATA - Weight"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Value"},{"t":3,"n":"Flags"},{"t":3,"n":"Addiction"},{"t":5,"n":"Addiction Chance"},{"t":3,"n":"Sound - Consume"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Projectile"},{"t":3,"n":"Flags"},{"t":5,"n":"Damage"},{"t":3,"n":"Value"}]},{"t":2,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"QUAL - Quality"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMO - Armor","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Male world model","c":[{"t":2,"n":"MOD2 - Model Filename"},{"t":11,"n":"MO2T - Texture Files Hashes"},{"t":7,"n":"MO2S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Female world model","c":[{"t":2,"n":"MOD4 - Model Filename"},{"t":11,"n":"MO4T - Texture Files Hashes"},{"t":7,"n":"MO4S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon 2 (female)","c":[{"t":2,"n":"ICO2 - Large Icon filename"},{"t":2,"n":"MIC2 - Small Icon filename"}]},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"BODT - Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":2,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":8,"n":"Armature","c":[{"t":3,"n":"MODL - Model Filename"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"DNAM - Armor Rating"},{"t":3,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"n":"SNAM - Ambient Sound"},{"t":3,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"BOOK - Book","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":2,"n":"DESC - Book Text"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"n":"Skill"},{"t":3,"n":"Spell"},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"INAM - Inventory Art"},{"t":2,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"CONT - Container","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"DOOR - Door","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"ANAM - Sound - Close"},{"t":3,"n":"BNAM - Sound - Loop"},{"t":3,"n":"FNAM - Flags"}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Projectile"},{"t":3,"n":"Explosion"},{"t":3,"n":"Effect Shader"},{"t":3,"n":"Hit Effect Art"},{"t":3,"n":"Impact Data Set"},{"t":3,"n":"Inherit Scale"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Enchantment Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Enchantment Amount"},{"t":3,"n":"Target Type"},{"t":3,"n":"Enchant Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Base Enchantment"},{"t":3,"n":"Worn Restrictions"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EXPL - Explosion","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"MNAM - Image Space Modifier"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Light"},{"t":3,"n":"Sound 1"},{"t":3,"n":"Sound 2"},{"t":3,"n":"Impact Data Set"},{"t":3,"n":"Placed Object"},{"t":3,"n":"Spawn Projectile"},{"t":5,"n":"Force"},{"t":5,"n":"Damage"},{"t":5,"n":"Radius"},{"t":5,"n":"IS Radius"},{"t":5,"n":"Vertical Offset Mult"},{"t":3,"n":"Flags"},{"t":3,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"FLOR - Flora","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Sound"},{"t":6,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer "},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"},{"t":3,"n":"MNAM - Active Markers \/ Flags"},{"t":6,"n":"WBDT - Workbench Data","c":[{"t":3,"n":"Bench Type"},{"t":3,"n":"Uses Skill"}]},{"t":3,"n":"NAM1 - Associated Spell"},{"t":8,"n":"Markers","c":[{"t":6,"n":"Marker","c":[{"t":3,"n":"ENAM - Marker Index"},{"t":6,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Disabled Points"}]},{"t":3,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"n":"Marker Entry Points","c":[{"t":6,"n":"FNPR - Marker","c":[{"t":3,"n":"Type"},{"t":3,"n":"Entry Points"}]}]},{"t":2,"n":"XMRK - Model Filename"}]},{"t":1,"p":1,"n":"GRAS - Grass","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Density"},{"t":3,"n":"Min Slope"},{"t":3,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"n":"Units From Water"},{"t":3,"n":"Units From Water Type"},{"t":5,"n":"Position Range"},{"t":5,"n":"Height Range"},{"t":5,"n":"Color Range"},{"t":5,"n":"Wave Period"},{"t":3,"n":"Flags"}]}]},{"t":1,"p":1,"n":"HAZD - Hazard","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"MNAM - Image Space Modifier"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Limit"},{"t":5,"n":"Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Image Space Radius"},{"t":5,"n":"Target Interval"},{"t":3,"n":"Flags"},{"t":3,"n":"Spell"},{"t":3,"n":"Light"},{"t":3,"n":"Impact Data Set"},{"t":3,"n":"Sound"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"n":"IDLF - Flags"},{"t":3,"n":"IDLC - Animation Count"},{"t":5,"n":"IDLT - Idle Timer Setting"},{"t":7,"n":"IDLA - Animations","c":[{"t":3,"n":"Animation"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"INGR - Ingredient","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Ingredient Value"},{"t":3,"n":"Flags"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"LIGH - Light","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Time"},{"t":3,"n":"Radius"},{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"n":"Flags"},{"t":5,"n":"Falloff Exponent"},{"t":5,"n":"FOV"},{"t":5,"n":"Near Clip"},{"t":6,"n":"Flicker Effect","c":[{"t":5,"n":"Period"},{"t":5,"n":"Intensity Amplitude"},{"t":5,"n":"Movement Amplitude"}]},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":5,"n":"FNAM - Fade value"},{"t":3,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"n":"LVLD - Chance None"},{"t":3,"n":"LVLF - Flags"},{"t":3,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"n":"Leveled List Entries","c":[{"t":6,"n":"Leveled List Entry","c":[{"t":6,"n":"LVLO - Base Data","c":[{"t":3,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"n":"Reference"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"n":"LVLD - Chance None"},{"t":3,"n":"LVLF - Flags"},{"t":3,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"n":"Leveled List Entries","c":[{"t":6,"n":"Leveled List Entry","c":[{"t":6,"n":"LVLO - Base Data","c":[{"t":3,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"n":"Reference"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"n":"LVLD - Chance None"},{"t":3,"n":"LVLF - Flags"},{"t":3,"n":"LLCT - Count"},{"t":10,"n":"Leveled List Entries","c":[{"t":6,"n":"Leveled List Entry","c":[{"t":6,"n":"LVLO - Base Data","c":[{"t":3,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"n":"Reference"},{"t":3,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"DATA - Flags"},{"t":3,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":3,"n":"Level"},{"t":3,"n":"Level Mult"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags"},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":8,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":8,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"Skill"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"Skill"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"}]},{"t":8,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"},{"t":6,"n":"TINC - Tint Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Alpha"}]},{"t":3,"n":"TINV - Interpolation Value"},{"t":3,"n":"TIAS - Preset"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Gravity"},{"t":5,"n":"Speed"},{"t":5,"n":"Range"},{"t":3,"n":"Light"},{"t":3,"n":"Muzzle Flash - Light"},{"t":5,"n":"Tracer Chance"},{"t":5,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"n":"Explosion"},{"t":3,"n":"Sound"},{"t":5,"n":"Muzzle Flash - Duration"},{"t":5,"n":"Fade Duration"},{"t":5,"n":"Impact Force"},{"t":3,"n":"Sound - Countdown"},{"t":3,"n":"Sound - Disable"},{"t":3,"n":"Default Weapon Source"},{"t":5,"n":"Cone Spread"},{"t":5,"n":"Collision Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Relaunch Interval"},{"t":3,"n":"Decal Data"},{"t":3,"n":"Collision Layer"}]},{"t":6,"n":"Muzzle Flash Model","c":[{"t":2,"n":"NAM1 - Model Filename"},{"t":11,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"SCRL - Scroll","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":6,"n":"DATA - Item","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SOUL - Contained Soul"},{"t":3,"n":"SLCP - Maximum Capacity"},{"t":3,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"STAT - Static","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"DNAM - Direction Material","c":[{"t":5,"n":"Max Angle (30-120)"},{"t":3,"n":"Material"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":7,"n":"MNAM - Distant LOD","c":[{"t":6,"n":"LOD","c":[{"t":2,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Harvest Sound"},{"t":6,"n":"PFPC - Ingredient Production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer"},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"CNAM - Tree Data","c":[{"t":5,"n":"Trunk Flexibility"},{"t":5,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"n":"Leaf Amplitude"},{"t":5,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"n":"Textures (RGB\/A)","c":[{"t":2,"n":"TX00 - Difuse"},{"t":2,"n":"TX01 - Normal\/Gloss"},{"t":2,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"n":"TX03 - Glow\/Detail Map"},{"t":2,"n":"TX04 - Height"},{"t":2,"n":"TX05 - Environment"},{"t":2,"n":"TX06 - Multilayer"},{"t":2,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"n":"DODT - Decal Data","c":[{"t":5,"n":"Min Width"},{"t":5,"n":"Max Width"},{"t":5,"n":"Min Height"},{"t":5,"n":"Max Height"},{"t":5,"n":"Depth"},{"t":5,"n":"Shininess"},{"t":6,"n":"Parallax","c":[{"t":5,"n":"Scale"},{"t":3,"n":"Passes"}]},{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"},{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"DNAM - Flags"}]},{"t":1,"p":1,"n":"WEAP - Weapon","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Has Scope","c":[{"t":2,"n":"MOD3 - Model Filename"},{"t":11,"n":"MO3T - Texture Files Hashes"},{"t":7,"n":"MO3S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"n":"INAM - Impact Data Set"},{"t":3,"n":"WNAM - 1st Person Model Object"},{"t":3,"n":"SNAM - Attack Sound"},{"t":3,"n":"XNAM - Attack Sound 2D"},{"t":3,"n":"NAM7 - Attack Loop Sound"},{"t":3,"n":"TNAM - Attack Fail Sound"},{"t":3,"n":"UNAM - Idle Sound"},{"t":3,"n":"NAM9 - Equip Sound"},{"t":3,"n":"NAM8 - Unequip Sound"},{"t":6,"n":"DATA - Game Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"},{"t":3,"n":"Damage"}]},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Speed"},{"t":5,"n":"Reach"},{"t":3,"n":"Flags"},{"t":5,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"n":"Base VATS To-Hit Chance"},{"t":3,"n":"Attack Animation"},{"t":3,"n":"# Projectiles"},{"t":3,"n":"Embedded Weapon AV (unused)"},{"t":5,"n":"Range Min"},{"t":5,"n":"Range Max"},{"t":3,"n":"On Hit"},{"t":3,"n":"Flags2"},{"t":5,"n":"Animation Attack Mult"},{"t":5,"n":"Rumble - Left Motor Strength"},{"t":5,"n":"Rumble - Right Motor Strength"},{"t":5,"n":"Rumble - Duration"},{"t":3,"n":"Skill"},{"t":3,"n":"Resist"},{"t":5,"n":"Stagger"}]},{"t":6,"n":"CRDT - Critical Data","c":[{"t":3,"n":"Damage"},{"t":11,"n":"Unknown"},{"t":5,"n":"% Mult"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Effect"}]},{"t":3,"n":"VNAM - Detection Sound Level"},{"t":3,"n":"CNAM - Template"}]}]},"name":"Bash.ObjectBounds","hash":"BB958321","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.R.AddSpells.json b/frontend/settings/Skyrim/Bash.R.AddSpells.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.R.ChangeSpells.json b/frontend/settings/Skyrim/Bash.R.ChangeSpells.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.R.Description.json b/frontend/settings/Skyrim/Bash.R.Description.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.R.Head.json b/frontend/settings/Skyrim/Bash.R.Head.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.R.Skills.json b/frontend/settings/Skyrim/Bash.R.Skills.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Relations.json b/frontend/settings/Skyrim/Bash.Relations.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Relev.json b/frontend/settings/Skyrim/Bash.Relev.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Scripts.json b/frontend/settings/Skyrim/Bash.Scripts.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Sound.json b/frontend/settings/Skyrim/Bash.Sound.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.SpellStats.json b/frontend/settings/Skyrim/Bash.SpellStats.json old mode 100644 new mode 100755 index 9fdc7ea..9204796 --- a/frontend/settings/Skyrim/Bash.SpellStats.json +++ b/frontend/settings/Skyrim/Bash.SpellStats.json @@ -1 +1 @@ -{"records":"SPEL","description":"SpellStats tag from Wrye Bash.\r\n\r\nUsed when the mod modifies spell stats.","tree":{"records":[{"t":1,"p":1,"n":"SPEL - Spell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]}]},"name":"Bash.SpellStats","hash":"$33DCE408","color":255} \ No newline at end of file +{"records":"SPEL","description":"SpellStats tag from Wrye Bash.\r\n\r\nUsed when the mod modifies spell stats.","tree":{"records":[{"t":1,"p":1,"n":"SPEL - Spell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]}]},"name":"Bash.SpellStats","hash":"9FE95589","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Stats.json b/frontend/settings/Skyrim/Bash.Stats.json old mode 100644 new mode 100755 index 7c15f87..960d209 --- a/frontend/settings/Skyrim/Bash.Stats.json +++ b/frontend/settings/Skyrim/Bash.Stats.json @@ -1 +1 @@ -{"records":"AMMO,APPA,ARMO,BOOK,INGR,KEYM,MISC,PROJ,WEAP,ALCH","description":"Stats tag from Wrye Bash.\r\n\r\nUsed when the mod modifies item stats.","tree":{"records":[{"t":1,"p":1,"n":"AMMO - Ammunition","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"}]},{"t":2,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"QUAL - Quality"},{"t":2,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMO - Armor","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Male world model","c":[{"t":2,"n":"MOD2 - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Female world model","c":[{"t":2,"n":"MOD4 - Model Filename"}]},{"t":6,"n":"Icon 2 (female)","c":[{"t":2,"n":"ICO2 - Large Icon filename"}]},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":7,"n":"Armature","c":[{"t":3,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"n":"DNAM - Armor Rating","p":1},{"t":3,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"BOOK - Book","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":2,"n":"DESC - Book Text"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":12,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"n":"INAM - Inventory Art"},{"t":2,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"INGR - Ingredient","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Ingredient Value"},{"t":3,"n":"Flags"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"p":1,"n":"Gravity","lt":"Range","lf":"Speed"},{"t":5,"p":1,"n":"Speed","lt":"Gravity","lf":"Range"},{"t":5,"p":1,"n":"Range","lt":"Speed","lf":"Gravity"},{"t":3,"n":"Light"},{"t":3,"n":"Muzzle Flash - Light"},{"t":5,"n":"Tracer Chance"},{"t":5,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"n":"Explosion"},{"t":3,"n":"Sound"},{"t":5,"n":"Muzzle Flash - Duration"},{"t":5,"n":"Fade Duration"},{"t":5,"n":"Impact Force"},{"t":3,"n":"Sound - Countdown"},{"t":3,"n":"Sound - Disable"},{"t":3,"n":"Default Weapon Source"},{"t":5,"n":"Cone Spread"},{"t":5,"n":"Collision Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Relaunch Interval"},{"t":3,"n":"Decal Data"},{"t":3,"n":"Collision Layer"}]},{"t":6,"n":"Muzzle Flash Model","c":[{"t":2,"n":"NAM1 - Model Filename"}]},{"t":3,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"WEAP - Weapon","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Has Scope","c":[{"t":2,"n":"MOD3 - Model Filename"}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"n":"INAM - Impact Data Set"},{"t":3,"n":"WNAM - 1st Person Model Object"},{"t":3,"n":"SNAM - Attack Sound"},{"t":3,"n":"XNAM - Attack Sound 2D"},{"t":3,"n":"NAM7 - Attack Loop Sound"},{"t":3,"n":"TNAM - Attack Fail Sound"},{"t":3,"n":"UNAM - Idle Sound"},{"t":3,"n":"NAM9 - Equip Sound"},{"t":3,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"p":1,"n":"DNAM - Data","c":[{"t":3,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed","lt":"Reach","lf":"Stagger"},{"t":5,"p":1,"n":"Reach","lt":"Resist","lf":"Speed"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":5,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"n":"Base VATS To-Hit Chance"},{"t":3,"n":"Attack Animation"},{"t":3,"n":"# Projectiles"},{"t":3,"n":"Embedded Weapon AV (unused)"},{"t":5,"n":"Range Min"},{"t":5,"n":"Range Max"},{"t":3,"n":"On Hit"},{"t":3,"n":"Flags2"},{"t":5,"n":"Animation Attack Mult"},{"t":5,"n":"Unknown"},{"t":5,"n":"Rumble - Left Motor Strength"},{"t":5,"n":"Rumble - Right Motor Strength"},{"t":5,"n":"Rumble - Duration"},{"t":11,"n":"Unknown"},{"t":3,"n":"Skill"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Resist","lt":"Stagger","lf":"Reach"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Stagger","lt":"Speed","lf":"Resist"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"n":"VNAM - Detection Sound Level"},{"t":3,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"ALCH - Ingestible","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Value"},{"t":3,"n":"Flags"},{"t":3,"n":"Addiction"},{"t":5,"n":"Addiction Chance"},{"t":3,"n":"Sound - Consume"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]}]},"name":"Bash.Stats","hash":"9BB78E19","color":255} \ No newline at end of file +{"records":"ALCH,APPA,ARMO,BOOK,INGR,KEYM,MISC,PROJ,WEAP,AMMO","description":"Stats tag from Wrye Bash.\r\n\r\nUsed when the mod modifies item stats.","tree":{"records":[{"t":1,"p":1,"n":"ALCH - Ingestible","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"n":"Flags"},{"t":3,"n":"Addiction"},{"t":5,"n":"Addiction Chance"},{"t":3,"n":"Sound - Consume"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"QUAL - Quality"},{"t":2,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMO - Armor","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Male world model","c":[{"t":2,"n":"MOD2 - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Female world model","c":[{"t":2,"n":"MOD4 - Model Filename"}]},{"t":6,"n":"Icon 2 (female)","c":[{"t":2,"n":"ICO2 - Large Icon filename"}]},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":7,"n":"Armature","c":[{"t":3,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"BOOK - Book","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":2,"n":"DESC - Book Text"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":12,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"n":"INAM - Inventory Art"},{"t":2,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"INGR - Ingredient","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Ingredient Value"},{"t":3,"n":"Flags"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"p":1,"n":"Gravity","lt":"Range","lf":"Speed"},{"t":5,"p":1,"n":"Speed","lt":"Gravity","lf":"Range"},{"t":5,"p":1,"n":"Range","lt":"Speed","lf":"Gravity"},{"t":3,"n":"Light"},{"t":3,"n":"Muzzle Flash - Light"},{"t":5,"n":"Tracer Chance"},{"t":5,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"n":"Explosion"},{"t":3,"n":"Sound"},{"t":5,"n":"Muzzle Flash - Duration"},{"t":5,"n":"Fade Duration"},{"t":5,"n":"Impact Force"},{"t":3,"n":"Sound - Countdown"},{"t":3,"n":"Sound - Disable"},{"t":3,"n":"Default Weapon Source"},{"t":5,"n":"Cone Spread"},{"t":5,"n":"Collision Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Relaunch Interval"},{"t":3,"n":"Decal Data"},{"t":3,"n":"Collision Layer"}]},{"t":6,"n":"Muzzle Flash Model","c":[{"t":2,"n":"NAM1 - Model Filename"}]},{"t":3,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"WEAP - Weapon","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Has Scope","c":[{"t":2,"n":"MOD3 - Model Filename"}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"n":"INAM - Impact Data Set"},{"t":3,"n":"WNAM - 1st Person Model Object"},{"t":3,"n":"SNAM - Attack Sound"},{"t":3,"n":"XNAM - Attack Sound 2D"},{"t":3,"n":"NAM7 - Attack Loop Sound"},{"t":3,"n":"TNAM - Attack Fail Sound"},{"t":3,"n":"UNAM - Idle Sound"},{"t":3,"n":"NAM9 - Equip Sound"},{"t":3,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"p":1,"n":"DNAM - Data","c":[{"t":3,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed","lt":"Reach","lf":"Stagger"},{"t":5,"p":1,"n":"Reach","lt":"Resist","lf":"Speed"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":5,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"n":"Base VATS To-Hit Chance"},{"t":3,"n":"Attack Animation"},{"t":3,"n":"# Projectiles"},{"t":3,"n":"Embedded Weapon AV (unused)"},{"t":5,"n":"Range Min"},{"t":5,"n":"Range Max"},{"t":3,"n":"On Hit"},{"t":3,"n":"Flags2"},{"t":5,"n":"Animation Attack Mult"},{"t":5,"n":"Unknown"},{"t":5,"n":"Rumble - Left Motor Strength"},{"t":5,"n":"Rumble - Right Motor Strength"},{"t":5,"n":"Rumble - Duration"},{"t":11,"n":"Unknown"},{"t":3,"n":"Skill"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Resist","lt":"Stagger","lf":"Reach"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Stagger","lt":"Speed","lf":"Resist"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"n":"VNAM - Detection Sound Level"},{"t":3,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"AMMO - Ammunition","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"}]},{"t":2,"n":"ONAM - Short Name"}]}]},"name":"Bash.Stats","hash":"C6AE5502","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Text.json b/frontend/settings/Skyrim/Bash.Text.json new file mode 100755 index 0000000..3577f23 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.Text.json @@ -0,0 +1 @@ +{"records":"ALCH,AMMO,APPA,ARMO,AVIF,BOOK,CLAS,LSCR,MESG,MGEF,SCRL,SHOU,SPEL,WEAP","description":"Modifies long-form text (e.g. the text in a book, or descriptions of armor, spells, weapons, etc.) of things.","tree":{"records":[{"t":1,"n":"AACT - Action","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"ACTI - Activator","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"PNAM - Marker Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"n":"SNAM - Sound - Looping"},{"t":3,"n":"VNAM - Sound - Activation"},{"t":3,"n":"WNAM - Water Type"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"}]},{"t":1,"n":"ADDN - Addon Node","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"DATA - Node Index"},{"t":3,"n":"SNAM - Sound"},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Master Particle System Cap"},{"t":3,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"ETYP - Equipment Type"},{"t":5,"n":"DATA - Weight"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Value"},{"t":3,"n":"Flags"},{"t":3,"n":"Addiction"},{"t":5,"n":"Addiction Chance"},{"t":3,"n":"Sound - Consume"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Projectile"},{"t":3,"n":"Flags"},{"t":5,"n":"Damage"},{"t":3,"n":"Value"}]},{"t":2,"n":"ONAM - Short Name"}]},{"t":1,"n":"ANIO - Animated Object","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":2,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"n":"ARMA - Armor Addon","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"BODT - Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":3,"n":"RNAM - Race"},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Male Priority"},{"t":3,"n":"Female Priority"},{"t":3,"n":"Weight slider - Male"},{"t":3,"n":"Weight slider - Female"},{"t":11,"n":"Unknown"},{"t":3,"n":"Detection Sound Value"},{"t":5,"n":"Weapon Adjust"}]},{"t":6,"n":"Male world model","c":[{"t":2,"n":"MOD2 - Model Filename"},{"t":11,"n":"MO2T - Texture Files Hashes"},{"t":7,"n":"MO2S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Female world model","c":[{"t":2,"n":"MOD3 - Model Filename"},{"t":11,"n":"MO3T - Texture Files Hashes"},{"t":7,"n":"MO3S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Male 1st Person","c":[{"t":2,"n":"MOD4 - Model Filename"},{"t":11,"n":"MO4T - Texture Files Hashes"},{"t":7,"n":"MO4S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Female 1st Person","c":[{"t":2,"n":"MOD5 - Model Filename"},{"t":11,"n":"MO5T - Texture Files Hashes"},{"t":7,"n":"MO5S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"NAM0 - Male Skin Texture"},{"t":3,"n":"NAM1 - Female Skin texture"},{"t":3,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"n":"Additional Races","c":[{"t":3,"n":"MODL - Race"}]},{"t":3,"n":"SNDD - Footstep Sound"},{"t":3,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Male world model","c":[{"t":2,"n":"MOD2 - Model Filename"},{"t":11,"n":"MO2T - Texture Files Hashes"},{"t":7,"n":"MO2S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Female world model","c":[{"t":2,"n":"MOD4 - Model Filename"},{"t":11,"n":"MO4T - Texture Files Hashes"},{"t":7,"n":"MO4S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon 2 (female)","c":[{"t":2,"n":"ICO2 - Large Icon filename"},{"t":2,"n":"MIC2 - Small Icon filename"}]},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"BODT - Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":2,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"n":"Armature","c":[{"t":3,"n":"MODL - Model Filename"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"DNAM - Armor Rating"},{"t":3,"n":"TNAM - Template Armor"}]},{"t":1,"n":"ARTO - Art Object","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"DNAM - Art Type"}]},{"t":1,"n":"ASPC - Acoustic Space","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":3,"n":"SNAM - Ambient Sound"},{"t":3,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"n":"ASTP - Association Type","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"MPRT - Male Parent Title"},{"t":2,"n":"FPRT - Female Parent Title"},{"t":2,"n":"MCHT - Male Child Title"},{"t":2,"n":"FCHT - Female Child Title"},{"t":3,"n":"DATA - Flags"}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"n":"AVSK - Skill","c":[{"t":5,"n":"Skill Use Mult"},{"t":5,"n":"Skill Offset Mult"},{"t":5,"n":"Skill Improve Mult"},{"t":5,"n":"Skill Improve Offset"}]},{"t":8,"n":"Perk Tree","c":[{"t":6,"n":"Node","c":[{"t":3,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"XNAM - Perk-Grid X"},{"t":3,"n":"YNAM - Perk-Grid Y"},{"t":5,"n":"HNAM - Horizontal Position"},{"t":5,"n":"VNAM - Vertical Position"},{"t":3,"n":"SNAM - Associated Skill"},{"t":8,"n":"Connections","c":[{"t":3,"n":"CNAM - Line to Index"}]},{"t":3,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"n":"Skill"},{"t":3,"n":"Spell"},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"n":"BPTD - Body Part Data","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":10,"n":"Body Parts","c":[{"t":6,"n":"Body Part","c":[{"t":2,"n":"BPTN - Part Name"},{"t":2,"n":"PNAM - Pose Matching"},{"t":2,"n":"BPNN - Part Node"},{"t":2,"n":"BPNT - VATS Target"},{"t":2,"n":"BPNI - IK Data - Start Node"},{"t":6,"n":"BPND - ","c":[{"t":5,"n":"Damage Mult"},{"t":3,"n":"Flags"},{"t":3,"n":"Part Type"},{"t":3,"n":"Health Percent"},{"t":3,"n":"Actor Value"},{"t":3,"n":"To Hit Chance"},{"t":3,"n":"Explodable - Explosion Chance %"},{"t":3,"n":"Explodable - Debris Count"},{"t":3,"n":"Explodable - Debris"},{"t":3,"n":"Explodable - Explosion"},{"t":5,"n":"Tracking Max Angle"},{"t":5,"n":"Explodable - Debris Scale"},{"t":3,"n":"Severable - Debris Count"},{"t":3,"n":"Severable - Debris"},{"t":3,"n":"Severable - Explosion"},{"t":5,"n":"Severable - Debris Scale"},{"t":6,"n":"Gore Effects Positioning","c":[{"t":6,"n":"Translate","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]},{"t":3,"n":"Severable - Impact DataSet"},{"t":3,"n":"Explodable - Impact DataSet"},{"t":3,"n":"Severable - Decal Count"},{"t":3,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"n":"Limb Replacement Scale"}]},{"t":2,"n":"NAM1 - Limb Replacement Model"},{"t":2,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"n":"CAMS - Camera Shot","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Action"},{"t":3,"n":"Location"},{"t":3,"n":"Target"},{"t":3,"n":"Flags"},{"t":6,"n":"Time Multipliers","c":[{"t":5,"n":"Player"},{"t":5,"n":"Target"},{"t":5,"n":"Global"}]},{"t":5,"n":"Max Time"},{"t":5,"n":"Min Time"},{"t":5,"n":"Target % Between Actors"},{"t":5,"n":"Near Target Distance"}]},{"t":3,"n":"MNAM - Image Space Modifier"}]},{"t":1,"n":"CELL - Cell","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags"},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":6,"n":"Directional","c":[{"t":6,"n":"X+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"X-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Specular","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Scale"}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":7,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"DATA - ","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Teaches"},{"t":3,"n":"Maximum training level"},{"t":7,"n":"Skill Weights","c":[{"t":3,"n":"Weight"}]},{"t":5,"n":"Bleedout Default"},{"t":3,"n":"Voice Points"},{"t":7,"n":"Attribute Weights","c":[{"t":3,"n":"Weight"}]}]}]},{"t":1,"n":"CLDC","c":[{"t":2,"n":"EDID - Editor ID"}]},{"t":1,"n":"CLFM - Color","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"FNAM - Playable"}]},{"t":1,"n":"CLMT - Climate","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"WLST - Weather Types","c":[{"t":6,"n":"Weather Type","c":[{"t":3,"n":"Weather"},{"t":3,"n":"Chance"},{"t":3,"n":"Global"}]}]},{"t":2,"n":"FNAM - Sun Texture"},{"t":2,"n":"GNAM - Sun Glare Texture"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"TNAM - Timing","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Begin"},{"t":3,"n":"End"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Begin"},{"t":3,"n":"End"}]},{"t":3,"n":"Volatility"},{"t":3,"n":"Moons \/ Phase Length"}]}]},{"t":1,"n":"COBJ - Constructible Object","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"CNAM - Created Object"},{"t":3,"n":"BNAM - Workbench Keyword"},{"t":3,"n":"NAM1 - Created Object Count"}]},{"t":1,"n":"COLL - Collision Layer","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"BNAM - Index"},{"t":6,"n":"FNAM - Debug Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"n":"GNAM - Flags"},{"t":2,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"n":"CNAM - Collides With","c":[{"t":3,"n":"Forms"}]}]},{"t":1,"n":"CONT - Container","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"QNAM - Sound - Close"}]},{"t":1,"n":"CPTH - Camera Path","c":[{"t":2,"n":"EDID - Editor ID"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"n":"ANAM - Related Camera Paths","c":[{"t":3,"n":"Related Camera Path"}]},{"t":3,"n":"DATA - Camera Zoom"},{"t":8,"n":"Camera Shots","c":[{"t":3,"n":"SNAM - Camera Shot"}]}]},{"t":1,"n":"CSTY - Combat Style","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"CSGD - General","c":[{"t":5,"n":"Offensive Mult"},{"t":5,"n":"Defensive Mult"},{"t":5,"n":"Group Offensive Mult"},{"t":5,"n":"Equipment Score Mult - Melee"},{"t":5,"n":"Equipment Score Mult - Magic"},{"t":5,"n":"Equipment Score Mult - Ranged"},{"t":5,"n":"Equipment Score Mult - Shout"},{"t":5,"n":"Equipment Score Mult - Unarmed"},{"t":5,"n":"Equipment Score Mult - Staff"},{"t":5,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"n":"CSME - Melee","c":[{"t":5,"n":"Attack Staggered Mult"},{"t":5,"n":"Power Attack Staggered Mult"},{"t":5,"n":"Power Attack Blocking Mult"},{"t":5,"n":"Bash Mult"},{"t":5,"n":"Bash Recoil Mult"},{"t":5,"n":"Bash Attack Mult"},{"t":5,"n":"Bash Power Attack Mult"},{"t":5,"n":"Special Attack Mult"}]},{"t":6,"n":"CSCR - Close Range","c":[{"t":5,"n":"Circle Mult"},{"t":5,"n":"Fallback Mult"},{"t":5,"n":"Flank Distance"},{"t":5,"n":"Stalk Time"}]},{"t":6,"n":"CSLR - Long Range","c":[{"t":5,"n":"Strafe Mult"}]},{"t":6,"n":"CSFL - Flight","c":[{"t":5,"n":"Hover Chance"},{"t":5,"n":"Dive Bomb Chance"},{"t":5,"n":"Ground Attack Chance"},{"t":5,"n":"Hover Time"},{"t":5,"n":"Ground Attack Time"},{"t":5,"n":"Perch Attack Chance"},{"t":5,"n":"Perch Attack Time"},{"t":5,"n":"Flying Attack Chance"}]},{"t":3,"n":"DATA - Flags"}]},{"t":1,"n":"DEBR - Debris","c":[{"t":2,"n":"EDID - Editor ID"},{"t":8,"n":"Models","c":[{"t":6,"n":"Model","c":[{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Percentage"},{"t":2,"n":"Model Filename"},{"t":3,"n":"Flags"}]},{"t":11,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"n":"DIAL - Dialog Topic","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":5,"n":"PNAM - Priority"},{"t":3,"n":"BNAM - Branch"},{"t":3,"n":"QNAM - Quest"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Topic Flags"},{"t":3,"n":"Category"},{"t":3,"n":"Subtype"}]},{"t":2,"n":"SNAM - Subtype Name"},{"t":3,"n":"TIFC - Info Count"}]},{"t":1,"n":"DLBR - Dialog Branch","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"n":"DNAM - Flags"},{"t":3,"n":"SNAM - Starting Topic"}]},{"t":1,"n":"DLVW - Dialog View","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"QNAM - Quest"},{"t":8,"n":"Branches","c":[{"t":3,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"n":"DOOR - Door","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"ANAM - Sound - Close"},{"t":3,"n":"BNAM - Sound - Loop"},{"t":3,"n":"FNAM - Flags"}]},{"t":1,"n":"DUAL - Dual Cast Data","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Projectile"},{"t":3,"n":"Explosion"},{"t":3,"n":"Effect Shader"},{"t":3,"n":"Hit Effect Art"},{"t":3,"n":"Impact Data Set"},{"t":3,"n":"Inherit Scale"}]}]},{"t":1,"n":"ECZN - Encounter Zone","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Owner"},{"t":3,"n":"Location"},{"t":3,"n":"Rank"},{"t":3,"n":"Min Level"},{"t":3,"n":"Flags"},{"t":3,"n":"Max Level"}]}]},{"t":1,"n":"EFSH - Effect Shader","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"ICON - Fill Texture"},{"t":2,"n":"ICO2 - Particle Shader Texture"},{"t":2,"n":"NAM7 - Holes Texture"},{"t":2,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"n":"NAM9 - Particle Palette Texture"},{"t":6,"n":"DATA - ","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"n":"Membrane Shader - Blend Operation"},{"t":3,"n":"Membrane Shader - Z Test Function"},{"t":6,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"n":"Edge Effect - Fall Off"},{"t":6,"n":"Edge Effect - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"n":"Edge Effect - Full Alpha Time"},{"t":5,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"n":"Particle Shader - Source Blend Mode"},{"t":3,"n":"Particle Shader - Blend Operation"},{"t":3,"n":"Particle Shader - Z Test Function"},{"t":3,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"n":"Particle Shader - Particle Lifetime"},{"t":5,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"n":"Particle Shader - Acceleration #1"},{"t":5,"n":"Particle Shader - Acceleration #2"},{"t":5,"n":"Particle Shader - Acceleration #3"},{"t":5,"n":"Particle Shader - Scale Key 1"},{"t":5,"n":"Particle Shader - Scale Key 2"},{"t":5,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"n":"Color Key 1 - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Color Key 2 - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Color Key 3 - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Color Key 1 - Color Alpha"},{"t":5,"n":"Color Key 2 - Color Alpha"},{"t":5,"n":"Color Key 3 - Color Alpha"},{"t":5,"n":"Color Key 1 - Color Key Time"},{"t":5,"n":"Color Key 2 - Color Key Time"},{"t":5,"n":"Color Key 3 - Color Key Time"},{"t":5,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"n":"Addon Models"},{"t":5,"n":"Holes - Start Time"},{"t":5,"n":"Holes - End Time"},{"t":5,"n":"Holes - Start Val"},{"t":5,"n":"Holes - End Val"},{"t":5,"n":"Edge Width (alpha units)"},{"t":6,"n":"Edge Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Explosion Wind Speed"},{"t":3,"n":"Texture Count U"},{"t":3,"n":"Texture Count V"},{"t":5,"n":"Addon Models - Fade In Time"},{"t":5,"n":"Addon Models - Fade Out Time"},{"t":5,"n":"Addon Models - Scale Start"},{"t":5,"n":"Addon Models - Scale End"},{"t":5,"n":"Addon Models - Scale In Time"},{"t":5,"n":"Addon Models - Scale Out Time"},{"t":3,"n":"Ambient Sound"},{"t":6,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"n":"Color Key 1 - Scale"},{"t":5,"n":"Color Key 2 - Scale"},{"t":5,"n":"Color Key 3 - Scale"},{"t":5,"n":"Color Key 1 - Time"},{"t":5,"n":"Color Key 2 - Time"},{"t":5,"n":"Color Key 3 - Time"}]},{"t":5,"n":"Color Scale"},{"t":5,"n":"Birth Position Offset"},{"t":5,"n":"Birth Position Offset Range +\/-"},{"t":6,"n":"Particle Shader Animated","c":[{"t":3,"n":"Start Frame"},{"t":3,"n":"Start Frame Variation"},{"t":3,"n":"End Frame"},{"t":3,"n":"Loop Start Frame"},{"t":3,"n":"Loop Start Variation"},{"t":3,"n":"Frame Count"},{"t":3,"n":"Frame Count Variation"}]},{"t":3,"n":"Flags"},{"t":5,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"n":"ENCH - Object Effect","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Enchantment Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Enchantment Amount"},{"t":3,"n":"Target Type"},{"t":3,"n":"Enchant Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Base Enchantment"},{"t":3,"n":"Worn Restrictions"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"n":"EQUP - Equip Type","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"PNAM - Slot Parents","c":[{"t":3,"n":"Can Be Equipped"}]},{"t":3,"n":"DATA - Use All Parents"}]},{"t":1,"n":"EXPL - Explosion","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"MNAM - Image Space Modifier"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Light"},{"t":3,"n":"Sound 1"},{"t":3,"n":"Sound 2"},{"t":3,"n":"Impact Data Set"},{"t":3,"n":"Placed Object"},{"t":3,"n":"Spawn Projectile"},{"t":5,"n":"Force"},{"t":5,"n":"Damage"},{"t":5,"n":"Radius"},{"t":5,"n":"IS Radius"},{"t":5,"n":"Vertical Offset Mult"},{"t":3,"n":"Flags"},{"t":3,"n":"Sound Level"}]}]},{"t":1,"n":"EYES - Eyes","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"ICON - Texture"},{"t":3,"n":"DATA - Flags"}]},{"t":1,"n":"FACT - Faction","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":8,"n":"Relations","c":[{"t":6,"n":"XNAM - Relation","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Modifier"},{"t":3,"n":"Group Combat Reaction"}]}]},{"t":6,"n":"DATA - Flags","c":[{"t":3,"n":"Flags"}]},{"t":3,"n":"JAIL - Exterior Jail Marker"},{"t":3,"n":"WAIT - Follower Wait Marker"},{"t":3,"n":"STOL - Stolen Goods Container"},{"t":3,"n":"PLCN - Player Inventory Container"},{"t":3,"n":"CRGR - Shared Crime Faction List"},{"t":3,"n":"JOUT - Jail Outfit"},{"t":6,"n":"CRVA - Crime Values","c":[{"t":3,"n":"Arrest"},{"t":3,"n":"Attack On Sight"},{"t":3,"n":"Murder"},{"t":3,"n":"Assault"},{"t":3,"n":"Trespass"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"n":"Steal Multiplier"},{"t":3,"n":"Escape"},{"t":3,"n":"Werewolf"}]},{"t":10,"n":"Ranks","c":[{"t":6,"n":"Rank","c":[{"t":3,"n":"RNAM - Rank#"},{"t":2,"n":"MNAM - Male Title"},{"t":2,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"n":"VENC - Merchant Container"},{"t":6,"n":"VENV - Vendor Values","c":[{"t":3,"n":"Start Hour"},{"t":3,"n":"End Hour"},{"t":3,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"n":"Only Buys Stolen Items"},{"t":3,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"n":"PLVD - Location","c":[{"t":3,"n":"Type"},{"t":3,"n":"Reference"},{"t":3,"n":"Cell"},{"t":11,"n":"Near Package Start Location"},{"t":11,"n":"Near Editor Location"},{"t":3,"n":"Object ID"},{"t":3,"n":"Object Type"},{"t":3,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"n":"FLOR - Flora","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Sound"},{"t":6,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer "},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]}]},{"t":1,"n":"FLST - FormID List","c":[{"t":2,"n":"EDID - Editor ID"},{"t":8,"n":"FormIDs","c":[{"t":3,"n":"LNAM - FormID"}]}]},{"t":1,"n":"FSTP - Footstep","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"DATA - Impact Data Set"},{"t":2,"n":"ANAM - Tag"}]},{"t":1,"n":"FSTS - Footstep Set","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"XCNT - Count","c":[{"t":3,"n":"Walk Forward Sets"},{"t":3,"n":"Run Forward Sets"},{"t":3,"n":"Walk Forward Alternate Sets"},{"t":3,"n":"Run Forward Alternate Sets"},{"t":3,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"n":"DATA - Footstep Sets","c":[{"t":3,"n":"Footstep"}]}]},{"t":1,"n":"FURN - Furniture","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"KNAM - Interaction Keyword"},{"t":3,"n":"MNAM - Active Markers \/ Flags"},{"t":6,"n":"WBDT - Workbench Data","c":[{"t":3,"n":"Bench Type"},{"t":3,"n":"Uses Skill"}]},{"t":3,"n":"NAM1 - Associated Spell"},{"t":8,"n":"Markers","c":[{"t":6,"n":"Marker","c":[{"t":3,"n":"ENAM - Marker Index"},{"t":6,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Disabled Points"}]},{"t":3,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"n":"Marker Entry Points","c":[{"t":6,"n":"FNPR - Marker","c":[{"t":3,"n":"Type"},{"t":3,"n":"Entry Points"}]}]},{"t":2,"n":"XMRK - Model Filename"}]},{"t":1,"n":"GLOB - Global","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"FNAM - Type"},{"t":5,"n":"FLTV - Value"}]},{"t":1,"n":"GMST - Game Setting","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"Name"},{"t":3,"n":"Int"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"}]},{"t":1,"n":"GRAS - Grass","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Density"},{"t":3,"n":"Min Slope"},{"t":3,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"n":"Units From Water"},{"t":3,"n":"Units From Water Type"},{"t":5,"n":"Position Range"},{"t":5,"n":"Height Range"},{"t":5,"n":"Color Range"},{"t":5,"n":"Wave Period"},{"t":3,"n":"Flags"}]}]},{"t":1,"n":"HAIR","c":[{"t":2,"n":"EDID - Editor ID"}]},{"t":1,"n":"HAZD - Hazard","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"MNAM - Image Space Modifier"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Limit"},{"t":5,"n":"Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Image Space Radius"},{"t":5,"n":"Target Interval"},{"t":3,"n":"Flags"},{"t":3,"n":"Spell"},{"t":3,"n":"Light"},{"t":3,"n":"Impact Data Set"},{"t":3,"n":"Sound"}]}]},{"t":1,"n":"HDPT - Head Part","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"DATA - Flags"},{"t":3,"n":"PNAM - Type"},{"t":8,"n":"Extra Parts","c":[{"t":3,"n":"HNAM - Part"}]},{"t":8,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"NAM0 - Part Type"},{"t":2,"n":"NAM1 - Filename"}]}]},{"t":3,"n":"TNAM - Texture Set"},{"t":3,"n":"CNAM - Color"},{"t":3,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - Filename"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Related Idle Animation"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags"},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"n":"IDLM - Idle Marker","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":3,"n":"IDLF - Flags"},{"t":3,"n":"IDLC - Animation Count"},{"t":5,"n":"IDLT - Idle Timer Setting"},{"t":7,"n":"IDLA - Animations","c":[{"t":3,"n":"Animation"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]},{"t":1,"n":"IMAD - Image Space Adapter","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags"},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags"},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"n":"BNAM - Blur Radius","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"VNAM - Double Vision Strength","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"TNAM - Tint Color","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"},{"t":5,"n":"Alpha"}]}]},{"t":7,"n":"NAM3 - Fade Color","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"},{"t":5,"n":"Alpha"}]}]},{"t":7,"n":"RNAM - Radial Blur Strength","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"SNAM - Radial Blur Ramp Up","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"UNAM - Radial Blur Start","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"WNAM - DoF Strength","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"XNAM - DoF Distance","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"YNAM - DoF Range","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":6,"n":"HDR","c":[{"t":7,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"GIAD - Sky Scale Add","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"n":"Cinematic","c":[{"t":7,"n":"rIAD - Saturation Mult","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"QIAD - Saturation Add","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"sIAD - Brightness Mult","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"RIAD - Brightness Add","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"tIAD - Contrast Mult","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"SIAD - Contrast Add","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"Time"},{"t":5,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"n":"IMGS - Image Space","c":[{"t":2,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"n":"HNAM - HDR","c":[{"t":5,"n":"Eye Adapt Speed"},{"t":5,"n":"Bloom Blur Radius"},{"t":5,"n":"Bloom Threshold"},{"t":5,"n":"Bloom Scale"},{"t":5,"n":"Receive Bloom Threshold"},{"t":5,"n":"White"},{"t":5,"n":"Sunlight Scale"},{"t":5,"n":"Sky Scale"},{"t":5,"n":"Eye Adapt Strength"}]},{"t":6,"n":"CNAM - Cinematic","c":[{"t":5,"n":"Saturation"},{"t":5,"n":"Brightness"},{"t":5,"n":"Contrast"}]},{"t":6,"n":"TNAM - Tint","c":[{"t":5,"n":"Amount"},{"t":6,"n":"Color","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]}]},{"t":6,"n":"DNAM - Depth of Field","c":[{"t":5,"n":"Strength"},{"t":5,"n":"Distance"},{"t":5,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"n":"INFO - Dialog response","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]},{"t":6,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"n":"Flags"},{"t":2,"n":"fileName"},{"t":7,"n":"Fragments","c":[{"t":6,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"n":"scriptName"},{"t":2,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"n":"ENAM - Response flags","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Reset Hours"}]},{"t":3,"n":"TPIC - Topic"},{"t":3,"n":"PNAM - Previous INFO"},{"t":3,"n":"CNAM - Favor Level"},{"t":8,"n":"Link To","c":[{"t":3,"n":"TCLT - Response"}]},{"t":3,"n":"DNAM - Response Data"},{"t":8,"n":"Responses","c":[{"t":6,"n":"Response","c":[{"t":6,"n":"TRDT - Response Data","c":[{"t":3,"n":"Emotion Type"},{"t":3,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"n":"Response number"},{"t":3,"n":"Sound"},{"t":3,"n":"Flags"}]},{"t":2,"n":"NAM1 - Response Text"},{"t":2,"n":"NAM2 - Script Notes"},{"t":2,"n":"NAM3 - Edits"},{"t":3,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"n":"RNAM - Prompt"},{"t":3,"n":"ANAM - Speaker"},{"t":3,"n":"TWAT - Walk Away Topic"},{"t":3,"n":"ONAM - Audio Output Override"}]},{"t":1,"n":"INGR - Ingredient","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Ingredient Value"},{"t":3,"n":"Flags"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"n":"IPCT - Impact","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"DATA - ","c":[{"t":5,"n":"Effect - Duration"},{"t":3,"n":"Effect - Orientation"},{"t":5,"n":"Angle Threshold"},{"t":5,"n":"Placement Radius"},{"t":3,"n":"Sound Level"},{"t":3,"n":"Flags"},{"t":3,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"DODT - Decal Data","c":[{"t":5,"n":"Min Width"},{"t":5,"n":"Max Width"},{"t":5,"n":"Min Height"},{"t":5,"n":"Max Height"},{"t":5,"n":"Depth"},{"t":5,"n":"Shininess"},{"t":6,"n":"Parallax","c":[{"t":5,"n":"Scale"},{"t":3,"n":"Passes"}]},{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"},{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"DNAM - Texture Set"},{"t":3,"n":"ENAM - Secondary Texture Set"},{"t":3,"n":"SNAM - Sound 1"},{"t":3,"n":"NAM1 - Sound 2"},{"t":3,"n":"NAM2 - Hazard"}]},{"t":1,"n":"IPDS - Impact Data Set","c":[{"t":2,"n":"EDID - Editor ID"},{"t":8,"n":"Data","c":[{"t":6,"n":"PNAM - ","c":[{"t":3,"n":"Material"},{"t":3,"n":"Impact"}]}]}]},{"t":1,"n":"KEYM - Key","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"n":"KYWD - Keyword","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LAND - Landscape","c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"n":"Layers","c":[{"t":6,"n":"Base Layer","c":[{"t":6,"n":"BTXT - Base Layer Header","c":[{"t":3,"n":"Texture"},{"t":3,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"n":"Layer"}]}]},{"t":6,"n":"Alpha Layer","c":[{"t":6,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"n":"Texture"},{"t":3,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"n":"Layer"}]},{"t":11,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"n":"VTEX - Textures","c":[{"t":3,"n":"Texture"}]}]},{"t":1,"n":"LCRT - Location Reference Type","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LENS - Lens Flare","c":[{"t":2,"n":"EDID - Editor ID"},{"t":5,"n":"CNAM - Color Influence"},{"t":5,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"n":"Lens Flare Sprites","c":[{"t":6,"n":"Flare","c":[{"t":2,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"n":"FNAM - Texture"},{"t":6,"n":"LFSD - Lens Flare Data","c":[{"t":6,"n":"Tint","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":5,"n":"Width"},{"t":5,"n":"Height"},{"t":5,"n":"Position"},{"t":5,"n":"Angular Fade"},{"t":5,"n":"Opacity"},{"t":3,"n":"Flags"}]}]}]}]},{"t":1,"n":"LGTM - Lighting Template","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"DATA - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Dist"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":6,"n":"Directional","c":[{"t":6,"n":"X+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"X-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Specular","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Scale"}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fog Max"},{"t":6,"n":"Light Fade Distances","c":[{"t":5,"n":"Start"},{"t":5,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"n":"Directional","c":[{"t":6,"n":"X+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"X-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Specular","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Scale"}]}]},{"t":1,"n":"LIGH - Light","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Time"},{"t":3,"n":"Radius"},{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"n":"Flags"},{"t":5,"n":"Falloff Exponent"},{"t":5,"n":"FOV"},{"t":5,"n":"Near Clip"},{"t":6,"n":"Flicker Effect","c":[{"t":5,"n":"Period"},{"t":5,"n":"Intensity Amplitude"},{"t":5,"n":"Movement Amplitude"}]},{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":5,"n":"FNAM - Fade value"},{"t":3,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"NNAM - Loading Screen NIF"},{"t":5,"n":"SNAM - Initial Scale"},{"t":6,"n":"RNAM - Initial Rotation","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Z"}]},{"t":6,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":6,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":2,"n":"MOD2 - Camera Path"}]},{"t":1,"n":"LTEX - Landscape Texture","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"TNAM - Texture Set"},{"t":3,"n":"MNAM - Material Type"},{"t":6,"n":"HNAM - Havok Data","c":[{"t":3,"n":"Friction"},{"t":3,"n":"Restitution"}]},{"t":3,"n":"SNAM - Texture Specular Exponent"},{"t":8,"n":"Grasses","c":[{"t":3,"n":"GNAM - Grass"}]},{"t":3,"n":"INAM - Flags"}]},{"t":1,"n":"LVLI - Leveled Item","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":3,"n":"LVLD - Chance None"},{"t":3,"n":"LVLF - Flags"},{"t":3,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"n":"Leveled List Entries","c":[{"t":6,"n":"Leveled List Entry","c":[{"t":6,"n":"LVLO - Base Data","c":[{"t":3,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"n":"Reference"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]}]},{"t":1,"n":"LVLN - Leveled NPC","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":3,"n":"LVLD - Chance None"},{"t":3,"n":"LVLF - Flags"},{"t":3,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"n":"Leveled List Entries","c":[{"t":6,"n":"Leveled List Entry","c":[{"t":6,"n":"LVLO - Base Data","c":[{"t":3,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"n":"Reference"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]},{"t":1,"n":"LVSP - Leveled Spell","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":3,"n":"LVLD - Chance None"},{"t":3,"n":"LVLF - Flags"},{"t":3,"n":"LLCT - Count"},{"t":10,"n":"Leveled List Entries","c":[{"t":6,"n":"Leveled List Entry","c":[{"t":6,"n":"LVLO - Base Data","c":[{"t":3,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"n":"Reference"},{"t":3,"n":"Count"}]}]}]}]},{"t":1,"n":"MATO - Material Object","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":8,"n":"Property Data","c":[{"t":11,"n":"DNAM - Data"}]},{"t":6,"n":"DATA - Directional Material Data","c":[{"t":5,"n":"Falloff Scale"},{"t":5,"n":"Falloff Bias"},{"t":5,"n":"Noise UV Scale"},{"t":5,"n":"Material UV Scale"},{"t":6,"n":"Projection Vector","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":5,"n":"Normal Dampener"},{"t":6,"n":"Single Pass Color","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]}]},{"t":1,"n":"MATT - Material Type","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"PNAM - Material Parent"},{"t":2,"n":"MNAM - Material Name"},{"t":6,"n":"CNAM - Havok Display Color","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":5,"n":"BNAM - Buoyancy"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"INAM - Icon (unused)"},{"t":3,"n":"QNAM - Owner Quest"},{"t":3,"n":"DNAM - Flags"},{"t":3,"n":"TNAM - Display Time"},{"t":8,"n":"Menu Buttons","c":[{"t":6,"n":"Menu Button","c":[{"t":2,"n":"ITXT - Button Text"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"Magic Effect Data","c":[{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"n":"Assoc. Item"},{"t":3,"n":"Magic Skill"},{"t":3,"n":"Resist Value"},{"t":3,"n":"Counter Effect count"},{"t":3,"n":"Casting Light"},{"t":5,"n":"Taper Weight"},{"t":3,"n":"Hit Shader"},{"t":3,"n":"Enchant Shader"},{"t":3,"n":"Minimum Skill Level"},{"t":6,"n":"Spellmaking","c":[{"t":3,"n":"Area"},{"t":5,"n":"Casting Time"}]},{"t":5,"n":"Taper Curve"},{"t":5,"n":"Taper Duration"},{"t":5,"n":"Second AV Weight"},{"t":3,"n":"Archtype"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Projectile"},{"t":3,"n":"Explosion"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Delivery"},{"t":3,"n":"Second Actor Value"},{"t":3,"n":"Casting Art"},{"t":3,"n":"Hit Effect Art"},{"t":3,"n":"Impact Data"},{"t":5,"n":"Skill Usage Multiplier"},{"t":6,"n":"Dual Casting","c":[{"t":3,"n":"Art"},{"t":5,"n":"Scale"}]},{"t":3,"n":"Enchant Art"},{"t":11,"n":"Unknown"},{"t":3,"n":"Equip Ability"},{"t":3,"n":"Image Space Modifier"},{"t":3,"n":"Perk to Apply"},{"t":3,"n":"Casting Sound Level"},{"t":6,"n":"Script Effect AI","c":[{"t":5,"n":"Score"},{"t":5,"n":"Delay Time"}]}]}]},{"t":8,"n":"Counter Effects","c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"n":"SNDD - Sounds","c":[{"t":6,"n":"","c":[{"t":3,"n":"Type"},{"t":3,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"n":"MISC - Misc. Item","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]}]},{"t":1,"n":"MOVT - Movement Type","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"MNAM - Name"},{"t":6,"n":"SPED - Default Data","c":[{"t":5,"n":"Left Walk"},{"t":5,"n":"Left Run"},{"t":5,"n":"Right Walk"},{"t":5,"n":"Right Run"},{"t":5,"n":"Forward Walk"},{"t":5,"n":"Forward Run"},{"t":5,"n":"Back Walk"},{"t":5,"n":"Back Run"},{"t":5,"n":"Rotate in Place Walk"},{"t":5,"n":"Rotate in Place Run"},{"t":5,"n":"Rotate while Moving Run"}]},{"t":6,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"n":"Directional"},{"t":5,"n":"Movement Speed"},{"t":5,"n":"Rotation Speed"}]}]},{"t":1,"n":"MSTT - Moveable Static","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"DATA - Flags"},{"t":3,"n":"SNAM - Looping Sound"}]},{"t":1,"n":"MUSC - Music Type","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"FNAM - Flags"},{"t":6,"n":"PNAM - Data","c":[{"t":3,"n":"Priority"},{"t":3,"n":"Ducking (dB)"}]},{"t":5,"n":"WNAM - Fade Duration"},{"t":7,"n":"TNAM - Music Tracks","c":[{"t":3,"n":"Track"}]}]},{"t":1,"n":"MUST - Music Track","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"CNAM - Track Type"},{"t":5,"n":"FLTV - Duration"},{"t":5,"n":"DNAM - Fade-Out"},{"t":2,"n":"ANAM - Track Filename"},{"t":2,"n":"BNAM - Finale Filename"},{"t":7,"n":"FNAM - Cue Points","c":[{"t":5,"n":"Point"}]},{"t":6,"n":"LNAM - Loop Data","c":[{"t":5,"n":"Loop Begins"},{"t":5,"n":"Loop Ends"},{"t":3,"n":"Loop Count"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"n":"SNAM - Tracks","c":[{"t":3,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"External Connections","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":3,"n":"Level"},{"t":3,"n":"Level Mult"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags"},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":8,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":8,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"Skill"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"Skill"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"}]},{"t":8,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"},{"t":6,"n":"TINC - Tint Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Alpha"}]},{"t":3,"n":"TINV - Interpolation Value"},{"t":3,"n":"TIAS - Preset"}]}]}]},{"t":1,"n":"OTFT - Outfit","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"INAM - Items","c":[{"t":3,"n":"Item"}]}]},{"t":1,"n":"PACK - Package","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]},{"t":6,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"n":"Flags"},{"t":2,"n":"fileName"},{"t":7,"n":"Fragments","c":[{"t":6,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"n":"scriptName"},{"t":2,"n":"fragmentName"}]}]}]}]},{"t":6,"n":"PKDT - Pack Data","c":[{"t":3,"n":"General Flags"},{"t":3,"n":"Type"},{"t":3,"n":"Interrupt Override"},{"t":3,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"n":"Interrupt Flags"}]},{"t":6,"n":"PSDT - Schedule","c":[{"t":3,"n":"Month"},{"t":3,"n":"Day of week"},{"t":3,"n":"Date"},{"t":3,"n":"Hour"},{"t":3,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"n":"Duration (minutes)"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"n":"Idle Animations","c":[{"t":3,"n":"IDLF - Flags"},{"t":6,"n":"IDLC - ","c":[{"t":3,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"IDLT - Idle Timer Setting"},{"t":7,"n":"IDLA - Animations","c":[{"t":3,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"n":"CNAM - Combat Style"},{"t":3,"n":"QNAM - Owner Quest"},{"t":6,"n":"PKCU - Counter","c":[{"t":3,"n":"Data Input Count"},{"t":3,"n":"Package Template"},{"t":3,"n":"Version Counter (autoincremented)"}]},{"t":6,"n":"Package Data","c":[{"t":8,"n":"Data Input Values","c":[{"t":6,"n":"Value","c":[{"t":2,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"n":"Bool"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"n":"Topic","c":[{"t":6,"n":"PDTO - Topic Data","c":[{"t":3,"n":"Type"},{"t":3,"n":"Topic"},{"t":2,"n":"Subtype"}]}]},{"t":6,"n":"PLDT - Location","c":[{"t":3,"n":"Type"},{"t":3,"n":"Reference"},{"t":3,"n":"Cell"},{"t":11,"n":"Near Package Start Location"},{"t":11,"n":"Near Editor Location"},{"t":3,"n":"Object ID"},{"t":3,"n":"Object Type"},{"t":3,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"n":"Radius"}]},{"t":6,"n":"PTDA - Target","c":[{"t":6,"n":"Target Data","c":[{"t":3,"n":"Type"},{"t":3,"n":"Reference"},{"t":3,"n":"Object ID"},{"t":3,"n":"Object Type"},{"t":3,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"n":"Data Inputs","c":[{"t":6,"n":"Data Input","c":[{"t":3,"n":"UNAM - Index"},{"t":2,"n":"BNAM - Name"},{"t":3,"n":"PNAM - Flags"}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"n":"Procedure Tree","c":[{"t":8,"n":"Branches","c":[{"t":6,"n":"Branch","c":[{"t":2,"n":"ANAM - Branch Type"},{"t":3,"n":"CITC - Condition Count"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"n":"PRCB - Root","c":[{"t":3,"n":"Branch Count"},{"t":3,"n":"Flags"}]},{"t":2,"n":"PNAM - Procedure Type"},{"t":3,"n":"FNAM - Flags"},{"t":8,"n":"Data Input Indexes","c":[{"t":3,"n":"PKC2 - Index"}]},{"t":8,"n":"Flags Override","c":[{"t":6,"n":"PFO2 - Data","c":[{"t":3,"n":"Set General Flags"},{"t":3,"n":"Clear General Flags"},{"t":3,"n":"Set Interrupt Flags"},{"t":3,"n":"Clear Interrupt Flags"},{"t":3,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"n":"Data Inputs","c":[{"t":6,"n":"Data Input","c":[{"t":3,"n":"UNAM - Index"},{"t":2,"n":"BNAM - Name"},{"t":3,"n":"PNAM - Flags"}]}]},{"t":6,"n":"OnBegin","c":[{"n":"POBA - OnBegin Marker"},{"t":3,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"n":"Topic","c":[{"t":6,"n":"PDTO - Topic Data","c":[{"t":3,"n":"Type"},{"t":3,"n":"Topic"},{"t":2,"n":"Subtype"}]}]}]},{"t":6,"n":"OnEnd","c":[{"n":"POEA - OnEnd Marker"},{"t":3,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"n":"Topic","c":[{"t":6,"n":"PDTO - Topic Data","c":[{"t":3,"n":"Type"},{"t":3,"n":"Topic"},{"t":2,"n":"Subtype"}]}]}]},{"t":6,"n":"OnChange","c":[{"n":"POCA - OnChange Marker"},{"t":3,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"n":"Topic","c":[{"t":6,"n":"PDTO - Topic Data","c":[{"t":3,"n":"Type"},{"t":3,"n":"Topic"},{"t":2,"n":"Subtype"}]}]}]}]},{"t":1,"n":"PARW - Placed Arrow","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":3,"n":"NAME - Projectile"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":5,"n":"XHTW - Head-Tracking Weight"},{"t":5,"n":"XFVC - Favor Cost"},{"t":8,"n":"Reflected\/Refracted By","c":[{"t":6,"n":"XPWR - Water","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Type"}]}]},{"t":8,"n":"Linked References","c":[{"t":6,"n":"XLKR - Linked Reference","c":[{"t":3,"n":"Keyword\/Ref"},{"t":3,"n":"Ref"}]}]},{"t":6,"n":"Activate Parents","c":[{"t":3,"n":"XAPD - Flags"},{"t":8,"n":"Activate Parent Refs","c":[{"t":6,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"n":"Reference"},{"t":5,"n":"Delay"}]}]}]},{"t":6,"n":"XESP - Enable Parent","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"n":"XEMI - Emittance"},{"t":3,"n":"XMBR - MultiBound Reference"},{"n":"XIS2 - Ignored by Sandbox"},{"t":7,"n":"XLRT - Location Ref Type","c":[{"t":3,"n":"Ref"}]},{"t":3,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"n":"XSCL - Scale"},{"t":6,"n":"DATA - Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]}]},{"t":1,"n":"PBAR - Placed Barrier","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":3,"n":"NAME - Projectile"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":5,"n":"XHTW - Head-Tracking Weight"},{"t":5,"n":"XFVC - Favor Cost"},{"t":8,"n":"Reflected\/Refracted By","c":[{"t":6,"n":"XPWR - Water","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Type"}]}]},{"t":8,"n":"Linked References","c":[{"t":6,"n":"XLKR - Linked Reference","c":[{"t":3,"n":"Keyword\/Ref"},{"t":3,"n":"Ref"}]}]},{"t":6,"n":"Activate Parents","c":[{"t":3,"n":"XAPD - Flags"},{"t":8,"n":"Activate Parent Refs","c":[{"t":6,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"n":"Reference"},{"t":5,"n":"Delay"}]}]}]},{"t":6,"n":"XESP - Enable Parent","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"n":"XEMI - Emittance"},{"t":3,"n":"XMBR - MultiBound Reference"},{"n":"XIS2 - Ignored by Sandbox"},{"t":7,"n":"XLRT - Location Ref Type","c":[{"t":3,"n":"Ref"}]},{"t":3,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"n":"XSCL - Scale"},{"t":6,"n":"DATA - Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]}]},{"t":1,"n":"PBEA - Placed Beam","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":3,"n":"NAME - Projectile"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":5,"n":"XHTW - Head-Tracking Weight"},{"t":5,"n":"XFVC - Favor Cost"},{"t":8,"n":"Reflected\/Refracted By","c":[{"t":6,"n":"XPWR - Water","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Type"}]}]},{"t":8,"n":"Linked References","c":[{"t":6,"n":"XLKR - Linked Reference","c":[{"t":3,"n":"Keyword\/Ref"},{"t":3,"n":"Ref"}]}]},{"t":6,"n":"Activate Parents","c":[{"t":3,"n":"XAPD - Flags"},{"t":8,"n":"Activate Parent Refs","c":[{"t":6,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"n":"Reference"},{"t":5,"n":"Delay"}]}]}]},{"t":6,"n":"XESP - Enable Parent","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"n":"XEMI - Emittance"},{"t":3,"n":"XMBR - MultiBound Reference"},{"n":"XIS2 - Ignored by Sandbox"},{"t":7,"n":"XLRT - Location Ref Type","c":[{"t":3,"n":"Ref"}]},{"t":3,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"n":"XSCL - Scale"},{"t":6,"n":"DATA - Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]}]},{"t":1,"n":"PCON - Placed Cone\/Voice","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":3,"n":"NAME - Projectile"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":5,"n":"XHTW - Head-Tracking Weight"},{"t":5,"n":"XFVC - Favor Cost"},{"t":8,"n":"Reflected\/Refracted By","c":[{"t":6,"n":"XPWR - Water","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Type"}]}]},{"t":8,"n":"Linked References","c":[{"t":6,"n":"XLKR - Linked Reference","c":[{"t":3,"n":"Keyword\/Ref"},{"t":3,"n":"Ref"}]}]},{"t":6,"n":"Activate Parents","c":[{"t":3,"n":"XAPD - Flags"},{"t":8,"n":"Activate Parent Refs","c":[{"t":6,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"n":"Reference"},{"t":5,"n":"Delay"}]}]}]},{"t":6,"n":"XESP - Enable Parent","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"n":"XEMI - Emittance"},{"t":3,"n":"XMBR - MultiBound Reference"},{"n":"XIS2 - Ignored by Sandbox"},{"t":7,"n":"XLRT - Location Ref Type","c":[{"t":3,"n":"Ref"}]},{"t":3,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"n":"XSCL - Scale"},{"t":6,"n":"DATA - Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]}]},{"t":1,"n":"PERK - Perk","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]},{"t":6,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"n":"fileName"},{"t":7,"n":"Fragments","c":[{"t":6,"n":"Fragment","c":[{"t":3,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"n":"scriptName"},{"t":2,"n":"fragmentName"}]}]}]}]},{"t":2,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Trait"},{"t":3,"n":"Level"},{"t":3,"n":"Num Ranks"},{"t":3,"n":"Playable"},{"t":3,"n":"Hidden"}]},{"t":3,"n":"NNAM - Next Perk"},{"t":10,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":6,"n":"PRKE - Header","c":[{"t":3,"n":"Type"},{"t":3,"n":"Rank"},{"t":3,"n":"Priority"}]},{"t":6,"n":"Quest + Stage","c":[{"t":3,"n":"Quest"},{"t":3,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"n":"Ability"},{"t":6,"n":"Entry Point","c":[{"t":3,"n":"Entry Point"},{"t":3,"n":"Function"},{"t":3,"n":"Perk Condition Tab Count"}]},{"t":10,"n":"Perk Conditions","c":[{"t":6,"n":"Perk Condition","c":[{"t":3,"n":"PRKC - Run On (Tab Index)"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"n":"Function Parameters","c":[{"t":3,"n":"EPFT - Type"},{"t":2,"n":"EPF2 - Button Label"},{"t":6,"n":"EPF3 - Script Flags","c":[{"t":3,"n":"Script Flags"},{"t":11,"n":"Unknown"}]},{"t":11,"n":"Unknown"},{"t":5,"n":"Float"},{"t":6,"n":"Float, Float","c":[{"t":5,"n":"Float 1"},{"t":5,"n":"Float 2"}]},{"t":3,"n":"Leveled Item"},{"t":3,"n":"Spell"},{"t":2,"n":"Text"},{"t":6,"n":"Actor Value, Float","c":[{"t":3,"n":"Actor Value"},{"t":5,"n":"Float"}]}]},{"n":"PRKF - End Marker"}]}]}]},{"t":1,"n":"PFLA - Placed Flame","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":3,"n":"NAME - Projectile"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":5,"n":"XHTW - Head-Tracking Weight"},{"t":5,"n":"XFVC - Favor Cost"},{"t":8,"n":"Reflected\/Refracted By","c":[{"t":6,"n":"XPWR - Water","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Type"}]}]},{"t":8,"n":"Linked References","c":[{"t":6,"n":"XLKR - Linked Reference","c":[{"t":3,"n":"Keyword\/Ref"},{"t":3,"n":"Ref"}]}]},{"t":6,"n":"Activate Parents","c":[{"t":3,"n":"XAPD - Flags"},{"t":8,"n":"Activate Parent Refs","c":[{"t":6,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"n":"Reference"},{"t":5,"n":"Delay"}]}]}]},{"t":6,"n":"XESP - Enable Parent","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"n":"XEMI - Emittance"},{"t":3,"n":"XMBR - MultiBound Reference"},{"n":"XIS2 - Ignored by Sandbox"},{"t":7,"n":"XLRT - Location Ref Type","c":[{"t":3,"n":"Ref"}]},{"t":3,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"n":"XSCL - Scale"},{"t":6,"n":"DATA - Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]}]},{"t":1,"n":"PGRE - Placed Projectile","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":3,"n":"NAME - Projectile"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":5,"n":"XHTW - Head-Tracking Weight"},{"t":5,"n":"XFVC - Favor Cost"},{"t":8,"n":"Reflected\/Refracted By","c":[{"t":6,"n":"XPWR - Water","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Type"}]}]},{"t":8,"n":"Linked References","c":[{"t":6,"n":"XLKR - Linked Reference","c":[{"t":3,"n":"Keyword\/Ref"},{"t":3,"n":"Ref"}]}]},{"t":6,"n":"Activate Parents","c":[{"t":3,"n":"XAPD - Flags"},{"t":8,"n":"Activate Parent Refs","c":[{"t":6,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"n":"Reference"},{"t":5,"n":"Delay"}]}]}]},{"t":6,"n":"XESP - Enable Parent","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"n":"XEMI - Emittance"},{"t":3,"n":"XMBR - MultiBound Reference"},{"n":"XIS2 - Ignored by Sandbox"},{"t":7,"n":"XLRT - Location Ref Type","c":[{"t":3,"n":"Ref"}]},{"t":3,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"n":"XSCL - Scale"},{"t":6,"n":"DATA - Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]}]},{"t":1,"n":"PHZD - Placed Hazard","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":3,"n":"NAME - Projectile"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":5,"n":"XHTW - Head-Tracking Weight"},{"t":5,"n":"XFVC - Favor Cost"},{"t":8,"n":"Reflected\/Refracted By","c":[{"t":6,"n":"XPWR - Water","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Type"}]}]},{"t":8,"n":"Linked References","c":[{"t":6,"n":"XLKR - Linked Reference","c":[{"t":3,"n":"Keyword\/Ref"},{"t":3,"n":"Ref"}]}]},{"t":6,"n":"Activate Parents","c":[{"t":3,"n":"XAPD - Flags"},{"t":8,"n":"Activate Parent Refs","c":[{"t":6,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"n":"Reference"},{"t":5,"n":"Delay"}]}]}]},{"t":6,"n":"XESP - Enable Parent","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"n":"XEMI - Emittance"},{"t":3,"n":"XMBR - MultiBound Reference"},{"n":"XIS2 - Ignored by Sandbox"},{"t":7,"n":"XLRT - Location Ref Type","c":[{"t":3,"n":"Ref"}]},{"t":3,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"n":"XSCL - Scale"},{"t":6,"n":"DATA - Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]}]},{"t":1,"n":"PMIS - Placed Missile","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":3,"n":"NAME - Projectile"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":5,"n":"XHTW - Head-Tracking Weight"},{"t":5,"n":"XFVC - Favor Cost"},{"t":8,"n":"Reflected\/Refracted By","c":[{"t":6,"n":"XPWR - Water","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Type"}]}]},{"t":8,"n":"Linked References","c":[{"t":6,"n":"XLKR - Linked Reference","c":[{"t":3,"n":"Keyword\/Ref"},{"t":3,"n":"Ref"}]}]},{"t":6,"n":"Activate Parents","c":[{"t":3,"n":"XAPD - Flags"},{"t":8,"n":"Activate Parent Refs","c":[{"t":6,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"n":"Reference"},{"t":5,"n":"Delay"}]}]}]},{"t":6,"n":"XESP - Enable Parent","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"n":"XEMI - Emittance"},{"t":3,"n":"XMBR - MultiBound Reference"},{"n":"XIS2 - Ignored by Sandbox"},{"t":7,"n":"XLRT - Location Ref Type","c":[{"t":3,"n":"Ref"}]},{"t":3,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"n":"XSCL - Scale"},{"t":6,"n":"DATA - Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]}]},{"t":1,"n":"PROJ - Projectile","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Gravity"},{"t":5,"n":"Speed"},{"t":5,"n":"Range"},{"t":3,"n":"Light"},{"t":3,"n":"Muzzle Flash - Light"},{"t":5,"n":"Tracer Chance"},{"t":5,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"n":"Explosion"},{"t":3,"n":"Sound"},{"t":5,"n":"Muzzle Flash - Duration"},{"t":5,"n":"Fade Duration"},{"t":5,"n":"Impact Force"},{"t":3,"n":"Sound - Countdown"},{"t":3,"n":"Sound - Disable"},{"t":3,"n":"Default Weapon Source"},{"t":5,"n":"Cone Spread"},{"t":5,"n":"Collision Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Relaunch Interval"},{"t":3,"n":"Decal Data"},{"t":3,"n":"Collision Layer"}]},{"t":6,"n":"Muzzle Flash Model","c":[{"t":2,"n":"NAM1 - Model Filename"},{"t":11,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"n":"VNAM - Sound Level"}]},{"t":1,"n":"PWAT","c":[{"t":2,"n":"EDID - Editor ID"}]},{"t":1,"n":"QUST - Quest","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]},{"t":6,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"n":"fragmentCount"},{"t":2,"n":"fileName"},{"t":7,"n":"Fragments","c":[{"t":6,"n":"Fragment","c":[{"t":3,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"n":"Quest Stage Index"},{"t":2,"n":"scriptName"},{"t":2,"n":"fragmentName"}]}]}]},{"t":7,"n":"Aliases","c":[{"t":6,"n":"Alias","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Alias Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"DNAM - General","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Priority"},{"t":3,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"n":"Type"}]},{"t":2,"n":"ENAM - Event"},{"t":8,"n":"Text Display Globals","c":[{"t":3,"n":"QTGL - Global"}]},{"t":2,"n":"FLTR - Object Window Filter"},{"t":6,"n":"Quest Dialogue Conditions","c":[{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]},{"n":"NEXT - Marker"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"INDX - Stage Index","c":[{"t":3,"n":"Stage Index"},{"t":3,"n":"Flags"},{"t":3,"n":"Unknown"}]},{"t":8,"n":"Log Entries","c":[{"t":6,"n":"Log Entry","c":[{"t":3,"n":"QSDT - Stage Flags"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"CNAM - Log Entry"},{"t":3,"n":"NAM0 - Next Quest"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"n":"Objectives","c":[{"t":6,"n":"Objective","c":[{"t":3,"n":"QOBJ - Objective Index"},{"t":3,"n":"FNAM - Flags"},{"t":2,"n":"NNAM - Display Text"},{"t":8,"n":"Targets","c":[{"t":6,"n":"Target","c":[{"t":6,"n":"QSTA - Target","c":[{"t":3,"n":"Alias"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":11,"n":"ANAM - Aliases Marker"},{"t":8,"n":"Aliases","c":[{"t":6,"n":"Alias","c":[{"t":3,"n":"ALST - Reference Alias ID"},{"t":2,"n":"ALID - Alias Name"},{"t":6,"n":"FNAM - Alias Flags","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Additional Flags"}]},{"t":3,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"n":"ALFL - Specific Location"},{"t":3,"n":"ALFR - Forced Reference"},{"t":3,"n":"ALUA - Unique Actor"},{"t":6,"n":"Location Alias Reference","c":[{"t":3,"n":"ALFA - Alias"},{"t":3,"n":"KNAM - Keyword"},{"t":3,"n":"ALRT - Ref Type"}]},{"t":6,"n":"External Alias Reference","c":[{"t":3,"n":"ALEQ - Quest"},{"t":3,"n":"ALEA - Alias"}]},{"t":6,"n":"Create Reference to Object","c":[{"t":3,"n":"ALCO - Object"},{"t":6,"n":"ALCA - Alias","c":[{"t":3,"n":"Alias"},{"t":3,"n":"Create"}]},{"t":3,"n":"ALCL - Level"}]},{"t":6,"n":"Find Matching Reference Near Alias","c":[{"t":3,"n":"ALNA - Alias"},{"t":3,"n":"ALNT - Type"}]},{"t":6,"n":"Find Matching Reference From Event","c":[{"t":2,"n":"ALFE - From Event"},{"t":11,"n":"ALFD - Event Data"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"ALDN - Display Name"},{"t":8,"n":"Alias Spells","c":[{"t":3,"n":"ALSP - Spell"}]},{"t":8,"n":"Alias Factions","c":[{"t":3,"n":"ALFC - Faction"}]},{"t":8,"n":"Alias Package Data","c":[{"t":3,"n":"ALPC - Package"}]},{"t":3,"n":"VTCK - Voice Types"},{"n":"ALED - Alias End"}]}]},{"t":2,"n":"NNAM - Description"},{"t":8,"n":"Targets","c":[{"t":6,"n":"Target","c":[{"t":6,"n":"QSTA - Target","c":[{"t":3,"n":"Target"},{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":3,"n":"WNAM - Skin"},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"BODT - Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":7,"n":"Skill Boosts","c":[{"t":6,"n":"Skill Boost","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"n":"Male Height"},{"t":5,"n":"Female Height"},{"t":5,"n":"Male Weight"},{"t":5,"n":"Female Weight"},{"t":3,"n":"Flags"},{"t":5,"n":"Starting Health"},{"t":5,"n":"Starting Magicka"},{"t":5,"n":"Starting Stamina"},{"t":5,"n":"Base Carry Weight"},{"t":5,"n":"Base Mass"},{"t":5,"n":"Acceleration rate"},{"t":5,"n":"Deceleration rate"},{"t":3,"n":"Size"},{"t":3,"n":"Head Biped Object"},{"t":3,"n":"Hair Biped Object"},{"t":5,"n":"Injured Health Pct"},{"t":3,"n":"Shield Biped Object"},{"t":5,"n":"Health Regen"},{"t":5,"n":"Magicka Regen"},{"t":5,"n":"Stamina Regen"},{"t":5,"n":"Unarmed Damage"},{"t":5,"n":"Unarmed Reach"},{"t":3,"n":"Body Biped Object"},{"t":5,"n":"Aim Angle Tolerance"},{"t":5,"n":"Flight Radius"},{"t":5,"n":"Angular Acceleration Rate"},{"t":5,"n":"Angular Tolerance"},{"t":3,"n":"Flags 2"},{"t":6,"n":"Mount Data","c":[{"t":5,"n":"Offset X"},{"t":5,"n":"Offset Y"},{"t":5,"n":"Unknown"}]}]},{"n":"MNAM - Male Marker"},{"t":2,"n":"ANAM - Male Skeletal Model"},{"t":11,"n":"MODT - Texture Files Hashes"},{"n":"FNAM - Female Marker"},{"t":2,"n":"ANAM - Female Skeletal Model"},{"n":"NAM2 - Marker NAM2 #1"},{"t":8,"n":"Movement Type Names","c":[{"t":2,"n":"MTNM - Name"}]},{"t":7,"n":"VTCK - Voices","c":[{"t":3,"n":"Voice"}]},{"t":7,"n":"DNAM - Decapitate Armors","c":[{"t":3,"n":"Decapitate Armor"}]},{"t":7,"n":"HCLF - Default Hair Colors","c":[{"t":3,"n":"Default Hair Color"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":6,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"INDX - Index"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"INDX - Index"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"n":"HNAM - Hairs","c":[{"t":3,"n":"Hair"}]},{"t":7,"n":"ENAM - Eyes","c":[{"t":3,"n":"Eye"}]},{"t":3,"n":"GNAM - Body Part Data"},{"n":"NAM2 - Marker NAM2 #2"},{"n":"NAM3 - Marker NAM3 #3"},{"t":6,"n":"Male Behavior Graph","c":[{"n":"MNAM - Male Data Marker"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]},{"t":6,"n":"Female Behavior Graph","c":[{"n":"FNAM - Female Data Marker"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]},{"t":3,"n":"NAM4 - Material Type"},{"t":3,"n":"NAM5 - Impact Data Set"},{"t":3,"n":"NAM7 - Decapitation FX"},{"t":3,"n":"ONAM - Open Loot Sound"},{"t":3,"n":"LNAM - Close Loot Sound"},{"t":8,"n":"Biped Object Names","c":[{"t":2,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags"},{"t":8,"n":"Equip Slots","c":[{"t":3,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"n":"Male Head Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"n":"Head Parts","c":[{"t":6,"n":"Head Part","c":[{"t":3,"n":"INDX - Head Part Number"},{"t":3,"n":"HEAD - Head"}]}]},{"t":6,"n":"Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1"},{"t":3,"n":"Eye Morph Flags 2"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Race Presets Male","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"Available Hair Colors Male","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"Face Details Texture Set List Male","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Default Face Texture Male"},{"t":8,"n":"Tint Masks","c":[{"t":6,"n":"Tint Assets","c":[{"t":8,"n":"Tint Layer","c":[{"t":6,"n":"Texture","c":[{"t":3,"n":"TINI - Index"},{"t":2,"n":"TINT - File Name"},{"t":3,"n":"TINP - Mask Type"},{"t":3,"n":"TIND - Preset Default"}]}]},{"t":8,"n":"Presets","c":[{"t":6,"n":"Preset","c":[{"t":3,"n":"TINC - Color"},{"t":5,"n":"TINV - Default Value"},{"t":3,"n":"TIRS - Index"}]}]}]}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]},{"t":6,"n":"Female Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"n":"FNAM - Female Data Marker"},{"t":10,"n":"Head Parts","c":[{"t":6,"n":"Head Part","c":[{"t":3,"n":"INDX - Head Part Number"},{"t":3,"n":"HEAD - Head"}]}]},{"t":6,"n":"Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1"},{"t":3,"n":"Eye Morph Flags 2"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Race Presets Female","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"Available Hair Colors Female","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"Face Details Texture Set List Female","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Default Face Texture Female"},{"t":8,"n":"Tint Masks","c":[{"t":6,"n":"Tint Assets","c":[{"t":8,"n":"Tint Layer","c":[{"t":6,"n":"Texture","c":[{"t":3,"n":"TINI - Index"},{"t":2,"n":"TINT - File Name"},{"t":3,"n":"TINP - Mask Type"},{"t":3,"n":"TIND - Preset Default"}]}]},{"t":8,"n":"Presets","c":[{"t":6,"n":"Preset","c":[{"t":3,"n":"TINC - Color"},{"t":5,"n":"TINV - Default Value"},{"t":3,"n":"TIRS - Index"}]}]}]}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"n":"REFR - Placed Object","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":3,"n":"NAME - Base"},{"t":6,"n":"XMBO - Bound Half Extents","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"XPRM - Primitive","c":[{"t":6,"n":"Bounds","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Color","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"n":"Size","c":[{"t":5,"n":"Width"},{"t":5,"n":"Height"}]},{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation (Quaternion?)","c":[{"t":5,"n":"q1"},{"t":5,"n":"q2"},{"t":5,"n":"q3"},{"t":5,"n":"q4"}]}]},{"t":7,"n":"XPOD - Portal Data","c":[{"t":6,"n":"References","c":[{"t":3,"n":"Origin"},{"t":3,"n":"Destination"}]}]},{"t":6,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"n":"Size","c":[{"t":5,"n":"Width"},{"t":5,"n":"Height"}]},{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation (Quaternion?)","c":[{"t":5,"n":"q1"},{"t":5,"n":"q2"},{"t":5,"n":"q3"},{"t":5,"n":"q4"}]}]},{"t":6,"n":"Bound Data","c":[{"t":6,"n":"XRMR - Header","c":[{"t":3,"n":"Linked Rooms Count"},{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"LNAM - Lighting Template"},{"t":3,"n":"INAM - Image Space"},{"t":8,"n":"Linked Rooms","c":[{"t":3,"n":"XLRM - Linked Room"}]}]},{"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"n":"XRDS - Radius"},{"t":8,"n":"Reflected\/Refracted By","c":[{"t":6,"n":"XPWR - Water","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Type"}]}]},{"t":8,"n":"Lit Water","c":[{"t":3,"n":"XLTW - Water"}]},{"t":3,"n":"XEMI - Emittance"},{"t":6,"n":"XLIG - Light Data","c":[{"t":5,"n":"FOV 90+\/-"},{"t":5,"n":"Fade 1.35+\/-"},{"t":11,"n":"Unknown"},{"t":5,"n":"Shadow Depth Bias"}]},{"t":6,"n":"XALP - Alpha","c":[{"t":3,"n":"Cutoff"},{"t":3,"n":"Base"}]},{"t":6,"n":"XTEL - Teleport Destination","c":[{"t":3,"n":"Door"},{"t":6,"n":"Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]},{"t":3,"n":"Flags"}]},{"t":3,"n":"XTNM - Teleport Message Box"},{"t":3,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"n":"XSCL - Scale"},{"t":3,"n":"XSPC - Spawn Container"},{"t":6,"n":"Activate Parents","c":[{"t":3,"n":"XAPD - Flags"},{"t":8,"n":"Activate Parent Refs","c":[{"t":6,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"n":"Reference"},{"t":5,"n":"Delay"}]}]}]},{"t":3,"n":"XLIB - Leveled Item Base Object"},{"t":3,"n":"XLCM - Level Modifier"},{"t":3,"n":"XLCN - Persistent Location"},{"t":3,"n":"XTRI - Collision Layer"},{"t":6,"n":"XLOC - Lock Data","c":[{"t":3,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"n":"Key"},{"t":3,"n":"Flags"}]},{"t":3,"n":"XEZN - Encounter Zone"},{"t":6,"n":"XNDP - Navigation Door Link","c":[{"t":3,"n":"Navigation Mesh"},{"t":3,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"n":"XLRT - Location Ref Type","c":[{"t":3,"n":"Ref"}]},{"n":"XIS2 - Ignored by Sandbox"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":3,"n":"XCNT - Item Count"},{"t":5,"n":"XCHG - Charge"},{"t":3,"n":"XLRL - Location Reference"},{"t":6,"n":"XESP - Enable Parent","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":8,"n":"Linked References","c":[{"t":6,"n":"XLKR - Linked Reference","c":[{"t":3,"n":"Keyword\/Ref"},{"t":3,"n":"Ref"}]}]},{"t":8,"n":"Patrol","c":[{"t":6,"n":"Data","c":[{"t":5,"n":"XPRD - Idle Time"},{"n":"XPPA - Patrol Script Marker"},{"t":3,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"n":"Topic","c":[{"t":6,"n":"PDTO - Topic Data","c":[{"t":3,"n":"Type"},{"t":3,"n":"Topic"},{"t":2,"n":"Subtype"}]}]}]}]},{"t":3,"n":"XACT - Action Flag"},{"t":5,"n":"XHTW - Head-Tracking Weight"},{"t":5,"n":"XFVC - Favor Cost"},{"n":"ONAM - Open by Default"},{"t":6,"n":"Map Marker","c":[{"n":"XMRK - Map Marker Data"},{"t":3,"n":"FNAM - Map Flags"},{"t":2,"n":"FULL - Name"},{"t":6,"n":"TNAM - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"XATR - Attach Ref"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"n":"DATA - Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]}]},{"t":1,"n":"REGN - Region","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"RCLR - Map Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"WNAM - Worldspace"},{"t":8,"n":"Region Areas","c":[{"t":6,"n":"Region Area","c":[{"t":3,"n":"RPLI - Edge Fall-off"},{"t":7,"n":"RPLD - Region Point List Data","c":[{"t":6,"n":"Point","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"}]}]}]}]},{"t":10,"n":"Region Data Entries","c":[{"t":6,"n":"Region Data Entry","c":[{"t":6,"n":"RDAT - Data Header","c":[{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":3,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":3,"n":"RDMO - Music"},{"t":7,"n":"RDSA - Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"Sound"},{"t":3,"n":"Flags"},{"t":5,"n":"Chance"}]}]},{"t":2,"n":"RDMP - Map Name"},{"t":7,"n":"RDOT - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Object"},{"t":3,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"n":"Density"},{"t":3,"n":"Clustering"},{"t":3,"n":"Min Slope"},{"t":3,"n":"Max Slope"},{"t":3,"n":"Flags"},{"t":3,"n":"Radius wrt Parent"},{"t":3,"n":"Radius"},{"t":5,"n":"Min Height"},{"t":5,"n":"Max Height"},{"t":5,"n":"Sink"},{"t":5,"n":"Sink Variance"},{"t":5,"n":"Size Variance"},{"t":6,"n":"Angle Variance","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Z"}]}]}]},{"t":7,"n":"RDGS - Grasses","c":[{"t":6,"n":"Grass","c":[{"t":3,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"n":"RDWT - Weather Types","c":[{"t":6,"n":"Weather Type","c":[{"t":3,"n":"Weather"},{"t":3,"n":"Chance"},{"t":3,"n":"Global"}]}]}]}]}]},{"t":1,"n":"RELA - Relationship","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Child"},{"t":3,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"n":"Flags"},{"t":3,"n":"Association Type"}]}]},{"t":1,"n":"REVB - Reverb Parameters","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Decay Time (ms)"},{"t":3,"n":"HF Reference (Hz)"},{"t":3,"n":"Room Filter"},{"t":3,"n":"Room HF Filter"},{"t":3,"n":"Reflections"},{"t":3,"n":"Reverb Amp"},{"t":3,"n":"Decay HF Ratio"},{"t":3,"n":"Reflect Delay (ms), scaled"},{"t":3,"n":"Reverb Delay (ms)"},{"t":3,"n":"Diffusion %"},{"t":3,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"n":"RFCT - Visual Effect","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"DATA - Effect Data","c":[{"t":3,"n":"Effect Art"},{"t":3,"n":"Shader"},{"t":3,"n":"Flags"}]}]},{"t":1,"n":"RGDL","c":[{"t":2,"n":"EDID - Editor ID"}]},{"t":1,"n":"SCEN - Scene","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]},{"t":6,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"n":"Flags"},{"t":2,"n":"fileName"},{"t":7,"n":"Fragments","c":[{"t":6,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"n":"scriptName"},{"t":2,"n":"fragmentName"}]}]},{"t":7,"n":"Phase Fragments","c":[{"t":6,"n":"Phase Fragment","c":[{"t":3,"n":"Phase Flag"},{"t":3,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"n":"scriptName"},{"t":2,"n":"fragmentName"}]}]}]}]},{"t":3,"n":"FNAM - Flags"},{"t":8,"n":"Phases","c":[{"t":6,"n":"Phase","c":[{"n":"HNAM - Marker Phase Start"},{"t":2,"n":"NAM0 - Name"},{"t":6,"n":"Start Conditions","c":[{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]},{"n":"NEXT - Marker"},{"t":6,"n":"Completion Conditions","c":[{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"n":"WNAM - Editor Width"},{"n":"HNAM - Marker Phase End"}]}]},{"t":8,"n":"Actors","c":[{"t":6,"n":"Actor","c":[{"t":3,"n":"ALID - Actor ID"},{"t":3,"n":"LNAM - Flags"},{"t":3,"n":"DNAM - Behaviour Flags"}]}]},{"t":8,"n":"Actions","c":[{"t":6,"n":"Action","c":[{"t":3,"n":"ANAM - Type"},{"t":2,"n":"NAM0 - Name"},{"t":3,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"n":"INAM - Index"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"SNAM - Start Phase"},{"t":3,"n":"ENAM - End Phase"},{"t":5,"n":"SNAM - Timer Seconds"},{"t":8,"n":"Packages","c":[{"t":3,"n":"PNAM - Package"}]},{"t":3,"n":"DATA - Topic"},{"t":3,"n":"HTID - Headtrack Actor ID"},{"t":5,"n":"DMAX - Looping - Max"},{"t":5,"n":"DMIN - Looping - Min"},{"t":3,"n":"DEMO - Emotion Type"},{"t":3,"n":"DEVA - Emotion Value"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"n":"ANAM - End Marker"}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"n":"NEXT - Marker"},{"t":3,"n":"PNAM - Quest"},{"t":3,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"n":"SCOL","c":[{"t":2,"n":"EDID - Editor ID"}]},{"t":1,"n":"SCPT","c":[{"t":2,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":6,"n":"DATA - Item","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"n":"Words of Power","c":[{"t":6,"n":"SNAM - ","c":[{"t":3,"n":"Word"},{"t":3,"n":"Spell"},{"t":5,"n":"Recovery Time"}]}]}]},{"t":1,"n":"SLGM - Soul Gem","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SOUL - Contained Soul"},{"t":3,"n":"SLCP - Maximum Capacity"},{"t":3,"n":"NAM0 - Linked To"}]},{"t":1,"n":"SMBN - Story Manager Branch Node","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"PNAM - Parent "},{"t":3,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"DNAM - Flags"},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"n":"SMEN - Story Manager Event Node","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"PNAM - Parent "},{"t":3,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"DNAM - Flags"},{"t":11,"n":"XNAM - Unknown"},{"t":2,"n":"ENAM - Type"}]},{"t":1,"n":"SMQN - Story Manager Quest Node","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"PNAM - Parent "},{"t":3,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"n":"DNAM - Flags","c":[{"t":3,"n":"Node Flags"},{"t":3,"n":"Quest Flags"}]},{"t":3,"n":"XNAM - Max concurrent quests"},{"t":3,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"n":"Quests","c":[{"t":6,"n":"Quest","c":[{"t":3,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"n":"SNCT - Sound Category","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"FNAM - Flags"},{"t":3,"n":"PNAM - Parent"},{"t":3,"n":"VNAM - Static Volume Multiplier"},{"t":3,"n":"UNAM - Default Menu Value"}]},{"t":1,"n":"SNDR - Sound Descriptor","c":[{"t":2,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"n":"GNAM - Category"},{"t":3,"n":"SNAM - Alternate Sound For"},{"t":8,"n":"Sounds","c":[{"t":6,"n":"Sound Files","c":[{"t":2,"n":"ANAM - File Name"}]}]},{"t":3,"n":"ONAM - Output Model"},{"t":2,"n":"FNAM - String"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Looping"},{"t":3,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"n":"BNAM - Values","c":[{"t":3,"n":"% Frequency Shift"},{"t":3,"n":"% Frequency Variance"},{"t":3,"n":"Priority"},{"t":3,"n":"db Variance"},{"t":3,"n":"Static Attenuation (db)"}]}]},{"t":1,"n":"SOPM - Sound Output Model","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NAM1 - Data","c":[{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"},{"t":3,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"n":"ONAM - Output Values","c":[{"t":7,"n":"Channels","c":[{"t":6,"n":"","c":[{"t":3,"n":"L"},{"t":3,"n":"R"},{"t":3,"n":"C"},{"t":3,"n":"LFE"},{"t":3,"n":"RL"},{"t":3,"n":"RR"},{"t":3,"n":"BL"},{"t":3,"n":"BR"}]}]}]},{"t":6,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"Min Distance"},{"t":5,"n":"Max Distance"},{"t":7,"n":"Curve","c":[{"t":3,"n":"Value"}]}]}]},{"t":1,"n":"SOUN - Sound Marker","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"n":"SPIT - Data","c":[{"t":3,"n":"Base Cost"},{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"n":"Charge Time"},{"t":3,"n":"Cast Type"},{"t":3,"n":"Target Type"},{"t":5,"n":"Cast Duration"},{"t":5,"n":"Range"},{"t":3,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"n":"SPGD - Shader Particle Geometry","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"Data","c":[{"t":5,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"n":"Rotation Velocity"},{"t":5,"n":"Particle Size X"},{"t":5,"n":"Center Offset Min"},{"t":5,"n":"Particle Size Y"},{"t":5,"n":"Center Offset Max"},{"t":5,"n":"Initial Rotation"},{"t":3,"n":"# of Subtextures X"},{"t":3,"n":"# of Subtextures Y"},{"t":3,"n":"Type"},{"t":3,"n":"Box Size"},{"t":5,"n":"Particle Density"}]},{"t":2,"n":"ICON - Particle Texture"}]},{"t":1,"n":"STAT - Static","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"DNAM - Direction Material","c":[{"t":5,"n":"Max Angle (30-120)"},{"t":3,"n":"Material"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":7,"n":"MNAM - Distant LOD","c":[{"t":6,"n":"LOD","c":[{"t":2,"n":"Mesh"}]}]}]},{"t":1,"n":"TACT - Talking Activator","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"VNAM - Voice Type"}]},{"t":1,"n":"TES4 - Main File Header","c":[{"t":6,"n":"HEDR - Header","c":[{"t":5,"n":"Version"},{"t":3,"n":"Number of Records"},{"t":3,"n":"Next Object ID"}]},{"t":11,"n":"OFST - Unknown"},{"t":11,"n":"DELE - Unknown"},{"t":2,"n":"CNAM - Author"},{"t":2,"n":"SNAM - Description"},{"t":8,"n":"Master Files","c":[{"t":6,"n":"Master File","c":[{"t":2,"n":"MAST - Filename"},{"t":11,"n":"DATA - Unknown"}]}]},{"t":7,"n":"ONAM - Overridden Forms","c":[{"t":3,"n":"Form"}]},{"t":11,"n":"SCRN - Screenshot"},{"t":11,"n":"INTV - Unknown"},{"t":11,"n":"INCC - Unknown"}]},{"t":1,"n":"TREE - Tree","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":3,"n":"PFIG - Ingredient"},{"t":3,"n":"SNAM - Harvest Sound"},{"t":6,"n":"PFPC - Ingredient Production","c":[{"t":3,"n":"Spring"},{"t":3,"n":"Summer"},{"t":3,"n":"Fall"},{"t":3,"n":"Winter"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"CNAM - Tree Data","c":[{"t":5,"n":"Trunk Flexibility"},{"t":5,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"n":"Leaf Amplitude"},{"t":5,"n":"Leaf Frequency"}]}]},{"t":1,"n":"TXST - Texture Set","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"Textures (RGB\/A)","c":[{"t":2,"n":"TX00 - Difuse"},{"t":2,"n":"TX01 - Normal\/Gloss"},{"t":2,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"n":"TX03 - Glow\/Detail Map"},{"t":2,"n":"TX04 - Height"},{"t":2,"n":"TX05 - Environment"},{"t":2,"n":"TX06 - Multilayer"},{"t":2,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"n":"DODT - Decal Data","c":[{"t":5,"n":"Min Width"},{"t":5,"n":"Max Width"},{"t":5,"n":"Min Height"},{"t":5,"n":"Max Height"},{"t":5,"n":"Depth"},{"t":5,"n":"Shininess"},{"t":6,"n":"Parallax","c":[{"t":5,"n":"Scale"},{"t":3,"n":"Passes"}]},{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"},{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"DNAM - Flags"}]},{"t":1,"n":"VOLI - Volumetric Lighting","c":[{"t":2,"n":"EDID - Editor ID"},{"t":5,"n":"CNAM - Intensity"},{"t":5,"n":"DNAM - Custom Color - Contribution"},{"t":5,"n":"ENAM - Red"},{"t":5,"n":"FNAM - Green"},{"t":5,"n":"GNAM - Blue"},{"t":5,"n":"HNAM - Density - Contribution"},{"t":5,"n":"INAM - Density - Size"},{"t":5,"n":"JNAM - Density - Wind Speed"},{"t":5,"n":"KNAM - Density - Falling Speed"},{"t":5,"n":"LNAM - Phase Function - Contribution"},{"t":5,"n":"MNAM - Phase Function - Scattering"},{"t":5,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"n":"VTYP - Voice Type","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"DNAM - Flags"}]},{"t":1,"n":"WATR - Water","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":8,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"n":"ANAM - Opacity"},{"t":3,"n":"FNAM - Flags"},{"t":11,"n":"MNAM - Unused"},{"t":3,"n":"TNAM - Material"},{"t":3,"n":"SNAM - Open Sound"},{"t":3,"n":"XNAM - Spell"},{"t":3,"n":"INAM - Image Space"},{"t":3,"n":"DATA - Damage Per Second"},{"t":6,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"n":"Specular Properties - Sun Specular Power"},{"t":5,"n":"Water Properties - Reflectivity Amount"},{"t":5,"n":"Water Properties - Fresnel Amount"},{"t":5,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"n":"Shallow Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Deep Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Reflection Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Displacement Simulator - Starting Size"},{"t":5,"n":"Displacement Simulator - Force"},{"t":5,"n":"Displacement Simulator - Velocity"},{"t":5,"n":"Displacement Simulator - Falloff"},{"t":5,"n":"Displacement Simulator - Dampner"},{"t":5,"n":"Noise Properties - Noise Falloff"},{"t":5,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"n":"Water Properties - Refraction Magnitude"},{"t":5,"n":"Specular Properties - Specular Power"},{"t":5,"n":"Specular Properties - Specular Radius"},{"t":5,"n":"Specular Properties - Specular Brightness"},{"t":5,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"n":"Water Properties - Reflection Magnitude"},{"t":5,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"n":"Depth Properties - Reflections"},{"t":5,"n":"Depth Properties - Refraction"},{"t":5,"n":"Depth Properties - Normals"},{"t":5,"n":"Depth Properties - Specular Lighting"},{"t":5,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"n":"NAM0 - Linear Velocity","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"NAM1 - Angular Velocity","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":2,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"},{"t":2,"n":"MICO - Small Icon filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags"},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model Filename"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"n":"Has Scope","c":[{"t":2,"n":"MOD3 - Model Filename"},{"t":11,"n":"MO3T - Texture Files Hashes"},{"t":7,"n":"MO3S - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"n":"INAM - Impact Data Set"},{"t":3,"n":"WNAM - 1st Person Model Object"},{"t":3,"n":"SNAM - Attack Sound"},{"t":3,"n":"XNAM - Attack Sound 2D"},{"t":3,"n":"NAM7 - Attack Loop Sound"},{"t":3,"n":"TNAM - Attack Fail Sound"},{"t":3,"n":"UNAM - Idle Sound"},{"t":3,"n":"NAM9 - Equip Sound"},{"t":3,"n":"NAM8 - Unequip Sound"},{"t":6,"n":"DATA - Game Data","c":[{"t":3,"n":"Value"},{"t":5,"n":"Weight"},{"t":3,"n":"Damage"}]},{"t":6,"n":"DNAM - Data","c":[{"t":3,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Speed"},{"t":5,"n":"Reach"},{"t":3,"n":"Flags"},{"t":5,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"n":"Base VATS To-Hit Chance"},{"t":3,"n":"Attack Animation"},{"t":3,"n":"# Projectiles"},{"t":3,"n":"Embedded Weapon AV (unused)"},{"t":5,"n":"Range Min"},{"t":5,"n":"Range Max"},{"t":3,"n":"On Hit"},{"t":3,"n":"Flags2"},{"t":5,"n":"Animation Attack Mult"},{"t":5,"n":"Rumble - Left Motor Strength"},{"t":5,"n":"Rumble - Right Motor Strength"},{"t":5,"n":"Rumble - Duration"},{"t":3,"n":"Skill"},{"t":3,"n":"Resist"},{"t":5,"n":"Stagger"}]},{"t":6,"n":"CRDT - Critical Data","c":[{"t":3,"n":"Damage"},{"t":11,"n":"Unknown"},{"t":5,"n":"% Mult"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"n":"Effect"}]},{"t":3,"n":"VNAM - Detection Sound Level"},{"t":3,"n":"CNAM - Template"}]},{"t":1,"n":"WOOP - Word of Power","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"TNAM - Translation"}]},{"t":1,"n":"WRLD - Worldspace","c":[{"t":2,"n":"EDID - Editor ID"},{"t":8,"n":"Large References","c":[{"t":6,"n":"RNAM - Grid","c":[{"t":3,"n":"Y"},{"t":3,"n":"X"},{"t":7,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"n":"FULL - Name"},{"t":6,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"}]},{"t":3,"n":"LTMP - Interior Lighting"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XLCN - Location"},{"t":6,"n":"Parent","c":[{"t":3,"n":"WNAM - Worldspace"},{"t":6,"n":"PNAM - ","c":[{"t":3,"n":"Flags"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"CNAM - Climate"},{"t":3,"n":"NAM2 - Water"},{"t":3,"n":"NAM3 - LOD Water Type"},{"t":5,"n":"NAM4 - LOD Water Height"},{"t":6,"n":"DNAM - Land Data","c":[{"t":5,"n":"Default Land Height"},{"t":5,"n":"Default Water Height"}]},{"t":2,"n":"ICON - Map Image"},{"t":6,"n":"Cloud Model","c":[{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]},{"t":6,"n":"MNAM - Map Data","c":[{"t":6,"n":"Usable Dimensions","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"}]},{"t":6,"n":"Cell Coordinates","c":[{"t":6,"n":"NW Cell","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"}]},{"t":6,"n":"SE Cell","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"}]}]},{"t":6,"n":"Camera Data","c":[{"t":5,"n":"Min Height"},{"t":5,"n":"Max Height"},{"t":5,"n":"Initial Pitch"}]}]},{"t":6,"n":"ONAM - World Map Offset Data","c":[{"t":5,"n":"World Map Scale"},{"t":5,"n":"Cell X Offset"},{"t":5,"n":"Cell Y Offset"},{"t":5,"n":"Cell Z Offset"}]},{"t":5,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"n":"DATA - Flags"},{"t":6,"n":"Object Bounds","c":[{"t":6,"n":"NAM0 - Min","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"}]},{"t":6,"n":"NAM9 - Max","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"}]}]},{"t":3,"n":"ZNAM - Music"},{"t":2,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":2,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"n":"WTHR - Weather","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"n":"MNAM - Precipitation Type"},{"t":3,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"n":"Cloud Speed","c":[{"t":7,"n":"RNAM - Y Speed","c":[{"t":3,"n":"Layer"}]},{"t":7,"n":"QNAM - X Speed","c":[{"t":3,"n":"Layer"}]}]},{"t":7,"n":"PNAM - Cloud Colors","c":[{"t":6,"n":"Layer","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"n":"JNAM - Cloud Alphas","c":[{"t":6,"n":"Layer","c":[{"t":5,"n":"Sunrise"},{"t":5,"n":"Day"},{"t":5,"n":"Sunset"},{"t":5,"n":"Night"}]}]},{"t":6,"n":"NAM0 - Weather Colors","c":[{"t":6,"n":"Sky-Upper","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Fog Near","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Ambient","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Sunlight","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Sun","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Stars","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Sky-Lower","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Horizon","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Effect Lighting","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Cloud LOD Diffuse","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Cloud LOD Ambient","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Fog Far","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Sky Statics","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Water Multiplier","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Sun Glare","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Moon Glare","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"n":"FNAM - Fog Distance","c":[{"t":5,"n":"Day - Near"},{"t":5,"n":"Day - Far"},{"t":5,"n":"Night - Near"},{"t":5,"n":"Night - Far"},{"t":5,"n":"Day - Power"},{"t":5,"n":"Night - Power"},{"t":5,"n":"Day - Max"},{"t":5,"n":"Night - Max"}]},{"t":6,"n":"DATA - Data","c":[{"t":3,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"n":"Trans Delta"},{"t":3,"n":"Sun Glare"},{"t":3,"n":"Sun Damage"},{"t":3,"n":"Precipitation - Begin Fade In"},{"t":3,"n":"Precipitation - End Fade Out"},{"t":3,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"n":"Thunder\/Lightning - Frequency"},{"t":3,"n":"Flags"},{"t":6,"n":"Lightning Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"}]},{"t":3,"n":"Visual Effect - Begin"},{"t":3,"n":"Visual Effect - End"},{"t":3,"n":"Wind Direction"},{"t":3,"n":"Wind Direction Range"}]},{"t":3,"n":"NAM1 - Disabled Cloud Layers"},{"t":8,"n":"Sounds","c":[{"t":6,"n":"SNAM - Sound","c":[{"t":3,"n":"Sound"},{"t":3,"n":"Type"}]}]},{"t":8,"n":"Sky Statics","c":[{"t":3,"n":"TNAM - Static"}]},{"t":6,"n":"IMSP - Image Spaces","c":[{"t":3,"n":"Sunrise"},{"t":3,"n":"Day"},{"t":3,"n":"Sunset"},{"t":3,"n":"Night"}]},{"t":6,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"n":"Sunrise"},{"t":3,"n":"Day"},{"t":3,"n":"Sunset"},{"t":3,"n":"Night"}]},{"t":6,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"n":"DALC - Sunrise","c":[{"t":6,"n":"Directional","c":[{"t":6,"n":"X+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"X-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Specular","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Scale"}]},{"t":6,"n":"DALC - Day","c":[{"t":6,"n":"Directional","c":[{"t":6,"n":"X+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"X-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Specular","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Scale"}]},{"t":6,"n":"DALC - Sunset","c":[{"t":6,"n":"Directional","c":[{"t":6,"n":"X+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"X-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Specular","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Scale"}]},{"t":6,"n":"DALC - Night","c":[{"t":6,"n":"Directional","c":[{"t":6,"n":"X+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"X-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Specular","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"n":"Aurora","c":[{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]}]},{"t":3,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"n":"ACHR - Placed NPC","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":3,"n":"NAME - Base"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"n":"Patrol Data","c":[{"t":5,"n":"XPRD - Idle Time"},{"n":"XPPA - Patrol Script Marker"},{"t":3,"n":"INAM - Idle"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"n":"Topic","c":[{"t":6,"n":"PDTO - Topic Data","c":[{"t":3,"n":"Type"},{"t":3,"n":"Topic"},{"t":2,"n":"Subtype"}]}]},{"t":3,"n":"TNAM - Topic"}]},{"t":3,"n":"XLCM - Level Modifier"},{"t":3,"n":"XMRC - Merchant Container"},{"t":3,"n":"XCNT - Count"},{"t":5,"n":"XRDS - Radius"},{"t":5,"n":"XHLP - Health"},{"t":8,"n":"Linked References","c":[{"t":6,"n":"XLKR - Linked Reference","c":[{"t":3,"n":"Keyword\/Ref"},{"t":3,"n":"Ref"}]}]},{"t":6,"n":"Activate Parents","c":[{"t":3,"n":"XAPD - Flags"},{"t":8,"n":"Activate Parent Refs","c":[{"t":6,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"n":"Reference"},{"t":5,"n":"Delay"}]}]}]},{"t":6,"n":"XCLP - Linked Reference Color","c":[{"t":6,"n":"Link Start Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Link End Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"XLCN - Persistent Location"},{"t":3,"n":"XLRL - Location Reference"},{"n":"XIS2 - Ignored by Sandbox"},{"t":7,"n":"XLRT - Location Ref Type","c":[{"t":3,"n":"Ref"}]},{"t":3,"n":"XHOR - Horse"},{"t":5,"n":"XHTW - Head-Tracking Weight"},{"t":5,"n":"XFVC - Favor Cost"},{"t":6,"n":"XESP - Enable Parent","c":[{"t":3,"n":"Reference"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":3,"n":"XEMI - Emittance"},{"t":3,"n":"XMBR - MultiBound Reference"},{"n":"XIBS - Ignored By Sandbox"},{"t":5,"n":"XSCL - Scale"},{"t":6,"n":"DATA - Position\/Rotation","c":[{"t":6,"n":"Position","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]},{"t":6,"n":"Rotation","c":[{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"}]}]}]}]},"name":"Bash.Text","hash":"45E8ACFA","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Voice-F.json b/frontend/settings/Skyrim/Bash.Voice-F.json old mode 100644 new mode 100755 diff --git a/frontend/settings/Skyrim/Bash.Voice-M.json b/frontend/settings/Skyrim/Bash.Voice-M.json old mode 100644 new mode 100755 From fe01ec9c77c6747a3aff130b1530d724b3ed07ab Mon Sep 17 00:00:00 2001 From: chuck <> Date: Fri, 14 Aug 2020 11:19:36 -0400 Subject: [PATCH 02/76] Update to xedit 4.0.3 --- .gitmodules | 3 + frontend/MatorSmash.dpr | 4 +- frontend/MatorSmash.dproj | 1249 ++- frontend/MatorSmash_Icon.ico | Bin 0 -> 4286 bytes frontend/msAlgorithm.pas | 2 +- frontend/msConflict.pas | 12 +- frontend/msCore.pas | 13 +- frontend/msLoader.pas | 13 +- frontend/msSmash.pas | 2 +- frontend/msSmashForm.dfm | 2 +- frontend/msSmashForm.pas | 4 +- frontend/msThreads.pas | 10 +- frontend/smash.res | Bin lib/mte/mteBase.pas | 15 +- lib/xedit | 1 + lib/xedit/lz4/lz4.pas | 1079 -- lib/xedit/lz4/lz4Common.pas | 250 - lib/xedit/lz4/lz4HC.pas | 804 -- lib/xedit/lz4/lz4frame.pas | 1299 --- lib/xedit/lz4/lz4frame_static.pas | 81 - lib/xedit/lz4/lz4io.pas | 488 - lib/xedit/lz4/xxHash.pas | 637 -- lib/xedit/wbBSA.pas | 974 -- lib/xedit/wbDefines.inc | 15 - lib/xedit/wbDefinitionsFNV.pas | 11803 -------------------- lib/xedit/wbDefinitionsFO3.pas | 10758 ------------------ lib/xedit/wbDefinitionsFO4.pas | 16450 --------------------------- lib/xedit/wbDefinitionsTES3.pas | 4962 -------- lib/xedit/wbDefinitionsTES4.pas | 5174 --------- lib/xedit/wbDefinitionsTES5.pas | 13667 ----------------------- lib/xedit/wbHelpers.pas | 1233 -- lib/xedit/wbImplementation.pas | 16752 ---------------------------- lib/xedit/wbInit.pas | 887 -- lib/xedit/wbInterface.pas | 14801 ------------------------ lib/xedit/wbLocalization.pas | 646 -- lib/xedit/wbSort.pas | 1060 -- lib/xedit/wbStreams.pas | 617 - lib/xedit/zlib/ZLibEx.inc | 182 - lib/xedit/zlib/ZLibExApi.pas | 338 - lib/xedit/zlib/win32/adler32.obj | Bin 1131 -> 0 bytes lib/xedit/zlib/win32/compress.obj | Bin 520 -> 0 bytes lib/xedit/zlib/win32/crc32.obj | Bin 10771 -> 0 bytes lib/xedit/zlib/win32/deflate.obj | Bin 10702 -> 0 bytes lib/xedit/zlib/win32/infback.obj | Bin 6935 -> 0 bytes lib/xedit/zlib/win32/inffast.obj | Bin 1595 -> 0 bytes lib/xedit/zlib/win32/inflate.obj | Bin 11320 -> 0 bytes lib/xedit/zlib/win32/inftrees.obj | Bin 1639 -> 0 bytes lib/xedit/zlib/win32/trees.obj | Bin 10472 -> 0 bytes lib/xedit/zlib/win64/adler32.obj | Bin 3778 -> 0 bytes lib/xedit/zlib/win64/compress.obj | Bin 1635 -> 0 bytes lib/xedit/zlib/win64/crc32.obj | Bin 17008 -> 0 bytes lib/xedit/zlib/win64/deflate.obj | Bin 30275 -> 0 bytes lib/xedit/zlib/win64/infback.obj | Bin 12792 -> 0 bytes lib/xedit/zlib/win64/inffast.obj | Bin 3975 -> 0 bytes lib/xedit/zlib/win64/inflate.obj | Bin 25090 -> 0 bytes lib/xedit/zlib/win64/inftrees.obj | Bin 3479 -> 0 bytes lib/xedit/zlib/win64/trees.obj | Bin 23410 -> 0 bytes lib/xedit/zlib/zlibex.pas | 2324 ---- 58 files changed, 1075 insertions(+), 107536 deletions(-) create mode 100644 .gitmodules mode change 100644 => 100755 frontend/MatorSmash.dpr mode change 100644 => 100755 frontend/MatorSmash.dproj create mode 100644 frontend/MatorSmash_Icon.ico mode change 100644 => 100755 frontend/msAlgorithm.pas mode change 100644 => 100755 frontend/msConflict.pas mode change 100644 => 100755 frontend/msCore.pas mode change 100644 => 100755 frontend/msLoader.pas mode change 100644 => 100755 frontend/msSmash.pas mode change 100644 => 100755 frontend/msSmashForm.dfm mode change 100644 => 100755 frontend/msSmashForm.pas mode change 100644 => 100755 frontend/msThreads.pas mode change 100644 => 100755 frontend/smash.res mode change 100644 => 100755 lib/mte/mteBase.pas create mode 160000 lib/xedit delete mode 100644 lib/xedit/lz4/lz4.pas delete mode 100644 lib/xedit/lz4/lz4Common.pas delete mode 100644 lib/xedit/lz4/lz4HC.pas delete mode 100644 lib/xedit/lz4/lz4frame.pas delete mode 100644 lib/xedit/lz4/lz4frame_static.pas delete mode 100644 lib/xedit/lz4/lz4io.pas delete mode 100644 lib/xedit/lz4/xxHash.pas delete mode 100644 lib/xedit/wbBSA.pas delete mode 100644 lib/xedit/wbDefines.inc delete mode 100644 lib/xedit/wbDefinitionsFNV.pas delete mode 100644 lib/xedit/wbDefinitionsFO3.pas delete mode 100644 lib/xedit/wbDefinitionsFO4.pas delete mode 100644 lib/xedit/wbDefinitionsTES3.pas delete mode 100644 lib/xedit/wbDefinitionsTES4.pas delete mode 100644 lib/xedit/wbDefinitionsTES5.pas delete mode 100644 lib/xedit/wbHelpers.pas delete mode 100644 lib/xedit/wbImplementation.pas delete mode 100644 lib/xedit/wbInit.pas delete mode 100644 lib/xedit/wbInterface.pas delete mode 100644 lib/xedit/wbLocalization.pas delete mode 100644 lib/xedit/wbSort.pas delete mode 100644 lib/xedit/wbStreams.pas delete mode 100644 lib/xedit/zlib/ZLibEx.inc delete mode 100644 lib/xedit/zlib/ZLibExApi.pas delete mode 100644 lib/xedit/zlib/win32/adler32.obj delete mode 100644 lib/xedit/zlib/win32/compress.obj delete mode 100644 lib/xedit/zlib/win32/crc32.obj delete mode 100644 lib/xedit/zlib/win32/deflate.obj delete mode 100644 lib/xedit/zlib/win32/infback.obj delete mode 100644 lib/xedit/zlib/win32/inffast.obj delete mode 100644 lib/xedit/zlib/win32/inflate.obj delete mode 100644 lib/xedit/zlib/win32/inftrees.obj delete mode 100644 lib/xedit/zlib/win32/trees.obj delete mode 100644 lib/xedit/zlib/win64/adler32.obj delete mode 100644 lib/xedit/zlib/win64/compress.obj delete mode 100644 lib/xedit/zlib/win64/crc32.obj delete mode 100644 lib/xedit/zlib/win64/deflate.obj delete mode 100644 lib/xedit/zlib/win64/infback.obj delete mode 100644 lib/xedit/zlib/win64/inffast.obj delete mode 100644 lib/xedit/zlib/win64/inflate.obj delete mode 100644 lib/xedit/zlib/win64/inftrees.obj delete mode 100644 lib/xedit/zlib/win64/trees.obj delete mode 100644 lib/xedit/zlib/zlibex.pas diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..5d337da --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "lib/xedit"] + path = lib/xedit + url = git@github.com:TES5Edit/TES5Edit.git diff --git a/frontend/MatorSmash.dpr b/frontend/MatorSmash.dpr old mode 100644 new mode 100755 index ade3a49..4242a6f --- a/frontend/MatorSmash.dpr +++ b/frontend/MatorSmash.dpr @@ -36,7 +36,7 @@ uses RttiTranslation in '..\lib\mte\RttiTranslation.pas', W7Taskbar in '..\lib\mte\W7Taskbar.pas', // lib\xedit - wbBSA in '..\lib\xedit\wbBSA.pas', + wbInit in '..\lib\xedit\wbInit.pas', wbDefinitionsFNV in '..\lib\xedit\wbDefinitionsFNV.pas', wbDefinitionsFO3 in '..\lib\xedit\wbDefinitionsFO3.pas', wbDefinitionsFO4 in '..\lib\xedit\wbDefinitionsFO4.pas', @@ -97,7 +97,7 @@ begin if sParam = '-profile' then sProfile := ParamStr(i + 1); if sParam = '-utf8' then - wbStringEncoding := seUTF8; + wbEncoding := TEncoding.UTF8; end; bProfileProvided := sProfile <> ''; sPath := Format('%sprofiles\%s\settings.ini', [ProgramPath, sProfile]); diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj old mode 100644 new mode 100755 index 5dc8112..b5091e5 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -1,220 +1,1029 @@ - - - {12317C9C-736E-45A4-8CB7-E43FF92DD93C} - MatorSmash.dpr - True - Release - Application - VCL - DCC32 - 13.4 - Win32 - 1 - Win32 - - - true - - - true - Base - true - - - true - Base - true - - - true - Base - true - - - vcl;rtl;vclx;vclactnband;xmlrtl;VclSmp;vclimg;svnui;svn;bdertl;TeeUI;TeeDB;Tee;vcldb;dbrtl;vcldbx;vcltouch;dsnap;dsnapcon;vclib;ibxpress;adortl;IndyCore;IndySystem;IndyProtocols;inet;intrawebdb_110_150;Intraweb_110_150;vclie;websnap;webdsnap;inetdb;inetdbbde;inetdbxpress;soaprtl;vclribbon;dbexpress;DbxCommonDriver;DataSnapIndy10ServerTransport;DataSnapProviderClient;DataSnapClient;dbxcds;DbxClientDriver;DataSnapServer;AzureCloud;DBXInterBaseDriver;DBXMySQLDriver;DBXFirebirdDriver;DBXSybaseASEDriver;DBXSybaseASADriver;DBXOracleDriver;DBXMSSQLDriver;DBXInformixDriver;DBXDb2Driver - ..\lib\Imaging\ZLib;..\lib\abbrevia\source;..\lib\Imaging;..\lib\xedit;..\lib\mte;..\lib\superobject;..\lib\xedit\zlib;..\lib\xedit\lz4;$(DCC_UnitSearchPath) - false - false - false - false - false - TES5Edit_Icon.ico - false - false - None - 3081 - CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= - Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;FMX;System.Win;$(DCC_Namespace) - false - 00400000 - false - false - false - false - - - true - DEBUG;NX_EXCEPTION_LOG_IN_APP_FOLDER;$(DCC_Define) - 3 - DetailedSegments - - - .\DebugLite - DEBUG;NX_EXCEPTION_LOG_IN_APP_FOLDER;LiteVersion;$(DCC_Define) - 3 - DetailedSegments - true - - - false - false - false - false - false - 0 - - - - MainSource - - - RC - RC -
smash.res
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ProfileForm
-
- - -
SmashForm
-
- - -
OptionsForm
-
- -
SplashForm
-
- -
EditForm
-
- -
SettingsManager
-
- -
MiniPluginSelectionForm
-
- -
ConflictForm
-
- -
TagManager
-
- -
TagHelper
-
- - - Cfg_2 - Base - - - Cfg_4 - Base - - - Base - - - Cfg_1 - Base - -
- - - - Delphi.Personality.12 - VCLApplication - - - - MatorSmash.dpr - - - True - False - 1 - 0 - 1 - 0 - True - True - False - False - False - 1033 - 1252 - - - - - 1.0.1.0 - - - - - Mator Smash - 1.0 - created by matortheeternal - - - Embarcadero C++Builder Office 2000 Servers Package - Embarcadero C++Builder Office XP Servers Package - Microsoft Office 2000 Sample Automation Server Wrapper Components - Microsoft Office XP Sample Automation Server Wrapper Components - - - - - False - True - - True - - 12 - -
+ + + {12317C9C-736E-45A4-8CB7-E43FF92DD93C} + MatorSmash.dpr + True + Debug + Application + VCL + DCC32 + 18.8 + Win32 + 1 + Win32 + + + true + + + true + Base + true + + + true + Base + true + + + true + Base + true + + + true + Cfg_2 + true + true + + + true + Base + true + + + true + Base + true + + + true + Cfg_1 + true + true + + + vcl;rtl;vclx;vclactnband;xmlrtl;VclSmp;vclimg;svnui;svn;bdertl;TeeUI;TeeDB;Tee;vcldb;dbrtl;vcldbx;vcltouch;dsnap;dsnapcon;vclib;ibxpress;adortl;IndyCore;IndySystem;IndyProtocols;inet;intrawebdb_110_150;Intraweb_110_150;vclie;websnap;webdsnap;inetdb;inetdbbde;inetdbxpress;soaprtl;vclribbon;dbexpress;DbxCommonDriver;DataSnapIndy10ServerTransport;DataSnapProviderClient;DataSnapClient;dbxcds;DbxClientDriver;DataSnapServer;AzureCloud;DBXInterBaseDriver;DBXMySQLDriver;DBXFirebirdDriver;DBXSybaseASEDriver;DBXSybaseASADriver;DBXOracleDriver;DBXMSSQLDriver;DBXInformixDriver;DBXDb2Driver;$(DCC_UsePackage) + ..\lib\Imaging\ZLib;..\lib\abbrevia\source;..\lib\Imaging;..\lib\xedit;..\lib\mte;..\lib\superobject;..\lib\xedit\lz4;..\lib\xedit\zlib;..\lib\xedit\FileContainer;..\lib\xedit\tools\BSArchive;..\lib\xedit\tools\BSArchive\TForge;$(DCC_UnitSearchPath) + false + false + false + false + false + TES5Edit_Icon.ico + false + false + None + 3081 + CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= + Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;FMX;System.Win;$(DCC_Namespace) + false + 00400000 + false + false + false + false + MatorSmash + + + Resources\smash.png + Resources\smash.png + MatorSmash_Icon.ico + + + $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png + $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png + + + true + DEBUG;NX_EXCEPTION_LOG_IN_APP_FOLDER;$(DCC_Define) + 3 + DetailedSegments + + + MatorSmash_Icon.ico + Debug + + + .\DebugLite + DEBUG;NX_EXCEPTION_LOG_IN_APP_FOLDER;LiteVersion;$(DCC_Define) + 3 + DetailedSegments + true + + + 0 + false + false + false + false + 0 + + + Debug + MatorSmash_Icon.ico + + + + MainSource + + + RC +
smash.res
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ProfileForm
+
+ + +
SmashForm
+
+ + +
OptionsForm
+
+ +
SplashForm
+
+ +
EditForm
+
+ +
SettingsManager
+
+ +
MiniPluginSelectionForm
+
+ +
ConflictForm
+
+ +
TagManager
+
+ +
TagHelper
+
+ + + Base + + + Cfg_4 + Base + + + Cfg_2 + Base + + + Cfg_1 + Base + +
+ + + + Delphi.Personality.12 + VCLApplication + + + + MatorSmash.dpr + + + True + False + 1 + 0 + 1 + 0 + True + True + False + False + False + 1033 + 1252 + + + + + 1.0.1.0 + + + + + Mator Smash + 1.0 + created by matortheeternal + + + Microsoft Office 2000 Sample Automation Server Wrapper Components + Microsoft Office XP Sample Automation Server Wrapper Components + + + + + True + False + + True + + + + MatorSmash.exe + true + + + + + Assets\ + Logo44x44.png + true + + + + + .\ + true + + + + + 1 + + + 0 + + + + + classes + 1 + + + classes + 1 + + + + + res\xml + 1 + + + res\xml + 1 + + + + + library\lib\armeabi-v7a + 1 + + + + + library\lib\armeabi + 1 + + + library\lib\armeabi + 1 + + + + + library\lib\armeabi-v7a + 1 + + + + + library\lib\mips + 1 + + + library\lib\mips + 1 + + + + + library\lib\armeabi-v7a + 1 + + + library\lib\arm64-v8a + 1 + + + + + library\lib\armeabi-v7a + 1 + + + + + res\drawable + 1 + + + res\drawable + 1 + + + + + res\values + 1 + + + res\values + 1 + + + + + res\values-v21 + 1 + + + res\values-v21 + 1 + + + + + res\values + 1 + + + res\values + 1 + + + + + res\drawable + 1 + + + res\drawable + 1 + + + + + res\drawable-xxhdpi + 1 + + + res\drawable-xxhdpi + 1 + + + + + res\drawable-ldpi + 1 + + + res\drawable-ldpi + 1 + + + + + res\drawable-mdpi + 1 + + + res\drawable-mdpi + 1 + + + + + res\drawable-hdpi + 1 + + + res\drawable-hdpi + 1 + + + + + res\drawable-xhdpi + 1 + + + res\drawable-xhdpi + 1 + + + + + res\drawable-mdpi + 1 + + + res\drawable-mdpi + 1 + + + + + res\drawable-hdpi + 1 + + + res\drawable-hdpi + 1 + + + + + res\drawable-xhdpi + 1 + + + res\drawable-xhdpi + 1 + + + + + res\drawable-xxhdpi + 1 + + + res\drawable-xxhdpi + 1 + + + + + res\drawable-xxxhdpi + 1 + + + res\drawable-xxxhdpi + 1 + + + + + res\drawable-small + 1 + + + res\drawable-small + 1 + + + + + res\drawable-normal + 1 + + + res\drawable-normal + 1 + + + + + res\drawable-large + 1 + + + res\drawable-large + 1 + + + + + res\drawable-xlarge + 1 + + + res\drawable-xlarge + 1 + + + + + res\values + 1 + + + res\values + 1 + + + + + 1 + + + 1 + + + 0 + + + + + 1 + .framework + + + 1 + .framework + + + 0 + + + + + 1 + .dylib + + + 1 + .dylib + + + 0 + .dll;.bpl + + + + + 1 + .dylib + + + 1 + .dylib + + + 1 + .dylib + + + 1 + .dylib + + + 1 + .dylib + + + 0 + .bpl + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + 1 + + + + + 1 + + + 1 + + + + + ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF + 1 + + + ..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF + 1 + + + + + + + + 1 + + + 1 + + + 1 + + + + + + + + Contents\Resources + 1 + + + Contents\Resources + 1 + + + + + library\lib\armeabi-v7a + 1 + + + library\lib\arm64-v8a + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 1 + + + 0 + + + + + library\lib\armeabi-v7a + 1 + + + + + 1 + + + 1 + + + + + Assets + 1 + + + Assets + 1 + + + + + Assets + 1 + + + Assets + 1 + + + + + + + + + + + + + + + 12 + + +
diff --git a/frontend/MatorSmash_Icon.ico b/frontend/MatorSmash_Icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..c0f9ea85097d5fbb2d0ae03f1aea1ea3e5269b33 GIT binary patch literal 4286 zcmbVPS!`8R6kX@s*FHLewFM1^)~JcZXmE@}w0!u3M59DMj7CWu5(gY&V)#(0lIVvK zJ{+R)!-!)v8ixQX3av&u2t*7r$Y4u=G8FqtrIZ#puC>p7ueT+}#5VigbM8I&tUau~ z_ql-Me^V3mi;t%OQvqB^;VsOj=>EU{h2TR#5+xvTz#q?_YL9KN!SxQooeCy6b^;hV z32;tv7(L~2QZJm+JdWctxIITv79QiX3T`=>QpK^ynvmnzMDrF3=Z0^%(g(pc5Fgm` zDzNux3Ev$%2{%lch+o8%E*$$&>brB0_zN&CRB``F!X#b}E#vWp#b+k}2VXuY`a||R zoQU{-_fg_KHVuX^9m+HK<na2{5VhJHgG zGv*8r_cp8)Pxf-2#(*B+SZnysWcbbR0{h4KHv!*#@6wnX{t4rx`Nudbeb?>dUd=ei zco=ym9b()$k2>KF#v<}C&-FP}g=s*?I-q~J$T#DaxRv_9#CP4x+&8}%2V;%^$3MZ8 zFopZqP?QJ8MUKVGg!5utG#7p~e0T)dF)-fW8J=hCjyaL>yX6VvpXRN@`d%V6a_>4y zE%z^za9l}AIcUDm(GL}5$2|D02a0ye&sm;N^ut6RM16)>E2yvW;P-wcd+$qqo)_;i z+w!nH!v{y5Do{b}Wc|MX%=41{!E`Id!eS#HGB1VgrNc1iJ>Q*&z|vUCezaU_TS*y8Z*7S{8pnh?Y>@vu_3yiVq|$|F1x z`Buc%m9-?hzs8xl?9I+gV`Ve?hJl{ttiiKXOC*f#bYc~GmuKvSub9*l|0SM$MjSTo;Jz~{6_|9-43sUoLOGb?E7#?7#lD_b_PVgZ<5{5?FZTDUac12@`De<_Mp^(xc`Y z>4&j{Vk2${Om=J?j#Lc^*3- zXNFx&mY+%fJqq?>2jw*Ju~9u~q4-GrdfF{MN*C3Fd3J6wd$q5)z&e`R>u{Xo!YCMH zJ@XhK&-M?MAv_>_&KEeWI~03X=PvU7I-C(^&_AuVukEA${L9u!uzFmH^FyB4XHe=` zqi3+^@qPJP_K(@@aHK%}zF~a7X2o8?@p2v(zVdkQt#Z)T+E534_PO~l(YqACXPG#k zpzl_P-~NK`%Ub1`-|>{NQ+)M>X_gOD3<-UIfu6xjMOovW#K3vr#Ubt;PS}o2|hve`GeCu0$#xtJzU+0rLs}Z@dSZ5B4 zSFx6ZW-lM=F^9Na^8u`jkg%j$YJhv30y~Sw4FHU8BDPHgDQlx=(Aga zwR^<{f%XUaK=aUk#Esy~pfb?x}svPW9*Hn?D)1bCuI} zX7xjF!1r@K@yT8Jot(T)@hQWmD?OG!$@$Icd7x4~h_6Z#)kBM;Yh6A5+@rlH>Sfl? zvSZejT)19-q*RfMvw-&9AU7kAhFBAKtz>_bkJay86MF#HD)+@ZtAm`Y7TWok<7S7o z-D9~Ye7&jbM0s`*U#w*Vkn_h6(d8DYTL)RhNJhvrc3b$yp>V(e4-p<18 ziJYr1<#Rf-B?BLl3mud$`lHLCe*+w)Y|nb~shzp_3C?VrNnZ;8Cg89awigI^R@{)84W*+G~Bl&irXl$eu~$C-w@KM$Ba& zd#24{^(MI0zr!u*0G7@tZXU^x9|4^QHt3 zo;S_@v?u7flWyQ=BggfW>B~C2AJ3_G@qPpR zD%!dEuUMz)bNAclysvZCIh00l9&r&@3KT2wU%1fG|HM6OMM0K)0oDKJDmwI6I zb=v{1xk35M>$ON$^w?QTecl%y;yrO&b#*F5y{2SmiEnz>Y)rq0IZpFHddN5OhlC}p z#gmK8teu?>M|)V0pBA6^O#G{5WN+chrM%uttJw=eu0=j1N9Kqpw1;c$yN_4yZ`?~* z9Qg5G6#J0Z$NVBnvxG&knFqN>HlN1sD1pr^usAI3Ml!h@&3Vd81w6U9fcZZan!DQy lDBL%UCl(E3A>Uufefk)K4UOTa^5)RCID{TadkBO5;UDVpHkkkb literal 0 HcmV?d00001 diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas old mode 100644 new mode 100755 index e028206..58a4e00 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -397,7 +397,7 @@ procedure CopyLinkedElement(srcCont, dstCont: IwbContainerElementRef; if Assigned(de) then de.Assign(Low(Integer), le, false) else - dstCont.AddIfMissing(le, true, true, '', '', ''); + dstCont.AddIfMissing(le, true, true, '', '', '', '', false); // follow chain cLink := cObj.S['lf']; if cLink <> '' then diff --git a/frontend/msConflict.pas b/frontend/msConflict.pas old mode 100644 new mode 100755 index 31b2aa0..e906e59 --- a/frontend/msConflict.pas +++ b/frontend/msConflict.pas @@ -153,7 +153,7 @@ function NodeDatasForMainRecord(const aMainRecord: IwbMainRecord): TDynViewNodeD end else if (aMainRecord.Signature = 'NAVI') (* or (aMainRecord.Signature = 'TES4') *) then begin IsNonOverride := True; Signature := aMainRecord.Signature; - FormID := aMainRecord.FormID; + FormID := aMainRecord.FormID.ToCardinal; LoadOrder := aMainRecord.GetFile.LoadOrder; SetLength(Result, 0); Master := nil; @@ -163,7 +163,7 @@ function NodeDatasForMainRecord(const aMainRecord: IwbMainRecord): TDynViewNodeD if aFile.LoadOrder = LoadOrder then begin Group := aFile.GroupBySignature[Signature]; if Assigned(Group) then begin - Rec := Group.MainRecordByFormID[FormID]; + Rec := Group.MainRecordByFormID[TwbFormID.fromCardinal(FormID)]; if Assigned(Rec) then begin j := Length(Result); SetLength(Result, j+1); @@ -391,7 +391,7 @@ procedure InitChilds(const aNodeDatas: PViewNodeDatas; aNodeCount: Integer; i, j, k : Integer; SortedCount : Integer; NonSortedCount : Integer; - SortedKeys : array of TnxFastStringListCS; + SortedKeys : array of TStringList; Sortables : array of IwbSortableContainer; SortKey : string; LastSortKey : string; @@ -423,7 +423,7 @@ procedure InitChilds(const aNodeDatas: PViewNodeDatas; aNodeCount: Integer; SetLength(SortedKeys, Succ(aNodeCount)); for i := Low(SortedKeys) to High(SortedKeys) do begin - SortedKeys[i] := TnxFastStringListCS.Create; + SortedKeys[i] := TStringList.Create; SortedKeys[i].Sorted := True; SortedKeys[i].Duplicates := dupError; end; @@ -638,7 +638,7 @@ function ConflictLevelForNodeDatas(const aNodeDatas: PViewNodeDatas; Element : IwbElement; CompareElement : IwbElement; i, j : Integer; - UniqueValues : TnxFastStringListCS; + UniqueValues : TStringList; MasterPosition : Integer; FirstElement : IwbElement; @@ -676,7 +676,7 @@ function ConflictLevelForNodeDatas(const aNodeDatas: PViewNodeDatas; LastElement := aNodeDatas[Pred(aNodeCount)].Element; FirstElement := aNodeDatas[0].Element; - UniqueValues := TnxFastStringListCS.Create; + UniqueValues := TStringList.Create; UniqueValues.Sorted := True; UniqueValues.Duplicates := dupIgnore; Priority := cpNormal; diff --git a/frontend/msCore.pas b/frontend/msCore.pas old mode 100644 new mode 100755 index 56300a5..ad270c5 --- a/frontend/msCore.pas +++ b/frontend/msCore.pas @@ -7,7 +7,9 @@ interface // third party libraries superobject, // mte units - mteBase; + mteBase, + // xEdit + wbInterface; type // SMASH CLASSES @@ -188,7 +190,6 @@ TPatchHelpers = class // IMPORTANT CONSTANTS ProgramTesters = ' '; ProgramTranslators = ' '; - xEditVersion = '3.1.1'; // CHECKBOX STATES csUnknown = 0; @@ -225,6 +226,7 @@ TPatchHelpers = class FailedStatuses = [psFailed]; var + xEditVersion: string; PatchesList, SmashSettings, pluginsToHandle, patchesToBuild: TList; ActiveMods, SavedPluginPaths: TStringList; ActiveModProfile, xEditLogGroup, xEditLogLabel, DictionaryFilename: string; @@ -238,12 +240,13 @@ implementation // mp units msConfiguration, // xEdit units - wbInterface, wbImplementation; + wbImplementation; { TPlugin Constructor } constructor TPlugin.Create; begin patch := ' '; + xEditVersion := VersionString; inherited; end; @@ -443,7 +446,7 @@ procedure TPlugin.Save; FileStream := nil; try FileStream := TFileStream.Create(path, fmCreate); - _File.WriteToStream(FileStream, False); + _File.WriteToStream(FileStream, TwbResetModified.rmNo); if SavedPluginPaths.IndexOf(path) = -1 then SavedPluginPaths.Add(dataPath + filename); except @@ -1534,7 +1537,7 @@ procedure BuildTreeFromPlugins(var tv: TTreeView; var sl: TStringList; i, j: Integer; plugin: TPlugin; rec: IwbMainRecord; - RecordDef: PwbRecordDef; + RecordDef: PwbMainRecordDef; def: TwbRecordDefEntry; sName, sSignature: string; slRecordSignatures: TStringList; diff --git a/frontend/msLoader.pas b/frontend/msLoader.pas old mode 100644 new mode 100755 index e9de76c..e0134ce --- a/frontend/msLoader.pas +++ b/frontend/msLoader.pas @@ -247,12 +247,11 @@ function GetGamePath(mode: TGameMode): string; procedure LoadDefinitions; begin case wbGameMode of - gmTES5: DefineTES5; + gmTES5, gmTES5VR, gmSSE: DefineTES5; gmFNV: DefineFNV; gmTES4: DefineTES4; gmFO3: DefineFO3; gmFO4: DefineFO4; - gmSSE: DefineTES5; end; end; @@ -427,8 +426,8 @@ function PluginListCompare(List: TStringList; Index1, Index2: Integer): Integer; IsESM1, IsESM2: Boolean; FileSK1, FileSK2: Integer; begin - IsESM1 := IsFileESM(List[Index1]); - IsESM2 := IsFileESM(List[Index2]); + IsESM1 := List[Index1].EndsWith(csDotESM); + IsESM2 := List[Index2].EndsWith(csDotESM); if IsESM1 = IsESM2 then begin FileSK1 := Cardinal(List.Objects[Index1]); @@ -460,7 +459,7 @@ procedure AddMissingFiles(var sl: TStringList); // search for missing plugins and masters if FindFirst(wbDataPath + '*.*', faAnyFile, F) = 0 then try repeat - if not (IsFileESM(F.Name) or IsFileESP(F.Name) or IsFileESL(F.Name)) then + if not (wbIsPlugin(F.Name)) then continue; if sl.IndexOf(F.Name) = -1 then begin fileSortKey := GetPluginDate(wbDataPath + F.Name); @@ -481,13 +480,13 @@ procedure AddMissingFiles(var sl: TStringList); else // find position of last master for j := Pred(sl.Count) downto 0 do - if IsFileESM(sl[j]) then + if sl[j].EndsWith(csDotESM) then Break; // add esm masters after the last master, add esp plugins at the end Inc(j); for i := 0 to Pred(slNew.Count) do begin - if IsFileESM(slNew[i]) then begin + if (slNew[i].EndsWith(csDotESM)) then begin sl.InsertObject(j, slNew[i], slNew.Objects[i]); Inc(j); end else diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas old mode 100644 new mode 100755 index dc5e225..ab6052d --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -306,7 +306,7 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); else e := WinningOverrideInFiles(rec, patch.plugins); Tracker.Write(Format(' [%d] Copying record %s', [i + 1, e.Name])); - eCopy := wbCopyElementToFile(e, patchFile, false, true, '', '' ,''); + eCopy := wbCopyElementToFile(e, patchFile, false, true, '', '' ,'', '', false); patchRec := eCopy as IwbMainRecord; if bForce then continue; except diff --git a/frontend/msSmashForm.dfm b/frontend/msSmashForm.dfm old mode 100644 new mode 100755 index c6f2153..c7a9c3b --- a/frontend/msSmashForm.dfm +++ b/frontend/msSmashForm.dfm @@ -525,7 +525,7 @@ object SmashForm: TSmashForm Left = 1048 Top = 8 Bitmap = { - 494C010105001400CC0240002000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 494C010105001400040040002000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 0000000000003600000028000000000100004000000001002000000000000000 0100000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000E2E2 diff --git a/frontend/msSmashForm.pas b/frontend/msSmashForm.pas old mode 100644 new mode 100755 index 8494932..42e79b0 --- a/frontend/msSmashForm.pas +++ b/frontend/msSmashForm.pas @@ -18,7 +18,7 @@ interface msCore, msConfiguration, msLoader, msThreads, msOptionsForm, msEditForm, msSettingsManager, msTagManager, msSplashForm, // tes5edit units - wbBSA, wbHelpers, wbInterface, wbImplementation; + wbBSA, wbHelpers, wbInterface, wbImplementation, System.ImageList; type TSmashForm = class(TForm) @@ -337,7 +337,7 @@ procedure TSmashForm.FormCreate(Sender: TObject); SetTaskbarProgressState(tbpsIndeterminate); xEditLogGroup := 'LOAD'; xEditLogLabel := 'Plugins'; - wbProgressCallback := ProgressMessage; + _wbProgressCallback := ProgressMessage; StatusCallback := LoaderStatus; if not InitBase then begin diff --git a/frontend/msThreads.pas b/frontend/msThreads.pas old mode 100644 new mode 100755 index 24558dc..ff371fb --- a/frontend/msThreads.pas +++ b/frontend/msThreads.pas @@ -12,7 +12,7 @@ interface // ms units msCore, msConfiguration, msLoader, msSmash, // xedit units - wbBSA, wbInterface, wbImplementation; + wbBSA, wbHardcoded, wbInterface, wbImplementation; type @@ -64,6 +64,7 @@ procedure TInitThread.Execute; var i: integer; plugin: TPlugin; + b: TBytes; aFile: IwbFile; begin try @@ -82,7 +83,7 @@ procedure TInitThread.Execute; try plugin := TPlugin.Create; plugin.filename := slPlugins[i]; - plugin._File := wbFile(wbDataPath + slPlugins[i], i, '', False, False); + plugin._File := wbFile(wbDataPath + slPlugins[i], i, ''); plugin._File._AddRef; plugin.GetMsData; PluginsList.Add(Pointer(plugin)); @@ -96,11 +97,12 @@ procedure TInitThread.Execute; // load hardcoded dat if i = 0 then try - aFile := wbFile(wbProgramPath + wbGameName + wbHardcodedDat, 0); + b := TwbHardCodedContainer.GetHardCodedDat; + aFile := wbFile(wbGameExeName, 0, '', [fsIsHardcoded], b); aFile._AddRef; except on x: Exception do begin - Logger.Write('ERROR', 'Load', 'Exception loading '+wbGameName+wbHardcodedDat); + Logger.Write('ERROR', 'Load', 'Exception loading '+wbGameName+' hardcoded dat'); Logger.Write('ERROR', 'Load', 'Please download and install this dat file!'); raise x; end; diff --git a/frontend/smash.res b/frontend/smash.res old mode 100644 new mode 100755 diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas old mode 100644 new mode 100755 index 42676a6..730ee0f --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -9,7 +9,7 @@ interface // mte units mteTracker, // xEdit units - wbHelpers, wbInterface, wbImplementation; + wbHelpers, wbLoadOrder, wbInterface, wbImplementation; type TSmashType = ( stUnknown, stRecord, stString, stInteger, stFlag, stFloat, @@ -209,7 +209,7 @@ class function TPluginHelpers.CreateNewBasePlugin(var list: TList; filename: str // create new plugin file SysUtils.FormatSettings.DecimalSeparator := '.'; - aFile := wbNewFile(wbDataPath + filename, LoadOrder); + aFile := wbNewFile(wbDataPath + filename, LoadOrder, false); aFile._AddRef; // create new plugin object @@ -262,7 +262,10 @@ class procedure THeaderHelpers.LoadPluginHeaders(var sl: TStringList); // load plugin headers for each plugin in @sl for i := 0 to Pred(sl.Count) do try - aFile := wbFile(wbDataPath + sl[i], -1, '', False, True); + wbModuleByName(sl[i]); // Hack to fix crash + // TODO: Figure out why above is needed (probably using API wrong) + //aFile := wbFile(wbDataPath + sl[i], -1, '', []); + aFile := wbFile(sl[i], i, '', []); plugin := TBasePlugin.Create; plugin._File := aFile; HeaderList.Add(plugin); @@ -653,13 +656,13 @@ function RemoveFileIndex(formID: string): string; { Gets the local formID of a record (so no load order prefix) } function LocalFormID(aRecord: IwbMainRecord): integer; begin - Result := aRecord.LoadOrderFormID and $00FFFFFF; + Result := aRecord.LoadOrderFormID.ToCardinal and $00FFFFFF; end; { Gets the load order prefix from the FormID of a record } function LoadOrderPrefix(aRecord: IwbMainRecord): integer; begin - Result := aRecord.LoadOrderFormID and $FF000000; + Result := aRecord.LoadOrderFormID.ToCardinal and $FF000000; end; { Returns the number of override records in a file } @@ -1514,7 +1517,7 @@ function GetEditableFileContainer: IwbContainerElementRef; procedure PopulateAddList(var AddItem: TMenuItem; Event: TNotifyEvent); var i: Integer; - RecordDef: PwbRecordDef; + RecordDef: PwbMainRecordDef; item: TMenuItem; begin // populate wbGroupOrder to additem diff --git a/lib/xedit b/lib/xedit new file mode 160000 index 0000000..a352b0d --- /dev/null +++ b/lib/xedit @@ -0,0 +1 @@ +Subproject commit a352b0d50350b637f803286c0b6ab36a61581eb1 diff --git a/lib/xedit/lz4/lz4.pas b/lib/xedit/lz4/lz4.pas deleted file mode 100644 index 171a9fa..0000000 --- a/lib/xedit/lz4/lz4.pas +++ /dev/null @@ -1,1079 +0,0 @@ -(* - LZ4Delphi - Copyright (C) 2015, Jose Pascoa (atelierwebgm@gmail.com) - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - ************************************************************************* - LZ4 - Fast LZ compression algorithm - xxHash - Fast Hash algorithm - LZ4 source repository : http://code.google.com/p/lz4/ - xxHash source repository : http://code.google.com/p/xxhash/ - Copyright (c) 2011-2014, Yann Collet - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following disclaimer - in the documentation and/or other materials provided with the - distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - ****************************************************************************** -*) -unit lz4; -{$POINTERMATH ON} - -interface - -uses Windows, lz4Common; - -const - LZ4_VERSION_MAJOR = 1; - LZ4_VERSION_MINOR = 5; - LZ4_VERSION_RELEASE = 0; - LZ4_MEMORY_USAGE = 14; - LZ4_STREAMSIZE_U64 = (1 shl (LZ4_MEMORY_USAGE - 3)) + 4; - LZ4_STREAMSIZE = LZ4_STREAMSIZE_U64 * sizeof(int64); - LZ4_MAX_INPUT_SIZE = $7E000000; - LZ4_UNALIGNED_ACCESS = 1; - LZ4_STREAMDECODESIZE_U64 = 4; - -type - PLZ4_stream_t = ^LZ4_stream_t; - - LZ4_stream_t = record - table: array [0 .. LZ4_STREAMSIZE_U64 - 1] of int64; - end; - - PLZ4_streamDecode_t = ^LZ4_streamDecode_t; - - LZ4_streamDecode_t = record - table: array [0 .. LZ4_STREAMDECODESIZE_U64 - 1] of int64; - end; - -function LZ4_versionNumber: integer; -function LZ4_compressBound(iSize: cardinal): cardinal; -function LZ4_create(inputBuffer: pAnsiChar): pointer; -function LZ4_createStream: PLZ4_stream_t; -procedure LZ4_freeStream(LZ4_streamPtr: PLZ4_stream_t); -function LZ4_createStreamDecode: PLZ4_streamDecode_t; -procedure LZ4_freeStreamDecode(LZ4_stream: PLZ4_streamDecode_t); -function LZ4_compress(source: pAnsiChar; dest: pAnsiChar; sourceSize: integer): integer; -function LZ4_decompress_safe(source: pAnsiChar; dest: pAnsiChar; compressedSize: integer; maxDecompressedSize: integer): integer; -function LZ4_compress_continue(LZ4_stream: pointer; const ASource: pointer; ADestination: pointer; AInputSize: integer): integer; -function LZ4_saveDict(LZ4_streamPtr: PLZ4_stream_t; safeBuffer: pointer; dictSize: integer): integer; -function LZ4_decompress_safe_continue(LZ4_streamDecode: PLZ4_streamDecode_t; source: pointer; dest: pointer; compressedSize: integer; - maxDecompressedSize: integer): integer; -function LZ4_compress_limitedOutput(const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; maxOutputSize: integer): integer; -function LZ4_compress_withState(state: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer): integer; -function LZ4_compress_limitedOutput_withState(state: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; - maxOutputSize: integer): integer; -function LZ4_compress_limitedOutput_continue(LZ4_stream: PLZ4_stream_t; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; - maxOutputSize: integer): integer; -procedure LZ4_resetStream(LZ4_stream: PLZ4_stream_t); -function LZ4_loadDict(LZ4_dict: PLZ4_stream_t; dictionary: pAnsiChar; dictSize: integer): integer; -// debug function -function LZ4_compress_forceExtDict(LZ4_dict: PLZ4_stream_t; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer): integer; -function LZ4_decompress_fast(source: pAnsiChar; dest: pAnsiChar; originalSize: integer): integer; -function LZ4_decompress_fast_withPrefix64k(source: pAnsiChar; dest: pAnsiChar; originalSize: integer): integer; -function LZ4_decompress_fast_usingDict(source: pAnsiChar; dest: pAnsiChar; originalSize: integer; const dictStart: pAnsiChar; - dictSize: integer): integer; -function LZ4_decompress_safe_withPrefix64k(source: pAnsiChar; dest: pAnsiChar; compressedSize: integer; maxOutputSize: integer): integer; -function LZ4_decompress_safe_usingDict(const source: pAnsiChar; dest: pAnsiChar; compressedSize: integer; maxOutputSize: integer; - const dictStart: pAnsiChar; dictSize: integer): integer; -function LZ4_decompress_safe_partial(const source: pAnsiChar; dest: pAnsiChar; compressedSize: integer; targetOutputSize: integer; - maxDecompressedSize: integer): integer; -function LZ4_decompress_safe_forceExtDict(source: pAnsiChar; dest: pAnsiChar; compressedSize: integer; maxOutputSize: integer; - const dictStart: pAnsiChar; dictSize: integer): integer; - -// replaced with move(source^, dest^, count) -// procedure memmove(dest, source: pointer; count: integer); cdecl; external 'msvcrt.dll' name 'memmove'; - -implementation - -const - LZ4_HASHLOG = LZ4_MEMORY_USAGE - 2; - HASHTABLESIZE = 1 shl LZ4_MEMORY_USAGE; - HASH_SIZE_U32 = 1 shl LZ4_HASHLOG; - -type - limitedOutput_directive = (notLimited = 0, limitedOutput = 1); - tableType_t = (byPtr, byU32, byU16); - dict_directive = (noDict = 0, withPrefix64k, usingExtDict); - dictIssue_directive = (noDictIssue = 0, dictSmall); - endCondition_directive = (endOnOutputSize = 0, endOnInputSize = 1); - earlyEnd_directive = (full = 0, partial = 1); - - PLZ4_stream_t_internal = ^LZ4_stream_t_internal; - - LZ4_stream_t_internal = record - hashTable: array [0 .. HASH_SIZE_U32 - 1] of cardinal; - currentOffset: cardinal; - initCheck: cardinal; - dictionary: pByte; - bufferStart: pByte; - dictSize: cardinal; - end; - - PLZ4_streamDecode_t_internal = ^LZ4_streamDecode_t_internal; - - LZ4_streamDecode_t_internal = record - externalDict: pByte; - extDictSize: size_t; - prefixEnd: pByte; - prefixSize: size_t; - end; - -var - LZ4_64Klimit: integer = 65536 + _MFLIMIT - 1; - LZ4_skipTrigger: cardinal = 6; - LZ4_minLength: integer = (_MFLIMIT + 1); - -function LZ4_versionNumber: integer; -begin - result := LZ4_VERSION_MAJOR * 100 * 100 + LZ4_VERSION_MINOR * 100 + LZ4_VERSION_RELEASE; -end; - -function LZ4_compressBound(iSize: cardinal): cardinal; -begin - if (iSize) > cardinal(LZ4_MAX_INPUT_SIZE) then - result := 0 - else - result := iSize + (iSize div 255 + 16) -end; - -procedure LZ4_copy8(const dstPtr: pointer; const srcPtr: pointer); inline; -begin -{$IFDEF WIN64} - pUint64(dstPtr)^ := pUint64(srcPtr)^; -{$ELSE} - pCardinal(dstPtr)[0] := pCardinal(srcPtr)[0]; - pCardinal(dstPtr)[1] := pCardinal(srcPtr)[1]; -{$ENDIF} -end; - -function LZ4_hashSequence(sequence: cardinal; tableType: tableType_t): cardinal; inline; -const - SHL1 = (MINMATCH * 8) - (LZ4_HASHLOG + 1); - SHL2 = ((MINMATCH * 8) - LZ4_HASHLOG); -begin - if (tableType = byU16) then - result := (sequence * 2654435761) shr SHL1 - else - result := (sequence * 2654435761) shr SHL2; -end; - -function LZ4_hashPosition(const p: pByte; tableType: tableType_t): cardinal; inline; -begin - result := LZ4_hashSequence(pCardinal(p)^, tableType); -end; - -procedure LZ4_putPositionOnHash(const p: pByte; h: cardinal; tableBase: pointer; tableType: tableType_t; const srcBase: pByte); inline; -begin - case tableType of - byPtr: ppByte(tableBase)[h] := p; - byU32: pCardinal(tableBase)[h] := cardinal(p - srcBase); - byU16: pWord(tableBase)[h] := word(p - srcBase); - end; -end; - -function LZ4_getPositionOnHash(h: cardinal; tableBase: pointer; tableType: tableType_t; const srcBase: pByte): pByte; inline; -begin - if (tableType = byPtr) then - result := ppByte(tableBase)[h] - else if (tableType = byU32) then - result := pCardinal(tableBase)[h] + srcBase - else - result := pWord(tableBase)[h] + srcBase; -end; - -function LZ4_getPosition(const p: pByte; tableBase: pointer; tableType: tableType_t; const srcBase: pByte): pByte; inline; -var - h: cardinal; -begin - h := LZ4_hashPosition(p, tableType); - result := LZ4_getPositionOnHash(h, tableBase, tableType, srcBase); -end; - -procedure LZ4_putPosition(const p: pByte; tableBase: pointer; tableType: tableType_t; const srcBase: pByte); inline; -var - h: cardinal; -begin - h := LZ4_hashPosition(p, tableType); - LZ4_putPositionOnHash(p, h, tableBase, tableType, srcBase); -end; - -function LZ4_compress_generic(ctx: pointer; const source: pointer; dest: pointer; inputSize: integer; maxOutputSize: integer; - outputLimited: limitedOutput_directive; tableType: tableType_t; dict: dict_directive; dictIssue: dictIssue_directive): integer; inline; -var - lowRefLimit: pByte; - match: pByte; - refDelta: size_t; - ip: pByte; - - dictPtr: PLZ4_stream_t_internal; - base: pByte; - lowLimit: pByte; - dictionary: pByte; - dictEnd: pByte; - dictDelta: size_t; - anchor: pByte; - iend: pByte; - mflimit: pByte; - matchlimit: pByte; - op: pByte; - olimit: pByte; - forwardH: cardinal; - lastRun: integer; - token: pByte; - forwardIp: pByte; - step: cardinal; - searchMatchNb: cardinal; - h: cardinal; - litLength: cardinal; - len: integer; - matchLength: cardinal; - limit: pByte; - more: cardinal; - booleanValue: boolean; -label - _last_literals, _next_match; -begin - match := nil; - dictPtr := ctx; - ip := pByte(source); - lowRefLimit := ip - dictPtr.dictSize; - dictionary := dictPtr.dictionary; - dictEnd := dictionary + dictPtr.dictSize; - dictDelta := dictEnd - pByte(source); - anchor := pByte(source); - iend := ip + inputSize; - mflimit := iend - _MFLIMIT; - matchlimit := iend - LASTLITERALS; - - op := pByte(dest); - olimit := op + maxOutputSize; - refDelta := 0; - - if cardinal(inputSize) > cardinal(LZ4_MAX_INPUT_SIZE) then - exit(0); - - case dict of - withPrefix64k: - begin - base := pByte(source) - dictPtr.currentOffset; - lowLimit := pByte(source) - dictPtr.dictSize; - end; - usingExtDict: - begin - base := pByte(source) - dictPtr.currentOffset; - lowLimit := pByte(source); - end; - else - begin - base := pByte(source); - lowLimit := pByte(source); - end; - end; - - if ((tableType = byU16) and (inputSize >= LZ4_64Klimit)) then - exit(0); - if (inputSize < LZ4_minLength) then - goto _last_literals; - - LZ4_putPosition(ip, ctx, tableType, base); - inc(ip); - forwardH := LZ4_hashPosition(ip, tableType); - - while true do - begin - forwardIp := ip; - step := 1; - searchMatchNb := (1 shl LZ4_skipTrigger); - while true do - begin - h := forwardH; - ip := forwardIp; - inc(forwardIp, step); - step := searchMatchNb shr LZ4_skipTrigger; - inc(searchMatchNb); - - if forwardIp > mflimit then - goto _last_literals; - - match := LZ4_getPositionOnHash(h, ctx, tableType, base); - if (dict = usingExtDict) then - begin - if match < pByte(source) then - begin - refDelta := dictDelta; - lowLimit := dictionary; - end - else - begin - refDelta := 0; - lowLimit := pByte(source); - end; - end; - forwardH := LZ4_hashPosition(forwardIp, tableType); - LZ4_putPositionOnHash(ip, h, ctx, tableType, base); - if (dictIssue = dictSmall) and (match < lowRefLimit) then - continue; - if not(tableType = byU16) and (match + MAX_DISTANCE < ip) then - continue; - if (pCardinal(match + refDelta)^ <> pCardinal(ip)^) then - continue; - break; - end; - - while (ip > anchor) and (match + refDelta > lowLimit) and (ip[-1] = match[refDelta - 1]) do - begin - dec(ip); - dec(match); - end; - litLength := cardinal(ip - anchor); - token := op; - inc(op); - if (outputLimited <> notLimited) and (op + litLength + (2 + 1 + LASTLITERALS) + (litLength div 255) > olimit) then - exit(0); - if (litLength >= RUN_MASK) then - begin - len := integer(litLength - RUN_MASK); - token^ := (RUN_MASK shl ML_BITS); - while len >= 255 do - begin - op^ := 255; - inc(op); - dec(len, 255); - end; - op^ := BYTE(len); - inc(op); - end - else - token^ := BYTE(litLength shl ML_BITS); - LZ4_wildCopy(op, anchor, op + litLength); - inc(op, litLength); - _next_match: - pWord(op)^ := word(ip - match); - inc(op, 2); - - if (dict = usingExtDict) and (lowLimit = dictionary) then - begin - inc(match, refDelta); - limit := ip + (dictEnd - match); - if (limit > matchlimit) then - limit := matchlimit; - matchLength := LZ4_count(ip + MINMATCH, match + MINMATCH, limit); - inc(ip, MINMATCH + matchLength); - if (ip = limit) then - begin - more := LZ4_count(ip, pByte(source), matchlimit); - inc(matchLength, more); - inc(ip, more); - end; - end - else - begin - matchLength := LZ4_count(ip + MINMATCH, match + MINMATCH, matchlimit); - inc(ip, MINMATCH + matchLength); - end; - if (outputLimited <> notLimited) and (op + (1 + LASTLITERALS) + (matchLength shr 8) > olimit) then - exit(0); - if (matchLength >= ML_MASK) then - begin - inc(token^, ML_MASK); - dec(matchLength, ML_MASK); - while matchLength >= 510 do - begin - pWord(op)^ := $FFFF; - inc(op, 2); - // op^ := 255; - // inc(op); - // op^ := 255; - // inc(op); - dec(matchLength, 510); - end; - if (matchLength >= 255) then - begin - dec(matchLength, 255); - op^ := 255; - inc(op); - end; - op^ := BYTE(matchLength); - inc(op); - end - else - inc(token^, BYTE(matchLength)); - - anchor := ip; - if (ip > mflimit) then - break; - LZ4_putPosition(ip - 2, ctx, tableType, base); - match := LZ4_getPosition(ip, ctx, tableType, base); - if (dict = usingExtDict) then - begin - if match < pByte(source) then - begin - refDelta := dictDelta; - lowLimit := dictionary; - end - else - begin - refDelta := 0; - lowLimit := pByte(source); - end; - end; - LZ4_putPosition(ip, ctx, tableType, base); - - if dictIssue = dictSmall then - booleanValue := match >= lowRefLimit - else - booleanValue := true; - if (booleanValue and (match + MAX_DISTANCE >= ip) - and (pCardinal(match + refDelta)^ = pCardinal(ip)^)) then - begin - token := op; - inc(op); - token^ := 0; - goto _next_match; - end; - inc(ip); - forwardH := LZ4_hashPosition(ip, tableType); - end; - -_last_literals: - lastRun := integer(iend - anchor); - if (outputLimited <> notLimited) and ((op - pByte(dest)) + lastRun + 1 + ((lastRun + 255 - RUN_MASK) div 255) > - maxOutputSize) - then - exit(0); - if lastRun >= integer(RUN_MASK) then - begin - op^ := (RUN_MASK shl ML_BITS); - inc(op); - dec(lastRun, RUN_MASK); - while lastRun >= 255 do - begin - op^ := 255; - inc(op); - dec(lastRun, 255); - end; - op^ := BYTE(lastRun); - inc(op); - end - else - begin - op^ := BYTE(lastRun shl ML_BITS); - inc(op); - end; - move(anchor^, op^, iend - anchor); - inc(op, iend - anchor); - - result := integer(op - pByte(dest)); -end; - -function LZ4_compress(source: pAnsiChar; dest: pAnsiChar; sourceSize: integer): integer; -var - ctx: array [0 .. LZ4_STREAMSIZE_U64 - 1] of uint64; -begin - fillchar(ctx, sizeof(ctx), 0); - if sourceSize < LZ4_64Klimit then - result := LZ4_compress_generic(@ctx, source, dest, sourceSize, 0, notLimited, byU16, noDict, noDictIssue) - else - begin -{$IFDEF WIN64} - result := LZ4_compress_generic(@ctx, source, dest, sourceSize, 0, notLimited, byU32, noDict, - noDictIssue) -{$ELSE} - result := LZ4_compress_generic(@ctx, source, dest, sourceSize, 0, notLimited, byPtr, noDict, noDictIssue); -{$ENDIF} - end; -end; - -function LZ4_decompress_generic(const source: pointer; const dest: pointer; inputSize: integer; outputSize: integer; - endOnInput: integer; partialDecoding: integer; targetOutputSize: integer; dict: integer; - const lowPrefix: pByte; const dictStart: pByte; const dictSize: size_t): integer; inline; -var - ip: pByte; - iend: pByte; - op: pByte; - oend: pByte; - cpy: pByte; - oexit: pByte; - lowLimit: pByte; - dictEnd: pByte; - safeDecode: boolean; - checkOffset: boolean; - token: cardinal; - length: size_t; - match: pByte; - s: cardinal; - booleantest: boolean; - copySize: size_t; - endOfMatch: pByte; - copyFrom: pByte; - dec64: size_t; -const - dec32table: array [0 .. 7] of size_t = (4, 1, 2, 1, 4, 4, 4, 4); - dec64table: array [0 .. 7] of size_t = (0, 0, 0, size_t(-1), 0, 1, 2, 3); -label - _output_error; -begin - ip := pByte(source); - iend := ip + inputSize; - op := pByte(dest); - oend := op + outputSize; - oexit := op + targetOutputSize; - lowLimit := lowPrefix - dictSize; - dictEnd := pByte(dictStart) + dictSize; - safeDecode := (endOnInput = integer(endOnInputSize)); - checkOffset := ((safeDecode) and (dictSize < 65536)); - - if (partialDecoding <> 0) and (oexit > oend - _MFLIMIT) then - oexit := oend - _MFLIMIT; - if (endOnInput <> 0) and (outputSize = 0) then - begin - if (inputSize = 1) and (ip^ = 0) then - exit(0) - else - exit(-1); - end; - if (endOnInput = 0) and (outputSize = 0) then - begin - if ip^ = 0 then - exit(1) - else - exit(-1); - end; - - while true do - begin - token := ip^; - inc(ip); - length := token shr ML_BITS; - if length = RUN_MASK then - begin - while true do - begin - s := ip^; - inc(ip); - inc(length, s); - if endOnInput <> 0 then - begin - if not(ip < iend - RUN_MASK) then - break; - end; - if s <> 255 then - break; - end; - if safeDecode and (size_t(op + length) < size_t(op)) then - goto _output_error; - if safeDecode and (size_t(ip + length) < size_t(ip)) then - goto _output_error; - end; - cpy := op + length; - if partialDecoding <> 0 then - booleantest := cpy > oexit - else - booleantest := cpy > oend - _MFLIMIT; - - if ((endOnInput <> 0) and ((booleantest) or (ip + length > iend - (2 + 1 + LASTLITERALS)))) - or ((endOnInput = 0) and (cpy > oend - COPYLENGTH)) then - begin - if partialDecoding <> 0 then - begin - if (cpy > oend) then - goto _output_error; - if ((endOnInput <> 0) and (ip + length > iend)) then - goto _output_error; - end - else - begin - if ((endOnInput = 0) and (cpy <> oend)) then - goto _output_error; - if ((endOnInput <> 0) and ((ip + length <> iend) or (cpy > oend))) then - goto _output_error; - end; - move(ip^, op^, length); - inc(ip, length); - inc(op, length); - break; - end; - LZ4_wildCopy(op, ip, cpy); - inc(ip, length); - op := cpy; - match := cpy - LZ4_read16(ip); // LZ4_readLE16 = LZ4_read16 for unaligned - inc(ip, 2); - - if checkOffset and (match < lowLimit) then - goto _output_error; - - length := token and ML_MASK; - if length = ML_MASK then - begin - while true do - begin - if ((endOnInput <> 0) and (ip > iend - LASTLITERALS)) then - goto _output_error; - s := ip^; - inc(ip); - inc(length, s); - if s <> 255 then - break; - end; - if safeDecode and (size_t(op + length) < size_t(op)) then - goto _output_error; - end; - inc(length, MINMATCH); - if (dict = integer(usingExtDict)) and (match < lowPrefix) then - begin - if op + length > oend - LASTLITERALS then - goto _output_error; - if (length <= size_t(lowPrefix - match)) then - begin - match := dictEnd - (lowPrefix - match); - move(match^, op^, length); - inc(op, length); - end - else - begin - copySize := size_t(lowPrefix - match); - move((dictEnd - copySize)^, op^, copySize); - inc(op, copySize); - copySize := length - copySize; - if copySize > size_t(op - lowPrefix) then - begin - endOfMatch := op + copySize; - copyFrom := lowPrefix; - while (op < endOfMatch) do - begin - op^ := copyFrom^; - inc(op); - inc(copyFrom); - end; - end - else - begin - move(lowPrefix^, op^, copySize); - inc(op, copySize); - end; - end; - continue; - end; - cpy := op + length; - if (op - match) < 8 then - begin - dec64 := dec64table[op - match]; - op[0] := match[0]; - op[1] := match[1]; - op[2] := match[2]; - op[3] := match[3]; - inc(match, dec32table[op - match]); - pCardinal(op + 4)^ := pCardinal(match)^; - inc(op, 8); - dec(match, dec64); - end - else - begin -{$IFDEF WIN64} - pUint64(op)^ := pUint64(match)^; -{$ELSE} - pCardinal(op)[0] := pCardinal(match)[0]; - pCardinal(op)[1] := pCardinal(match)[1]; -{$ENDIF} - inc(op, 8); - inc(match, 8); - end; - - if cpy > oend - 12 then - begin - if (cpy > oend - LASTLITERALS) then - goto _output_error; - if (op < oend - 8) then - begin - LZ4_wildCopy(op, match, oend - 8); - inc(match, (oend - 8) - op); - op := oend - 8; - end; - while (op < cpy) do - begin - op^ := match^; - inc(op); - inc(match); - end; - end - else - LZ4_wildCopy(op, match, cpy); - op := cpy; - end; - if (endOnInput <> 0) then - result := integer(op - pByte(dest)) - else - result := integer(ip - pByte(source)); - exit; -_output_error: - result := -(ip - pByte(source)) - 1; -end; - -function LZ4_decompress_safe(source: pAnsiChar; dest: pAnsiChar; compressedSize: integer; maxDecompressedSize: integer): integer; -begin - result := LZ4_decompress_generic(source, dest, compressedSize, maxDecompressedSize, integer(endOnInputSize), integer(full), 0, - integer(noDict), pByte(dest), nil, 0); -end; - -function LZ4_createStream: PLZ4_stream_t; -begin - result := allocmem(8 * LZ4_STREAMSIZE_U64); -end; - -procedure LZ4_freeStream(LZ4_streamPtr: PLZ4_stream_t); -begin - freemem(LZ4_streamPtr); -end; - -function LZ4_createStreamDecode: PLZ4_streamDecode_t; -begin - result := allocmem(sizeof(uint64) * LZ4_STREAMDECODESIZE_U64); -end; - -procedure LZ4_freeStreamDecode(LZ4_stream: PLZ4_streamDecode_t); -begin - freemem(LZ4_stream); -end; - -procedure LZ4_renormDictT(LZ4_dict: PLZ4_stream_t_internal; src: pByte); -var - delta: cardinal; - dictEnd: pByte; - i: integer; -begin - if (LZ4_dict.currentOffset > $80000000) or - (size_t(LZ4_dict.currentOffset) > size_t(src)) then - begin - delta := LZ4_dict.currentOffset - 65536; - dictEnd := LZ4_dict.dictionary + LZ4_dict.dictSize; - for i := 0 to HASH_SIZE_U32 - 1 do - begin - if (LZ4_dict.hashTable[i] < delta) then - LZ4_dict.hashTable[i] := 0 - else - dec(LZ4_dict.hashTable[i], delta); - end; - LZ4_dict.currentOffset := 65536; - if (LZ4_dict.dictSize > 65536) then - LZ4_dict.dictSize := 65536; - LZ4_dict.dictionary := dictEnd - LZ4_dict.dictSize; - end; -end; - -function LZ4_compress_continue_generic(LZ4_stream: pointer; source: pointer; dest: pointer; inputSize: integer; maxOutputSize: integer; - limit: limitedOutput_directive): integer; inline; -var - streamPtr: PLZ4_stream_t_internal; - dictEnd: pByte; - smallest: pByte; - sourceEnd: pByte; - res: integer; -begin - streamPtr := PLZ4_stream_t_internal(LZ4_stream); - dictEnd := streamPtr.dictionary + streamPtr.dictSize; - smallest := pByte(source); - if (streamPtr.initCheck <> 0) then - exit(0); - if (streamPtr.dictSize > 0) and (smallest > dictEnd) then - smallest := dictEnd; - LZ4_renormDictT(streamPtr, smallest); - sourceEnd := pByte(source) + inputSize; - if (sourceEnd > streamPtr.dictionary) and (sourceEnd < dictEnd) then - begin - streamPtr.dictSize := cardinal(dictEnd - sourceEnd); - if (streamPtr.dictSize > 65536) then - streamPtr.dictSize := 65536; - if (streamPtr.dictSize < 4) then - streamPtr.dictSize := 0; - streamPtr.dictionary := dictEnd - streamPtr.dictSize; - end; - if dictEnd = pByte(source) then - begin - if (streamPtr.dictSize < 65536) and (streamPtr.dictSize < streamPtr.currentOffset) then - res := LZ4_compress_generic(LZ4_stream, source, dest, inputSize, maxOutputSize, limit, byU32, withPrefix64k, dictSmall) - else - res := LZ4_compress_generic(LZ4_stream, source, dest, inputSize, maxOutputSize, limit, byU32, withPrefix64k, noDictIssue); - inc(streamPtr.dictSize, cardinal(inputSize)); - inc(streamPtr.currentOffset, cardinal(inputSize)); - exit(res); - end; - if (streamPtr.dictSize < 65536) and (streamPtr.dictSize < streamPtr.currentOffset) then - res := LZ4_compress_generic(LZ4_stream, source, dest, inputSize, maxOutputSize, limit, byU32, usingExtDict, dictSmall) - else - res := LZ4_compress_generic(LZ4_stream, source, dest, inputSize, maxOutputSize, limit, byU32, usingExtDict, noDictIssue); - streamPtr.dictionary := pByte(source); - streamPtr.dictSize := cardinal(inputSize); - inc(streamPtr.currentOffset, cardinal(inputSize)); - result := res; -end; - -function LZ4_compress_continue(LZ4_stream: pointer; const ASource: pointer; ADestination: pointer; AInputSize: integer): integer; -begin - result := LZ4_compress_continue_generic(LZ4_stream, ASource, ADestination, AInputSize, 0, notLimited); -end; - -function LZ4_saveDict(LZ4_streamPtr: PLZ4_stream_t; safeBuffer: pointer; dictSize: integer): integer; -var - dict: PLZ4_stream_t_internal; - previousDictEnd: pByte; -begin - dict := PLZ4_stream_t_internal(LZ4_streamPtr); - previousDictEnd := dict.dictionary + dict.dictSize; - if cardinal(dictSize) > 65536 then - dictSize := 65536; - if cardinal(dictSize) > dict.dictSize then - dictSize := dict.dictSize; - move((previousDictEnd - dictSize)^, safeBuffer^, dictSize); - // memmove(safeBuffer, (previousDictEnd - dictSize), dictSize); - dict.dictionary := pByte(safeBuffer); - dict.dictSize := cardinal(dictSize); - result := dictSize; -end; - -function LZ4_decompress_safe_continue(LZ4_streamDecode: PLZ4_streamDecode_t; source: pointer; dest: pointer; compressedSize: integer; - maxDecompressedSize: integer): integer; -var - lz4sd: PLZ4_streamDecode_t_internal; - res: integer; -begin - lz4sd := PLZ4_streamDecode_t_internal(LZ4_streamDecode); - if lz4sd.prefixEnd = pByte(dest) then - begin - res := LZ4_decompress_generic(source, dest, compressedSize, maxDecompressedSize, - integer(endOnInputSize), integer(full), 0, - integer(usingExtDict), lz4sd.prefixEnd - lz4sd.prefixSize, lz4sd.externalDict, lz4sd.extDictSize); - if (res <= 0) then - exit(res); - inc(lz4sd.prefixSize, res); - inc(lz4sd.prefixEnd, res); - end - else - begin - lz4sd.extDictSize := lz4sd.prefixSize; - lz4sd.externalDict := lz4sd.prefixEnd - lz4sd.extDictSize; - res := LZ4_decompress_generic(source, dest, compressedSize, maxDecompressedSize, - integer(endOnInputSize), integer(full), 0, - integer(usingExtDict), pByte(dest), lz4sd.externalDict, lz4sd.extDictSize); - if (res <= 0) then - exit(res); - lz4sd.prefixSize := res; - lz4sd.prefixEnd := pByte(dest) + res; - end; - result := res; -end; - -procedure LZ4_init(lz4ds: PLZ4_stream_t_internal; base: pByte); -begin - fillchar(lz4ds^, LZ4_STREAMSIZE, 0); - lz4ds.bufferStart := base; -end; - -function LZ4_create(inputBuffer: pAnsiChar): pointer; -var - lz4ds: pointer; -begin - lz4ds := allocmem(8 * LZ4_STREAMSIZE_U64); - LZ4_init(PLZ4_stream_t_internal(lz4ds), pByte(inputBuffer)); - result := lz4ds; -end; - -function LZ4_compress_limitedOutput(const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; maxOutputSize: integer): integer; -var - ctx: array [0 .. LZ4_STREAMSIZE_U64 - 1] of uint64; -begin - fillchar(ctx, sizeof(ctx), 0); - if inputSize < LZ4_64Klimit then - result := LZ4_compress_generic(@ctx, source, dest, inputSize, maxOutputSize, limitedOutput, byU16, noDict, noDictIssue) - else - begin -{$IFDEF WIN64} - result := LZ4_compress_generic(@ctx, source, dest, inputSize, maxOutputSize, limitedOutput, byU32, noDict, noDictIssue); -{$ELSE} - result := LZ4_compress_generic(@ctx, source, dest, inputSize, maxOutputSize, limitedOutput, byPtr, noDict, noDictIssue); -{$ENDIF} - end; -end; - -function LZ4_compress_withState(state: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer): integer; -begin - if ((size_t(state) and 3) <> 0) then - exit(0); // Error : state is not aligned on 4-bytes boundary - fillchar(state^, LZ4_STREAMSIZE, 0); - if inputSize < LZ4_64Klimit then - result := LZ4_compress_generic(state, source, dest, inputSize, 0, notLimited, byU16, noDict, noDictIssue) - else - begin -{$IFDEF WIN64} - result := LZ4_compress_generic(state, source, dest, inputSize, 0, notLimited, byU32, noDict, noDictIssue); -{$ELSE} - result := LZ4_compress_generic(state, source, dest, inputSize, 0, notLimited, byPtr, noDict, noDictIssue); -{$ENDIF} - end; -end; - -function LZ4_compress_limitedOutput_withState(state: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; - maxOutputSize: integer): integer; -begin - if ((size_t(state) and 3) <> 0) then - exit(0); // Error : state is not aligned on 4-bytes boundary - fillchar(state^, LZ4_STREAMSIZE, 0); - if inputSize < LZ4_64Klimit then - result := LZ4_compress_generic(state, source, dest, inputSize, maxOutputSize, limitedOutput, byU16, noDict, noDictIssue) - else - begin -{$IFDEF WIN64} - result := LZ4_compress_generic(state, source, dest, inputSize, maxOutputSize, limitedOutput, byU32, noDict, noDictIssue); -{$ELSE} - result := LZ4_compress_generic(state, source, dest, inputSize, maxOutputSize, limitedOutput, byPtr, noDict, noDictIssue); -{$ENDIF} - end; -end; - -function LZ4_compress_limitedOutput_continue(LZ4_stream: PLZ4_stream_t; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; - maxOutputSize: integer): integer; -begin - result := LZ4_compress_continue_generic(LZ4_stream, source, dest, inputSize, maxOutputSize, limitedOutput); -end; - -function LZ4_compress_forceExtDict(LZ4_dict: PLZ4_stream_t; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer): integer; -var - streamPtr: PLZ4_stream_t_internal; - dictEnd: pByte; - smallest: pByte; -begin - streamPtr := PLZ4_stream_t_internal(LZ4_dict); - dictEnd := streamPtr.dictionary + streamPtr.dictSize; - smallest := dictEnd; - if smallest > pByte(source) then - smallest := pByte(source); - LZ4_renormDictT(PLZ4_stream_t_internal(LZ4_dict), smallest); - result := LZ4_compress_generic(LZ4_dict, source, dest, inputSize, 0, notLimited, byU32, usingExtDict, noDictIssue); - streamPtr.dictionary := pByte(source); - streamPtr.dictSize := cardinal(inputSize); - inc(streamPtr.currentOffset, cardinal(inputSize)); -end; - -procedure LZ4_resetStream(LZ4_stream: PLZ4_stream_t); -begin - fillchar(LZ4_stream^, sizeof(LZ4_stream_t), 0); -end; - -function LZ4_loadDict(LZ4_dict: PLZ4_stream_t; dictionary: pAnsiChar; dictSize: integer): integer; -var - dict: PLZ4_stream_t_internal; - p: pByte; - dictEnd: pByte; - base: pByte; -begin - dict := PLZ4_stream_t_internal(LZ4_dict); - p := pByte(dictionary); - dictEnd := p + dictSize; - if (dict.initCheck <> 0) then - LZ4_resetStream(LZ4_dict); // Uninitialized structure detected - if dictSize < MINMATCH then - begin - dict.dictionary := Nil; - dict.dictSize := 0; - exit(0); - end; - if (p <= dictEnd - 65536) then - p := dictEnd - 65536; - base := p - dict.currentOffset; - dict.dictionary := p; - dict.dictSize := cardinal(dictEnd - p); - inc(dict.currentOffset, dict.dictSize); - while (p <= dictEnd - MINMATCH) do - begin - LZ4_putPosition(p, dict, byU32, base); - inc(p, 3); - end; - - result := dict.dictSize; -end; - -function LZ4_decompress_fast(source: pAnsiChar; dest: pAnsiChar; originalSize: integer): integer; -begin - result := LZ4_decompress_generic(source, dest, 0, originalSize, integer(endOnOutputSize), integer(full), 0, integer(withPrefix64k), - pByte(dest - 65536), Nil, 65536); -end; - -function LZ4_decompress_fast_withPrefix64k(source: pAnsiChar; dest: pAnsiChar; originalSize: integer): integer; -begin - result := LZ4_decompress_generic(source, dest, 0, originalSize, integer(endOnOutputSize), integer(full), 0, integer(withPrefix64k), - pByte(dest) - 65536, Nil, 65536); -end; - -function LZ4_decompress_usingDict_generic(source: pAnsiChar; dest: pAnsiChar; compressedSize: integer; maxOutputSize: integer; - safe: integer; dictStart: pAnsiChar; dictSize: integer): integer; inline; -begin - if dictSize = 0 then - exit(LZ4_decompress_generic(source, dest, compressedSize, maxOutputSize, safe, integer(full), 0, integer(noDict), - pByte(dest), Nil, 0)); - if (dictStart + dictSize = dest) then - begin - if dictSize >= integer(65536 - 1) then - exit(LZ4_decompress_generic(source, dest, compressedSize, maxOutputSize, safe, integer(full), 0, integer(withPrefix64k), - pByte(dest) - 65536, Nil, 0)); - exit(LZ4_decompress_generic(source, dest, compressedSize, maxOutputSize, safe, integer(full), 0, integer(noDict), - pByte(dest) - dictSize, Nil, 0)); - end; - result := LZ4_decompress_generic(source, dest, compressedSize, maxOutputSize, safe, integer(full), 0, integer(usingExtDict), - pByte(dest), pByte(dictStart), dictSize); -end; - -function LZ4_decompress_fast_usingDict(source: pAnsiChar; dest: pAnsiChar; originalSize: integer; const dictStart: pAnsiChar; - dictSize: integer): integer; -begin - result := LZ4_decompress_usingDict_generic(source, dest, 0, originalSize, 0, dictStart, dictSize); -end; - -function LZ4_decompress_safe_withPrefix64k(source: pAnsiChar; dest: pAnsiChar; compressedSize: integer; maxOutputSize: integer): integer; -begin - result := LZ4_decompress_generic(source, dest, compressedSize, maxOutputSize, integer(endOnInputSize), integer(full), 0, - integer(withPrefix64k), pByte(dest) - 65536, Nil, 65536); -end; - -function LZ4_decompress_safe_usingDict(const source: pAnsiChar; dest: pAnsiChar; compressedSize: integer; maxOutputSize: integer; - const dictStart: pAnsiChar; dictSize: integer): integer; -begin - result := LZ4_decompress_usingDict_generic(source, dest, compressedSize, maxOutputSize, 1, dictStart, dictSize); -end; - -function LZ4_decompress_safe_partial(const source: pAnsiChar; dest: pAnsiChar; compressedSize: integer; targetOutputSize: integer; - maxDecompressedSize: integer): integer; -begin - result := LZ4_decompress_generic(source, dest, compressedSize, maxDecompressedSize, integer(endOnInputSize), integer(partial), - targetOutputSize, integer(noDict), pByte(dest), Nil, 0); -end; - -function LZ4_decompress_safe_forceExtDict(source: pAnsiChar; dest: pAnsiChar; compressedSize: integer; maxOutputSize: integer; - const dictStart: pAnsiChar; dictSize: integer): integer; -begin - result := LZ4_decompress_generic(source, dest, compressedSize, maxOutputSize, integer(endOnInputSize), integer(full), 0, - integer(usingExtDict), pByte(dest), pByte(dictStart), dictSize); -end; - -end. diff --git a/lib/xedit/lz4/lz4Common.pas b/lib/xedit/lz4/lz4Common.pas deleted file mode 100644 index cf2c7a2..0000000 --- a/lib/xedit/lz4/lz4Common.pas +++ /dev/null @@ -1,250 +0,0 @@ -(* - LZ4Delphi - Copyright (C) 2015, Jose Pascoa (atelierwebgm@gmail.com) - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - ************************************************************************* - LZ4 - Fast LZ compression algorithm - xxHash - Fast Hash algorithm - LZ4 source repository : http://code.google.com/p/lz4/ - xxHash source repository : http://code.google.com/p/xxhash/ - Copyright (c) 2011-2014, Yann Collet - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following disclaimer - in the documentation and/or other materials provided with the - distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - ****************************************************************************** -*) - -unit lz4common; -{$POINTERMATH ON} - -interface - -uses Windows; - -type - ppByte = ^pByte; - {$IFDEF WIN32} - size_t = Cardinal; - {$ENDIF WIN32} - {$IFDEF WIN64} - size_t = UInt64; - {$ENDIF WIN64} - psize_t = ^size_t; - -const - MINMATCH = 4; - COPYLENGTH = 8; - LASTLITERALS = 5; - _MFLIMIT = COPYLENGTH + MINMATCH; - MAXD_LOG = 16; - MAX_DISTANCE = (1 shl MAXD_LOG) - 1; - STEPSIZE = sizeof(size_t); - ML_BITS = 4; - ML_MASK = (1 shl ML_BITS) - 1; - RUN_BITS = 8 - ML_BITS; - RUN_MASK = (1 shl RUN_BITS) - 1; - -function LZ4_read32(const memPtr: pointer): cardinal; -function LZ4_read64(const memPtr: pointer): uint64; inline; -function LZ4_count(pIn: pByte; pMatch: pByte; const pInLimit: pByte): cardinal; -function LZ4_read_ARCH(const p: pointer): size_t; inline; -function LZ4_read16(const memPtr: pointer): word; inline; -procedure LZ4_writeLE16(memPtr: pointer; value: word); inline; -procedure LZ4_wildCopy(dstPtr: pointer; const srcPtr: pointer; dstEnd: pointer); - -implementation - -function LZ4_read32(const memPtr: pointer): cardinal; -begin - result := pCardinal(memPtr)^; -end; - -{$IFDEF WIN64} - - -function LZ4_NbCommonBytesx64(value: size_t): cardinal; -asm - bsf rax, rcx // value comes in rcx register - shr eax, 3 -end; -{$ENDIF} - - -function LZ4_count(pIn: pByte; pMatch: pByte; const pInLimit: pByte): cardinal; -var - pStart: pByte; - diff: size_t; - incValue: cardinal; - - calcedPByte: pByte; -begin - pStart := pIn; - calcedPByte := pInLimit - (STEPSIZE - 1); - - while pIn < calcedPByte do - begin - diff := LZ4_read_ARCH(pMatch) xor LZ4_read_ARCH(pIn); - if (diff = 0) then - begin - inc(pIn, STEPSIZE); - inc(pMatch, STEPSIZE); - continue; - end; -{$IFDEF WIN32} - asm - bsf eax, diff - shr eax, 3 - mov incValue, eax - end; -{$ELSE} - incValue := LZ4_NbCommonBytesx64(diff); // x64 mode does not allow asm inline -{$ENDIF} - inc(pIn, incValue); - exit(cardinal(pIn - pStart)); - end; -{$IFDEF WIN64} - if (pIn < (pInLimit - 3)) and (pCardinal(pMatch)^ = pCardinal(pIn)^) then - begin - inc(pIn, 4); - inc(pMatch, 4); - end; -{$ENDIF} - if ((pIn < (pInLimit - 1)) and (pWord(pMatch)^ = pWord(pIn)^)) then - begin - inc(pIn, 2); - inc(pMatch, 2); - end; - if ((pIn < pInLimit) and (pMatch^ = pIn^)) then - inc(pIn); - result := cardinal(pIn - pStart); -end; - -function LZ4_read_ARCH(const p: pointer): size_t; inline; -begin -{$IFDEF WIN64} - result := size_t(pUint64(p)^) -{$ELSE} - result := size_t(pCardinal(p)^); -{$ENDIF} -end; - -function LZ4_read16(const memPtr: pointer): word; inline; -begin - result := pWord(memPtr)^; -end; - -function LZ4_read64(const memPtr: pointer): uint64; inline; -begin - result := pUint64(memPtr)^; -end; - -{$IFDEF WILDCOPY_ASM} -{$IFDEF WIN32} - - -procedure LZ4_wildCopy; // (dstPtr: pointer; const srcPtr: pointer; dstEnd: pointer); -asm - push edi - push esi - mov edi, eax - mov esi, edx - // copyCount := (((e - d) - 1) div 8) * 8 + 8; - sub ecx, eax // (e - d) - dec ecx // e - d) - 1) - shr ecx, 3 // ((e - d) - 1) div 8) - shl ecx, 3 // ((e - d) - 1) div 8) * 8 - add ecx, 8 // ((e - d) - 1) div 8) * 8 + 8 - - // if copyCount <= 0 then - // copyCount := 8; - mov eax, 8 - cmp ecx, 0 - cmovbe ecx, eax - shr ecx, 2 - rep movsd - pop esi - pop edi -end; - -{$ELSE} - - -procedure LZ4_wildCopy; // (dstPtr: pointer; const srcPtr: pointer; dstEnd: pointer); -asm - mov r10, rdi - mov r11, rsi - mov rdi, rcx - mov rsi, rdx - // copyCount := (((e - d) - 1) div 8) * 8 + 8; - sub r8, rcx // (dstEnd - dest) - mov rax, 8 - dec r8 // e - d) - 1) - shr r8, 3 // ((e - d) - 1) div 8) - shl r8, 3 // ((e - d) - 1) div 8) * 8 - add r8, rax // ((e - d) - 1) div 8) * 8 + 8 - cmp r8, 0 - cmovbe r8, rax - mov rcx, r8 - shr rcx, 3 - rep movsq - mov rdi, r10 - mov rsi, r11 -end; -{$ENDIF} -{$ELSE} - - -procedure LZ4_wildCopy(dstPtr: pointer; const srcPtr: pointer; dstEnd: pointer); inline; -var - d: pByte; - s: pByte; - e: pByte; -begin - d := dstPtr; - s := srcPtr; - e := dstEnd; - repeat -{$IFDEF WIN32} - pCardinal(d)[0] := pCardinal(s)[0]; - pCardinal(d)[1] := pCardinal(s)[1]; -{$ELSE} - pUint64(d)^ := pUint64(s)^; -{$ENDIF} - inc(d, 8); - inc(s, 8); - until not(d < e); -end; - -{$ENDIF} - - -procedure LZ4_writeLE16(memPtr: pointer; value: word); inline; -begin - pWord(memPtr)^ := value; - -end; - -end. diff --git a/lib/xedit/lz4/lz4HC.pas b/lib/xedit/lz4/lz4HC.pas deleted file mode 100644 index e91e0a6..0000000 --- a/lib/xedit/lz4/lz4HC.pas +++ /dev/null @@ -1,804 +0,0 @@ -(* - LZ4Delphi - Copyright (C) 2015, Jose Pascoa (atelierwebgm@gmail.com) - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - ************************************************************************* - LZ4 - Fast LZ compression algorithm - xxHash - Fast Hash algorithm - LZ4 source repository : http://code.google.com/p/lz4/ - xxHash source repository : http://code.google.com/p/xxhash/ - Copyright (c) 2011-2014, Yann Collet - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following disclaimer - in the documentation and/or other materials provided with the - distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - ****************************************************************************** -*) - -unit lz4HC; -{$POINTERMATH ON} - -interface - -uses Windows, lz4Common; - -const - LZ4_STREAMHCSIZE_U64 = 32774; - -type - PLZ4_streamHC_t = ^LZ4_streamHC_t; - - LZ4_streamHC_t = record - table: array [0 .. LZ4_STREAMHCSIZE_U64 - 1] of uint64; - end; - -function LZ4_createStreamHC: PLZ4_streamHC_t; -procedure LZ4_freeStreamHC(LZ4_streamHCPtr: PLZ4_streamHC_t); -function LZ4_compressHC2(const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; compressionLevel: integer): integer; -function LZ4_compressHC(source: pAnsiChar; dest: pAnsiChar; inputSize: integer): integer; -function LZ4_compressHC_limitedOutput(const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; maxOutputSize: integer): integer; -function LZ4_compressHC2_limitedOutput(const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; maxOutputSize: integer; - compressionLevel: integer): integer; -function LZ4_compressHC_withStateHC(state: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer): integer; -function LZ4_compressHC2_withStateHC(state: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; - compressionLevel: integer): integer; -function LZ4_compressHC_limitedOutput_withStateHC(state: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; - maxOutputSize: integer): integer; -function LZ4_compressHC2_limitedOutput_withStateHC(state: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; - maxOutputSize: integer; compressionLevel: integer): integer; -function LZ4_createHC(inputBuffer: pAnsiChar): pointer; -function LZ4_compressHC_continue(LZ4_streamHCPtr: PLZ4_streamHC_t; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer): integer; -function LZ4_loadDictHC(LZ4_streamHCPtr: PLZ4_streamHC_t; dictionary: pAnsiChar; dictSize: integer): integer; -function LZ4_compressHC_limitedOutput_continue(LZ4_streamHCPtr: PLZ4_streamHC_t; const source: pAnsiChar; dest: pAnsiChar; - inputSize: integer; maxOutputSize: integer): integer; -procedure LZ4_resetStreamHC(LZ4_streamHCPtr: PLZ4_streamHC_t; compressionLevel: integer); -function LZ4_saveDictHC(LZ4_streamHCPtr: PLZ4_streamHC_t; safeBuffer: pAnsiChar; dictSize: integer): integer; - -implementation - -const - DICTIONARY_LOGSIZE = 16; - MAXD = (1 shl DICTIONARY_LOGSIZE); - HASH_LOG = (DICTIONARY_LOGSIZE - 1); - HASHTABLESIZE = (1 shl HASH_LOG); - OPTIMAL_ML = integer((ML_MASK - 1) + MINMATCH); - - g_maxCompressionLevel: integer = 16; - LZ4HC_compressionLevel_default: integer = 8; - -type - PLZ4HC_Data_Structure = ^LZ4HC_Data_Structure; - - LZ4HC_Data_Structure = record - hashTable: array [0 .. HASHTABLESIZE - 1] of cardinal; - chainTable: array [0 .. MAXD - 1] of word; - _end: pByte; - base: pByte; - dictBase: pByte; - inputBuffer: pByte; - dictLimit: cardinal; - lowLimit: cardinal; - nextToUpdate: cardinal; - compressionLevel: cardinal; - end; - - limitedOutput_directive = (noLimit = 0, limitedOutput = 1); - -function LZ4_createStreamHC: PLZ4_streamHC_t; -begin - result := allocmem(sizeof(LZ4_streamHC_t)); -end; - -procedure LZ4_freeStreamHC(LZ4_streamHCPtr: PLZ4_streamHC_t); -begin - freemem(LZ4_streamHCPtr); -end; - -procedure LZ4HC_init(hc4: PLZ4HC_Data_Structure; const start: pByte); -begin - fillchar(hc4.hashTable, sizeof(hc4.hashTable), 0); - fillchar(hc4.chainTable, sizeof(hc4.chainTable), 255); - hc4.nextToUpdate := 65536; - hc4.base := start - 65536; - hc4.inputBuffer := start; - hc4._end := start; - hc4.dictBase := start - 65536; - hc4.dictLimit := 65536; - hc4.lowLimit := 65536; -end; - -function HASH_FUNCTION(i: cardinal): cardinal; inline; -begin - result := (i * 2654435761) shr ((MINMATCH * 8) - HASH_LOG); -end; - -function LZ4HC_hashPtr(const ptr: pointer): cardinal; inline; -begin - result := HASH_FUNCTION(pCardinal(ptr)^); -end; - -procedure LZ4HC_Insert(hc4: PLZ4HC_Data_Structure; const ip: pByte); inline; -var - chainTable: pWord; - hashTable: pCardinal; - base: pByte; - target: cardinal; - idx: cardinal; - h: cardinal; - delta: size_t; -begin - chainTable := @hc4.chainTable; - hashTable := @hc4.hashTable; - base := hc4.base; - target := cardinal(ip - base); - idx := hc4.nextToUpdate; - - while idx < target do - begin - h := LZ4HC_hashPtr(base + idx); - delta := idx - hashTable[h]; - if (delta > MAX_DISTANCE) then - delta := MAX_DISTANCE; - chainTable[idx and $FFFF] := word(delta); - hashTable[h] := idx; - inc(idx); - end; - hc4.nextToUpdate := target; -end; - -function LZ4HC_InsertAndFindBestMatch(hc4: PLZ4HC_Data_Structure; const ip: pByte; const iLimit: pByte; - const matchpos: ppByte; const maxNbAttempts: integer): integer; inline; -var - chainTable: pWord; - hashTable: pCardinal; - base: pByte; - dictBase: pByte; - dictLimit: cardinal; - lowLimit: cardinal; - matchIndex: cardinal; - match: pByte; - nbAttempts: integer; - ml: size_t; - mlt: size_t; - vLimit: pByte; -begin - chainTable := @hc4.chainTable; - hashTable := @hc4.hashTable; - base := hc4.base; - dictBase := hc4.dictBase; - dictLimit := hc4.dictLimit; - if hc4.lowLimit + 65536 > cardinal(ip - base) then - lowLimit := hc4.lowLimit - else - lowLimit := cardinal(ip - base) - 65535; - nbAttempts := maxNbAttempts; - ml := 0; - LZ4HC_Insert(hc4, ip); - matchIndex := hashTable[LZ4HC_hashPtr(ip)]; - while (matchIndex >= lowLimit) and (nbAttempts > 0) do - begin - dec(nbAttempts); - if matchIndex >= dictLimit then - begin - match := base + matchIndex; - if ((match + ml)^ = (ip + ml)^) and (pCardinal(match)^ = pCardinal(ip)^) then - begin - mlt := LZ4_count(ip + MINMATCH, match + MINMATCH, iLimit) + MINMATCH; - if mlt > ml then - begin - ml := mlt; - matchpos^ := match; - end; - end; - end - else - begin - match := dictBase + matchIndex; - if pCardinal(match)^ = pCardinal(ip)^ then - begin - vLimit := ip + (dictLimit - matchIndex); - if (vLimit > iLimit) then - vLimit := iLimit; - mlt := LZ4_count(ip + MINMATCH, match + MINMATCH, vLimit) + MINMATCH; - if ((ip + mlt = vLimit) and (vLimit < iLimit)) then - inc(mlt, LZ4_count(ip + mlt, base + dictLimit, iLimit)); - if (mlt > ml) then - begin - ml := mlt; - matchpos^ := base + matchIndex; - end; // virtual matchpos - end; - end; - dec(matchIndex, chainTable[matchIndex and $FFFF]); - end; - result := integer(ml); -end; - -function LZ4HC_InsertAndGetWiderMatch(hc4: PLZ4HC_Data_Structure; const ip: pByte; const iLowLimit: pByte; - const iHighLimit: pByte; longest: integer; const matchpos: ppByte; const startpos: ppByte; const maxNbAttempts: integer): integer; inline; -var - chainTable: pWord; - hashTable: pCardinal; - base: pByte; - dictLimit: cardinal; - lowLimit: cardinal; - dictBase: pByte; - match: pByte; - matchIndex: cardinal; - nbAttempts: integer; - delta: integer; - startt: pByte; - tmpMatch: pByte; - matchEnd: pByte; - mlt: size_t; - back: integer; - vLimit: pByte; -begin - chainTable := @hc4.chainTable; - hashTable := @hc4.hashTable; - base := hc4.base; - dictLimit := hc4.dictLimit; - if (hc4.lowLimit + 65536 > cardinal(ip - base)) then - lowLimit := hc4.lowLimit - else - lowLimit := cardinal(ip - base) - 65535; - dictBase := hc4.dictBase; - nbAttempts := maxNbAttempts; - delta := integer(ip - iLowLimit); - LZ4HC_Insert(hc4, ip); - matchIndex := hashTable[LZ4HC_hashPtr(ip)]; - while (matchIndex >= lowLimit) and (nbAttempts > 0) do - begin - dec(nbAttempts); - if matchIndex >= dictLimit then - begin - match := base + matchIndex; - if ((iLowLimit + longest)^ = (match - delta + longest)^) then - if pCardinal(match)^ = pCardinal(ip)^ then - begin - startt := ip; - tmpMatch := match; - matchEnd := ip + MINMATCH + LZ4_count(ip + MINMATCH, match + MINMATCH, iHighLimit); - while (startt > iLowLimit) and (tmpMatch > iLowLimit) and (startt[-1] = tmpMatch[-1]) do - begin - dec(startt); - dec(tmpMatch); - end; - if (matchEnd - startt) > longest then - begin - longest := integer(matchEnd - startt); - matchpos^ := tmpMatch; - startpos^ := startt; - end; - end; - end - else - begin - match := dictBase + matchIndex; - if pCardinal(match)^ = pCardinal(ip)^ then - begin - back := 0; - vLimit := ip + (dictLimit - matchIndex); - if vLimit > iHighLimit then - vLimit := iHighLimit; - mlt := LZ4_count(ip + MINMATCH, match + MINMATCH, vLimit) + MINMATCH; - if (ip + mlt = vLimit) and (vLimit < iHighLimit) then - inc(mlt, LZ4_count(ip + mlt, base + dictLimit, iHighLimit)); - while ((ip + back > iLowLimit) and (matchIndex + cardinal(back) > lowLimit) and (ip[back - 1] = match[back - 1])) do - dec(back); - dec(mlt, back); - if integer(mlt) > longest then - begin - longest := integer(mlt); - matchpos^ := base + matchIndex + back; - startpos^ := ip + back; - end; - end; - end; - dec(matchIndex, chainTable[matchIndex and $FFFF]); - end; - result := longest; -end; - -function LZ4HC_encodeSequence(const ip: ppByte; op: ppByte; const anchor: ppByte; matchLength: integer; - const match: pByte; limitedOutputBuffer: limitedOutput_directive; oend: pByte): integer; inline; -var - length: integer; - token: pByte; - len: integer; -begin - length := integer(ip^ - anchor^); - token := op^; - inc(op^); - if (limitedOutputBuffer <> noLimit) and ((op^ + (length shr 8) + length + (2 + 1 + LASTLITERALS)) > oend) then - exit(1); - - if length >= integer(RUN_MASK) then - begin - token^ := (RUN_MASK shl ML_BITS); - len := length - RUN_MASK; - while len > 254 do - begin - op^^ := 255; - inc(op^); - dec(len, 255) - end; - op^^ := byte(len); - inc(op^); - end - else - token^ := byte(length shl ML_BITS); - - LZ4_wildCopy(op^, anchor^, op^ + length); - - inc(op^, length); - pWord(op^)^ := word(ip^ - match); // ? - inc(op^, 2); - - length := integer(matchLength - MINMATCH); - if (limitedOutputBuffer <> noLimit) and (op^ + (length shr 8) + (1 + LASTLITERALS) > oend) then - exit(1); - if length >= integer(ML_MASK) then - begin - inc(token^, ML_MASK); - dec(length, ML_MASK); - while length > 509 do - begin - op^^ := 255; - inc(op^); - op^^ := 255; - inc(op^); - dec(length, 510); - end; - if (length > 254) then - begin - dec(length, 255); - op^^ := 255; - inc(op^); - end; - op^^ := byte(length); - inc(op^); - end - else - inc(token^, byte(length)); - inc(ip^, matchLength); - anchor^ := ip^; - result := 0; -end; - -function LZ4HC_compress_generic(ctxvoid: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; - maxOutputSize: integer; compressionLevel: integer; limit: limitedOutput_directive): integer; -var - ctx: PLZ4HC_Data_Structure; - ip: pByte; - anchor: pByte; - iend: pByte; - mflimit: pByte; - matchlimit: pByte; - op: pByte; - oend: pByte; - maxNbAttempts: cardinal; - ml, ml2, ml3, ml0: integer; - ref: pByte; - start2: pByte; - ref2: pByte; - start3: pByte; - ref3: pByte; - start0: pByte; - ref0: pByte; - correction: integer; - new_ml: integer; - lastRun: integer; -label - _Search2, _Search3; -begin - ctx := ctxvoid; - ip := pByte(source); - anchor := ip; - iend := ip + inputSize; - mflimit := iend - _MFLIMIT; - matchlimit := (iend - LASTLITERALS); - op := pByte(dest); - oend := op + maxOutputSize; - ref := nil; - start2 := nil; - ref2 := nil; - start3 := nil; - ref3 := nil; - - // init - if compressionLevel > g_maxCompressionLevel then - compressionLevel := g_maxCompressionLevel; - if (compressionLevel < 1) then - compressionLevel := LZ4HC_compressionLevel_default; - maxNbAttempts := 1 shl (compressionLevel - 1); - inc(ctx._end, inputSize); - inc(ip); - - // Main Loop - while ip < mflimit do - begin - ml := LZ4HC_InsertAndFindBestMatch(ctx, ip, matchlimit, (@ref), maxNbAttempts); - if (ml = 0) then - begin - inc(ip); - continue; - end; - - // saved, in case we would skip too much - start0 := ip; - ref0 := ref; - ml0 := ml; - _Search2: - - if ip + ml < mflimit then - ml2 := LZ4HC_InsertAndGetWiderMatch(ctx, ip + ml - 2, ip + 1, matchlimit, ml, @ref2, @start2, maxNbAttempts) - else - ml2 := ml; - - if (ml2 = ml) then // No better match - begin - if LZ4HC_encodeSequence(@ip, @op, @anchor, ml, ref, limit, oend) > 0 then - exit(0); - continue; - end; - - if start0 < ip then - begin - if start2 < ip + ml0 then // empirical - begin - ip := start0; - ref := ref0; - ml := ml0; - end; - end; - - // Here, start0==ip - if ((start2 - ip) < 3) then // First Match too small : removed - begin - ml := ml2; - ip := start2; - ref := ref2; - goto _Search2; - end; - - _Search3: - - if (start2 - ip) < OPTIMAL_ML then - begin - new_ml := ml; - if new_ml > OPTIMAL_ML then - new_ml := OPTIMAL_ML; - if ip + new_ml > start2 + ml2 - MINMATCH then - new_ml := integer(start2 - ip) + ml2 - MINMATCH; - correction := new_ml - integer(start2 - ip); - if (correction > 0) then - begin - inc(start2, correction); - inc(ref2, correction); - dec(ml2, correction); - end; - end; - // Now, we have start2 = ip+new_ml, with new_ml = min(ml, OPTIMAL_ML=18) - - if start2 + ml2 < mflimit then - ml3 := LZ4HC_InsertAndGetWiderMatch(ctx, start2 + ml2 - 3, start2, matchlimit, ml2, @ref3, @start3, maxNbAttempts) - else - ml3 := ml2; - - if (ml3 = ml2) then // No better match : 2 sequences to encode - begin - // ip & ref are known; Now for ml - if start2 < ip + ml then - ml := integer(start2 - ip); - // Now, encode 2 sequences - if LZ4HC_encodeSequence(@ip, @op, @anchor, ml, ref, limit, oend) <> 0 then - exit(0); - ip := start2; - if LZ4HC_encodeSequence(@ip, @op, @anchor, ml2, ref2, limit, oend) <> 0 then - exit(0); - continue; - end; - - if start3 < ip + ml + 3 then // Not enough space for match 2 : remove it - begin - if start3 >= (ip + ml) then // can write Seq1 immediately ==> Seq2 is removed, so Seq3 becomes Seq1 - begin - if start2 < ip + ml then - begin - correction := integer(ip + ml - start2); - inc(start2, correction); - inc(ref2, correction); - dec(ml2, correction); - if ml2 < MINMATCH then - begin - start2 := start3; - ref2 := ref3; - ml2 := ml3; - end; - end; - if LZ4HC_encodeSequence(@ip, @op, @anchor, ml, ref, limit, oend) <> 0 then - exit(0); - ip := start3; - ref := ref3; - ml := ml3; - - start0 := start2; - ref0 := ref2; - ml0 := ml2; - goto _Search2; - end; - start2 := start3; - ref2 := ref3; - ml2 := ml3; - goto _Search3; - end; - - (* - * OK, now we have 3 ascending matches; let's write at least the first one - * ip & ref are known; Now for ml - *) - if start2 < ip + ml then - begin - if (start2 - ip) < integer(ML_MASK) then - begin - if ml > OPTIMAL_ML then - ml := OPTIMAL_ML; - if ip + ml > start2 + ml2 - MINMATCH then - ml := integer(start2 - ip) + ml2 - MINMATCH; - correction := ml - integer(start2 - ip); - if correction > 0 then - begin - inc(start2, correction); - inc(ref2, correction); - dec(ml2, correction); - end; - end - else - ml := integer(start2 - ip); - end; - if LZ4HC_encodeSequence(@ip, @op, @anchor, ml, ref, limit, oend) <> 0 then - exit(0); - - ip := start2; - ref := ref2; - ml := ml2; - - start2 := start3; - ref2 := ref3; - ml2 := ml3; - - goto _Search3; - end; - - lastRun := integer(iend - anchor); - if (limit <> noLimit) and ((op - pByte(dest)) + lastRun + 1 + ((lastRun + 255 - RUN_MASK) div 255) > maxOutputSize) then - exit(0); - if lastRun >= integer(RUN_MASK) then - begin - op^ := RUN_MASK shl ML_BITS; - inc(op); - dec(lastRun, RUN_MASK); - while lastRun > 254 do - begin - op^ := 255; - inc(op); - dec(lastRun, 255); - end; - op^ := byte(lastRun); - inc(op); - end - else - begin - op^ := byte(lastRun shl ML_BITS); - inc(op); - end; - move(anchor^, op^, iend - anchor); - inc(op, iend - anchor); - result := integer(op - pByte(dest)); -end; - -function LZ4_compressHC2(const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; compressionLevel: integer): integer; -var - ctx: LZ4HC_Data_Structure; -begin - fillchar(ctx, sizeof(LZ4HC_Data_Structure), 0); - LZ4HC_init(@ctx, pByte(source)); - result := LZ4HC_compress_generic(@ctx, source, dest, inputSize, 0, compressionLevel, noLimit); -end; - -function LZ4_compressHC(source: pAnsiChar; dest: pAnsiChar; inputSize: integer): integer; -begin - result := LZ4_compressHC2(source, dest, inputSize, 0); -end; - -function LZ4_compressHC_limitedOutput(const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; maxOutputSize: integer): integer; -begin - result := LZ4_compressHC2_limitedOutput(source, dest, inputSize, maxOutputSize, 0); -end; - -function LZ4_compressHC2_limitedOutput(const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; maxOutputSize: integer; - compressionLevel: integer): integer; -var - ctx: LZ4HC_Data_Structure; -begin - fillchar(ctx, sizeof(LZ4HC_Data_Structure), 0); - LZ4HC_init(@ctx, pByte(source)); - result := LZ4HC_compress_generic(@ctx, source, dest, inputSize, maxOutputSize, compressionLevel, limitedOutput); -end; - -function LZ4_compressHC_withStateHC(state: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer): integer; -begin - result := LZ4_compressHC2_withStateHC(state, source, dest, inputSize, 0); -end; - -function LZ4_compressHC2_withStateHC(state: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; - compressionLevel: integer): integer; -begin - if (size_t(state) and (sizeof(pointer) - 1)) <> 0 then - exit(0); // Error : : state is not aligned for pointers (32 or 64 bits) */ - LZ4HC_init(PLZ4HC_Data_Structure(state), pByte(source)); - result := LZ4HC_compress_generic(state, source, dest, inputSize, 0, compressionLevel, noLimit); -end; - -function LZ4_compressHC_limitedOutput_withStateHC(state: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; - maxOutputSize: integer): integer; -begin - result := LZ4_compressHC2_limitedOutput_withStateHC(state, source, dest, inputSize, maxOutputSize, 0); -end; - -function LZ4_compressHC2_limitedOutput_withStateHC(state: pointer; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer; - maxOutputSize: integer; compressionLevel: integer): integer; -begin - if (size_t(state) and (sizeof(pointer) - 1)) <> 0 then - exit(0); // Error : : state is not aligned for pointers (32 or 64 bits) */ - LZ4HC_init(PLZ4HC_Data_Structure(state), pByte(source)); - result := LZ4HC_compress_generic(state, source, dest, inputSize, maxOutputSize, compressionLevel, limitedOutput); -end; - -function LZ4_createHC(inputBuffer: pAnsiChar): pointer; -var - hc4: pointer; -begin - hc4 := allocmem(sizeof(LZ4HC_Data_Structure)); - LZ4HC_init(PLZ4HC_Data_Structure(hc4), pByte(inputBuffer)); - result := hc4; -end; - -procedure LZ4HC_setExternalDict(ctxPtr: PLZ4HC_Data_Structure; const newBlock: pByte); -begin - if ctxPtr._end >= ctxPtr.base + 4 then - LZ4HC_Insert(ctxPtr, ctxPtr._end - 3); // Referencing remaining dictionary content - // Only one memory segment for extDict, so any previous extDict is lost at this stage - ctxPtr.lowLimit := ctxPtr.dictLimit; - ctxPtr.dictLimit := cardinal(ctxPtr._end - ctxPtr.base); - ctxPtr.dictBase := ctxPtr.base; - ctxPtr.base := newBlock - ctxPtr.dictLimit; - ctxPtr._end := newBlock; - ctxPtr.nextToUpdate := ctxPtr.dictLimit; // match referencing will resume from there -end; - -function LZ4_compressHC_continue_generic(ctxPtr: PLZ4HC_Data_Structure; - const source: pAnsiChar; dest: pAnsiChar; - inputSize: integer; maxOutputSize: integer; limit: limitedOutput_directive): integer; -var - dictSize: size_t; - sourceEnd: pByte; - dictBegin: pByte; - dictEnd: pByte; -begin - // auto-init if forgotten - if (ctxPtr.base = Nil) then - LZ4HC_init(ctxPtr, pByte(source)); - - // Check overflow - if size_t(ctxPtr._end - ctxPtr.base) > 2147483648 then - begin - dictSize := size_t(ctxPtr._end - ctxPtr.base) - ctxPtr.dictLimit; - if (dictSize > 65536) then - dictSize := 65536; - LZ4_loadDictHC(PLZ4_streamHC_t(ctxPtr), pAnsiChar(ctxPtr._end) - dictSize, integer(dictSize)); - end; - - // Check if blocks follow each other - if (pByte(source) <> ctxPtr._end) then - LZ4HC_setExternalDict(ctxPtr, pByte(source)); - - // Check overlapping input/dictionary space - sourceEnd := pByte(source) + inputSize; - dictBegin := ctxPtr.dictBase + ctxPtr.lowLimit; - dictEnd := ctxPtr.dictBase + ctxPtr.dictLimit; - if (sourceEnd > dictBegin) and (pByte(source) < dictEnd) then - begin - if sourceEnd > dictEnd then - sourceEnd := dictEnd; - ctxPtr.lowLimit := cardinal(sourceEnd - ctxPtr.dictBase); - if ctxPtr.dictLimit - ctxPtr.lowLimit < 4 then - ctxPtr.lowLimit := ctxPtr.dictLimit; - end; - result := LZ4HC_compress_generic(ctxPtr, source, dest, inputSize, maxOutputSize, ctxPtr.compressionLevel, limit); -end; - -function LZ4_compressHC_continue(LZ4_streamHCPtr: PLZ4_streamHC_t; const source: pAnsiChar; dest: pAnsiChar; inputSize: integer): integer; -begin - result := LZ4_compressHC_continue_generic(PLZ4HC_Data_Structure(LZ4_streamHCPtr), source, dest, inputSize, 0, noLimit); -end; - -function LZ4_loadDictHC(LZ4_streamHCPtr: PLZ4_streamHC_t; dictionary: pAnsiChar; dictSize: integer): integer; -var - ctxPtr: PLZ4HC_Data_Structure; -begin - ctxPtr := PLZ4HC_Data_Structure(LZ4_streamHCPtr); - if dictSize > 65536 then - begin - inc(dictionary, dictSize - 65536); - dictSize := 65536; - end; - LZ4HC_init(ctxPtr, pByte(dictionary)); - if (dictSize >= 4) then - LZ4HC_Insert(ctxPtr, pByte(dictionary) + (dictSize - 3)); - ctxPtr._end := pByte(dictionary) + dictSize; - result := dictSize; -end; - -function LZ4_compressHC_limitedOutput_continue(LZ4_streamHCPtr: PLZ4_streamHC_t; const source: pAnsiChar; dest: pAnsiChar; - inputSize: integer; maxOutputSize: integer): integer; -begin - result := LZ4_compressHC_continue_generic(PLZ4HC_Data_Structure(LZ4_streamHCPtr), source, dest, inputSize, maxOutputSize, - limitedOutput); -end; - -procedure LZ4_resetStreamHC(LZ4_streamHCPtr: PLZ4_streamHC_t; compressionLevel: integer); -begin - PLZ4HC_Data_Structure(LZ4_streamHCPtr).base := Nil; - PLZ4HC_Data_Structure(LZ4_streamHCPtr).compressionLevel := cardinal(compressionLevel); -end; - -function LZ4_saveDictHC(LZ4_streamHCPtr: PLZ4_streamHC_t; safeBuffer: pAnsiChar; dictSize: integer): integer; -var - streamPtr: PLZ4HC_Data_Structure; - prefixSize: integer; - endIndex: cardinal; -begin - streamPtr := PLZ4HC_Data_Structure(LZ4_streamHCPtr); - prefixSize := integer((streamPtr._end - (streamPtr.base + streamPtr.dictLimit))); - if dictSize > 65536 then - dictSize := 65536; - if dictSize < 4 then - dictSize := 0; - if (dictSize > prefixSize) then - dictSize := prefixSize; - move((streamPtr._end - dictSize)^, safeBuffer^, dictSize); - endIndex := cardinal(streamPtr._end - streamPtr.base); - streamPtr._end := pByte(safeBuffer) + dictSize; - streamPtr.base := streamPtr._end - endIndex; - streamPtr.dictLimit := endIndex - cardinal(dictSize); - streamPtr.lowLimit := endIndex - cardinal(dictSize); - if streamPtr.nextToUpdate < streamPtr.dictLimit then - streamPtr.nextToUpdate := streamPtr.dictLimit; - result:=dictSize; -end; - -end. diff --git a/lib/xedit/lz4/lz4frame.pas b/lib/xedit/lz4/lz4frame.pas deleted file mode 100644 index 4ae433e..0000000 --- a/lib/xedit/lz4/lz4frame.pas +++ /dev/null @@ -1,1299 +0,0 @@ -(* - LZ4Delphi - Copyright (C) 2015, Jose Pascoa (atelierwebgm@gmail.com) - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - ************************************************************************* - LZ4 - Fast LZ compression algorithm - xxHash - Fast Hash algorithm - LZ4 source repository : http://code.google.com/p/lz4/ - xxHash source repository : http://code.google.com/p/xxhash/ - Copyright (c) 2011-2014, Yann Collet - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following disclaimer - in the documentation and/or other materials provided with the - distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - ****************************************************************************** -*) -unit lz4frame; -{$POINTERMATH ON} - -interface - -uses Windows, xxHash, lz4frame_static, lz4, lz4HC, lz4common; - -const - LZ4F_VERSION = 100; - LZ4F_MAGICNUMBER = $184D2204; - _1BIT = $01; - _2BITS = $03; - _3BITS = $07; - _4BITS = $0F; - _8BITS = $FF; - LZ4F_BLOCKUNCOMPRESSED_FLAG: cardinal = $80000000; - -type - LZ4F_errorCode_t = size_t; - PLZ4F_decompressionContext_t = pointer; - PLZ4F_compressionContext_t = pointer; - blockSizeID_t = (LZ4F_default = 0, max64KB = 4, max256KB = 5, max1MB = 6, max4MB = 7); - blockMode_t = (blockLinked = 0, blockIndependent); - contentChecksum_t = (noContentChecksum = 0, contentChecksumEnabled); - LZ4F_lastBlockStatus = (notDone, fromTmpBuffer, fromSrcBuffer); - - PLZ4F_frameInfo_t = ^LZ4F_frameInfo_t; - - LZ4F_frameInfo_t = record - blockSizeID: blockSizeID_t; - blockMode: blockMode_t; - contentChecksumFlag: contentChecksum_t; - reserved: array [0 .. 4] of cardinal; - end; - - PLZ4F_preferences_t = ^LZ4F_preferences_t; - - LZ4F_preferences_t = record - frameInfo: LZ4F_frameInfo_t; - compressionLevel: cardinal; - autoFlush: cardinal; - reserved: array [0 .. 3] of cardinal; - end; - - PLZ4F_compressOptions_t = ^LZ4F_compressOptions_t; - - LZ4F_compressOptions_t = record - stableSrc: cardinal; - reserved: array [0 .. 2] of cardinal; - end; - - PLZ4F_cctx_internal_t = ^LZ4F_cctx_internal_t; - - LZ4F_cctx_internal_t = record - prefs: LZ4F_preferences_t; - version: cardinal; - cStage: cardinal; - maxBlockSize: size_t; - maxBufferSize: size_t; - tmpBuff: pByte; - tmpIn: pByte; - tmpInSize: size_t; - xxh: XXH32_state_t; - lz4CtxPtr: pointer; - lz4CtxLevel: cardinal; - end; - - PLZ4F_dctx_internal_t = ^LZ4F_dctx_internal_t; - - LZ4F_dctx_internal_t = record - frameInfo: LZ4F_frameInfo_t; - version: cardinal; - dStage: cardinal; - maxBlockSize: size_t; - maxBufferSize: size_t; - srcExpect: pByte; - tmpIn: pByte; - tmpInSize: size_t; - tmpInTarget: size_t; - tmpOutBuffer: pByte; - dict: pByte; - dictSize: size_t; - tmpOut: pByte; - tmpOutSize: size_t; - tmpOutStart: size_t; - xxh: XXH32_state_t; - header: array [0 .. 7] of byte; - end; - - PLZ4F_decompressOptions_t = ^LZ4F_decompressOptions_t; - - LZ4F_decompressOptions_t = record - stableDst: cardinal; - reserved: array [0 .. 2] of cardinal; - end; - -const - LZ4F_BLOCKSIZEID_DEFAULT = max64KB; - LZ4F_MAXHEADERFRAME_SIZE = 7; - -function LZ4F_createDecompressionContext(var LZ4F_decompressionContextPtr: PLZ4F_compressionContext_t; versionNumber: cardinal) - : LZ4F_errorCode_t; -function LZ4F_isError(code: LZ4F_errorCode_t): boolean; -function LZ4F_compressFrame(dstBuffer: pointer; dstMaxSize: size_t; const srcBuffer: pointer; srcSize: size_t; - const preferencesPtr: PLZ4F_preferences_t): size_t; -function LZ4F_compressBound(srcSize: size_t; const preferencesPtr: PLZ4F_preferences_t): size_t; -function LZ4F_compressFrameBound(srcSize: size_t; const preferencesPtr: PLZ4F_preferences_t): size_t; -function LZ4F_compressBegin(compressionContext: PLZ4F_compressionContext_t; dstBuffer: pointer; dstMaxSize: size_t; - preferencesPtr: PLZ4F_preferences_t): size_t; -function LZ4F_compressUpdate(compressionContext: PLZ4F_compressionContext_t; dstBuffer: pointer; dstMaxSize: size_t; - const srcBuffer: pointer; srcSize: size_t; compressOptionsPtr: PLZ4F_compressOptions_t): size_t; -function LZ4F_compressEnd(compressionContext: PLZ4F_compressionContext_t; dstBuffer: pointer; dstMaxSize: size_t; - const compressOptionsPtr: PLZ4F_compressOptions_t): size_t; -function LZ4F_flush(compressionContext: PLZ4F_compressionContext_t; dstBuffer: pointer; dstMaxSize: size_t; - compressOptionsPtr: PLZ4F_compressOptions_t): size_t; -function LZ4F_decompress(decompressionContext: PLZ4F_decompressionContext_t; - dstBuffer: pointer; dstSizePtr: psize_t; const srcBuffer: pointer; srcSizePtr: psize_t; - decompressOptionsPtr: PLZ4F_decompressOptions_t): size_t; -function LZ4F_createCompressionContext(var LZ4F_compressionContextPtr: PLZ4F_compressionContext_t; version: cardinal): LZ4F_errorCode_t; -function LZ4F_freeCompressionContext(LZ4F_compressionContext: PLZ4F_compressionContext_t): LZ4F_errorCode_t; -function LZ4F_getFrameInfo(decompressionContext: PLZ4F_decompressionContext_t; frameInfoPtr: PLZ4F_frameInfo_t; const srcBuffer: pointer; - srcSizePtr: psize_t): LZ4F_errorCode_t; -function LZ4F_freeDecompressionContext(LZ4F_decompressionContext: PLZ4F_decompressionContext_t): LZ4F_errorCode_t; -function LZ4F_getErrorName(code : LZ4F_errorCode_t ): pAnsiChar; - -implementation - -var - minHClevel: cardinal = 3; - -type - dStage_t = (dstage_getHeader = 0, dstage_storeHeader, dstage_decodeHeader, - dstage_getCBlockSize, dstage_storeCBlockSize, dstage_decodeCBlockSize, - dstage_copyDirect, - dstage_getCBlock, dstage_storeCBlock, dstage_decodeCBlock, - dstage_decodeCBlock_intoDst, dstage_decodeCBlock_intoTmp, dstage_flushOut, - dstage_getSuffix, dstage_storeSuffix, dstage_checkSuffix); - -function LZ4F_getBlockSize(blockSizeID: cardinal): size_t; forward; - -function LZ4F_createDecompressionContext(var LZ4F_decompressionContextPtr: PLZ4F_compressionContext_t; versionNumber: cardinal) - : LZ4F_errorCode_t; -var - dctxPtr: PLZ4F_dctx_internal_t; -begin - dctxPtr := allocmem(sizeof(LZ4F_dctx_internal_t)); - if dctxPtr = nil then - exit(LZ4F_errorCode_t(-integer(ERROR_GENERIC))); - dctxPtr.version := versionNumber; - LZ4F_decompressionContextPtr := dctxPtr; - result := LZ4F_errorCode_t(OK_NoError); -end; - -function LZ4F_isError(code: LZ4F_errorCode_t): boolean; -begin - result := code > LZ4F_errorCode_t(-integer(ERROR_maxCode)); -end; - -function LZ4F_getErrorName(code : LZ4F_errorCode_t ): pAnsiChar; -begin - result:= 'Unspecified error code'; - if LZ4F_isError(code) then exit (pAnsiChar(LZ4F_errorStrings[-integer(code)])); -end; - -function LZ4F_compressFrameBound(srcSize: size_t; const preferencesPtr: PLZ4F_preferences_t): size_t; -var - prefs: LZ4F_preferences_t; - headerSize: size_t; - streamSize: size_t; - proposedBSID: blockSizeID_t; - maxBlockSize: size_t; -begin - fillchar(prefs, sizeof(LZ4F_preferences_t), 0); - if (preferencesPtr <> Nil) then - prefs := preferencesPtr^; - proposedBSID := max64KB; - maxBlockSize := 65536; - while (prefs.frameInfo.blockSizeID > proposedBSID) do - begin - if srcSize <= maxBlockSize then - begin - prefs.frameInfo.blockSizeID := proposedBSID; - break; - end; - inc(proposedBSID); - maxBlockSize := maxBlockSize shl 2; - end; - prefs.autoFlush := 1; - headerSize := 7; // basic header size (no option) including magic number - streamSize := LZ4F_compressBound(srcSize, @prefs); - result := headerSize + streamSize; -end; - -function LZ4F_compressFrame(dstBuffer: pointer; dstMaxSize: size_t; const srcBuffer: pointer; srcSize: size_t; - const preferencesPtr: PLZ4F_preferences_t): size_t; -var - cctxI: LZ4F_cctx_internal_t; - prefs: LZ4F_preferences_t; - options: LZ4F_compressOptions_t; - errorCode: LZ4F_errorCode_t; - dstStart: pByte; - dstPtr: pByte; - dstEnd: pByte; - proposedBSID: blockSizeID_t; - maxBlockSize: size_t; -begin - fillchar(cctxI, sizeof(LZ4F_cctx_internal_t), 0); - fillchar(prefs, sizeof(LZ4F_preferences_t), 0); - fillchar(options, sizeof(LZ4F_compressOptions_t), 0); - dstStart := pByte(dstBuffer); - dstPtr := dstStart; - dstEnd := dstStart + dstMaxSize; - cctxI.version := LZ4F_VERSION; - cctxI.maxBufferSize := 5 * 1048576; - if (preferencesPtr <> Nil) then - prefs := preferencesPtr^; - proposedBSID := max64KB; - maxBlockSize := 65536; - while (prefs.frameInfo.blockSizeID > proposedBSID) do - begin - if (srcSize <= maxBlockSize) then - begin - prefs.frameInfo.blockSizeID := proposedBSID; - break; - end; - inc(proposedBSID); - maxBlockSize := maxBlockSize shl 2; - end; - prefs.autoFlush := 1; - if (srcSize <= LZ4F_getBlockSize(cardinal(prefs.frameInfo.blockSizeID))) then - prefs.frameInfo.blockMode := blockIndependent; // no need for linked blocks - - options.stableSrc := 1; - - if (dstMaxSize < LZ4F_compressFrameBound(srcSize, @prefs)) then - exit(size_t(-integer(ERROR_dstMaxSize_tooSmall))); - - errorCode := LZ4F_compressBegin(@cctxI, dstBuffer, dstMaxSize, @prefs); // write header - if (LZ4F_isError(errorCode)) then - exit(errorCode); - inc(dstPtr, errorCode); // header size - - dec(dstMaxSize, errorCode); - errorCode := LZ4F_compressUpdate(@cctxI, dstPtr, dstMaxSize, srcBuffer, srcSize, @options); - if (LZ4F_isError(errorCode)) then - exit(errorCode); - inc(dstPtr, errorCode); - errorCode := LZ4F_compressEnd(@cctxI, dstPtr, dstEnd - dstPtr, @options); // flush last block, and generate suffix - if LZ4F_isError(errorCode) then - exit(errorCode); - inc(dstPtr, errorCode); - - freemem(cctxI.lz4CtxPtr); - - result := dstPtr - dstStart; -end; - -function LZ4F_getBlockSize(blockSizeID: cardinal): size_t; -const - blockSizes: array [0 .. 3] of size_t = (65536, 4 * 65536, 16 * 65536, 64 * 65536); -begin - if (blockSizeID = 0) then - blockSizeID := cardinal(LZ4F_BLOCKSIZEID_DEFAULT); - dec(blockSizeID, 4); - if (blockSizeID > 3) then - exit(size_t(-integer(ERROR_maxBlockSize_invalid))); - result := blockSizes[blockSizeID]; -end; - -function LZ4F_compressBound(srcSize: size_t; const preferencesPtr: PLZ4F_preferences_t): size_t; -var - prefsNull: LZ4F_preferences_t; - prefsPtr: PLZ4F_preferences_t; - bid: blockSizeID_t; - blockSize: size_t; - nbBlocks: cardinal; - lastBlockSize: size_t; - blockInfo: size_t; - frameEnd: size_t; -begin - fillchar(prefsNull, sizeof(LZ4F_preferences_t), 0); - if preferencesPtr = Nil then - prefsPtr := @prefsNull - else - prefsPtr := preferencesPtr; - bid := prefsPtr.frameInfo.blockSizeID; - blockSize := LZ4F_getBlockSize(cardinal(bid)); - nbBlocks := cardinal(srcSize div blockSize) + 1; - if prefsPtr.autoFlush <> 0 then - lastBlockSize := srcSize mod blockSize - else - lastBlockSize := blockSize; - blockInfo := 4; // default, without block CRC option - frameEnd := 4 + (cardinal(prefsPtr.frameInfo.contentChecksumFlag) * 4); - result := (blockInfo * nbBlocks) + (blockSize * (nbBlocks - 1)) + lastBlockSize + frameEnd; -end; - -procedure LZ4F_writeLE32(dstPtr: pByte; value32: cardinal); -begin - dstPtr[0] := byte(value32); - dstPtr[1] := byte(value32 shr 8); - dstPtr[2] := byte(value32 shr 16); - dstPtr[3] := byte(value32 shr 24); -end; - -function LZ4F_headerChecksum(const header: pByte; length: size_t): byte; -var - xxh: cardinal; -begin - xxh := XXH32(header, cardinal(length), 0); - result := byte(xxh shr 8); -end; - -function LZ4F_compressBegin(compressionContext: PLZ4F_compressionContext_t; dstBuffer: pointer; dstMaxSize: size_t; - preferencesPtr: PLZ4F_preferences_t): size_t; -var - prefNull: LZ4F_preferences_t; - cctxPtr: PLZ4F_cctx_internal_t; - dstStart: pByte; - dstPtr: pByte; - headerStart: pByte; - requiredBuffSize: size_t; - targetCtxLevel: cardinal; -begin - fillchar(prefNull, sizeof(LZ4F_preferences_t), 0); - cctxPtr := PLZ4F_cctx_internal_t(compressionContext); - dstStart := pByte(dstBuffer); - dstPtr := dstStart; - if (dstMaxSize < LZ4F_MAXHEADERFRAME_SIZE) then - exit(size_t(-integer(ERROR_dstMaxSize_tooSmall))); - if (cctxPtr.cStage <> 0) then - exit(size_t(-integer(ERROR_GENERIC))); - if (preferencesPtr = Nil) then - preferencesPtr := @prefNull; - cctxPtr.prefs := preferencesPtr^; - // ctx Management - if cctxPtr.prefs.compressionLevel < minHClevel then - targetCtxLevel := 1 - else - targetCtxLevel := 2; - if cctxPtr.lz4CtxLevel < targetCtxLevel then - begin - freemem(cctxPtr.lz4CtxPtr); - if (cctxPtr.prefs.compressionLevel < minHClevel) then - cctxPtr.lz4CtxPtr := LZ4_createStream() - else - cctxPtr.lz4CtxPtr := LZ4_createStreamHC(); - cctxPtr.lz4CtxLevel := targetCtxLevel; - end; - // Buffer Management - if cardinal(cctxPtr.prefs.frameInfo.blockSizeID) = 0 then - cctxPtr.prefs.frameInfo.blockSizeID := LZ4F_BLOCKSIZEID_DEFAULT; - cctxPtr.maxBlockSize := LZ4F_getBlockSize(cardinal(cctxPtr.prefs.frameInfo.blockSizeID)); - - requiredBuffSize := cctxPtr.maxBlockSize + (cardinal(cctxPtr.prefs.frameInfo.blockMode = blockLinked) * 131072); - if preferencesPtr.autoFlush <> 0 then - requiredBuffSize := cardinal(cctxPtr.prefs.frameInfo.blockMode = blockLinked) * 65536; // just needs dict - - if (cctxPtr.maxBufferSize < requiredBuffSize) then - begin - cctxPtr.maxBufferSize := requiredBuffSize; - freemem(cctxPtr.tmpBuff); - cctxPtr.tmpBuff := allocmem(requiredBuffSize); - if (cctxPtr.tmpBuff = Nil) then - exit(size_t(-integer(ERROR_allocation_failed))); - end; - cctxPtr.tmpIn := cctxPtr.tmpBuff; - cctxPtr.tmpInSize := 0; - XXH32_reset(@cctxPtr.xxh, 0); - if cctxPtr.prefs.compressionLevel < minHClevel then - LZ4_resetStream(PLZ4_stream_t(cctxPtr.lz4CtxPtr)) - else - LZ4_resetStreamHC(cctxPtr.lz4CtxPtr, cctxPtr.prefs.compressionLevel); - - // Magic Number - LZ4F_writeLE32(dstPtr, LZ4F_MAGICNUMBER); - inc(dstPtr, 4); - headerStart := dstPtr; - // FLG Byte - dstPtr^ := ((1 and _2BITS) shl 6) // Version('01') - + ((cardinal(cctxPtr.prefs.frameInfo.blockMode) and _1BIT) shl 5) // Block mode - + byte((cardinal(cctxPtr.prefs.frameInfo.contentChecksumFlag) and _1BIT) shl 2); // Stream checksum - - inc(dstPtr); - - // BD Byte - dstPtr^ := byte((cardinal(cctxPtr.prefs.frameInfo.blockSizeID) and _3BITS) shl 4); - inc(dstPtr); - - // *CRC Byte - dstPtr^ := LZ4F_headerChecksum(headerStart, 2); - inc(dstPtr); - cctxPtr.cStage := 1; // header written, wait for data block - result := dstPtr - dstStart; -end; - -type - compressFunc_t = function(ctx: pointer; const src: pAnsiChar; dst: pAnsiChar; srcSize: integer; dstSize: integer; - level: integer): integer; - -function LZ4F_localLZ4_compress_limitedOutput_withState(ctx: pointer; const src: pAnsiChar; dst: pAnsiChar; srcSize: integer; - dstSize: integer; level: integer): integer; -begin - result := LZ4_compress_limitedOutput_withState(ctx, src, dst, srcSize, dstSize); -end; - -function LZ4F_localLZ4_compress_limitedOutput_continue(ctx: pointer; const src: pAnsiChar; dst: pAnsiChar; srcSize: integer; - dstSize: integer; level: integer): integer; -begin - result := LZ4_compress_limitedOutput_continue(PLZ4_stream_t(ctx), src, dst, srcSize, dstSize); -end; - -function LZ4F_localLZ4_compressHC_limitedOutput_continue(ctx: pointer; const src: pAnsiChar; dst: pAnsiChar; srcSize: integer; - dstSize: integer; level: integer): integer; -begin - result := LZ4_compressHC_limitedOutput_continue(PLZ4_streamHC_t(ctx), src, dst, srcSize, dstSize); -end; - -function LZ4F_localSaveDict(cctxPtr: PLZ4F_cctx_internal_t): integer; -begin - if cctxPtr.prefs.compressionLevel < minHClevel then - result := LZ4_saveDict(PLZ4_stream_t(cctxPtr.lz4CtxPtr), pAnsiChar(cctxPtr.tmpBuff), 65536) - else - result := LZ4_saveDictHC(PLZ4_streamHC_t(cctxPtr.lz4CtxPtr), pAnsiChar(cctxPtr.tmpBuff), 65536); -end; - -function LZ4F_selectCompression(blockMode: blockMode_t; level: cardinal): compressFunc_t; -begin - if level < minHClevel then - begin - if (blockMode = blockIndependent) then - exit(@LZ4F_localLZ4_compress_limitedOutput_withState); - exit(@LZ4F_localLZ4_compress_limitedOutput_continue); - end; - if (blockMode = blockIndependent) then - exit(@LZ4_compressHC2_limitedOutput_withStateHC); - exit(@LZ4F_localLZ4_compressHC_limitedOutput_continue); -end; - -function LZ4F_compressBlock(dst: pointer; const src: pointer; srcSize: size_t; compress: compressFunc_t; lz4ctx: pointer; - level: integer): integer; -var - cSizePtr: pByte; - cSize: cardinal; -begin - cSizePtr := dst; - cSize := cardinal(compress(lz4ctx, src, pAnsiChar(cSizePtr + 4), integer(srcSize), integer(srcSize - 1), level)); - LZ4F_writeLE32(cSizePtr, cSize); - if (cSize = 0) then // compression failed - begin - cSize := srcSize; - LZ4F_writeLE32(cSizePtr, cSize + LZ4F_BLOCKUNCOMPRESSED_FLAG); - move(src^, (cSizePtr + 4)^, srcSize); - end; - result := cSize + 4; -end; - -function LZ4F_compressUpdate(compressionContext: PLZ4F_compressionContext_t; dstBuffer: pointer; dstMaxSize: size_t; - const srcBuffer: pointer; srcSize: size_t; compressOptionsPtr: PLZ4F_compressOptions_t): size_t; -var - cOptionsNull: LZ4F_compressOptions_t; - cctxPtr: PLZ4F_cctx_internal_t; - blockSize: size_t; - srcPtr: pByte; - srcEnd: pByte; - dstStart: pByte; - dstPtr: pByte; - lastBlockCompressed: LZ4F_lastBlockStatus; - compress: compressFunc_t; - sizeToCopy: size_t; - realDictSize: integer; -begin - fillchar(cOptionsNull, sizeof(LZ4F_compressOptions_t), 0); - cctxPtr := PLZ4F_cctx_internal_t(compressionContext); - blockSize := cctxPtr.maxBlockSize; - srcPtr := srcBuffer; - srcEnd := srcPtr + srcSize; - dstStart := dstBuffer; - dstPtr := dstStart; - lastBlockCompressed := notDone; - if cctxPtr.cStage <> 1 then - exit(size_t(-integer(ERROR_GENERIC))); - if dstMaxSize < LZ4F_compressBound(srcSize, @(cctxPtr.prefs)) then - exit(size_t(-integer(ERROR_dstMaxSize_tooSmall))); - if compressOptionsPtr = Nil then - compressOptionsPtr := @cOptionsNull; - // select compression function - compress := LZ4F_selectCompression(cctxPtr.prefs.frameInfo.blockMode, cctxPtr.prefs.compressionLevel); - // complete tmp buffer - if cctxPtr.tmpInSize > 0 then // some data already within tmp buffer - begin - sizeToCopy := blockSize - cctxPtr.tmpInSize; - if sizeToCopy > srcSize then - begin - // add src to tmpIn buffer - move(srcBuffer^, (cctxPtr.tmpIn + cctxPtr.tmpInSize)^, srcSize); - srcPtr := srcEnd; - inc(cctxPtr.tmpInSize, srcSize); - // still needs some CRC - end - else - begin - // complete tmpIn block and then compress it - lastBlockCompressed := fromTmpBuffer; - move(srcBuffer^, (cctxPtr.tmpIn + cctxPtr.tmpInSize)^, sizeToCopy); - inc(srcPtr, sizeToCopy); - inc(dstPtr, LZ4F_compressBlock(dstPtr, cctxPtr.tmpIn, blockSize, compress, cctxPtr.lz4CtxPtr, cctxPtr.prefs.compressionLevel)); - - if (cctxPtr.prefs.frameInfo.blockMode = blockLinked) then - inc(cctxPtr.tmpIn, blockSize); - cctxPtr.tmpInSize := 0; - end; - end; - while size_t(srcEnd - srcPtr) >= blockSize do - begin - // compress full block - lastBlockCompressed := fromSrcBuffer; - inc(dstPtr, LZ4F_compressBlock(dstPtr, srcPtr, blockSize, compress, cctxPtr.lz4CtxPtr, cctxPtr.prefs.compressionLevel)); - inc(srcPtr, blockSize); - end; - if ((cctxPtr.prefs.autoFlush <> 0) and (srcPtr < srcEnd)) then - begin - // compress remaining input < blockSize - lastBlockCompressed := fromSrcBuffer; - inc(dstPtr, LZ4F_compressBlock(dstPtr, srcPtr, srcEnd - srcPtr, compress, cctxPtr.lz4CtxPtr, cctxPtr.prefs.compressionLevel)); - srcPtr := srcEnd; - end; - - // preserve dictionary if necessary - if ((cctxPtr.prefs.frameInfo.blockMode = blockLinked) and (lastBlockCompressed = fromSrcBuffer)) then - begin - if compressOptionsPtr.stableSrc <> 0 then - cctxPtr.tmpIn := cctxPtr.tmpBuff - else - begin - realDictSize := LZ4F_localSaveDict(cctxPtr); - if (realDictSize = 0) then - exit(size_t(-integer(ERROR_GENERIC))); - cctxPtr.tmpIn := cctxPtr.tmpBuff + realDictSize; - end; - end; - // keep tmpIn within limits - if ((cctxPtr.tmpIn + blockSize) > (cctxPtr.tmpBuff + cctxPtr.maxBufferSize)) - // necessarily blockLinked && lastBlockCompressed==fromTmpBuffer - and (cctxPtr.prefs.autoFlush = 0) then - begin - LZ4F_localSaveDict(cctxPtr); - cctxPtr.tmpIn := cctxPtr.tmpBuff + 65536; - end; - // some input data left, necessarily < blockSize - if srcPtr < srcEnd then - begin - // fill tmp buffer - sizeToCopy := srcEnd - srcPtr; - move(srcPtr^, (cctxPtr.tmpIn)^, sizeToCopy); - cctxPtr.tmpInSize := sizeToCopy; - end; - if (cctxPtr.prefs.frameInfo.contentChecksumFlag = contentChecksumEnabled) then - XXH32_update(@(cctxPtr.xxh), srcBuffer, cardinal(srcSize)); - result := dstPtr - dstStart; -end; - -function LZ4F_flush(compressionContext: PLZ4F_compressionContext_t; dstBuffer: pointer; dstMaxSize: size_t; - compressOptionsPtr: PLZ4F_compressOptions_t): size_t; -var - cOptionsNull: LZ4F_compressOptions_t; - cctxPtr: PLZ4F_cctx_internal_t; - dstStart: pByte; - dstPtr: pByte; - compress: compressFunc_t; -begin - fillchar(cOptionsNull, sizeof(LZ4F_compressOptions_t), 0); - cctxPtr := PLZ4F_cctx_internal_t(compressionContext); - dstStart := pByte(dstBuffer); - dstPtr := dstStart; - if cctxPtr.tmpInSize = 0 then - exit(0); // nothing to flush - if cctxPtr.cStage <> 1 then - exit(size_t(-integer(ERROR_GENERIC))); - if (dstMaxSize < (cctxPtr.tmpInSize + 16)) then - exit(size_t(-integer(ERROR_dstMaxSize_tooSmall))); - (* Not used - if (compressOptionsPtr = Nil) then - compressOptionsPtr := @cOptionsNull; - *) - // select compression function - compress := LZ4F_selectCompression(cctxPtr.prefs.frameInfo.blockMode, cctxPtr.prefs.compressionLevel); - // compress tmp buffer - inc(dstPtr, LZ4F_compressBlock(dstPtr, cctxPtr.tmpIn, cctxPtr.tmpInSize, compress, cctxPtr.lz4CtxPtr, cctxPtr.prefs.compressionLevel)); - if (cctxPtr.prefs.frameInfo.blockMode = blockLinked) then - inc(cctxPtr.tmpIn, cctxPtr.tmpInSize); - cctxPtr.tmpInSize := 0; - // keep tmpIn within limits - if ((cctxPtr.tmpIn + cctxPtr.maxBlockSize) > (cctxPtr.tmpBuff + cctxPtr.maxBufferSize)) then // necessarily blockLinked - begin - LZ4F_localSaveDict(cctxPtr); - cctxPtr.tmpIn := cctxPtr.tmpBuff + 65536; - end; - result := dstPtr - dstStart; -end; - -function LZ4F_compressEnd(compressionContext: PLZ4F_compressionContext_t; dstBuffer: pointer; dstMaxSize: size_t; - const compressOptionsPtr: PLZ4F_compressOptions_t): size_t; -var - cctxPtr: PLZ4F_cctx_internal_t; - dstStart: pByte; - dstPtr: pByte; - errorCode: size_t; - xxh: cardinal; -begin - cctxPtr := PLZ4F_cctx_internal_t(compressionContext); - dstStart := pByte(dstBuffer); - dstPtr := dstStart; - errorCode := LZ4F_flush(compressionContext, dstBuffer, dstMaxSize, compressOptionsPtr); - if LZ4F_isError(errorCode) then - exit(errorCode); - inc(dstPtr, errorCode); - LZ4F_writeLE32(dstPtr, 0); - inc(dstPtr, 4); // endMark - if cctxPtr.prefs.frameInfo.contentChecksumFlag = contentChecksumEnabled then - begin - xxh := XXH32_digest(@(cctxPtr.xxh)); - LZ4F_writeLE32(dstPtr, xxh); - inc(dstPtr, 4); // content Checksum - end; - cctxPtr.cStage := 0; // state is now re-usable (with identical preferences) - - result := dstPtr - dstStart; -end; - -function LZ4F_readLE32(const srcPtr: pByte): cardinal; -var - value32: cardinal; -begin - value32 := srcPtr[0]; - inc(value32, (srcPtr[1] shl 8)); - inc(value32, (srcPtr[2] shl 16)); - inc(value32, (srcPtr[3] shl 24)); - result := value32; -end; - -function LZ4F_decodeHeader(dctxPtr: PLZ4F_dctx_internal_t; srcPtr: pByte; srcSize: size_t): size_t; -var - FLG, BD, HC: byte; - version, blockMode, blockChecksumFlag, contentSizeFlag, contentChecksumFlag, dictFlag, blockSizeID: cardinal; - bufferNeeded: size_t; -begin - // need to decode header to get frameInfo - if srcSize < 7 then - exit(size_t(-integer(ERROR_GENERIC))); // minimal header size - // control magic number - if (LZ4F_readLE32(srcPtr) <> LZ4F_MAGICNUMBER) then - exit(size_t(-integer(ERROR_GENERIC))); - inc(srcPtr, 4); - // Flags - FLG := srcPtr[0]; - version := (FLG shr 6) and _2BITS; - blockMode := (FLG shr 5) and _1BIT; - blockChecksumFlag := (FLG shr 4) and _1BIT; - contentSizeFlag := (FLG shr 3) and _1BIT; - contentChecksumFlag := (FLG shr 2) and _1BIT; - dictFlag := (FLG shr 0) and _1BIT; - BD := srcPtr[1]; - blockSizeID := (BD shr 4) and _3BITS; - // check - HC := LZ4F_headerChecksum(srcPtr, 2); - if (HC <> srcPtr[2]) then - exit(size_t(-integer(ERROR_GENERIC))); // Bad header checksum error - - // validate - if version <> 1 then - exit(size_t(-integer(ERROR_GENERIC))); // Version Number, only supported value - if blockChecksumFlag <> 0 then - exit(size_t(-integer(ERROR_GENERIC))); // Only supported value for the time being - if contentSizeFlag <> 0 then - exit(size_t(-integer(ERROR_GENERIC))); // Only supported value for the time being - if ((FLG shr 1) and _1BIT) <> 0 then - exit(size_t(-integer(ERROR_GENERIC))); - /// Reserved bit - if dictFlag <> 0 then - exit(size_t(-integer(ERROR_GENERIC))); // Only supported value for the time being - if (BD shr 7) and _1BIT <> 0 then - exit(size_t(-integer(ERROR_GENERIC))); - /// Reserved bit - if blockSizeID < 4 then - exit(size_t(-integer(ERROR_GENERIC))); // Only supported values for the time being - if (((BD shr 0) and _4BITS) <> 0) then - exit(size_t(-integer(ERROR_GENERIC))); // Reserved bits - // save - dctxPtr.frameInfo.blockMode := blockMode_t(blockMode); - dctxPtr.frameInfo.contentChecksumFlag := contentChecksum_t(contentChecksumFlag); - dctxPtr.frameInfo.blockSizeID := blockSizeID_t(blockSizeID); - dctxPtr.maxBlockSize := LZ4F_getBlockSize(blockSizeID); - - // init - if (contentChecksumFlag <> 0) then - XXH32_reset(@(dctxPtr.xxh), 0); - - // alloc - bufferNeeded := dctxPtr.maxBlockSize + size_t (integer(dctxPtr.frameInfo.blockMode = blockLinked) * 131072); - - if bufferNeeded > dctxPtr.maxBufferSize then // tmp buffers too small - begin - freemem(dctxPtr.tmpIn); - freemem(dctxPtr.tmpOutBuffer); - dctxPtr.maxBufferSize := bufferNeeded; - dctxPtr.tmpIn := allocmem(dctxPtr.maxBlockSize); - if dctxPtr.tmpIn = Nil then - exit(size_t(-integer(ERROR_GENERIC))); - dctxPtr.tmpOutBuffer := allocmem(dctxPtr.maxBufferSize); - if dctxPtr.tmpOutBuffer = Nil then - exit(size_t(-integer(ERROR_GENERIC))); - end; - dctxPtr.tmpInSize := 0; - dctxPtr.tmpInTarget := 0; - dctxPtr.dict := dctxPtr.tmpOutBuffer; - dctxPtr.dictSize := 0; - dctxPtr.tmpOut := dctxPtr.tmpOutBuffer; - dctxPtr.tmpOutStart := 0; - dctxPtr.tmpOutSize := 0; - - result := 7; -end; - -procedure LZ4F_updateDict(dctxPtr: PLZ4F_dctx_internal_t; const dstPtr: pByte; dstSize: size_t; const dstPtr0: pByte; withinTmp: cardinal); -var - preserveSize: size_t; - copySize: size_t; - oldDictEnd: pByte; -begin - if dctxPtr.dictSize = 0 then - dctxPtr.dict := pByte(dstPtr); // priority to dictionary continuity - - if dctxPtr.dict + dctxPtr.dictSize = dstPtr then // dictionary continuity - begin - inc(dctxPtr.dictSize, dstSize); - exit; - end; - - if size_t(dstPtr - dstPtr0) + dstSize >= 65536 then // dstBuffer large enough to become dictionary - begin - dctxPtr.dict := pByte(dstPtr0); - dctxPtr.dictSize := size_t(dstPtr - dstPtr0) + dstSize; - exit; - end; - - if ((withinTmp <> 0) and (dctxPtr.dict = dctxPtr.tmpOutBuffer)) then - begin - // assumption : dctxPtr->dict + dctxPtr->dictSize == dctxPtr->tmpOut + dctxPtr->tmpOutStart - inc(dctxPtr.dictSize, dstSize); - exit; - end; - - if withinTmp <> 0 then // copy relevant dict portion in front of tmpOut within tmpOutBuffer - begin - preserveSize := dctxPtr.tmpOut - dctxPtr.tmpOutBuffer; - copySize := 65536 - dctxPtr.tmpOutSize; - oldDictEnd := dctxPtr.dict + dctxPtr.dictSize - dctxPtr.tmpOutStart; - if dctxPtr.tmpOutSize > 65536 then - copySize := 0; - if copySize > preserveSize then - copySize := preserveSize; - - move((oldDictEnd - copySize)^, (dctxPtr.tmpOutBuffer + preserveSize - copySize)^, copySize); - - dctxPtr.dict := dctxPtr.tmpOutBuffer; - dctxPtr.dictSize := preserveSize + dctxPtr.tmpOutStart + dstSize; - exit; - end; - - if dctxPtr.dict = dctxPtr.tmpOutBuffer then // copy dst into tmp to complete dict - begin - if dctxPtr.dictSize + dstSize > dctxPtr.maxBufferSize then // tmp buffer not large enough - begin - preserveSize := 65536 - dstSize; // note : dstSize < 64 KB - move((dctxPtr.dict + dctxPtr.dictSize - preserveSize)^, (dctxPtr.dict)^, preserveSize); - dctxPtr.dictSize := preserveSize; - end; - move(dstPtr^, (dctxPtr.dict + dctxPtr.dictSize)^, dstSize); - inc(dctxPtr.dictSize, dstSize); - exit; - end; - // join dict & dest into tmp - - preserveSize := 65536 - dstSize; // note : dstSize < 64 KB - if preserveSize > dctxPtr.dictSize then - preserveSize := dctxPtr.dictSize; - move((dctxPtr.dict + dctxPtr.dictSize - preserveSize)^, dctxPtr.tmpOutBuffer^, preserveSize); - move(dstPtr^, (dctxPtr.tmpOutBuffer + preserveSize)^, dstSize); - dctxPtr.dict := dctxPtr.tmpOutBuffer; - dctxPtr.dictSize := preserveSize + dstSize; -end; - -function LZ4F_decompress_safe(const source: pAnsiChar; dest: pAnsiChar; compressedSize: integer; maxDecompressedSize: integer; - const dictStart: pAnsiChar; dictSize: integer): integer; -begin - result := LZ4_decompress_safe(source, dest, compressedSize, maxDecompressedSize); -end; - -function LZ4F_decompress(decompressionContext: PLZ4F_decompressionContext_t; - dstBuffer: pointer; dstSizePtr: psize_t; - const srcBuffer: pointer; srcSizePtr: psize_t; - decompressOptionsPtr: PLZ4F_decompressOptions_t): size_t; -type - Tdecoder = function(const c1: pAnsiChar; c2: pAnsiChar; c3: integer; c4: integer; const c5: pAnsiChar; c6: integer): integer; -var - dctxPtr: PLZ4F_dctx_internal_t; - optionsNull: LZ4F_decompressOptions_t; - srcStart: pByte; - srcEnd: pByte; - srcPtr: pByte; - dstStart: pByte; - dstEnd: pByte; - dstPtr: pByte; - selectedIn: pByte; - doAnotherStage: cardinal; - nextSrcSizeHint: size_t; - sizeToCopy: size_t; - errorCode: LZ4F_errorCode_t; - nextCBlockSize: size_t; - decodedSize: integer; - decoder: Tdecoder; - reservedDictSpace: size_t; - suffixSize: size_t; - readCRC: cardinal; - resultCRC: cardinal; - preserveSize: size_t; - copySize: size_t; - oldDictEnd: pByte; - newDictSize: size_t; -begin - dctxPtr := PLZ4F_dctx_internal_t(decompressionContext); - fillchar(optionsNull, sizeof(LZ4F_decompressOptions_t), 0); - srcStart := pByte(srcBuffer); - srcEnd := srcStart + srcSizePtr^; - srcPtr := srcStart; - dstStart := pByte(dstBuffer); - dstEnd := dstStart + dstSizePtr^; - dstPtr := dstStart; - selectedIn := Nil; - doAnotherStage := 1; - nextSrcSizeHint := 1; - - if decompressOptionsPtr = Nil then - decompressOptionsPtr := @optionsNull; - - srcSizePtr^ := 0; - dstSizePtr^ := 0; - - // expect to continue decoding src buffer where it left previously - if dctxPtr.srcExpect <> Nil then - begin - if (srcStart <> dctxPtr.srcExpect) then - exit(size_t(-integer(ERROR_GENERIC))); - end; - - // programmed as a state machine - - while (doAnotherStage <> 0) do - begin - case dctxPtr.dStage of - cardinal(dstage_getHeader): - begin - if srcEnd - srcPtr >= 7 then - begin - selectedIn := srcPtr; - inc(srcPtr, 7); - dctxPtr.dStage := cardinal(dstage_decodeHeader); - end - else - begin - dctxPtr.tmpInSize := 0; - dctxPtr.dStage := cardinal(dstage_storeHeader); - end; - end; - cardinal(dstage_storeHeader): - begin - sizeToCopy := 7 - dctxPtr.tmpInSize; - if sizeToCopy > size_t(srcEnd - srcPtr) then - sizeToCopy := srcEnd - srcPtr; - move(srcPtr^, (pByte(@dctxPtr.header) + dctxPtr.tmpInSize)^, sizeToCopy); - inc(dctxPtr.tmpInSize, sizeToCopy); - inc(srcPtr, sizeToCopy); - if (dctxPtr.tmpInSize < 7) then - begin - nextSrcSizeHint := (7 - dctxPtr.tmpInSize) + 4; - doAnotherStage := 0; // no enough src, wait to get some more - end - else - begin - selectedIn := @dctxPtr.header; - dctxPtr.dStage := cardinal(dstage_decodeHeader); - end; - end; - cardinal(dstage_decodeHeader): - begin - errorCode := LZ4F_decodeHeader(dctxPtr, selectedIn, 7); - if LZ4F_isError(errorCode) then - exit(errorCode); - dctxPtr.dStage := cardinal(dstage_getCBlockSize); - end; - cardinal(dstage_getCBlockSize): - begin - if (srcEnd - srcPtr) >= 4 then - begin - selectedIn := srcPtr; - inc(srcPtr, 4); - dctxPtr.dStage := cardinal(dstage_decodeCBlockSize); - end - else - begin - // not enough input to read cBlockSize field - dctxPtr.tmpInSize := 0; - dctxPtr.dStage := cardinal(dstage_storeCBlockSize); - end; - end; - cardinal(dstage_storeCBlockSize): - begin - sizeToCopy := 4 - dctxPtr.tmpInSize; - if sizeToCopy > size_t(srcEnd - srcPtr) then - sizeToCopy := srcEnd - srcPtr; - move(srcPtr^, (dctxPtr.tmpIn + dctxPtr.tmpInSize)^, sizeToCopy); - inc(srcPtr, sizeToCopy); - inc(dctxPtr.tmpInSize, sizeToCopy); - if dctxPtr.tmpInSize < 4 then // not enough input to get full cBlockSize; wait for more - begin - nextSrcSizeHint := 4 - dctxPtr.tmpInSize; - doAnotherStage := 0; - end - else - begin - selectedIn := dctxPtr.tmpIn; - dctxPtr.dStage := cardinal(dstage_decodeCBlockSize); - end; - end; - cardinal(dstage_decodeCBlockSize): - begin - nextCBlockSize := LZ4F_readLE32(selectedIn) and $7FFFFFFF; - if (nextCBlockSize = 0) then - dctxPtr.dStage := cardinal(dstage_getSuffix) - else - begin - if (nextCBlockSize > dctxPtr.maxBlockSize) then - exit(size_t(-integer(ERROR_GENERIC))); // invalid cBlockSize - dctxPtr.tmpInTarget := nextCBlockSize; - if (LZ4F_readLE32(selectedIn) and LZ4F_BLOCKUNCOMPRESSED_FLAG) <> 0 then - dctxPtr.dStage := cardinal(dstage_copyDirect) - else - begin - dctxPtr.dStage := cardinal(dstage_getCBlock); - if dstPtr = dstEnd then - begin - nextSrcSizeHint := nextCBlockSize + 4; - doAnotherStage := 0; - end; - end; - end; - end; - cardinal(dstage_copyDirect): // uncompressed block - begin - sizeToCopy := dctxPtr.tmpInTarget; - if size_t(srcEnd - srcPtr) < sizeToCopy then - sizeToCopy := srcEnd - srcPtr; // not enough input to read full block - if size_t(dstEnd - dstPtr) < sizeToCopy then - sizeToCopy := dstEnd - dstPtr; - move(srcPtr^, dstPtr^, sizeToCopy); - if (dctxPtr.frameInfo.contentChecksumFlag <> noContentChecksum) then - XXH32_update(@(dctxPtr.xxh), srcPtr, cardinal(sizeToCopy)); - // dictionary management - if (dctxPtr.frameInfo.blockMode = blockLinked) then - LZ4F_updateDict(dctxPtr, dstPtr, sizeToCopy, dstStart, 0); - inc(srcPtr, sizeToCopy); - inc(dstPtr, sizeToCopy); - if sizeToCopy = dctxPtr.tmpInTarget then // all copied - dctxPtr.dStage := cardinal(dstage_getCBlockSize) - else - begin - dec(dctxPtr.tmpInTarget, sizeToCopy); // still need to copy more - nextSrcSizeHint := dctxPtr.tmpInTarget + 4; - doAnotherStage := 0; - end; - end; - cardinal(dstage_getCBlock): - begin - if size_t(srcEnd - srcPtr) < dctxPtr.tmpInTarget then - begin - dctxPtr.tmpInSize := 0; - dctxPtr.dStage := cardinal(dstage_storeCBlock); - end - else - begin - selectedIn := srcPtr; - inc(srcPtr, dctxPtr.tmpInTarget); - dctxPtr.dStage := cardinal(dstage_decodeCBlock); - end; - end; - cardinal(dstage_storeCBlock): - begin - sizeToCopy := dctxPtr.tmpInTarget - dctxPtr.tmpInSize; - if sizeToCopy > size_t(srcEnd - srcPtr) then - sizeToCopy := srcEnd - srcPtr; - - move(srcPtr^, (dctxPtr.tmpIn + dctxPtr.tmpInSize)^, sizeToCopy); - inc(dctxPtr.tmpInSize, sizeToCopy); - inc(srcPtr, sizeToCopy); - if (dctxPtr.tmpInSize < dctxPtr.tmpInTarget) then // need more input - begin - nextSrcSizeHint := (dctxPtr.tmpInTarget - dctxPtr.tmpInSize) + 4; - doAnotherStage := 0; - end - else - begin - selectedIn := dctxPtr.tmpIn; - dctxPtr.dStage := cardinal(dstage_decodeCBlock); - end; - end; - cardinal(dstage_decodeCBlock): - begin - if (size_t(dstEnd - dstPtr) < dctxPtr.maxBlockSize) then // not enough place into dst : decode into tmpOut - dctxPtr.dStage := cardinal(dstage_decodeCBlock_intoTmp) - else - dctxPtr.dStage := cardinal(dstage_decodeCBlock_intoDst); - end; - - cardinal(dstage_decodeCBlock_intoDst): - begin - if (dctxPtr.frameInfo.blockMode = blockLinked) then - decoder := LZ4_decompress_safe_usingDict - else - decoder := LZ4F_decompress_safe; - - decodedSize := decoder(pAnsiChar(selectedIn), pAnsiChar(dstPtr), integer(dctxPtr.tmpInTarget), - integer(dctxPtr.maxBlockSize), pAnsiChar(dctxPtr.dict), integer(dctxPtr.dictSize)); - if (decodedSize < 0) then - exit(size_t(-integer(ERROR_GENERIC))); // decompression failed - if (dctxPtr.frameInfo.contentChecksumFlag <> noContentChecksum) then - XXH32_update(@(dctxPtr.xxh), dstPtr, decodedSize); - // dictionary management - if (dctxPtr.frameInfo.blockMode = blockLinked) then - LZ4F_updateDict(dctxPtr, dstPtr, decodedSize, dstStart, 0); - - inc(dstPtr, decodedSize); - dctxPtr.dStage := cardinal(dstage_getCBlockSize); - end; - cardinal(dstage_decodeCBlock_intoTmp): - begin - if (dctxPtr.frameInfo.blockMode = blockLinked) then - decoder := LZ4_decompress_safe_usingDict - else - decoder := LZ4F_decompress_safe; - // ensure enough place for tmpOut - if dctxPtr.frameInfo.blockMode = blockLinked then - begin - if (dctxPtr.dict = dctxPtr.tmpOutBuffer) then - begin - if (dctxPtr.dictSize > 131072) then - begin - move((dctxPtr.dict + dctxPtr.dictSize - 65536)^, dctxPtr.dict^, 65536); - dctxPtr.dictSize := 65536; - end; - dctxPtr.tmpOut := dctxPtr.dict + dctxPtr.dictSize; - end - else // dict not within tmp - begin - reservedDictSpace := dctxPtr.dictSize; - if (reservedDictSpace > 65536) then - reservedDictSpace := 65536; - dctxPtr.tmpOut := dctxPtr.tmpOutBuffer + reservedDictSpace; - end; - end; - // Decode - decodedSize := decoder(pAnsiChar(selectedIn), pAnsiChar(dctxPtr.tmpOut), integer(dctxPtr.tmpInTarget), - integer(dctxPtr.maxBlockSize), pAnsiChar(dctxPtr.dict), integer(dctxPtr.dictSize)); - if decodedSize < 0 then - exit(size_t(-integer(ERROR_decompressionFailed))); // decompression failed - if (dctxPtr.frameInfo.contentChecksumFlag <> noContentChecksum) then - XXH32_update(@(dctxPtr.xxh), dctxPtr.tmpOut, decodedSize); - dctxPtr.tmpOutSize := decodedSize; - dctxPtr.tmpOutStart := 0; - dctxPtr.dStage := cardinal(dstage_flushOut); - end; - cardinal(dstage_flushOut): // flush decoded data from tmpOut to dstBuffer - begin - sizeToCopy := dctxPtr.tmpOutSize - dctxPtr.tmpOutStart; - if (sizeToCopy > size_t(dstEnd - dstPtr)) then - sizeToCopy := dstEnd - dstPtr; - move((dctxPtr.tmpOut + dctxPtr.tmpOutStart)^, dstPtr^, sizeToCopy); - // dictionary management - if (dctxPtr.frameInfo.blockMode = blockLinked) then - LZ4F_updateDict(dctxPtr, dstPtr, sizeToCopy, dstStart, 1); - - inc(dctxPtr.tmpOutStart, sizeToCopy); - inc(dstPtr, sizeToCopy); - // end of flush ? - if (dctxPtr.tmpOutStart = dctxPtr.tmpOutSize) then - dctxPtr.dStage := cardinal(dstage_getCBlockSize) - else - begin - nextSrcSizeHint := 4; - doAnotherStage := 0; // still some data to flush - end; - end; - cardinal(dstage_getSuffix): - begin - suffixSize := cardinal(dctxPtr.frameInfo.contentChecksumFlag) * 4; - if (suffixSize = 0) then // frame completed - begin - nextSrcSizeHint := 0; - dctxPtr.dStage := cardinal(dstage_getHeader); - doAnotherStage := 0; - end - else - begin - if ((srcEnd - srcPtr) >= 4) then // CRC present - begin - selectedIn := srcPtr; - inc(srcPtr, 4); - dctxPtr.dStage := cardinal(dstage_checkSuffix); - end - else - begin - dctxPtr.tmpInSize := 0; - dctxPtr.dStage := cardinal(dstage_storeSuffix); - end; - end; - end; - cardinal(dstage_storeSuffix): - begin - sizeToCopy := 4 - dctxPtr.tmpInSize; - if (sizeToCopy > size_t(srcEnd - srcPtr)) then - sizeToCopy := srcEnd - srcPtr; - move(srcPtr^, (dctxPtr.tmpIn + dctxPtr.tmpInSize)^, sizeToCopy); - inc(srcPtr, sizeToCopy); - inc(dctxPtr.tmpInSize, sizeToCopy); - if (dctxPtr.tmpInSize < 4) then // not enough input to read complete suffix - begin - nextSrcSizeHint := 4 - dctxPtr.tmpInSize; - doAnotherStage := 0; - end - else - begin - selectedIn := dctxPtr.tmpIn; - dctxPtr.dStage := cardinal(dstage_checkSuffix); - end; - end; - cardinal(dstage_checkSuffix): - begin - readCRC := LZ4F_readLE32(selectedIn); - resultCRC := XXH32_digest(@(dctxPtr.xxh)); - if (readCRC <> resultCRC) then - exit(size_t(-integer(ERROR_checksum_invalid))); - nextSrcSizeHint := 0; - dctxPtr.dStage := cardinal(dstage_getHeader); - doAnotherStage := 0; - end; - end; - end; - // preserve dictionary within tmp if necessary - if (dctxPtr.frameInfo.blockMode = blockLinked) - and (dctxPtr.dict <> dctxPtr.tmpOutBuffer) - and (decompressOptionsPtr.stableDst = 0) - and (cardinal(dctxPtr.dStage - 1) < cardinal(cardinal(dstage_getSuffix) - 1)) then - begin - if dctxPtr.dStage = cardinal(dstage_flushOut) then - begin - preserveSize := dctxPtr.tmpOut - dctxPtr.tmpOutBuffer; - copySize := 65536 - dctxPtr.tmpOutSize; - oldDictEnd := dctxPtr.dict + dctxPtr.dictSize - dctxPtr.tmpOutStart; - if dctxPtr.tmpOutSize > 65536 then - copySize := 0; - if copySize > preserveSize then - copySize := preserveSize; - move((oldDictEnd - copySize)^, (dctxPtr.tmpOutBuffer + preserveSize - copySize)^, copySize); - - dctxPtr.dict := dctxPtr.tmpOutBuffer; - dctxPtr.dictSize := preserveSize + dctxPtr.tmpOutStart; - end - else - begin - newDictSize := dctxPtr.dictSize; - oldDictEnd := dctxPtr.dict + dctxPtr.dictSize; - if newDictSize > 65536 then - newDictSize := 65536; - - move((oldDictEnd - newDictSize)^, (dctxPtr.tmpOutBuffer)^, newDictSize); - - dctxPtr.dict := dctxPtr.tmpOutBuffer; - dctxPtr.dictSize := newDictSize; - dctxPtr.tmpOut := dctxPtr.tmpOutBuffer + newDictSize; - end; - end; - if (srcPtr < srcEnd) then // function must be called again with following source data - dctxPtr.srcExpect := srcPtr - else - dctxPtr.srcExpect := Nil; - srcSizePtr^ := (srcPtr - srcStart); - dstSizePtr^ := (dstPtr - dstStart); - result := nextSrcSizeHint; -end; - -function LZ4F_createCompressionContext(var LZ4F_compressionContextPtr: PLZ4F_compressionContext_t; version: cardinal): LZ4F_errorCode_t; -var - cctxPtr: PLZ4F_cctx_internal_t; -begin - cctxPtr := allocmem(sizeof(LZ4F_cctx_internal_t)); - if cctxPtr = Nil then - exit(LZ4F_errorCode_t(-integer(ERROR_allocation_failed))); - - cctxPtr.version := version; - cctxPtr.cStage := 0; // Next stage : write header - - LZ4F_compressionContextPtr := PLZ4F_compressionContext_t(cctxPtr); - result := cardinal(OK_NoError); -end; - -function LZ4F_freeCompressionContext(LZ4F_compressionContext: PLZ4F_compressionContext_t): LZ4F_errorCode_t; -var - cctxPtr: PLZ4F_cctx_internal_t; -begin - cctxPtr := PLZ4F_cctx_internal_t(LZ4F_compressionContext); - freemem(cctxPtr.lz4CtxPtr); - freemem(cctxPtr.tmpBuff); - freemem(LZ4F_compressionContext); - result := cardinal(OK_NoError); -end; - -function LZ4F_getFrameInfo(decompressionContext: PLZ4F_decompressionContext_t; frameInfoPtr: PLZ4F_frameInfo_t; const srcBuffer: pointer; - srcSizePtr: psize_t): LZ4F_errorCode_t; -var - dctxPtr: PLZ4F_dctx_internal_t; - errorCode: LZ4F_errorCode_t; -begin - dctxPtr := PLZ4F_dctx_internal_t(decompressionContext); - if dctxPtr.dStage = cardinal(dstage_getHeader) then - begin - errorCode := LZ4F_decodeHeader(dctxPtr, srcBuffer, srcSizePtr^); - if LZ4F_isError(errorCode) then - exit(errorCode); - srcSizePtr^ := errorCode; - frameInfoPtr^ := dctxPtr.frameInfo; - dctxPtr.srcExpect := Nil; - dctxPtr.dStage := cardinal(dstage_getCBlockSize); - exit(4); - end; - srcSizePtr^ := 0; - frameInfoPtr^ := dctxPtr.frameInfo; - result := 0; -end; - -function LZ4F_freeDecompressionContext(LZ4F_decompressionContext: PLZ4F_decompressionContext_t): LZ4F_errorCode_t; -var - dctxPtr: PLZ4F_dctx_internal_t; -begin - dctxPtr := PLZ4F_dctx_internal_t(LZ4F_decompressionContext); - freemem(dctxPtr.tmpIn); - freemem(dctxPtr.tmpOutBuffer); - freemem(dctxPtr); - result := cardinal(OK_NoError); -end; - -end. diff --git a/lib/xedit/lz4/lz4frame_static.pas b/lib/xedit/lz4/lz4frame_static.pas deleted file mode 100644 index 1259560..0000000 --- a/lib/xedit/lz4/lz4frame_static.pas +++ /dev/null @@ -1,81 +0,0 @@ -(* - LZ4Delphi - Copyright (C) 2015, Jose Pascoa (atelierwebgm@gmail.com) - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - ************************************************************************* - LZ4 - Fast LZ compression algorithm - xxHash - Fast Hash algorithm - LZ4 source repository : http://code.google.com/p/lz4/ - xxHash source repository : http://code.google.com/p/xxhash/ - Copyright (c) 2011-2014, Yann Collet - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following disclaimer - in the documentation and/or other materials provided with the - distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - ****************************************************************************** -*) - -unit lz4frame_static; -{$POINTERMATH ON} - -interface - -uses Windows; - -type - LZ4F_LIST_ERRORS = ( - OK_NoError = 0, - ERROR_GENERIC, - ERROR_maxBlockSize_invalid, - ERROR_blockMode_invalid, - ERROR_contentChecksumFlag_invalid, - ERROR_compressionLevel_invalid, - ERROR_allocation_failed, - ERROR_srcSize_tooLarge, - ERROR_dstMaxSize_tooSmall, - ERROR_decompressionFailed, - ERROR_checksum_invalid, - ERROR_maxCode); - -const - LZ4F_errorStrings : array[0..11] of AnsiString = - ( - 'OK_NoError', - 'ERROR_GENERIC', - 'ERROR_maxBlockSize_invalid', - 'ERROR_blockMode_invalid', - 'ERROR_contentChecksumFlag_invalid', - 'ERROR_compressionLevel_invalid', - 'ERROR_allocation_failed', - 'ERROR_srcSize_tooLarge', - 'ERROR_dstMaxSize_tooSmall', - 'ERROR_decompressionFailed', - 'ERROR_checksum_invalid', - 'ERROR_maxCode' - ); - -implementation - -end. diff --git a/lib/xedit/lz4/lz4io.pas b/lib/xedit/lz4/lz4io.pas deleted file mode 100644 index fcbd8f3..0000000 --- a/lib/xedit/lz4/lz4io.pas +++ /dev/null @@ -1,488 +0,0 @@ -(* - LZ4Delphi - Copyright (C) 2015, Jose Pascoa (atelierwebgm@gmail.com) - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - ************************************************************************* - LZ4 - Fast LZ compression algorithm - xxHash - Fast Hash algorithm - LZ4 source repository : http://code.google.com/p/lz4/ - xxHash source repository : http://code.google.com/p/xxhash/ - Copyright (c) 2011-2014, Yann Collet - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following disclaimer - in the documentation and/or other materials provided with the - distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - ****************************************************************************** -*) - - -unit lz4io; -{$POINTERMATH ON} - -interface - -uses Windows, Classes, SysUtils, Math, lz4frame_static, xxHash, lz4, lz4common, lz4frame, lz4HC; - - -const - LZ4_BLOCKSIZEID_DEFAULT = 7; - ENDOFSTREAM = uint64(-1); - LZ4S_MAGICNUMBER = $184D2204; - LZ4S_SKIPPABLE0 = $184D2A50; - LZ4S_SKIPPABLEMASK = $FFFFFFF0; - LEGACY_MAGICNUMBER = $184C2102; - MAGICNUMBER_SIZE = 4; - LEGACY_BLOCKSIZE = 8388608; - MIN_STREAM_BUFSIZE = 196608; - -var - lz4_overwrite_file: boolean = true; - globalblockSizeID: integer = LZ4_BLOCKSIZEID_DEFAULT; - blockIndependence: integer = 1; - streamChecksum: integer = 1; - -function LZ4IO_compressFilename_Legacy(input_filename: string; output_filename: string; compressionLevel: integer): integer; -function LZ4IO_compressFilename(input_filename: string; output_filename: string; compressionLevel: integer): integer; -function LZ4IO_decompressFilename(input_filename: string; output_filename: string): integer; -procedure lz4DecompressToUserBuf(const InBuf: Pointer; InBytes: Integer; - const OutBuf: Pointer; BufSize: Integer); - -implementation - -const - minBlockSizeID: integer = 4; - maxBlockSizeID: integer = 7; - -function reportError(err: string): integer; -begin - //LZ4Client.Memo.Lines.Add(err); - result := 0; -end; - -procedure LZ4IO_writeLE32(p: pointer; value32: cardinal); -var - dstPtr: pByte; -begin - dstPtr := p; - dstPtr[0] := byte(value32); - dstPtr[1] := byte(value32 shr 8); - dstPtr[2] := byte(value32 shr 16); - dstPtr[3] := byte(value32 shr 24); -end; - -function LZ4IO_compressFilename_Legacy(input_filename: string; output_filename: string; compressionLevel: integer): integer; -type - TCompressionFunction = - function(c1: pAnsiChar; c2: pAnsiChar; c3: integer): integer; -var - compressionFunction: TCompressionFunction; - filesize: uint64; - compressedfilesize: uint64; - in_buff: pAnsiChar; - out_buff: pAnsiChar; - fileIn: TFileSTream; - fileOut: TFileSTream; - sizeCheck: size_t; - outSize, inSize: cardinal; -begin - filesize := 0; - compressedfilesize := MAGICNUMBER_SIZE; - - if (compressionLevel < 3) then - compressionFunction := LZ4_compress - else - compressionFunction := LZ4_compressHC; - fileIn := TFileSTream.Create(input_filename, fmOpenRead); - fileOut := TFileSTream.Create(output_filename, fmCreate); - - in_buff := allocmem(LEGACY_BLOCKSIZE); - out_buff := allocmem(LZ4_compressBound(LEGACY_BLOCKSIZE)); - try - if (in_buff = nil) or (out_buff = nil) then - exit(reportError('Allocation error : not enough memory')); - LZ4IO_writeLE32(out_buff, LEGACY_MAGICNUMBER); - sizeCheck := fileOut.Write(out_buff^, MAGICNUMBER_SIZE); - if sizeCheck <> MAGICNUMBER_SIZE then - exit(reportError('Write error : cannot write header')); - while true do - begin - inSize := fileIn.Read(in_buff^, LEGACY_BLOCKSIZE); - if inSize <= 0 then - break; - inc(filesize, inSize); - outSize := compressionFunction(in_buff, out_buff + 4, inSize); - inc(compressedfilesize, outSize + 4); - LZ4IO_writeLE32(out_buff, outSize); - sizeCheck := fileOut.Write(out_buff^, outSize + 4); - if sizeCheck <> size_t(outSize + 4) then - exit(reportError('Write error : cannot write compressed block')); - end; - finally - if in_buff <> nil then - freemem(in_buff); - if out_buff <> nil then - freemem(out_buff); - fileIn.Free; - fileOut.Free; - result := 0; - end; -end; - -function LZ4IO_setBlockSizeID(bsid: integer): integer; -const - blockSizeTable: array [0 .. 3] of integer = (65536, 262144, 1048576, 4194304); -begin - if (bsid < minBlockSizeID) or (bsid > maxBlockSizeID) then - exit(-1); - globalblockSizeID := bsid; - result := blockSizeTable[globalblockSizeID - minBlockSizeID]; -end; - -function LZ4IO_compressFilename(input_filename: string; output_filename: string; compressionLevel: integer): integer; -var - filesize: uint64; - errorCode: LZ4F_errorCode_t; - ctx: PLZ4F_compressionContext_t; - blockSize: integer; - fileIn: TFileSTream; - fileOut: TFileSTream; - prefs: LZ4F_preferences_t; - in_buff: pAnsiChar; - out_buff: pAnsiChar; - outBuffSize: size_t; - headerSize: size_t; - sizeCheck: size_t; - readSize: size_t; - outSize: size_t; -begin - result := 0; - filesize := 0; - errorCode := LZ4F_createCompressionContext(ctx, LZ4F_VERSION); - if (LZ4F_isError(errorCode)) then - exit(reportError(format('Allocation error : can''t create LZ4F context: %s', [LZ4F_getErrorName(errorCode)]))); - fileIn := TFileSTream.Create(input_filename, fmOpenRead); - fileOut := TFileSTream.Create(output_filename, fmCreate); - blockSize := 1 shl (8 + 2 * globalblockSizeID); - fillchar(prefs, sizeof(LZ4F_preferences_t), 0); - - prefs.autoFlush := 1; - prefs.compressionLevel := compressionLevel; - prefs.frameInfo.blockMode := blockMode_t(blockIndependence); - prefs.frameInfo.blockSizeID := blockSizeID_t(globalblockSizeID); - prefs.frameInfo.contentChecksumFlag := contentChecksum_t(streamChecksum); - - // Allocate Memory - in_buff := allocmem(blockSize); - outBuffSize := LZ4F_compressBound(blockSize, @prefs); - out_buff := allocmem(outBuffSize); - try - if (in_buff = nil) or (out_buff = nil) then - exit(reportError('Allocation error : not enough memory')); - // Write Archive Header - headerSize := LZ4F_compressBegin(ctx, out_buff, outBuffSize, @prefs); - if (LZ4F_isError(headerSize)) then - exit(reportError(format('File header generation failed: %s', [LZ4F_getErrorName(errorCode)]))); - sizeCheck := fileOut.Write(out_buff^, headerSize); - if sizeCheck <> headerSize then - exit(reportError('Write error : cannot write header')); - - readSize := fileIn.Read(in_buff^, blockSize); - inc(filesize, readSize); - while readSize > 0 do - begin - outSize := LZ4F_compressUpdate(ctx, out_buff, outBuffSize, in_buff, readSize, Nil); - if (LZ4F_isError(outSize)) then - exit(reportError(format('Compression failed: %s', [LZ4F_getErrorName(errorCode)]))); - sizeCheck := fileOut.Write(out_buff^, outSize); - if sizeCheck <> outSize then - exit(reportError('Write error : cannot write compressed block')); - readSize := fileIn.Read(in_buff^, blockSize); - inc(filesize, readSize); - end; - // End of Stream mark - headerSize := LZ4F_compressEnd(ctx, out_buff, outBuffSize, Nil); - if LZ4F_isError(headerSize) then - exit(reportError(format('End of file generation failed: %s', [LZ4F_getErrorName(errorCode)]))); - sizeCheck := fileOut.Write(out_buff^, headerSize); - if sizeCheck <> headerSize then - exit(reportError('Write error : cannot write end of stream')); - errorCode := LZ4F_freeCompressionContext(ctx); - if LZ4F_isError(errorCode) then - exit(reportError(format('Error : can''t free LZ4F context resource: %s', [LZ4F_getErrorName(errorCode)]))); - finally - if in_buff <> nil then - freemem(in_buff); - if out_buff <> nil then - freemem(out_buff); - fileIn.Free;; - fileOut.Free; - end; -end; - -function LZ4IO_readLE32(s: pointer): cardinal; -var - srcPtr: pByte; - value32: cardinal; -begin - srcPtr := s; - value32 := srcPtr[0]; - inc(value32, (srcPtr[1] shl 8)); - inc(value32, (srcPtr[2] shl 16)); - inc(value32, (srcPtr[3] shl 24)); - result := value32; -end; - -function LZ4S_isSkippableMagicNumber(magic: cardinal): boolean; -begin - result := (magic and LZ4S_SKIPPABLEMASK) = LZ4S_SKIPPABLE0; -end; - -function decodeLZ4S(finput, foutput: TSTream): uint64; -const - HEADERMAX = 20; -var - filesize: uint64; - inBuff: pAnsiChar; - outBuff: pAnsiChar; - headerBuff: array [0 .. HEADERMAX - 1] of ansiChar; - sizeCheck, nextToRead, outBuffSize, inBuffSize: size_t; - ctx: PLZ4F_decompressionContext_t; - errorCode: LZ4F_errorCode_t; - frameInfo: LZ4F_frameInfo_t; - decodedBytes: size_t; -begin - filesize := 0; - errorCode := LZ4F_createDecompressionContext(ctx, LZ4F_VERSION); - if LZ4F_isError(errorCode) then - exit(reportError(format('Allocation error : can''t create context: %s', [LZ4F_getErrorName(errorCode)]))); - LZ4IO_writeLE32(@headerBuff, LZ4S_MAGICNUMBER); - outBuffSize := 0; - inBuffSize := 0; - sizeCheck := MAGICNUMBER_SIZE; - nextToRead := LZ4F_decompress(ctx, Nil, @outBuffSize, @headerBuff, @sizeCheck, Nil); - if LZ4F_isError(nextToRead) then - exit(reportError(format('Decompression error: %s', [LZ4F_getErrorName(errorCode)]))); - if nextToRead > HEADERMAX then - exit(reportError(format('Header too large (%d>%d)', [integer(nextToRead), HEADERMAX]))); - sizeCheck := finput.Read(headerBuff, nextToRead); - if sizeCheck <> nextToRead then - exit(reportError('Read error')); - nextToRead := LZ4F_decompress(ctx, Nil, @outBuffSize, @headerBuff, @sizeCheck, Nil); - errorCode := LZ4F_getFrameInfo(ctx, @frameInfo, Nil, @inBuffSize); - if LZ4F_isError(errorCode) then - exit(reportError(format('can''t decode frame header: %s', [LZ4F_getErrorName(errorCode)]))); - outBuffSize := LZ4IO_setBlockSizeID(integer(frameInfo.blockSizeID)); - inBuffSize := outBuffSize + 4; - inBuff := allocmem(inBuffSize); - outBuff := allocmem(outBuffSize); - try - if (inBuff = nil) or (outBuff = nil) then - exit(reportError('Allocation error : not enough memory')); - while (nextToRead <> 0) do - begin - decodedBytes := outBuffSize; - sizeCheck := finput.Read(inBuff^, nextToRead); - if sizeCheck <> nextToRead then - exit(reportError('Read error')); - errorCode := LZ4F_decompress(ctx, outBuff, @decodedBytes, inBuff, @sizeCheck, Nil); - if LZ4F_isError(errorCode) then - exit(reportError(format('Decompression error: %s', [LZ4F_getErrorName(errorCode)]))); - if sizeCheck <> nextToRead then - exit(reportError('Synchronization error')); - nextToRead := errorCode; - inc(filesize, decodedBytes); - sizeCheck := foutput.Write(outBuff^, decodedBytes); - if sizeCheck <> decodedBytes then - exit(reportError('Write error : cannot write decoded block')); - end; - errorCode := LZ4F_freeDecompressionContext(ctx); - if LZ4F_isError(errorCode) then - exit(reportError(format('Error : can''t free LZ4F context resource: %s', [LZ4F_getErrorName(errorCode)]))); - finally - if inBuff <> nil then - freemem(inBuff); - if outBuff <> nil then - freemem(outBuff); - result := filesize; - end; -end; - -function decodeLegacyStream(finput, foutput: TSTream): uint64; -var - filesize: uint64; - in_buff: pAnsiChar; - out_buff: pAnsiChar; - decodeSize: integer; - sizeCheck: size_t; - blockSize: cardinal; -begin - filesize := 0; - in_buff := allocmem(LZ4_compressBound(LEGACY_BLOCKSIZE)); - out_buff := allocmem(LEGACY_BLOCKSIZE); - try - if (in_buff = nil) or (out_buff = nil) then - exit(reportError('Allocation error : not enough memory')); - while true do - begin - sizeCheck := finput.Read(in_buff^, 4); - if sizeCheck = 0 then - break; - blockSize := LZ4IO_readLE32(in_buff); - if blockSize > LZ4_compressBound(LEGACY_BLOCKSIZE) then - begin - finput.Seek(-4, soFromCurrent); - break; - end; - sizeCheck := finput.Read(in_buff^, blockSize); - if sizeCheck <> blockSize then - exit(reportError('Error reading input file')); - decodeSize := LZ4_decompress_safe(in_buff, out_buff, blockSize, LEGACY_BLOCKSIZE); - if (decodeSize < 0) then - exit(reportError('Decoding Failed ! Corrupted input detected')); - inc(filesize, decodeSize); - sizeCheck := foutput.Write(out_buff^, decodeSize); - if sizeCheck <> size_t(decodeSize) then - exit(reportError('Write error : cannot write decoded block into output')); - end; - finally - if in_buff <> nil then - freemem(in_buff); - if out_buff <> nil then - freemem(out_buff); - result := filesize; - end; -end; - -function selectDecoder(finput, foutput: TSTream): uint64; -var - nbReadBytes: size_t; - U32Store: array [0 .. MAGICNUMBER_SIZE - 1] of byte; - magicNumber, Size: cardinal; - newPos: uint64; -begin - nbReadBytes := finput.Read(U32Store, MAGICNUMBER_SIZE); - if nbReadBytes = 0 then - exit(ENDOFSTREAM); - if nbReadBytes <> MAGICNUMBER_SIZE then - exit(reportError('Unrecognized header : Magic Number unreadable')); - magicNumber := LZ4IO_readLE32(@U32Store); - if LZ4S_isSkippableMagicNumber(magicNumber) then - magicNumber := LZ4S_SKIPPABLE0; - - case magicNumber of - LZ4S_MAGICNUMBER: result := decodeLZ4S(finput, foutput); - LEGACY_MAGICNUMBER: - begin - result := decodeLegacyStream(finput, foutput); - end; - LZ4S_SKIPPABLE0: - begin - nbReadBytes := finput.Read(U32Store, 4); - if (nbReadBytes <> 4) then - exit(reportError('Stream error : skippable size unreadable')); - Size := LZ4IO_readLE32(@U32Store); - newPos := finput.Seek(Size, soFromCurrent); - if newPos <> finput.Position then - exit(reportError('Stream error : cannot skip skippable area')); - result := selectDecoder(finput, foutput); - end; - else - begin - if finput.Position = MAGICNUMBER_SIZE then - exit(reportError('Unrecognized header : file cannot be decoded')); - reportError('Stream followed by unrecognized data'); - result := ENDOFSTREAM; - end; - end; -end; - -function LZ4IO_decompressFilename(input_filename: string; output_filename: string): integer; -var - fileIn: TFileSTream; - fileOut: TFileSTream; - decodedSize: int64; - filesize: int64; -begin - result := 0; - filesize := 0; - fileIn := TFileSTream.Create(input_filename, fmOpenRead); - fileOut := TFileSTream.Create(output_filename, fmCreate); - repeat - decodedSize := selectDecoder(fileIn, fileOut); - if decodedSize <> ENDOFSTREAM then - inc(filesize, decodedSize); - until decodedSize = ENDOFSTREAM; - fileIn.Free;; - fileOut.Free; -end; - -type - TPreallocatedMemoryStream = class(TCustomMemoryStream) - public - constructor Create(Ptr: Pointer; Size: Int64); - function Write(const Buffer; Count: Longint): Longint; override; - end; - -constructor TPreallocatedMemoryStream.Create(Ptr: Pointer; Size: Int64); -begin - inherited Create; - SetPointer(Ptr, Size); -end; - -function TPreallocatedMemoryStream.Write(const Buffer; Count: Integer): Longint; -begin - Result := Min(Count, Size-Position); - System.Move(Buffer, Pointer(PByte(Memory) + Position)^, Result); - Seek(Result, soCurrent); -end; - -procedure lz4DecompressToUserBuf(const InBuf: Pointer; InBytes: Integer; - const OutBuf: Pointer; BufSize: Integer); -var - stin, stout: TPreallocatedMemoryStream; - decodedSize: int64; - decompressedSize: int64; -begin - stin := TPreallocatedMemoryStream.Create(InBuf, InBytes); - stout := TPreallocatedMemoryStream.Create(OutBuf, BufSize); - try - decompressedSize := 0; - repeat - decodedSize := selectDecoder(stin, stout); - if decodedSize <> ENDOFSTREAM then - Inc(decompressedSize, decodedSize); - until decodedSize = ENDOFSTREAM; - - if decompressedSize <> BufSize then - Exception.Create('lz4 decompression size mismatch'); - - //Move(stout.Memory^, OutBuf^, BufSize); - finally - stin.Free; - stout.Free; - end; -end; - -end. diff --git a/lib/xedit/lz4/xxHash.pas b/lib/xedit/lz4/xxHash.pas deleted file mode 100644 index 2f17485..0000000 --- a/lib/xedit/lz4/xxHash.pas +++ /dev/null @@ -1,637 +0,0 @@ -(* - LZ4Delphi - Copyright (C) 2015, Jose Pascoa (atelierwebgm@gmail.com) - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - ************************************************************************* - LZ4 - Fast LZ compression algorithm - xxHash - Fast Hash algorithm - LZ4 source repository : http://code.google.com/p/lz4/ - xxHash source repository : http://code.google.com/p/xxhash/ - Copyright (c) 2011-2014, Yann Collet - BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) - - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are - met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following disclaimer - in the documentation and/or other materials provided with the - distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - ****************************************************************************** -*) - -unit xxHash; -{$POINTERMATH ON} - -interface - -uses Windows, lz4common; - -const - PRIME32_1: cardinal = 2654435761; - PRIME32_2: cardinal = 2246822519; - PRIME32_3: cardinal = 3266489917; - PRIME32_4: cardinal = 668265263; - PRIME32_5: cardinal = 374761393; - PRIME64_1: uint64 = 11400714785074694791; - PRIME64_2: uint64 = 14029467366897019727; - PRIME64_3: uint64 = 1609587929392839161; - PRIME64_4: uint64 = 9650029242287828579; - PRIME64_5: uint64 = 2870177450012600261; - -type - XXH_errorcode = (XXH_OK = 0, XXH_ERROR); - XXH_endianess = (XXH_bigEndian = 0, XXH_littleEndian = 1); - XXH_alignment = (XXH_aligned, XXH_unaligned); - - PXXH32_state_t = ^XXH32_state_t; - - XXH32_state_t = record - ll: array [0 .. 5] of int64; - end; - - PXXH_istate32_t = ^XXH_istate32_t; - - XXH_istate32_t = record - total_len: uint64; - seed: cardinal; - v1: cardinal; - v2: cardinal; - v3: cardinal; - v4: cardinal; - mem32: array [0 .. 3] of cardinal; - memsize: cardinal; - end; - - PXXH64_state_t = ^XXH64_state_t; - - XXH64_state_t = record - ll: array [0 .. 10] of int64; - end; - - PXXH_istate64_t = ^XXH_istate64_t; - - XXH_istate64_t = record - total_len: uint64; - seed: uint64; - v1: uint64; - v2: uint64; - v3: uint64; - v4: uint64; - mem64: array [0 .. 3] of uint64; - memsize: cardinal; - end; - -function XXH32(input: pointer; len: size_t; seed: cardinal): cardinal; - -function XXH32_reset(statePtr: PXXH32_state_t; seed: cardinal): XXH_errorcode; -function XXH32_update(statePtr: PXXH32_state_t; Ainput: pointer; ALength: size_t): XXH_errorcode; -function XXH32_digest(statePtr: PXXH32_state_t): cardinal; -function XXH32_createState: PXXH32_state_t; -procedure XXH32_freeState(statePtr: PXXH32_state_t); -// Obsolet in recent release -function XXH32_init(seed: cardinal): PXXH32_state_t; - -function XXH64_reset(statePtr: PXXH64_state_t; seed: uint64): XXH_errorcode; -function XXH64_update(statePtr: PXXH64_state_t; Ainput: pointer; ALength: size_t): XXH_errorcode; -function XXH64_digest(statePtr: PXXH64_state_t): uint64; -function XXH64_createState: PXXH64_state_t; -procedure XXH64_freeState(statePtr: PXXH64_state_t); -// Obsolet in recent release -function XXH64_init(seed: uint64): PXXH64_state_t; - -implementation - -type - PU32_S = ^U32_S; - - U32_S = packed record - v: cardinal; - end; - - PU64_S = ^U64_S; - - U64_S = packed record - v: uint64; - end; - -function XXH_rotl32(x, r: cardinal): cardinal; -asm - mov eax, x - mov ecx, r - rol eax, cl -end; - -(* Alternative -function XXH_rotl32(x, r: cardinal): cardinal; inline; -var - temp: cardinal; -begin - temp := x; - result := (x shl r) or (temp shr (32 - r)); -end; -*) -{$IFDEF CPUX64} - -function XXH_rotl64(x: uint64; r: cardinal): uint64; -asm - mov rax, x - mov ecx, r - rol rax, cl -end; -{$ELSE} - -function XXH_rotl64(x: uint64; r: cardinal): uint64; inline -var - temp: uint64; -begin - temp := x; - result := (x shl r) or (temp shr (64 - r)); -end; - -{$ENDIF} - -function A32(x: pointer): cardinal; inline; -begin - result := PU32_S(x).v; -end; - -function A64(x: pointer): uint64; inline; -begin - result := PU64_S(x).v; -end; - -function XXH_readLE32_align(ptr: pointer; endian: XXH_endianess; align: XXH_alignment): cardinal; inline; -begin - if align = XXH_unaligned then - result := A32(ptr) - else - result := pcardinal(ptr)^; -end; - -function XXH_readLE32(ptr: pointer): cardinal; inline; -begin - result := XXH_readLE32_align(ptr, XXH_littleEndian, XXH_unaligned); -end; - -function XXH_readLE64_align(ptr: pointer; endian: XXH_endianess; align: XXH_alignment): uint64; inline; -begin - if align = XXH_unaligned then - result := A64(ptr) - else - result := puint64(ptr)^; -end; - -function XXH_readLE64(ptr: pointer): uint64; inline; -begin - result := XXH_readLE64_align(ptr, XXH_littleEndian, XXH_unaligned); -end; - -function XXH32_reset(statePtr: PXXH32_state_t; seed: cardinal): XXH_errorcode; -var - state: PXXH_istate32_t; -begin - state := PXXH_istate32_t(statePtr); - state.seed := seed; - state.v1 := seed + PRIME32_1 + PRIME32_2; - state.v2 := seed + PRIME32_2; - state.v3 := seed + 0; - state.v4 := seed - PRIME32_1; - state.total_len := 0; - state.memsize := 0; - result := XXH_OK; -end; - -function XXH64_reset(statePtr: PXXH64_state_t; seed: uint64): XXH_errorcode; -var - state: PXXH_istate64_t; -begin - state := PXXH_istate64_t(statePtr); - state.seed := seed; - state.v1 := seed + PRIME64_1 + PRIME64_2; - state.v2 := seed + PRIME64_2; - state.v3 := seed + 0; - state.v4 := seed - PRIME64_1; - state.total_len := 0; - state.memsize := 0; - result := XXH_OK; -end; - -function XXH32_update(statePtr: PXXH32_state_t; Ainput: pointer; ALength: size_t): XXH_errorcode; -var - state: PXXH_istate32_t; - p: pByte; - bEnd: pByte; - p32: pcardinal; - limit: pByte; - v1, v2, v3, v4: cardinal; -begin - state := PXXH_istate32_t(statePtr); - p := Ainput; - bEnd := p + ALength; - inc(state.total_len, ALength); - - if (state.memsize + ALength < 16) then - begin - move(Ainput^, (pByte(@state.mem32) + state.memsize)^, ALength); - inc(state.memsize, cardinal(ALength)); - exit(XXH_OK); - end; - if state.memsize > 0 then - begin - move(Ainput^, (pByte(@state.mem32) + state.memsize)^, 16 - state.memsize); - p32 := @state.mem32; - inc(state.v1, XXH_readLE32(p32) * PRIME32_2); - state.v1 := XXH_rotl32(state.v1, 13); - state.v1 := state.v1 * PRIME32_1; - inc(p32); - inc(state.v2, XXH_readLE32(p32) * PRIME32_2); - state.v2 := XXH_rotl32(state.v2, 13); - state.v2 := state.v2 * PRIME32_1; - inc(p32); - inc(state.v3, XXH_readLE32(p32) * PRIME32_2); - state.v3 := XXH_rotl32(state.v3, 13); - state.v3 := state.v3 * PRIME32_1; - inc(p32); - inc(state.v4, XXH_readLE32(p32) * PRIME32_2); - state.v4 := XXH_rotl32(state.v4, 13); - state.v4 := state.v4 * PRIME32_1; -// inc(p32); - inc(p, 16 - state.memsize); - state.memsize := 0; - end; - - if p <= (bEnd - 16) then - begin - limit := bEnd - 16; - v1 := state.v1; - v2 := state.v2; - v3 := state.v3; - v4 := state.v4; - repeat - inc(v1, XXH_readLE32(p) * PRIME32_2); - v1 := XXH_rotl32(v1, 13); - v1 := v1 * PRIME32_1; - inc(p, 4); - inc(v2, XXH_readLE32(p) * PRIME32_2); - v2 := XXH_rotl32(v2, 13); - v2 := v2 * PRIME32_1; - inc(p, 4); - inc(v3, XXH_readLE32(p) * PRIME32_2); - v3 := XXH_rotl32(v3, 13); - v3 := v3 * PRIME32_1; - inc(p, 4); - inc(v4, XXH_readLE32(p) * PRIME32_2); - v4 := XXH_rotl32(v4, 13); - v4 := v4 * PRIME32_1; - inc(p, 4); - until p > limit; - state.v1 := v1; - state.v2 := v2; - state.v3 := v3; - state.v4 := v4; - end; - - if p < bEnd then - begin - move(p^, state.mem32, bEnd - p); - state.memsize := integer(bEnd - p); - end; - result := XXH_OK; -end; - -function XXH64_update(statePtr: PXXH64_state_t; Ainput: pointer; ALength: size_t): XXH_errorcode; -var - state: PXXH_istate64_t; - p: pByte; - bEnd: pByte; - p64: puint64; - limit: pByte; - v1, v2, v3, v4: uint64; -begin - state := PXXH_istate64_t(statePtr); - p := Ainput; - bEnd := p + ALength; - inc(state.total_len, ALength); - - if (state.memsize + ALength < 32) then - begin - move(Ainput^, (pByte(@state.mem64) + state.memsize)^, ALength); - inc(state.memsize, cardinal(ALength)); - exit(XXH_OK); - end; - - if state.memsize > 0 then - begin - move(Ainput^, (pByte(@state.mem64) + state.memsize)^, 32 - state.memsize); - p64 := @state.mem64; - inc(state.v1, XXH_readLE64(p64) * PRIME64_2); - state.v1 := XXH_rotl64(state.v1, 31); - state.v1 := state.v1 * PRIME64_1; - inc(p64); - inc(state.v2, XXH_readLE64(p64) * PRIME64_2); - state.v2 := XXH_rotl64(state.v2, 31); - state.v2 := state.v2 * PRIME64_1; - inc(p64); - inc(state.v3, XXH_readLE64(p64) * PRIME64_2); - state.v3 := XXH_rotl64(state.v3, 31); - state.v3 := state.v3 * PRIME64_1; - inc(p64); - inc(state.v4, XXH_readLE64(p64) * PRIME64_2); - state.v4 := XXH_rotl64(state.v4, 31); - state.v4 := state.v4 * PRIME64_1; - inc(p, 32 - state.memsize); - state.memsize := 0; - end; - - if (p + 32) <= bEnd then - begin - limit := bEnd - 32; - v1 := state.v1; - v2 := state.v2; - v3 := state.v3; - v4 := state.v4; - repeat - inc(v1, XXH_readLE64(p) * PRIME64_2); - v1 := XXH_rotl64(v1, 31); - v1 := v1 * PRIME64_1; - inc(p, 8); - inc(v2, XXH_readLE64(p) * PRIME64_2); - v2 := XXH_rotl64(v2, 31); - v2 := v2 * PRIME64_1; - inc(p, 8); - inc(v3, XXH_readLE64(p) * PRIME64_2); - v3 := XXH_rotl64(v3, 31); - v3 := v3 * PRIME64_1; - inc(p, 8); - inc(v4, XXH_readLE64(p) * PRIME64_2); - v4 := XXH_rotl64(v4, 31); - v4 := v4 * PRIME64_1; - inc(p, 8); - until p > limit; - state.v1 := v1; - state.v2 := v2; - state.v3 := v3; - state.v4 := v4; - end; - - if p < bEnd then - begin - move(p^, state.mem64, bEnd - p); - state.memsize := integer(bEnd - p); - end; - result := XXH_OK; -end; - -function XXH32_digest(statePtr: PXXH32_state_t): cardinal; -var - state: PXXH_istate32_t; - p: pByte; - bEnd: pByte; - h32: cardinal; -begin - state := PXXH_istate32_t(statePtr); - p := @state.mem32; - bEnd := pByte(@state.mem32) + state.memsize; - - if (state.total_len >= 16) then - h32 := XXH_rotl32(state.v1, 1) + XXH_rotl32(state.v2, 7) + XXH_rotl32(state.v3, 12) + XXH_rotl32(state.v4, 18) - else - h32 := state.seed + PRIME32_5; - - inc(h32, state.total_len); - - while (p + 4) <= bEnd do - begin - inc(h32, XXH_readLE32(p) * PRIME32_3); - h32 := XXH_rotl32(h32, 17) * PRIME32_4; - inc(p, 4); - end; - - while p < bEnd do - begin - inc(h32, p^ * PRIME32_5); - h32 := XXH_rotl32(h32, 11) * PRIME32_1; - inc(p); - end; - h32 := h32 xor (h32 shr 15); - h32 := h32 * PRIME32_2; - h32 := h32 xor (h32 shr 13); - h32 := h32 * PRIME32_3; - h32 := h32 xor (h32 shr 16); - result := h32; -end; - -function XXH64_digest(statePtr: PXXH64_state_t): uint64; -var - state: PXXH_istate64_t; - p: pByte; - bEnd: pByte; - h64: uint64; - v1, v2, v3, v4: uint64; - k1: uint64; -begin - state := PXXH_istate64_t(statePtr); - p := @state.mem64; - bEnd := pByte(@state.mem64) + state.memsize; - - if state.total_len >= 32 then - begin - v1 := state.v1; - v2 := state.v2; - v3 := state.v3; - v4 := state.v4; - h64 := XXH_rotl64(v1, 1) + XXH_rotl64(v2, 7) + XXH_rotl64(v3, 12) + XXH_rotl64(v4, 18); - v1 := v1 * PRIME64_2; - v1 := XXH_rotl64(v1, 31); - v1 := v1 * PRIME64_1; - h64 := h64 xor v1; - h64 := h64 * PRIME64_1 + PRIME64_4; - - v2 := v2 * PRIME64_2; - v2 := XXH_rotl64(v2, 31); - v2 := v2 * PRIME64_1; - h64 := h64 xor v2; - h64 := h64 * PRIME64_1 + PRIME64_4; - - v3 := v3 * PRIME64_2; - v3 := XXH_rotl64(v3, 31); - v3 := v3 * PRIME64_1; - h64 := h64 xor v3; - h64 := h64 * PRIME64_1 + PRIME64_4; - - v4 := v4 * PRIME64_2; - v4 := XXH_rotl64(v4, 31); - v4 := v4 * PRIME64_1; - h64 := h64 xor v4; - h64 := h64 * PRIME64_1 + PRIME64_4; - end - else - h64 := state.seed + PRIME64_5; - inc(h64, state.total_len); - - while (p + 8) <= bEnd do - begin - k1 := XXH_readLE64(p); - k1 := k1 * PRIME64_2; - k1 := XXH_rotl64(k1, 31); - k1 := k1 * PRIME64_1; - h64 := h64 xor k1; - h64 := XXH_rotl64(h64, 27) * PRIME64_1 + PRIME64_4; - inc(p, 8); - end; - if (p + 4) <= bEnd then - begin - h64 := h64 xor (uint64(XXH_readLE32(p)) * PRIME64_1); - h64 := XXH_rotl64(h64, 23) * PRIME64_2 + PRIME64_3; - inc(p, 4); - end; - - while (p < bEnd) do - begin - h64 := h64 xor (p^ * PRIME64_5); - h64 := XXH_rotl64(h64, 11) * PRIME64_1; - inc(p); - end; - - h64 := h64 xor (h64 shr 33); - h64 := h64 * PRIME64_2; - h64 := h64 xor (h64 shr 29); - h64 := h64 * PRIME64_3; - h64 := h64 xor (h64 shr 32); - - result := h64; -end; - -function XXH32_createState: PXXH32_state_t; -begin - result := allocmem(sizeof(XXH32_state_t)); -end; - -function XXH64_createState: PXXH64_state_t; -begin - result := allocmem(sizeof(XXH64_state_t)); -end; - -procedure XXH32_freeState(statePtr: PXXH32_state_t); -begin - freemem(statePtr); -end; - -procedure XXH64_freeState(statePtr: PXXH64_state_t); -begin - freemem(statePtr); -end; - -function XXH32_init(seed: cardinal): PXXH32_state_t; -begin - result := XXH32_createState; - XXH32_reset(result, seed); -end; - -function XXH64_init(seed: uint64): PXXH64_state_t; -begin - result := XXH64_createState; - XXH64_reset(result, seed); -end; - -function XXH32_endian_align(input: pointer; len: size_t; seed: cardinal; endian: XXH_endianess; align: XXH_alignment): cardinal; - function XXH_get32bits(p: pByte): cardinal; - begin - result := XXH_readLE32_align(p, endian, align); - end; - -var - p: pByte; - bEnd: pByte; - h32: cardinal; - limit: pByte; - v1, v2, v3, v4: cardinal; -begin - p := input; - bEnd := p + len; - if (len >= 16) then - begin - limit := bEnd - 16; - v1 := seed + PRIME32_1 + PRIME32_2; - v2 := seed + PRIME32_2; - v3 := seed + 0; - v4 := seed - PRIME32_1; - while true do - begin - inc(v1, XXH_get32bits(p) * PRIME32_2); - v1 := XXH_rotl32(v1, 13); - v1 := v1 * PRIME32_1; - inc(p, 4); - - inc(v2, XXH_get32bits(p) * PRIME32_2); - v2 := XXH_rotl32(v2, 13); - v2 := v2 * PRIME32_1; - inc(p, 4); - - inc(v3, XXH_get32bits(p) * PRIME32_2); - v3 := XXH_rotl32(v3, 13); - v3 := v3 * PRIME32_1; - inc(p, 4); - - inc(v4, XXH_get32bits(p) * PRIME32_2); - v4 := XXH_rotl32(v4, 13); - v4 := v4 * PRIME32_1; - inc(p, 4); - if p > limit then - break; - end; - h32 := XXH_rotl32(v1, 1) + XXH_rotl32(v2, 7) + XXH_rotl32(v3, 12) + XXH_rotl32(v4, 18); - end - else - h32 := seed + PRIME32_5; - - inc(h32, cardinal(len)); - while (p + 4 <= bEnd) do - begin - inc(h32, XXH_get32bits(p) * PRIME32_3); - h32 := XXH_rotl32(h32, 17) * PRIME32_4; - inc(p, 4); - end; - - while (p < bEnd) do - begin - inc(h32, p^ * PRIME32_5); - h32 := XXH_rotl32(h32, 11) * PRIME32_1; - inc(p); - end; - - h32 := h32 xor (h32 shr 15); - h32 := h32 * PRIME32_2; - h32 := h32 xor (h32 shr 13); - h32 := h32 * PRIME32_3; - h32 := h32 xor (h32 shr 16); - - result := h32; -end; - -function XXH32(input: pointer; len: size_t; seed: cardinal): cardinal; -begin - result := XXH32_endian_align(input, len, seed, XXH_littleEndian, XXH_unaligned); -end; - -end. - diff --git a/lib/xedit/wbBSA.pas b/lib/xedit/wbBSA.pas deleted file mode 100644 index 7a2e5af..0000000 --- a/lib/xedit/wbBSA.pas +++ /dev/null @@ -1,974 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} - -unit wbBSA; - -{$I wbDefines.inc} - -interface - -uses - Classes, SysUtils, IOUtils, - wbInterface, - ImagingDds; - -function wbCreateContainerHandler: IwbContainerHandler; - -implementation - -uses - wbStreams, - zlibEx, - lz4io; - -const - { https://github.com/Ethatron/bsaopt/blob/master/io/bsa.C } - BSAHEADER_VERSION_OB = $67; // Oblivion - BSAHEADER_VERSION_SK = $68; // Fallout3, Skyrim - BSAHEADER_VERSION_SSE = $69; // Skyrim Special Edition - BSAARCHIVE_COMPRESSFILES = $0004; // Whether the files are compressed in archive (invert file's compression flag) - BSAARCHIVE_PREFIXFULLFILENAMES = $0100; // Whether the name is prefixed to the data? - BSAFILE_COMPRESS = $40000000; // Whether the file is compressed - { https://github.com/jonwd7/bae/blob/master/src/bsa.h } - BA2HEADER_VERSION_FO4 = $01; // Fallout 4 - -type - TwbContainerHandler = class(TInterfacedObject, IwbContainerHandler) - private - chContainers: array of IwbResourceContainer; - protected - procedure AddContainer(const aContainer: IwbResourceContainer); - - {---IwbContainerHandler---} - procedure AddFolder(const aPath: string); - procedure AddBSA(const aFileName: string); - procedure AddBA2(const aFileName: string); - - function OpenResource(const aFileName: string): TDynResources; - function OpenResourceData(const aContainerName, aFileName: string): TBytes; - function ContainerExists(aContainerName: string): Boolean; - procedure ContainerList(const aList: TStrings); - procedure ContainerResourceList(const aContainerName: string; const aList: TStrings; - const aFolder: string = ''); - function ResourceExists(const aFileName: string): Boolean; - function ResolveHash(const aHash: Int64): TDynStrings; - function ResourceCount(const aFileName: string; aContainers: TStrings = nil): Integer; - procedure ResourceCopy(const aContainerName, aFileName, aPathOut: string); - end; - - TwbBSAFileRec = record - Name : string; - Hash : Int64; - Size : Cardinal; - Offset : Cardinal; - end; - - TwbBSAFolderRec = record - Name : string; - Hash : Int64; - Files : array of TwbBSAFileRec; - Map : TStringList; - end; - - IwbBSAFileInternal = interface(IwbBSAFile) - ['{A360B348-8F6B-4FC1-A869-9D5B833DCA5F}'] - function GetData(aOffset, aSize: Cardinal): TBytes; - end; - - TwbBSAFile = class(TInterfacedObject, IwbResourceContainer, IwbBSAFile, IwbBSAFileInternal) - private - bfStream : TwbReadOnlyCachedFileStream; - bfFileName : string; - bfVersion : Cardinal; - bfOffset : Cardinal; - bfFlags : Cardinal; - bfFileFlags : Cardinal; - bfFolders : array of TwbBSAFolderRec; - bfFolderMap : TStringList; - - procedure ReadDirectory; - protected - {---IwbResourceContainer---} - function GetName: string; - function OpenResource(const aFileName: string): IwbResource; - function ResourceExists(const aFileName: string): Boolean; - procedure ResourceList(const aList: TStrings; const aFolder: string = ''); - procedure ResolveHash(const aHash: Int64; var Results: TDynStrings); - - {---IwbBSAFile---} - function GetFileName: string; - - {---IwbBSAFileInternal---} - function GetData(aOffset, aSize: Cardinal):TBytes; - public - constructor Create(const aFileName: string); - destructor Destroy; override; - end; - - TwbBSAResource = class(TInterfacedObject, IwbResource) - brFile : IwbBSAFileInternal; - brOffset : Cardinal; - brSize : Cardinal; - protected - {---IwbResource---} - function GetContainer: IwbResourceContainer; - function GetData: TBytes; - public - constructor Create(aFile: TwbBSAFile; aSize, aOffset: Cardinal); - end; - - - TwbBA2TexChunkRec = record - Size : Cardinal; - PackedSize : Cardinal; - Offset : Int64; - StartMip : Word; - EndMip : Word; - end; - - TwbBA2FileRec = record - Name : string; - NameHash : Cardinal; - DirHash : Cardinal; - Size : Cardinal; - PackedSize : Cardinal; - Offset : Int64; - Height : Word; - Width : Word; - NumMips : Byte; - DXGIFormat : Byte; - CubeMaps : Word; - TexChunks : array of TwbBA2TexChunkRec; - end; - - IwbBA2FileInternal = interface(IwbBA2File) - ['{87D66150-746E-4B37-B295-45C4221CDCBE}'] - procedure ReadData(var Buffer; Offset: Int64; Count: Longint); - end; - - TwbBA2File = class(TInterfacedObject, IwbResourceContainer, IwbBA2File, IwbBA2FileInternal) - private - bfStream : TwbReadOnlyCachedFileStream; - bfFileName : string; - bfVersion : Cardinal; - bfType : TwbSignature; - bfFiles : array of TwbBA2FileRec; - bfFolderMap : TStringList; - - procedure ReadDirectory; - protected - {---IwbResourceContainer---} - function GetName: string; - function OpenResource(const aFileName: string): IwbResource; - function ResourceExists(const aFileName: string): Boolean; - procedure ResourceList(const aList: TStrings; const aFolder: string = ''); - procedure ResolveHash(const aHash: Int64; var Results: TDynStrings); - - {---IwbBA2File---} - function GetFileName: string; - - {---IwbBA2FileInternal---} - procedure ReadData(var Buffer; Offset: Int64; Count: Longint); - public - constructor Create(const aFileName: string); - destructor Destroy; override; - end; - - TwbBA2Resource = class(TInterfacedObject, IwbResource) - brFile : IwbBA2FileInternal; - brFileRec : TwbBA2FileRec; - protected - {---IwbResource---} - function GetContainer: IwbResourceContainer; - function GetData: TBytes; - public - constructor Create(aFile: TwbBA2File; var aFileRec: TwbBA2FileRec); - end; - - - IwbFolderInternal = interface(IwbFolder) - ['{6DF2B964-5AF7-4732-BD28-CD7600407A83}'] - end; - - TwbFolder = class(TInterfacedObject, IwbResourceContainer, IwbFolder, IwbFolderInternal) - private - fPath : string; - protected - {---IwbResourceContainer---} - function GetName: string; - function OpenResource(const aFileName: string): IwbResource; - function ResourceExists(const aFileName: string): Boolean; - procedure ResourceList(const aList: TStrings; const aFolder: string = ''); - procedure ResolveHash(const aHash: Int64; var Results: TDynStrings); - - {---IwbFolder---} - function GetPathName: string; - public - constructor Create(const aPath: string); - destructor Destroy; override; - end; - - TwbFolderResource = class(TInterfacedObject, IwbResource) - frFolder : IwbFolderInternal; - frFileName : string; - protected - {---IwbResource---} - function GetContainer: IwbResourceContainer; - function GetData: TBytes; - public - constructor Create(aFolder: IwbFolderInternal; const aFileName: string); - destructor Destroy; override; - end; - - -function wbCreateContainerHandler: IwbContainerHandler; -begin - Result := TwbContainerHandler.Create; -end; - -{ TwbContainerHandler } - -procedure TwbContainerHandler.AddContainer(const aContainer: IwbResourceContainer); -begin - SetLength(chContainers, Succ(Length(chContainers))); - chContainers[High(chContainers)] := aContainer; -end; - -function TwbContainerHandler.ContainerExists(aContainerName: string): Boolean; -var - i: Integer; -begin - Result := True; - for i := Low(chContainers) to High(chContainers) do - if SameText(chContainers[i].Name, aContainerName) then - Exit; - Result := False; -end; - -procedure TwbContainerHandler.AddBSA(const aFileName: string); -begin - if not ContainerExists(aFileName) then - AddContainer(TwbBSAFile.Create(aFileName)); -end; - -procedure TwbContainerHandler.AddBA2(const aFileName: string); -begin - if not ContainerExists(aFileName) then - AddContainer(TwbBA2File.Create(aFileName)); -end; - -procedure TwbContainerHandler.AddFolder(const aPath: string); -begin - if not ContainerExists(aPath) then - AddContainer(TwbFolder.Create(aPath)); -end; - -function TwbContainerHandler.OpenResource(const aFileName: string): TDynResources; -var - i, j: Integer; -begin - SetLength(Result, Length(chContainers)); - j := 0; - for i := Low(chContainers) to High(chContainers) do begin - Result[j] := chContainers[i].OpenResource(aFileName); - if Assigned(Result[j]) then - Inc(j); - end; - SetLength(Result, j); -end; - -function TwbContainerHandler.OpenResourceData(const aContainerName, aFileName: string): TBytes; -var - Res : TDynResources; - i : Integer; -begin - Res := OpenResource(aFileName); - - if Length(Res) = 0 then - Exit; - - for i := High(Res) downto Low(Res) do - if (aContainerName = '') or SameText(Res[i].Container.Name, aContainerName) then begin - Result := Res[i].GetData; - Break; - end; -end; - -procedure TwbContainerHandler.ContainerList(const aList: TStrings); -var - i: Integer; -begin - if not Assigned(aList) then - Exit; - - for i := Low(chContainers) to High(chContainers) do - aList.Add(chContainers[i].Name); -end; - -procedure TwbContainerHandler.ContainerResourceList(const aContainerName: string; const aList: TStrings; - const aFolder: string = ''); -var - i: Integer; -begin - for i := Low(chContainers) to High(chContainers) do - if SameText(chContainers[i].Name, aContainerName) then begin - chContainers[i].ResourceList(aList, aFolder); - Break; - end; -end; - -function TwbContainerHandler.ResourceExists(const aFileName: string): Boolean; -var - i: Integer; -begin - Result := False; - for i := Low(chContainers) to High(chContainers) do - if chContainers[i].ResourceExists(aFileName) then begin - Result := True; - Exit; - end; -end; - -function TwbContainerHandler.ResolveHash(const aHash: Int64): TDynStrings; -var - i: Integer; -begin - Result := nil; - for i := Low(chContainers) to High(chContainers) do - chContainers[i].ResolveHash(aHash, Result); -end; - -function TwbContainerHandler.ResourceCount(const aFileName: string; aContainers: TStrings = nil): Integer; -var - i: Integer; -begin - Result := 0; - for i := Low(chContainers) to High(chContainers) do - if chContainers[i].ResourceExists(aFileName) then begin - Inc(Result); - if Assigned(aContainers) then - aContainers.Add(chContainers[i].Name); - end; -end; - -procedure TwbContainerHandler.ResourceCopy(const aContainerName, aFileName, aPathOut: string); -var - fn, dir : string; - aData : TBytes; - res : TDynResources; - i, residx : integer; -begin - if aPathOut = '' then - raise Exception.Create('Destination path is not specified'); - - res := OpenResource(aFileName); - - if Length(res) = 0 then - raise Exception.Create('Resource doesn''t exist'); - - residx := High(res); - for i := High(res) to Low(res) do - if (aContainerName = '') or SameText(res[i].Container.Name, aContainerName) then begin - residx := i; - Break; - end; - - // file name is provided instead of path - if TPath.HasExtension(aPathOut) then - fn := aPathOut - // destination path is provided - else - fn := IncludeTrailingPathDelimiter(aPathOut) + aFileName; - - // create distination directory - dir := ExtractFilePath(fn); - if not DirectoryExists(dir) then - if not ForceDirectories(dir) then - raise Exception.Create('Unable to create destination directory ' + dir); - - // direct copy if file is loose, with overwriting - if ExtractFileExt(res[residx].Container.Name) = '' then begin - TFile.Copy(res[residx].Container.Name + aFileName, fn, True); - end - // otherwise extract from BSA - else begin - aData := res[residx].GetData; - // exception handled outside - with TFileStream.Create(fn, fmCreate) do try - WriteBuffer(aData[0], Length(aData)); - finally - Free; - end; - end; -end; - - -{ TwbBSAFile } - -constructor TwbBSAFile.Create(const aFileName: string); -begin - bfFileName := aFileName; - bfStream := TwbReadOnlyCachedFileStream.Create(aFileName); - ReadDirectory; -end; - -destructor TwbBSAFile.Destroy; -var - i: Integer; -begin - FreeAndNil(bfStream); - for i := Low(bfFolders) to High(bfFolders) do with bfFolders[i] do - FreeAndNil(Map); - FreeAndNil(bfFolderMap); - inherited; -end; - -function TwbBSAFile.GetData(aOffset, aSize: Cardinal): TBytes; -var - IsCompressed : Boolean; - Buffer : TBytes; -begin - IsCompressed := (aSize and BSAFILE_COMPRESS) <> 0; - if IsCompressed then - aSize := aSize and not BSAFILE_COMPRESS; - if (bfFlags and BSAARCHIVE_COMPRESSFILES) <> 0 then - IsCompressed := not IsCompressed; - bfStream.Position := aOffset; - if (bfVersion >= BSAHEADER_VERSION_SK) and ((bfFlags and BSAARCHIVE_PREFIXFULLFILENAMES) <> 0) then - // size - file name length (no terminator) - string length prefix - aSize := aSize - Length(bfStream.ReadStringLen(False)) - 1; - if IsCompressed then begin - SetLength(Result, bfStream.ReadCardinal); - aSize := aSize - 4; - if (Length(Result) > 0) and (aSize > 0) then begin - SetLength(Buffer, aSize); - bfStream.ReadBuffer(Buffer[0], Length(Buffer)); - if bfVersion = BSAHEADER_VERSION_SSE then - lz4DecompressToUserBuf(@Buffer[0], Length(Buffer), @Result[0], Length(Result)) - else - DecompressToUserBuf(@Buffer[0], Length(Buffer), @Result[0], Length(Result)); - end; - end else begin - SetLength(Result, aSize); - if aSize > 0 then - bfStream.ReadBuffer(Result[0], aSize); - end; -end; - -function TwbBSAFile.GetFileName: string; -begin - Result := bfFileName; -end; - -function TwbBSAFile.GetName: string; -begin - Result := GetFileName; -end; - -function TwbBSAFile.OpenResource(const aFileName: string): IwbResource; -var - lPath, lName: string; - i, j: Integer; -begin - Result := nil; - lPath := ExtractFilePath(aFileName); - SetLength(lPath, Pred(Length(lPath))); - lName := ExtractFileName(aFileName); - if bfFolderMap.Find(lPath, i) then - with bfFolders[Integer(bfFolderMap.Objects[i])] do - if Map.Find(lName, j) then - with Files[Integer(Map.Objects[j])] do - Result := TwbBSAResource.Create(Self, Size, Offset); -end; - -function TwbBSAFile.ResourceExists(const aFileName: string): Boolean; -var - lPath, lName: string; - i: Integer; -begin - Result := False; - lPath := ExtractFilePath(aFileName); - SetLength(lPath, Pred(Length(lPath))); - lName := ExtractFileName(aFileName); - if bfFolderMap.Find(lPath, i) then - Result := bfFolders[Integer(bfFolderMap.Objects[i])].Map.IndexOf(lName) <> -1; -end; - -procedure TwbBSAFile.ResourceList(const aList: TStrings; const aFolder: string = ''); -var - i, j: Integer; - Folder: string; -begin - if not Assigned(aList) then - Exit; - Folder := ExcludeTrailingPathDelimiter(aFolder); - for i := Low(bfFolders) to High(bfFolders) do with bfFolders[i] do - if (aFolder = '') or SameText(Folder, Name) then - for j := Low(Files) to High(Files) do - aList.Add(Name + '\' + Files[j].Name); -end; - -procedure TwbBSAFile.ReadDirectory; -var - i, j : Integer; - OldPos : Int64; - NewPos : Int64; -// FileCount : Cardinal; -// totalFolderNameLength : Cardinal; - totalFileNameLength : Cardinal; -begin - if bfStream.ReadSignature <> 'BSA' then - raise Exception.Create(bfFileName + ' is not a valid BSA file'); - bfVersion := bfStream.ReadCardinal; - if not (bfVersion in [BSAHEADER_VERSION_OB, BSAHEADER_VERSION_SK, BSAHEADER_VERSION_SSE]) then - raise Exception.Create(bfFileName + ' has unknown version: ' + IntToStr(bfVersion) ); - bfOffset := bfStream.ReadCardinal; - if bfOffset <> $24 then - raise Exception.Create(bfFileName + ' has unexpected Offset: ' + IntToStr(bfOffset) ); - bfFlags := bfStream.ReadCardinal; - SetLength(bfFolders, bfStream.ReadCardinal); - {FileCount := } bfStream.ReadCardinal; //skip file count - {totalFolderNameLength := } bfStream.ReadCardinal; //skip totalFolderNameLength - totalFileNameLength := bfStream.ReadCardinal; //skip totalFileNameLength - bfFileFlags := bfStream.ReadCardinal; - OldPos := bfStream.Position; - for i := Low(bfFolders) to High(bfFolders) do with bfFolders[i] do begin - bfStream.Position := OldPos; - Hash := bfStream.ReadInt64; // skip hash - SetLength(Files, bfStream.ReadCardinal); - if bfVersion = BSAHEADER_VERSION_SSE then begin - bfStream.ReadCardinal; // skip unk32 - NewPos := bfStream.ReadInt64; - end else - NewPos := bfStream.ReadCardinal; - OldPos := bfStream.Position; - bfStream.Position := NewPos - totalFileNameLength; - Name := bfStream.ReadStringLen; - for j := Low(Files) to High(Files) do with Files[j] do begin - Hash := bfStream.ReadInt64; // skip hash - Size := bfStream.ReadCardinal; - Offset := bfStream.ReadCardinal; - end; - end; - bfFolderMap := TwbFastStringList.Create; - for i := Low(bfFolders) to High(bfFolders) do with bfFolders[i] do begin - bfFolderMap.AddObject(Name, TObject(i)); - Map := TwbFastStringList.Create; - for j := Low(Files) to High(Files) do with Files[j] do begin - Name := bfStream.ReadStringTerm; - Map.AddObject(Name, TObject(j)); - end; - Map.Sorted := True; - end; - bfFolderMap.Sorted := True; -end; - -procedure TwbBSAFile.ResolveHash(const aHash: Int64; var Results: TDynStrings); -var - i, j: Integer; -begin - for i := Low(bfFolders) to High(bfFolders) do with bfFolders[i] do begin - if Hash = aHash then begin - SetLength(Results, Succ(Length(Results))); - Results[High(Results)] := Name; - end; - for j := Low(Files) to High(Files) do with Files[j] do begin - if Hash = aHash then begin - SetLength(Results, Succ(Length(Results))); - Results[High(Results)] := Name; - end; - end; - end; -end; - -{ TwbBSAResource } - -constructor TwbBSAResource.Create(aFile: TwbBSAFile; aSize, aOffset: Cardinal); -begin - brFile := aFile; - brOffset := aOffset; - brSize := aSize; -end; - -function TwbBSAResource.GetContainer: IwbResourceContainer; -begin - Result := brFile; -end; - -function TwbBSAResource.GetData: TBytes; -begin - Result := brFile.GetData(brOffset, brSize); -end; - - -{ TwbBA2File } - -constructor TwbBA2File.Create(const aFileName: string); -begin - bfFileName := aFileName; - bfStream := TwbReadOnlyCachedFileStream.Create(aFileName); - ReadDirectory; -end; - -destructor TwbBA2File.Destroy; -var - i: integer; -begin - FreeAndNil(bfStream); - for i := 0 to Pred(bfFolderMap.Count) do - TStringList(bfFolderMap.Objects[i]).Free; - FreeAndNil(bfFolderMap); - inherited; -end; - -procedure TwbBA2File.ReadDirectory; -var - i, j : Integer; - OldPos : Int64; - FileCount : Cardinal; - FileTablePosition: Int64; - NumChunks: Byte; - folder: string; -begin - if bfStream.ReadSignature <> 'BTDX' then - raise Exception.Create(bfFileName + ' is not a valid BA2 file'); - bfVersion := bfStream.ReadCardinal; - if bfVersion <> BA2HEADER_VERSION_FO4 then - raise Exception.Create(bfFileName + ' has unknown version: ' + IntToStr(bfVersion) ); - bfType := bfStream.ReadSignature; - if (bfType <> 'GNRL') and (bfType <> 'DX10') then - raise Exception.Create(bfFileName + ' has unknown type: ' + String(bfType)); - FileCount := bfStream.ReadCardinal; - FileTablePosition := bfStream.ReadInt64; - OldPos := bfStream.Position; - bfStream.Position := FileTablePosition; - SetLength(bfFiles, FileCount); - for i := Low(bfFiles) to High(bfFiles) do begin - bfFiles[i].Name := bfStream.ReadStringLen16; - end; - bfStream.Position := OldPos; - - if bfType = 'GNRL' then begin - for i := Low(bfFiles) to High(bfFiles) do begin - bfFiles[i].NameHash := bfStream.ReadCardinal; - bfStream.ReadCardinal; // skip ext - bfFiles[i].DirHash := bfStream.ReadCardinal; - bfStream.ReadCardinal; // skip unk0C - bfFiles[i].Offset := bfStream.ReadInt64; - bfFiles[i].PackedSize := bfStream.ReadCardinal; - bfFiles[i].Size := bfStream.ReadCardinal; - bfStream.ReadCardinal; // skip BAADF00D - end; - end - else if bfType = 'DX10' then begin - for i := Low(bfFiles) to High(bfFiles) do begin - bfFiles[i].NameHash := bfStream.ReadCardinal; - bfStream.ReadCardinal; // skip ext - bfFiles[i].DirHash := bfStream.ReadCardinal; - bfStream.ReadByte; // skip unk0C - NumChunks := bfStream.ReadByte; - bfStream.ReadWord; // skip chunkHeaderSize - bfFiles[i].Height := bfStream.ReadWord; - bfFiles[i].Width := bfStream.ReadWord; - bfFiles[i].NumMips := bfStream.ReadByte; - bfFiles[i].DXGIFormat := bfStream.ReadByte; - bfFiles[i].CubeMaps := bfStream.ReadWord; - SetLength(bfFiles[i].TexChunks, NumChunks); - for j := Low(bfFiles[i].TexChunks) to High(bfFiles[i].TexChunks) do - with bfFiles[i].TexChunks[j] do begin - Offset := bfStream.ReadInt64; - PackedSize := bfStream.ReadCardinal; - Size := bfStream.ReadCardinal; - StartMip := bfStream.ReadWord; - EndMip := bfStream.ReadWord; - bfStream.ReadCardinal; // skip BAADF00D - end; - end; - end; - - bfFolderMap := TwbFastStringList.Create; - bfFolderMap.Sorted := True; - for i := Low(bfFiles) to High(bfFiles) do begin - folder := LowerCase(ExtractFilePath(bfFiles[i].Name)); - SetLength(folder, Pred(Length(folder))); - j := bfFolderMap.IndexOf(folder); - if not bfFolderMap.Find(folder, j) then begin - bfFolderMap.AddObject(folder, TwbFastStringList.Create); - if not bfFolderMap.Find(folder, j) then - raise Exception.Create('Indexing error'); - end; - TStringList(bfFolderMap.Objects[j]).AddObject(LowerCase(ExtractFileName(bfFiles[i].Name)), TObject(i)); - end; - for i := 0 to Pred(bfFolderMap.Count) do - TStringList(bfFolderMap.Objects[i]).Sorted := True; -end; - -function TwbBA2File.GetFileName: string; -begin - Result := bfFileName; -end; - -function TwbBA2File.GetName: string; -begin - Result := GetFileName; -end; - -procedure TwbBA2File.ReadData(var Buffer; Offset: Int64; Count: Longint); -begin - bfStream.Position := Offset; - bfStream.ReadBuffer(Buffer, Count); -end; - -function TwbBA2File.OpenResource(const aFileName: string): IwbResource; -var - lPath, lName: string; - i, j: Integer; -begin - lPath := LowerCase(ExtractFilePath(aFileName)); - SetLength(lPath, Pred(Length(lPath))); - lName := LowerCase(ExtractFileName(aFileName)); - if bfFolderMap.Find(lPath, i) then with TStringList(bfFolderMap.Objects[i]) do - if Find(lName, j) then - Result := TwbBA2Resource.Create(Self, bfFiles[Integer(Objects[j])]); -end; - -procedure TwbBA2File.ResolveHash(const aHash: Int64; var Results: TDynStrings); -begin - // ... -end; - -function TwbBA2File.ResourceExists(const aFileName: string): Boolean; -var - lPath, lName: string; - i: Integer; -begin - Result := False; - lPath := LowerCase(ExtractFilePath(aFileName)); - SetLength(lPath, Pred(Length(lPath))); - lName := LowerCase(ExtractFileName(aFileName)); - if bfFolderMap.Find(lPath, i) then - Result := TStringList(bfFolderMap.Objects[i]).IndexOf(lName) <> -1; -end; - -procedure TwbBA2File.ResourceList(const aList: TStrings; const aFolder: string = ''); -var - i: Integer; -begin - if not Assigned(aList) then - Exit; - for i := Low(bfFiles) to High(bfFiles) do - aList.Add(LowerCase(bfFiles[i].Name)); -end; - - -{ TwbBA2Resource } - -constructor TwbBA2Resource.Create(aFile: TwbBA2File; var aFileRec: TwbBA2FileRec); -begin - brFile := aFile; - brFileRec := aFileRec; -end; - -function TwbBA2Resource.GetContainer: IwbResourceContainer; -begin - Result := brFile; -end; - -function TwbBA2Resource.GetData: TBytes; -const - FOURCC_BC7 = LongWord(Byte('B') or (Byte('C') shl 8) or (Byte('7') shl 16) or - (Byte(0) shl 24)); -var - Buffer : TBytes; - Hdr: ^TDDSFileHeader; - TexSize, i: integer; -begin - // GNRL resource - if (brFileRec.Size <> 0) and (Length(brFileRec.TexChunks) = 0) then begin - if brFileRec.PackedSize <> 0 then begin - SetLength(Buffer, brFileRec.PackedSize); - brFile.ReadData(Buffer[0], brFileRec.Offset, Length(Buffer)); - SetLength(Result, brFileRec.Size); - DecompressToUserBuf(@Buffer[0], Length(Buffer), @Result[0], Length(Result)); - end - else begin - SetLength(Result, brFileRec.Size); - brFile.ReadData(Result[0], brFileRec.Offset, Length(Result)); - end; - end - // DX10 texture - else if Length(brFileRec.TexChunks) <> 0 then begin - // calculate texture size including header - TexSize := SizeOf(TDDSFileHeader); - for i := Low(brFileRec.TexChunks) to High(brFileRec.TexChunks) do - Inc(TexSize, brFileRec.TexChunks[i].Size); - SetLength(Result, TexSize); - // fill DDS header - Hdr := @Result[0]; - hdr.Magic := DDSMagic; - hdr.Desc.Size := SizeOf(hdr.Desc); - hdr.Desc.Width := brFileRec.Width; - hdr.Desc.Height := brFileRec.Height; - hdr.Desc.Flags := DDS_SAVE_FLAGS or DDSD_MIPMAPCOUNT; - hdr.Desc.Caps.Caps1 := DDSCAPS_TEXTURE or DDSCAPS_MIPMAP; - hdr.Desc.MipMaps := brFileRec.NumMips; - if brFileRec.CubeMaps = 2049 then - hdr.Desc.Caps.Caps2 := DDSCAPS2_POSITIVEX or DDSCAPS2_NEGATIVEX - or DDSCAPS2_POSITIVEY or DDSCAPS2_NEGATIVEY - or DDSCAPS2_POSITIVEZ or DDSCAPS2_NEGATIVEZ - or DDSCAPS2_CUBEMAP; - hdr.Desc.PixelFormat.Size := SizeOf(hdr.Desc.PixelFormat); - case TDXGIFormat(brFileRec.DXGIFormat) of - DXGI_FORMAT_BC1_UNORM: begin - hdr.Desc.PixelFormat.Flags := DDPF_FOURCC; - hdr.Desc.PixelFormat.FourCC := FOURCC_DXT1; - hdr.Desc.PitchOrLinearSize := brFileRec.Width * brFileRec.Height div 4; - end; - DXGI_FORMAT_BC2_UNORM: begin - hdr.Desc.PixelFormat.Flags := DDPF_FOURCC; - hdr.Desc.PixelFormat.FourCC := FOURCC_DXT3; - hdr.Desc.PitchOrLinearSize := brFileRec.Width * brFileRec.Height; - end; - DXGI_FORMAT_BC3_UNORM: begin - hdr.Desc.PixelFormat.Flags := DDPF_FOURCC; - hdr.Desc.PixelFormat.FourCC := FOURCC_DXT5; - hdr.Desc.PitchOrLinearSize := brFileRec.Width * brFileRec.Height; - end; - DXGI_FORMAT_BC5_UNORM: begin - hdr.Desc.PixelFormat.Flags := DDPF_FOURCC; - hdr.Desc.PixelFormat.FourCC := FOURCC_ATI2; - hdr.Desc.PitchOrLinearSize := brFileRec.Width * brFileRec.Height; - end; - DXGI_FORMAT_BC7_UNORM: begin - hdr.Desc.PixelFormat.Flags := DDPF_FOURCC; - hdr.Desc.PixelFormat.FourCC := FOURCC_BC7; - hdr.Desc.PitchOrLinearSize := brFileRec.Width * brFileRec.Height; - end; - DXGI_FORMAT_B8G8R8A8_UNORM: begin - hdr.Desc.PixelFormat.Flags := DDPF_RGB; - hdr.Desc.PixelFormat.BitCount := 32; - hdr.Desc.PixelFormat.RedMask := $00FF0000; - hdr.Desc.PixelFormat.GreenMask := $0000FF00; - hdr.Desc.PixelFormat.BlueMask := $000000FF; - hdr.Desc.PitchOrLinearSize := brFileRec.Width * brFileRec.Height * 4; - end; - DXGI_FORMAT_R8_UNORM: begin - hdr.Desc.PixelFormat.Flags := DDPF_RGB; - hdr.Desc.PixelFormat.BitCount := 8; - hdr.Desc.PixelFormat.RedMask := $FF; - hdr.Desc.PitchOrLinearSize := brFileRec.Width * brFileRec.Height; - end; - end; - // append chunks - TexSize := SizeOf(TDDSFileHeader); - for i := Low(brFileRec.TexChunks) to High(brFileRec.TexChunks) do with brFileRec.TexChunks[i] do begin - // compressed chunk - if PackedSize <> 0 then begin - SetLength(Buffer, PackedSize); - brFile.ReadData(Buffer[0], Offset, Length(Buffer)); - DecompressToUserBuf(@Buffer[0], Length(Buffer), @Result[TexSize], Size); - end - // uncompressed chunk - else - brFile.ReadData(Result[TexSize], Offset, Size); - Inc(TexSize, Size); - end; - end; -end; - - -{ TwbFolder } - -constructor TwbFolder.Create(const aPath: string); -begin - fPath := IncludeTrailingPathDelimiter(aPath); -end; - -destructor TwbFolder.Destroy; -begin - - inherited; -end; - -function TwbFolder.GetPathName: string; -begin - Result := fPath; -end; - -function TwbFolder.GetName: string; -begin - Result := GetPathName; -end; - -function TwbFolder.OpenResource(const aFileName: string): IwbResource; -var - s: string; -begin - s := fPath + aFileName; - if FileExists(s) then - Result := TwbFolderResource.Create(Self, s); -end; - -function TwbFolder.ResourceExists(const aFileName: string): Boolean; -begin - Result := FileExists(fPath + aFileName); -end; - -procedure TwbFolder.ResourceList(const aList: TStrings; const aFolder: string = ''); -var - FileName: string; -begin - if not Assigned(aList) then - Exit; - if TDirectory.Exists(fPath + aFolder) then - for FileName in TDirectory.GetFiles(fPath + aFolder, '*.*', TSearchOption.soAllDirectories) do - aList.Add(LowerCase(Copy(FileName, Length(fPath) + 1, Length(FileName)))); -end; - -procedure TwbFolder.ResolveHash(const aHash: Int64; var Results: TDynStrings); -begin - //... -end; - -{ TwbFolderResource } - -constructor TwbFolderResource.Create(aFolder: IwbFolderInternal; const aFileName: string); -begin - frFolder := aFolder; - frFileName := aFileName; -end; - -destructor TwbFolderResource.Destroy; -begin - - inherited; -end; - -function TwbFolderResource.GetContainer: IwbResourceContainer; -begin - Result := frFolder; -end; - -function TwbFolderResource.GetData: TBytes; -begin - with TFileStream.Create(frFileName, fmOpenRead or fmShareDenyWrite) do try - SetLength(Result, Size); - if Length(Result) > 0 then - ReadBuffer(Result[0], Length(Result)); - finally - Free; - end; -end; - -end. diff --git a/lib/xedit/wbDefines.inc b/lib/xedit/wbDefines.inc deleted file mode 100644 index 492fe49..0000000 --- a/lib/xedit/wbDefines.inc +++ /dev/null @@ -1,15 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} - -{.$DEFINE USE_CODESITE} \ No newline at end of file diff --git a/lib/xedit/wbDefinitionsFNV.pas b/lib/xedit/wbDefinitionsFNV.pas deleted file mode 100644 index 913580b..0000000 --- a/lib/xedit/wbDefinitionsFNV.pas +++ /dev/null @@ -1,11803 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} - -unit wbDefinitionsFNV; - -{$I wbDefines.inc} - -interface - -uses - wbInterface; - -var - wbAggroRadiusFlags: IwbFlagsDef; - wbPKDTFlags: IwbFlagsDef; - wbRecordFlagsFlags: IwbFlagsDef; - wbServiceFlags: IwbFlagsDef; - wbTemplateFlags: IwbFlagsDef; - - wbAgressionEnum: IwbEnumDef; - wbAlignmentEnum: IwbEnumDef; - wbArchtypeEnum: IwbEnumDef; - wbAssistanceEnum: IwbEnumDef; - wbAttackAnimationEnum: IwbEnumDef; - wbAxisEnum: IwbEnumDef; - wbBlendModeEnum: IwbEnumDef; - wbBlendOpEnum: IwbEnumDef; - wbBodyLocationEnum: IwbEnumDef; - wbBodyPartIndexEnum: IwbEnumDef; - wbConfidenceEnum: IwbEnumDef; - wbCreatureTypeEnum: IwbEnumDef; - wbCrimeTypeEnum: IwbEnumDef; - wbCriticalStageEnum: IwbEnumDef; - wbEquipTypeEnum: IwbEnumDef; - wbFormTypeEnum: IwbEnumDef; - wbFunctionsEnum: IwbEnumDef; - wbHeadPartIndexEnum: IwbEnumDef; - wbImpactMaterialTypeEnum: IwbEnumDef; - wbMenuModeEnum: IwbEnumDef; - wbMiscStatEnum: IwbEnumDef; - wbModEffectEnum: IwbEnumDef; - wbMoodEnum: IwbEnumDef; - wbMusicEnum: IwbEnumDef; - wbObjectTypeEnum: IwbEnumDef; - wbPKDTType: IwbEnumDef; - wbPlayerActionEnum: IwbEnumDef; - wbQuadrantEnum: IwbEnumDef; - wbReloadAnimEnum: IwbEnumDef; - wbSexEnum: IwbEnumDef; - wbSkillEnum: IwbEnumDef; - wbSoundLevelEnum: IwbEnumDef; - wbSpecializationEnum: IwbEnumDef; - wbVatsValueFunctionEnum: IwbEnumDef; - wbWeaponAnimTypeEnum: IwbEnumDef; - wbZTestFuncEnum: IwbEnumDef; - -function wbCreaLevelDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; - -procedure DefineFNV; - -implementation - -uses - Types, - Classes, - SysUtils, - Math, - Variants, - wbHelpers; - -const - _00_IAD: TwbSignature = #$00'IAD'; - _40_IAD: TwbSignature = #$40'IAD'; - _01_IAD: TwbSignature = #$01'IAD'; - _41_IAD: TwbSignature = #$41'IAD'; - _02_IAD: TwbSignature = #$02'IAD'; - _42_IAD: TwbSignature = #$42'IAD'; - _03_IAD: TwbSignature = #$03'IAD'; - _43_IAD: TwbSignature = #$43'IAD'; - _04_IAD: TwbSignature = #$04'IAD'; - _44_IAD: TwbSignature = #$44'IAD'; - _05_IAD: TwbSignature = #$05'IAD'; - _45_IAD: TwbSignature = #$45'IAD'; - _06_IAD: TwbSignature = #$06'IAD'; - _46_IAD: TwbSignature = #$46'IAD'; - _07_IAD: TwbSignature = #$07'IAD'; - _47_IAD: TwbSignature = #$47'IAD'; - _08_IAD: TwbSignature = #$08'IAD'; - _48_IAD: TwbSignature = #$48'IAD'; - _09_IAD: TwbSignature = #$09'IAD'; - _49_IAD: TwbSignature = #$49'IAD'; - _0A_IAD: TwbSignature = #$0A'IAD'; - _4A_IAD: TwbSignature = #$4A'IAD'; - _0B_IAD: TwbSignature = #$0B'IAD'; - _4B_IAD: TwbSignature = #$4B'IAD'; - _0C_IAD: TwbSignature = #$0C'IAD'; - _4C_IAD: TwbSignature = #$4C'IAD'; - _0D_IAD: TwbSignature = #$0D'IAD'; - _4D_IAD: TwbSignature = #$4D'IAD'; - _0E_IAD: TwbSignature = #$0E'IAD'; - _4E_IAD: TwbSignature = #$4E'IAD'; - _0F_IAD: TwbSignature = #$0F'IAD'; - _4F_IAD: TwbSignature = #$4F'IAD'; - _10_IAD: TwbSignature = #$10'IAD'; - _50_IAD: TwbSignature = #$50'IAD'; - _11_IAD: TwbSignature = #$11'IAD'; - _51_IAD: TwbSignature = #$51'IAD'; - _12_IAD: TwbSignature = #$12'IAD'; - _52_IAD: TwbSignature = #$52'IAD'; - _13_IAD: TwbSignature = #$13'IAD'; - _53_IAD: TwbSignature = #$53'IAD'; - _14_IAD: TwbSignature = #$14'IAD'; - _54_IAD: TwbSignature = #$54'IAD'; - - _0_IAD : TwbSignature = #0'IAD'; - _1_IAD : TwbSignature = #1'IAD'; - _2_IAD : TwbSignature = #2'IAD'; - _3_IAD : TwbSignature = #3'IAD'; - _4_IAD : TwbSignature = #4'IAD'; - _5_IAD : TwbSignature = #5'IAD'; - ACBS : TwbSignature = 'ACBS'; - ACHR : TwbSignature = 'ACHR'; - ACRE : TwbSignature = 'ACRE'; - ACTI : TwbSignature = 'ACTI'; - ADDN : TwbSignature = 'ADDN'; - AIDT : TwbSignature = 'AIDT'; - ALCH : TwbSignature = 'ALCH'; - AMMO : TwbSignature = 'AMMO'; - ANAM : TwbSignature = 'ANAM'; - ANIO : TwbSignature = 'ANIO'; - ARMA : TwbSignature = 'ARMA'; - ARMO : TwbSignature = 'ARMO'; - ASPC : TwbSignature = 'ASPC'; - ATTR : TwbSignature = 'ATTR'; - ATXT : TwbSignature = 'ATXT'; - AVIF : TwbSignature = 'AVIF'; - BIPL : TwbSignature = 'BIPL'; - BMCT : TwbSignature = 'BMCT'; - BMDT : TwbSignature = 'BMDT'; - BNAM : TwbSignature = 'BNAM'; - BOOK : TwbSignature = 'BOOK'; - BPND : TwbSignature = 'BPND'; - BPNI : TwbSignature = 'BPNI'; - BPNN : TwbSignature = 'BPNN'; - BPNT : TwbSignature = 'BPNT'; - BPTD : TwbSignature = 'BPTD'; - BPTN : TwbSignature = 'BPTN'; - BTXT : TwbSignature = 'BTXT'; - CAMS : TwbSignature = 'CAMS'; - CELL : TwbSignature = 'CELL'; - CLAS : TwbSignature = 'CLAS'; - CLMT : TwbSignature = 'CLMT'; - CNAM : TwbSignature = 'CNAM'; - MMRK : TwbSignature = 'MMRK'; - CNTO : TwbSignature = 'CNTO'; - COBJ : TwbSignature = 'COBJ'; - COED : TwbSignature = 'COED'; - CONT : TwbSignature = 'CONT'; - CPTH : TwbSignature = 'CPTH'; - CRDT : TwbSignature = 'CRDT'; - CREA : TwbSignature = 'CREA'; - CSAD : TwbSignature = 'CSAD'; - CSCR : TwbSignature = 'CSCR'; - CSDC : TwbSignature = 'CSDC'; - CSDI : TwbSignature = 'CSDI'; - CSDT : TwbSignature = 'CSDT'; - CSSD : TwbSignature = 'CSSD'; - CSTD : TwbSignature = 'CSTD'; - CSTY : TwbSignature = 'CSTY'; - CTDA : TwbSignature = 'CTDA'; - DATA : TwbSignature = 'DATA'; - DAT2 : TwbSignature = 'DAT2'; - DEBR : TwbSignature = 'DEBR'; - DELE : TwbSignature = 'DELE'; - DESC : TwbSignature = 'DESC'; - DEST : TwbSignature = 'DEST'; - DIAL : TwbSignature = 'DIAL'; - DMDL : TwbSignature = 'DMDL'; - DMDT : TwbSignature = 'DMDT'; - DNAM : TwbSignature = 'DNAM'; - DOBJ : TwbSignature = 'DOBJ'; - DODT : TwbSignature = 'DODT'; - DOOR : TwbSignature = 'DOOR'; - DSTD : TwbSignature = 'DSTD'; - DSTF : TwbSignature = 'DSTF'; - EAMT : TwbSignature = 'EAMT'; - ECZN : TwbSignature = 'ECZN'; - EDID : TwbSignature = 'EDID'; - EFID : TwbSignature = 'EFID'; - EFIT : TwbSignature = 'EFIT'; - EFSD : TwbSignature = 'EFSD'; - EFSH : TwbSignature = 'EFSH'; - EITM : TwbSignature = 'EITM'; - ENAM : TwbSignature = 'ENAM'; - ENCH : TwbSignature = 'ENCH'; - ENIT : TwbSignature = 'ENIT'; - EPF2 : TwbSignature = 'EPF2'; - EPF3 : TwbSignature = 'EPF3'; - EPFD : TwbSignature = 'EPFD'; - EPFT : TwbSignature = 'EPFT'; - ESCE : TwbSignature = 'ESCE'; - ETYP : TwbSignature = 'ETYP'; - EXPL : TwbSignature = 'EXPL'; - EYES : TwbSignature = 'EYES'; - FACT : TwbSignature = 'FACT'; - FGGA : TwbSignature = 'FGGA'; - FGGS : TwbSignature = 'FGGS'; - FGTS : TwbSignature = 'FGTS'; - FLST : TwbSignature = 'FLST'; - FLTV : TwbSignature = 'FLTV'; - FNAM : TwbSignature = 'FNAM'; - FULL : TwbSignature = 'FULL'; - FURN : TwbSignature = 'FURN'; - GLOB : TwbSignature = 'GLOB'; - RDID : TwbSignature = 'RDID'; - RDSI : TwbSignature = 'RDSI'; - RDSB : TwbSignature = 'RDSB'; - GMST : TwbSignature = 'GMST'; - GNAM : TwbSignature = 'GNAM'; - GRAS : TwbSignature = 'GRAS'; - HAIR : TwbSignature = 'HAIR'; - HCLR : TwbSignature = 'HCLR'; - HDPT : TwbSignature = 'HDPT'; - HEDR : TwbSignature = 'HEDR'; - HNAM : TwbSignature = 'HNAM'; - ICO2 : TwbSignature = 'ICO2'; - ICON : TwbSignature = 'ICON'; - IDLA : TwbSignature = 'IDLA'; - IDLB : TwbSignature = 'IDLB'; - IDLC : TwbSignature = 'IDLC'; - IDLE : TwbSignature = 'IDLE'; - IDLF : TwbSignature = 'IDLF'; - IDLM : TwbSignature = 'IDLM'; - IDLT : TwbSignature = 'IDLT'; - IMAD : TwbSignature = 'IMAD'; - IMGS : TwbSignature = 'IMGS'; - INAM : TwbSignature = 'INAM'; - INDX : TwbSignature = 'INDX'; - INFO : TwbSignature = 'INFO'; - INGR : TwbSignature = 'INGR'; - IPCT : TwbSignature = 'IPCT'; - IPDS : TwbSignature = 'IPDS'; - ITXT : TwbSignature = 'ITXT'; - JNAM : TwbSignature = 'JNAM'; - KEYM : TwbSignature = 'KEYM'; - KFFZ : TwbSignature = 'KFFZ'; - KNAM : TwbSignature = 'KNAM'; - LAND : TwbSignature = 'LAND'; - LGTM : TwbSignature = 'LGTM'; - LIGH : TwbSignature = 'LIGH'; - LNAM : TwbSignature = 'LNAM'; - LSCR : TwbSignature = 'LSCR'; - LTEX : TwbSignature = 'LTEX'; - LTMP : TwbSignature = 'LTMP'; - LVLC : TwbSignature = 'LVLC'; - LVLD : TwbSignature = 'LVLD'; - LVLF : TwbSignature = 'LVLF'; - LVLG : TwbSignature = 'LVLG'; - LVLI : TwbSignature = 'LVLI'; - LVLN : TwbSignature = 'LVLN'; - LVLO : TwbSignature = 'LVLO'; - MAST : TwbSignature = 'MAST'; - MESG : TwbSignature = 'MESG'; - MGEF : TwbSignature = 'MGEF'; - MICN : TwbSignature = 'MICN'; - MICO : TwbSignature = 'MICO'; - MIC2 : TwbSignature = 'MIC2'; - MISC : TwbSignature = 'MISC'; - MNAM : TwbSignature = 'MNAM'; - MO2B : TwbSignature = 'MO2B'; - MO2S : TwbSignature = 'MO2S'; - MO2T : TwbSignature = 'MO2T'; - MO3B : TwbSignature = 'MO3B'; - MO3S : TwbSignature = 'MO3S'; - MO3T : TwbSignature = 'MO3T'; - MO4B : TwbSignature = 'MO4B'; - MO4S : TwbSignature = 'MO4S'; - MO4T : TwbSignature = 'MO4T'; - MOD2 : TwbSignature = 'MOD2'; - VANM : TwbSignature = 'VANM'; - MOD3 : TwbSignature = 'MOD3'; - MOD4 : TwbSignature = 'MOD4'; - MODB : TwbSignature = 'MODB'; - MODD : TwbSignature = 'MODD'; - MODL : TwbSignature = 'MODL'; - MODS : TwbSignature = 'MODS'; - MODT : TwbSignature = 'MODT'; - MOSD : TwbSignature = 'MOSD'; - MSTT : TwbSignature = 'MSTT'; - MUSC : TwbSignature = 'MUSC'; - IMPS : TwbSignature = 'IMPS'; - IMPF : TwbSignature = 'IMPF'; - NAM0 : TwbSignature = 'NAM0'; - NAM1 : TwbSignature = 'NAM1'; - NAM2 : TwbSignature = 'NAM2'; - NAM3 : TwbSignature = 'NAM3'; - NAM4 : TwbSignature = 'NAM4'; - NAM5 : TwbSignature = 'NAM5'; - NAM6 : TwbSignature = 'NAM6'; - NAM7 : TwbSignature = 'NAM7'; - NAM8 : TwbSignature = 'NAM8'; - NAM9 : TwbSignature = 'NAM9'; - NAME : TwbSignature = 'NAME'; - NAVI : TwbSignature = 'NAVI'; - NAVM : TwbSignature = 'NAVM'; - NEXT : TwbSignature = 'NEXT'; - NIFT : TwbSignature = 'NIFT'; - NIFZ : TwbSignature = 'NIFZ'; - NNAM : TwbSignature = 'NNAM'; - XSRF : TwbSignature = 'XSRF'; - XSRD : TwbSignature = 'XSRD'; - MWD1 : TwbSignature = 'MWD1'; - MWD2 : TwbSignature = 'MWD2'; - MWD3 : TwbSignature = 'MWD3'; - MWD4 : TwbSignature = 'MWD4'; - MWD5 : TwbSignature = 'MWD5'; - MWD6 : TwbSignature = 'MWD6'; - MWD7 : TwbSignature = 'MWD7'; - WNM1 : TwbSignature = 'WNM1'; - WNM2 : TwbSignature = 'WNM2'; - WNM3 : TwbSignature = 'WNM3'; - WNM4 : TwbSignature = 'WNM4'; - WNM5 : TwbSignature = 'WNM5'; - WNM6 : TwbSignature = 'WNM6'; - WNM7 : TwbSignature = 'WNM7'; - WMI1 : TwbSignature = 'WMI1'; - WMI2 : TwbSignature = 'WMI2'; - WMI3 : TwbSignature = 'WMI3'; - WMS1 : TwbSignature = 'WMS1'; - WMS2 : TwbSignature = 'WMS2'; - NOTE : TwbSignature = 'NOTE'; - NPC_ : TwbSignature = 'NPC_'; - NULL : TwbSignature = 'NULL'; - NVCA : TwbSignature = 'NVCA'; - NVCI : TwbSignature = 'NVCI'; - NVDP : TwbSignature = 'NVDP'; - NVER : TwbSignature = 'NVER'; - NVEX : TwbSignature = 'NVEX'; - NVGD : TwbSignature = 'NVGD'; - NVMI : TwbSignature = 'NVMI'; - NVTR : TwbSignature = 'NVTR'; - NVVX : TwbSignature = 'NVVX'; - OBND : TwbSignature = 'OBND'; - OFST : TwbSignature = 'OFST'; - ONAM : TwbSignature = 'ONAM'; - PACK : TwbSignature = 'PACK'; - PBEA : TwbSignature = 'PBEA'; - PERK : TwbSignature = 'PERK'; - PFIG : TwbSignature = 'PFIG'; - PFPC : TwbSignature = 'PFPC'; - PGAG : TwbSignature = 'PGAG'; - PGRE : TwbSignature = 'PGRE'; - PMIS : TwbSignature = 'PMIS'; - TRGT : TwbSignature = 'TRGT'; - PGRI : TwbSignature = 'PGRI'; - PGRL : TwbSignature = 'PGRL'; - PGRP : TwbSignature = 'PGRP'; - PGRR : TwbSignature = 'PGRR'; - PKAM : TwbSignature = 'PKAM'; - PKDD : TwbSignature = 'PKDD'; - PKDT : TwbSignature = 'PKDT'; - PKE2 : TwbSignature = 'PKE2'; - PKED : TwbSignature = 'PKED'; - PKFD : TwbSignature = 'PKFD'; - PKID : TwbSignature = 'PKID'; - PKPT : TwbSignature = 'PKPT'; - PKW3 : TwbSignature = 'PKW3'; - PLD2 : TwbSignature = 'PLD2'; - PLDT : TwbSignature = 'PLDT'; - PLYR : TwbSignature = 'PLYR'; - PNAM : TwbSignature = 'PNAM'; - TDUM : TwbSignature = 'TDUM'; - POBA : TwbSignature = 'POBA'; - POCA : TwbSignature = 'POCA'; - POEA : TwbSignature = 'POEA'; - PRKC : TwbSignature = 'PRKC'; - PRKE : TwbSignature = 'PRKE'; - PRKF : TwbSignature = 'PRKF'; - PROJ : TwbSignature = 'PROJ'; - PSDT : TwbSignature = 'PSDT'; - PTD2 : TwbSignature = 'PTD2'; - PTDT : TwbSignature = 'PTDT'; - PUID : TwbSignature = 'PUID'; - PWAT : TwbSignature = 'PWAT'; - QNAM : TwbSignature = 'QNAM'; - RCIL : TwbSignature = 'RCIL'; - RCQY : TwbSignature = 'RCQY'; - RCOD : TwbSignature = 'RCOD'; - QOBJ : TwbSignature = 'QOBJ'; - QSDT : TwbSignature = 'QSDT'; - QSTA : TwbSignature = 'QSTA'; - QSTI : TwbSignature = 'QSTI'; - TPIC : TwbSignature = 'TPIC'; - QSTR : TwbSignature = 'QSTR'; - INFC : TwbSignature = 'INFC'; - INFX : TwbSignature = 'INFX'; - QUST : TwbSignature = 'QUST'; - RACE : TwbSignature = 'RACE'; - RADS : TwbSignature = 'RADS'; - RAFB : TwbSignature = 'RAFB'; - RAFD : TwbSignature = 'RAFD'; - RAGA : TwbSignature = 'RAGA'; - RAPS : TwbSignature = 'RAPS'; - RCLR : TwbSignature = 'RCLR'; - RDAT : TwbSignature = 'RDAT'; - RDMD : TwbSignature = 'RDMD'; - RDMO : TwbSignature = 'RDMO'; - RDMP : TwbSignature = 'RDMP'; - RDGS : TwbSignature = 'RDGS'; - RDOT : TwbSignature = 'RDOT'; - RDSD : TwbSignature = 'RDSD'; - RDWT : TwbSignature = 'RDWT'; - REFR : TwbSignature = 'REFR'; - REGN : TwbSignature = 'REGN'; - REPL : TwbSignature = 'REPL'; - RGDL : TwbSignature = 'RGDL'; - RNAM : TwbSignature = 'RNAM'; - RPLD : TwbSignature = 'RPLD'; - RPLI : TwbSignature = 'RPLI'; - SCDA : TwbSignature = 'SCDA'; - SCHR : TwbSignature = 'SCHR'; - SCOL : TwbSignature = 'SCOL'; - SCPT : TwbSignature = 'SCPT'; - SCRI : TwbSignature = 'SCRI'; - SCRN : TwbSignature = 'SCRN'; - SCRO : TwbSignature = 'SCRO'; - SCRV : TwbSignature = 'SCRV'; - SCTX : TwbSignature = 'SCTX'; - SCVR : TwbSignature = 'SCVR'; - SLCP : TwbSignature = 'SLCP'; - SLSD : TwbSignature = 'SLSD'; - SNAM : TwbSignature = 'SNAM'; - SNDD : TwbSignature = 'SNDD'; - SNDX : TwbSignature = 'SNDX'; - SOUL : TwbSignature = 'SOUL'; - SOUN : TwbSignature = 'SOUN'; - SPEL : TwbSignature = 'SPEL'; - SPIT : TwbSignature = 'SPIT'; - SPLO : TwbSignature = 'SPLO'; - STAT : TwbSignature = 'STAT'; - BRUS : TwbSignature = 'BRUS'; - TACT : TwbSignature = 'TACT'; - TCLF : TwbSignature = 'TCLF'; - TCFU : TwbSignature = 'TCFU'; - TCLT : TwbSignature = 'TCLT'; - TERM : TwbSignature = 'TERM'; - TES4 : TwbSignature = 'TES4'; - TNAM : TwbSignature = 'TNAM'; - TPLT : TwbSignature = 'TPLT'; - TRDT : TwbSignature = 'TRDT'; - TREE : TwbSignature = 'TREE'; - TX00 : TwbSignature = 'TX00'; - TX01 : TwbSignature = 'TX01'; - INTV : TwbSignature = 'INTV'; - TX02 : TwbSignature = 'TX02'; - TX03 : TwbSignature = 'TX03'; - TX04 : TwbSignature = 'TX04'; - TX05 : TwbSignature = 'TX05'; - TXST : TwbSignature = 'TXST'; - UNAM : TwbSignature = 'UNAM'; - VATS : TwbSignature = 'VATS'; - VCLR : TwbSignature = 'VCLR'; - VHGT : TwbSignature = 'VHGT'; - VNAM : TwbSignature = 'VNAM'; - VNML : TwbSignature = 'VNML'; - VTCK : TwbSignature = 'VTCK'; - VTEX : TwbSignature = 'VTEX'; - VTXT : TwbSignature = 'VTXT'; - VTYP : TwbSignature = 'VTYP'; - WATR : TwbSignature = 'WATR'; - WEAP : TwbSignature = 'WEAP'; - WLST : TwbSignature = 'WLST'; - WNAM : TwbSignature = 'WNAM'; - XATO : TwbSignature = 'XATO'; - WRLD : TwbSignature = 'WRLD'; - WTHR : TwbSignature = 'WTHR'; - XACT : TwbSignature = 'XACT'; - XAMC : TwbSignature = 'XAMC'; - XAMT : TwbSignature = 'XAMT'; - XAPD : TwbSignature = 'XAPD'; - XAPR : TwbSignature = 'XAPR'; - XCAS : TwbSignature = 'XCAS'; - XCCM : TwbSignature = 'XCCM'; - XCET : TwbSignature = 'XCET'; - XCHG : TwbSignature = 'XCHG'; - XCIM : TwbSignature = 'XCIM'; - XCLC : TwbSignature = 'XCLC'; - XCLL : TwbSignature = 'XCLL'; - XCLP : TwbSignature = 'XCLP'; - XCLR : TwbSignature = 'XCLR'; - XCLW : TwbSignature = 'XCLW'; - XCMO : TwbSignature = 'XCMO'; - XCMT : TwbSignature = 'XCMT'; - XCNT : TwbSignature = 'XCNT'; - XCWT : TwbSignature = 'XCWT'; - XEMI : TwbSignature = 'XEMI'; - XESP : TwbSignature = 'XESP'; - XEZN : TwbSignature = 'XEZN'; - XGLB : TwbSignature = 'XGLB'; - XHLP : TwbSignature = 'XHLP'; - XDCR : TwbSignature = 'XDCR'; - XHLT : TwbSignature = 'XHLT'; - XIBS : TwbSignature = 'XIBS'; - XLCM : TwbSignature = 'XLCM'; - XLKR : TwbSignature = 'XLKR'; - XLOC : TwbSignature = 'XLOC'; - XLOD : TwbSignature = 'XLOD'; - XLRM : TwbSignature = 'XLRM'; - XLTW : TwbSignature = 'XLTW'; - XMBO : TwbSignature = 'XMBO'; - XMBP : TwbSignature = 'XMBP'; - XMBR : TwbSignature = 'XMBR'; - XMRC : TwbSignature = 'XMRC'; - XMRK : TwbSignature = 'XMRK'; - XNAM : TwbSignature = 'XNAM'; - XNDP : TwbSignature = 'XNDP'; - XOCP : TwbSignature = 'XOCP'; - XORD : TwbSignature = 'XORD'; - XOWN : TwbSignature = 'XOWN'; - XPOD : TwbSignature = 'XPOD'; - XPTL : TwbSignature = 'XPTL'; - XPPA : TwbSignature = 'XPPA'; - XPRD : TwbSignature = 'XPRD'; - XPRM : TwbSignature = 'XPRM'; - XPWR : TwbSignature = 'XPWR'; - XRAD : TwbSignature = 'XRAD'; - XRDO : TwbSignature = 'XRDO'; - XRDS : TwbSignature = 'XRDS'; - XRGB : TwbSignature = 'XRGB'; - XRGD : TwbSignature = 'XRGD'; - XRMR : TwbSignature = 'XRMR'; - XRNK : TwbSignature = 'XRNK'; - XRTM : TwbSignature = 'XRTM'; - XSCL : TwbSignature = 'XSCL'; - XSED : TwbSignature = 'XSED'; - XTEL : TwbSignature = 'XTEL'; - XTRG : TwbSignature = 'XTRG'; - XTRI : TwbSignature = 'XTRI'; - XXXX : TwbSignature = 'XXXX'; - YNAM : TwbSignature = 'YNAM'; - ZNAM : TwbSignature = 'ZNAM'; - IMOD : TwbSignature = 'IMOD'; - REPU : TwbSignature = 'REPU'; - RCPE : TwbSignature = 'RCPE'; - RCCT : TwbSignature = 'RCCT'; - CHIP : TwbSignature = 'CHIP'; - CSNO : TwbSignature = 'CSNO'; - LSCT : TwbSignature = 'LSCT'; - MSET : TwbSignature = 'MSET'; - ALOC : TwbSignature = 'ALOC'; - CHAL : TwbSignature = 'CHAL'; - AMEF : TwbSignature = 'AMEF'; - CCRD : TwbSignature = 'CCRD'; - CARD : TwbSignature = 'CARD'; - CMNY : TwbSignature = 'CMNY'; - CDCK : TwbSignature = 'CDCK'; - DEHY : TwbSignature = 'DEHY'; - HUNG : TwbSignature = 'HUNG'; - SLPD : TwbSignature = 'SLPD'; - -var - wbPKDTSpecificFlagsUnused : Boolean; - wbEDID: IwbSubRecordDef; - wbEDIDReq: IwbSubRecordDef; - wbBMDT: IwbSubRecordDef; - wbYNAM: IwbSubRecordDef; - wbZNAM: IwbSubRecordDef; - wbCOED: IwbSubRecordDef; - wbXLCM: IwbSubRecordDef; - wbEITM: IwbSubRecordDef; - wbREPL: IwbSubRecordDef; - wbBIPL: IwbSubRecordDef; - wbOBND: IwbSubRecordDef; - wbOBNDReq: IwbSubRecordDef; - wbDEST: IwbSubRecordStructDef; - wbDESTActor: IwbSubRecordStructDef; - wbDODT: IwbSubRecordDef; - wbXOWN: IwbSubRecordDef; - wbXGLB: IwbSubRecordDef; - wbXRGD: IwbSubRecordDef; - wbXRGB: IwbSubRecordDef; - wbSLSD: IwbSubRecordDef; - wbSPLO: IwbSubRecordDef; - wbSPLOs: IwbSubRecordArrayDef; - wbCNTO: IwbSubRecordStructDef; - wbCNTOs: IwbSubRecordArrayDef; - wbAIDT: IwbSubRecordDef; - wbCSDT: IwbSubRecordStructDef; - wbCSDTs: IwbSubRecordArrayDef; - wbFULL: IwbSubRecordDef; - wbFULLActor: IwbSubRecordDef; - wbFULLReq: IwbSubRecordDef; - wbXNAM: IwbSubRecordDef; - wbXNAMs: IwbSubRecordArrayDef; - wbDESC: IwbSubRecordDef; - wbDESCReq: IwbSubRecordDef; - wbXSCL: IwbSubRecordDef; - wbDATAPosRot : IwbSubRecordDef; - wbPosRot : IwbStructDef; - wbMODD: IwbSubRecordDef; - wbMOSD: IwbSubRecordDef; - wbMODL: IwbSubRecordStructDef; - wbMODS: IwbSubRecordDef; - wbMO2S: IwbSubRecordDef; - wbMO3S: IwbSubRecordDef; - wbMO4S: IwbSubRecordDef; - wbMODLActor: IwbSubRecordStructDef; - wbMODLReq: IwbSubRecordStructDef; - wbCTDA: IwbSubRecordDef; - wbSCHRReq: IwbSubRecordDef; - wbCTDAs: IwbSubRecordArrayDef; - wbCTDAsReq: IwbSubRecordArrayDef; - wbSCROs: IwbSubRecordArrayDef; - wbPGRP: IwbSubRecordDef; - wbEmbeddedScript: IwbSubRecordStructDef; - wbEmbeddedScriptPerk: IwbSubRecordStructDef; - wbEmbeddedScriptReq: IwbSubRecordStructDef; - wbSCRI: IwbSubRecordDef; - wbSCRIActor: IwbSubRecordDef; - wbFaceGen: IwbSubRecordStructDef; - wbFaceGenNPC: IwbSubRecordStructDef; - wbENAM: IwbSubRecordDef; - wbFGGS: IwbSubRecordDef; - wbXLOD: IwbSubRecordDef; - wbXESP: IwbSubRecordDef; - wbICON: IwbSubRecordStructDef; - wbICONReq: IwbSubRecordStructDef; - wbActorValue: IwbIntegerDef; - wbETYP: IwbSubRecordDef; - wbETYPReq: IwbSubRecordDef; - wbEFID: IwbSubRecordDef; - wbEFIT: IwbSubRecordDef; - wbEffects: IwbSubRecordArrayDef; - wbEffectsReq: IwbSubRecordArrayDef; - wbBPNDStruct: IwbSubRecordDef; - wbTimeInterpolator: IwbStructDef; - wbColorInterpolator: IwbStructDef; - -function wbNVTREdgeToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Index : Integer; - Flags : Cardinal; - IsExternal : Boolean; - Container : IwbContainerElementRef; -begin - Result := ''; - IsExternal := False; - if Supports(aElement, IwbContainerElementRef, Container) then begin - Index := StrToIntDef(Copy(Container.Name, 11, 1), -1); - if (Index >= 0) and (Index <= 2) then begin - Flags := Container.ElementNativeValues['..\..\Flags']; - IsExternal := Flags and (Cardinal(1) shl Index) <> 0; - end; - end; - - if IsExternal then begin - case aType of - ctToStr: begin - Result := IntToStr(aInt); - if Container.ElementExists['..\..\..\..\NVEX\Connection #' + IntToStr(aInt)] then - Result := Result + ' (Triangle #' + - Container.ElementValues['..\..\..\..\NVEX\Connection #' + IntToStr(aInt) + '\Triangle'] + ' in ' + - Container.ElementValues['..\..\..\..\NVEX\Connection #' + IntToStr(aInt) + '\Navigation Mesh'] + ')' - else - Result := Result + ' '; - end; - ctToSortKey: - if Container.ElementExists['..\..\..\..\NVEX\Connection #' + IntToStr(aInt)] then - Result := - Container.ElementSortKeys['..\..\..\..\NVEX\Connection #' + IntToStr(aInt) + '\Navigation Mesh', True] + '|' + - Container.ElementSortKeys['..\..\..\..\NVEX\Connection #' + IntToStr(aInt) + '\Triangle', True]; - ctCheck: - if Container.ElementExists['..\..\..\..\NVEX\Connection #' + IntToStr(aInt)] then - Result := '' - else - Result := 'NVEX\Connection #' + IntToStr(aInt) + ' is missing'; - end - end else - case aType of - ctToStr: Result := IntToStr(aInt); - end; -end; - -function wbNVTREdgeToInt(const aString: string; const aElement: IwbElement): Int64; -begin - Result := StrToInt64(aString); -end; - - -function wbEPFDActorValueToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - AsCardinal : Cardinal; - AsFloat : Single; -begin - AsCardinal := aInt; - AsFloat := PSingle(@AsCardinal)^; - aInt := Round(AsFloat); - case aType of - ctToStr: Result := wbActorValueEnum.ToString(aInt, aElement); - ctToSortKey: Result := wbActorValueEnum.ToSortKey(aInt, aElement); - ctCheck: Result := wbActorValueEnum.Check(aInt, aElement); - ctToEditValue: Result := wbActorValueEnum.ToEditValue(aInt, aElement); - ctEditType: Result := 'ComboBox'; - ctEditInfo: Result := wbActorValueEnum.EditInfo[aInt, aElement]; - end; -end; - -function wbEPFDActorValueToInt(const aString: string; const aElement: IwbElement): Int64; -var - AsCardinal : Cardinal; - AsFloat : Single; -begin - AsFloat := wbActorValueEnum.FromEditValue(aString, aElement); - PSingle(@AsCardinal)^ := AsFloat; - Result := AsCardinal; -end; - -function wbCTDAParam2VariableNameToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - //Container2 : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - BaseRecord : IwbMainRecord; - ScriptRef : IwbElement; - Script : IwbMainRecord; - Variables : TStringList; - LocalVars : IwbContainerElementRef; - LocalVar : IwbContainerElementRef; - i, j : Integer; - s : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - Exit; - - MainRecord := nil; - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; -{ if Param1.NativeValue = 0 then - if Supports(Container.Container, IwbContainerElementRef, Container) then - for i := 0 to Pred(Container.ElementCount) do - if Supports(Container.Elements[i], IwbContainerElementRef, Container2) then - if SameText(Container2.ElementValues['Function'], 'GetIsID') then begin - Param1 := Container2.ElementByName['Parameter #1']; - if Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Break; - end;} - - if not Assigned(MainRecord) then - Exit; - - BaseRecord := MainRecord.BaseRecord; - if Assigned(BaseRecord) then - MainRecord := BaseRecord; - - ScriptRef := MainRecord.RecordBySignature['SCRI']; - - if not Assigned(ScriptRef) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - if not Supports(ScriptRef.LinksTo, IwbMainRecord, Script) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - Script := Script.HighestOverrideOrSelf[aElement._File.LoadOrder]; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - Variables := TStringList.Create; - else - Variables := nil; - end; - try - if Supports(Script.ElementByName['Local Variables'], IwbContainerElementRef, LocalVars) then begin - for i := 0 to Pred(LocalVars.ElementCount) do - if Supports(LocalVars.Elements[i], IwbContainerElementRef, LocalVar) then begin - j := LocalVar.ElementNativeValues['SLSD\Index']; - s := LocalVar.ElementNativeValues['SCVR']; - if Assigned(Variables) then - Variables.AddObject(s, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := s; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - Variables.Sort; - Result := Variables.CommaText; - end; - end; - finally - FreeAndNil(Variables); - end; -end; - -function wbCTDAParam2VariableNameToInt(const aString: string; const aElement: IwbElement): Int64; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - BaseRecord : IwbMainRecord; - ScriptRef : IwbElement; - Script : IwbMainRecord; - LocalVars : IwbContainerElementRef; - LocalVar : IwbContainerElementRef; - i, j : Integer; - s : string; -begin - Result := StrToInt64Def(aString, Low(Cardinal)); - if Result <> Low(Cardinal) then - Exit; - - if not Assigned(aElement) then - raise Exception.Create('aElement not specified'); - - Container := GetContainerRefFromUnionOrValue(aElement); - - if not Assigned(Container) then - raise Exception.Create('Container not assigned'); - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - raise Exception.Create('Could not find "Parameter #1"'); - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - raise Exception.Create('"Parameter #1" does not reference a valid main record'); - - BaseRecord := MainRecord.BaseRecord; - if Assigned(BaseRecord) then - MainRecord := BaseRecord; - - ScriptRef := MainRecord.RecordBySignature['SCRI']; - - if not Assigned(ScriptRef) then - raise Exception.Create('"'+MainRecord.ShortName+'" does not contain a SCRI subrecord'); - - if not Supports(ScriptRef.LinksTo, IwbMainRecord, Script) then - raise Exception.Create('"'+MainRecord.ShortName+'" does not have a valid script'); - - Script := Script.HighestOverrideOrSelf[aElement._File.LoadOrder]; - - if Supports(Script.ElementByName['Local Variables'], IwbContainerElementRef, LocalVars) then begin - for i := 0 to Pred(LocalVars.ElementCount) do - if Supports(LocalVars.Elements[i], IwbContainerElementRef, LocalVar) then begin - j := LocalVar.ElementNativeValues['SLSD\Index']; - s := LocalVar.ElementNativeValues['SCVR']; - if SameText(s, Trim(aString)) then begin - Result := j; - Exit; - end; - end; - end; - - raise Exception.Create('Variable "'+aString+'" was not found in "'+MainRecord.ShortName+'"'); -end; - -function wbCTDAParam2QuestStageToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Stages : IwbContainerElementRef; - Stage : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - Exit; - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - try - if Supports(MainRecord.ElementByName['Stages'], IwbContainerElementRef, Stages) then begin - for i := 0 to Pred(Stages.ElementCount) do - if Supports(Stages.Elements[i], IwbContainerElementRef, Stage) then begin - j := Stage.ElementNativeValues['INDX']; - s := Trim(Stage.ElementValues['Log Entries\Log Entry\CNAM']); - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.AddObject(t, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbPerkDATAQuestStageToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Stages : IwbContainerElementRef; - Stage : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Quest']; - - if not Assigned(Param1) then - Exit; - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - try - if Supports(MainRecord.ElementByName['Stages'], IwbContainerElementRef, Stages) then begin - for i := 0 to Pred(Stages.ElementCount) do - if Supports(Stages.Elements[i], IwbContainerElementRef, Stage) then begin - j := Stage.ElementNativeValues['INDX']; - s := Trim(Stage.ElementValues['Log Entries\Log Entry\CNAM']); - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.AddObject(t, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbCTDAParam2QuestObjectiveToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Objectives : IwbContainerElementRef; - Objective : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - Exit; - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - try - if Supports(MainRecord.ElementByName['Objectives'], IwbContainerElementRef, Objectives) then begin - for i := 0 to Pred(Objectives.ElementCount) do - if Supports(Objectives.Elements[i], IwbContainerElementRef, Objective) then begin - j := Objective.ElementNativeValues['QOBJ']; - s := Trim(Objective.ElementValues['NNAM']); - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.AddObject(t, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbCTDAParam2QuestStageToInt(const aString: string; const aElement: IwbElement): Int64; -var - i : Integer; - s : string; -begin - i := 1; - s := Trim(aString); - while (i <= Length(s)) and (s[i] in ['0'..'9']) do - Inc(i); - s := Copy(s, 1, Pred(i)); - - Result := StrToInt(s); -end; - -function wbCTDAParam2QuestObjectiveToInt(const aString: string; const aElement: IwbElement): Int64; -var - i : Integer; - s : string; -begin - i := 1; - s := Trim(aString); - while (i <= Length(s)) and (s[i] in ['0'..'9']) do - Inc(i); - s := Copy(s, 1, Pred(i)); - - Result := StrToInt(s); -end; - - -function wbClmtMoonsPhaseLength(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - PhaseLength : Byte; - Masser : Boolean; - Secunda : Boolean; -begin - Result := ''; - if aType = ctToSortKey then begin - Result := IntToHex64(aInt, 2); - end else if aType = ctToStr then begin - PhaseLength := aInt mod 64; - Masser := (aInt and 64) <> 0; - Secunda := (aInt and 128) <> 0; - if Masser then - if Secunda then - Result := 'Masser, Secunda / ' - else - Result := 'Masser / ' - else - if Secunda then - Result := 'Secunda / ' - else - Result := 'No Moon / '; - Result := Result + IntToStr(PhaseLength); - end; -end; - -function wbClmtTime(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - Result := TimeToStr( EncodeTime(aInt div 6, (aInt mod 6) * 10, 0, 0) ) - else - Result := ''; -end; - -function wbAlocTime(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - Result := TimeToStr( aInt / 256 ) - else - Result := ''; -end; - -function wbREFRNavmeshTriangleToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Navmesh : IwbElement; - MainRecord : IwbMainRecord; - Triangles : IwbContainerElementRef; -begin - case aType of - ctToStr: Result := IntToStr(aInt); - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Navmesh := Container.Elements[0]; - - if not Assigned(Navmesh) then - Exit; - - if not Supports(Navmesh.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> NAVM then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - if not wbSimpleRecords and (aType = ctCheck) and Supports(MainRecord.ElementByPath['NVTR'], IwbContainerElementRef, Triangles) then - if aInt >= Triangles.ElementCount then - Result := ''; -end; - -function wbStringToInt(const aString: string; const aElement: IwbElement): Int64; -begin - Result := StrToIntDef(aString, 0); -end; - - -var - wbCtdaTypeFlags : IwbFlagsDef; - -function wbCtdaTypeToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - s: string; -begin - Result := ''; - case aType of - ctEditType: - Result := 'CheckComboBox'; - ctEditInfo: - Result := 'Equal,Greater,Lesser,Or,"Use Global","Run on Target"'; - ctToEditValue: begin - Result := '000000'; - case aInt and $F0 of - $00 : Result[1] := '1'; - $40 : Result[2] := '1'; - $60 : begin - Result[1] := '1'; - Result[2] := '1'; - end; - $80 : Result[3] := '1'; - $A0 : begin - Result[1] := '1'; - Result[3] := '1'; - end; - end; - if (aInt and $01) <> 0 then - Result[4] := '1'; - if (aInt and $02) <> 0 then - Result[6] := '1'; - if (aInt and $04) <> 0 then - Result[5] := '1'; - end; - ctToStr: begin - case aInt and $F0 of - $00 : Result := 'Equal to'; - $20 : Result := 'Not equal to'; - $40 : Result := 'Greater than'; - $60 : Result := 'Greater than or equal to'; - $80 : Result := 'Less than'; - $A0 : Result := 'Less than or equal to'; - else - Result := '' - end; - - if not Assigned(wbCtdaTypeFlags) then - wbCtdaTypeFlags := wbFlags([ - {0x01} 'Or', - {0x02} 'Run on target', - {0x04} 'Use global' - ]); - - s := wbCtdaTypeFlags.ToString(aInt and $0F, aElement); - - if s <> '' then - Result := Result + ' / ' + s; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - Exit; - end; - ctCheck: begin - case aInt and $F0 of - $00, $20, $40, $60, $80, $A0 : Result := ''; - else - Result := '' - end; - - if not Assigned(wbCtdaTypeFlags) then - wbCtdaTypeFlags := wbFlags([ - {0x01} 'Or', - {0x02} 'Run on target', - {0x04} 'Use global' - ]); - - s := wbCtdaTypeFlags.Check(aInt and $0F, aElement); - - if s <> '' then - Result := Result + ' / ' + s; - end; - end; -end; - -function wbCtdaTypeToInt(const aString: string; const aElement: IwbElement): Int64; -var - s: string; -begin - s := aString + '000000'; -// Result := 0; - if s[1] = '1' then begin - if s[2] = '1' then begin - if s[3] = '1' then begin - Result := $00; - end else begin - Result := $60; - end; - end else begin - if s[3] = '1' then begin - Result := $A0; - end else begin - Result := $00; - end; - end; - end else begin - if s[2] = '1' then begin - if s[3] = '1' then begin - Result := $20; - end else begin - Result := $40; - end; - end else begin - if s[3] = '1' then begin - Result := $80; - end else begin - Result := $20; - end; - end; - end; - if s[4] = '1' then - Result := Result or $01; - if s[6] = '1' then - Result := Result or $02; - if s[5] = '1' then - Result := Result or $04; -end; - -procedure wbHeadPartsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainerElementRef; -begin - if wbBeginInternalEdit then try - if Supports(aElement, IwbContainerElementRef, Container) then - if (Container.Elements[0].NativeValue = 1) and (Container.ElementCount > 2) then - Container.RemoveElement(1); - finally - wbEndInternalEdit; - end; -end; - -procedure wbMESGDNAMAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue : Integer; - Container : IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - OldValue := Integer(aOldValue) and 1; - NewValue := Integer(aNewValue) and 1; - if NewValue = OldValue then - Exit; - if NewValue = 1 then - Container.RemoveElement('TNAM') - else - Container.Add('TNAM', True); - end; -end; - -procedure wbGMSTEDIDAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue : string; - Container : IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - OldValue := aOldValue; - NewValue := aNewValue; - if (Length(OldValue) < 1) or (Length(OldValue) < 1) or (OldValue[1] <> NewValue[1]) then begin - Container.RemoveElement('DATA'); - Container.Add('DATA', True); - end; - end; -end; - -procedure wbFLSTEDIDAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue : string; - OldOrdered, NewOrdered : Boolean; - Container : IwbContainerElementRef; -const - OrderedList = 'OrderedList'; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - OldValue := aOldValue; - NewValue := aNewValue; - - if Length(OldValue) > Length(OrderedList) then - Delete(OldValue, 1, Length(OldValue)-Length(OrderedList)); - if Length(NewValue) > Length(OrderedList) then - Delete(NewValue, 1, Length(NewValue)-Length(OrderedList)); - - OldOrdered := SameText(OldValue, OrderedList); - NewOrdered := SameText(NewValue, OrderedList); - - if OldOrdered <> NewOrdered then - Container.RemoveElement('FormIDs'); - end; -end; - -procedure wbCtdaTypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue: Integer; - Container: IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - OldValue := aOldValue and $04; - NewValue := aNewValue and $04; - if OldValue <> NewValue then - Container.ElementNativeValues['..\Comparison Value'] := 0; - - if aNewValue and $02 then begin - Container.ElementNativeValues['..\Run On'] := 1; - if Integer(Container.ElementNativeValues['..\Run On']) = 1 then - aElement.NativeValue := Byte(aNewValue) and not $02; - end; -end; - -function wbMODTCallback(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Strings: TDynStrings; - i: Integer; -begin - Result := ''; - if wbLoaderDone and (aType in [ctToStr, ctToSortKey] ) then begin - Strings := wbContainerHandler.ResolveHash(aInt); - for i := Low(Strings) to High(Strings) do - Result := Result + Strings[i] + ', '; - SetLength(Result, Length(Result) -2 ); - end; -end; - - -function wbIdleAnam(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt and not $C0 of - 0: Result := 'Idle'; - 1: Result := 'Movement'; - 2: Result := 'Left Arm'; - 3: Result := 'Left Hand'; - 4: Result := 'Weapon'; - 5: Result := 'Weapon Up'; - 6: Result := 'Weapon Down'; - 7: Result := 'Special Idle'; - 20: Result := 'Whole Body'; - 21: Result := 'Upper Body'; - else - Result := ''; - end; - - if (aInt and $80) = 0 then - Result := Result + ', Must return a file'; - if (aInt and $40) = 1 then - Result := Result + ', Unknown Flag'; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - end; - ctCheck: begin - case aInt and not $C0 of - 0..7, 20, 21: Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbScaledInt4ToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -const - PlusMinus : array[Boolean] of string = ('+', '-'); -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: Result := FloatToStrF(aInt / 10000, ffFixed, 99, 4); - ctToSortKey: begin - Result := FloatToStrF(aInt / 10000, ffFixed, 99, 4); - if Length(Result) < 22 then - Result := StringOfChar('0', 22 - Length(Result)) + Result; - Result := PlusMinus[aInt < 0] + Result; - end; - ctCheck: Result := ''; - end; -end; - -function wbScaledInt4ToInt(const aString: string; const aElement: IwbElement): Int64; -var - f: Extended; -begin - f := StrToFloat(aString); - f := f * 10000; - Result := Round(f); -end; - -function wbHideFFFF(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - if aInt = $FFFF then - Result := 'None' - else - Result := IntToStr(aInt); -end; - -function wbAtxtPosition(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt div 17, 2) + IntToHex64(aInt mod 17, 2) - else if aType = ctCheck then begin - if (aInt < 0) or (aInt > 288) then - Result := '' - else - Result := ''; - end else if aType = ctToStr then - Result := IntToStr(aInt) + ' -> ' + IntToStr(aInt div 17) + ':' + IntToStr(aInt mod 17); -end; - -function wbGLOBFNAM(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt of - Ord('s'): Result := 'Short'; - Ord('l'): Result := 'Long'; - Ord('f'): Result := 'Float'; - else - Result := ''; - end; - end; - ctToSortKey: Result := Chr(aInt); - ctCheck: begin - case aInt of - Ord('s'), Ord('l'), Ord('f'): Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbPlacedAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec: IwbRecord; - Container: IwbContainer; - s: string; - Cell: IwbMainRecord; - Position: TwbVector; - Grid: TwbGridCell; -begin - Result := ''; - - Rec := aMainRecord.RecordBySignature['NAME']; - if Assigned(Rec) then begin - s := Trim(Rec.Value); - if s <> '' then - Result := 'places ' + s; - end; - - Container := aMainRecord.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if Assigned(Container) then begin - s := Trim(Container.Name); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'in ' + s; - - // grid position of persistent reference in exterior persistent cell (interior cells are not persistent) - if Supports(aMainRecord.Container, IwbGroupRecord, Container) then - Cell := IwbGroupRecord(Container).ChildrenOf; - if Assigned(Cell) and Cell.IsPersistent and (Cell.Signature = 'CELL') then - if aMainRecord.GetPosition(Position) then begin - Grid := wbPositionToGridCell(Position); - Result := Result + ' at ' + IntToStr(Grid.x) + ',' + IntToStr(Grid.y); - end; - end; - end; -end; - -function wbINFOAddInfo(const aMainRecord: IwbMainRecord): string; -var - Container: IwbContainer; - s: string; -begin - Result := Trim(aMainRecord.ElementValues['Responses\Response\NAM1']); - if Result <> '' then - Result := '''' + Result + ''''; - - Container := aMainRecord.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if Assigned(Container) then begin - s := Trim(Container.Name); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'in ' + s; - end; - end; - - s := Trim(aMainRecord.ElementValues['QSTI']); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'for ' + s; - end; -end; - -function wbNAVMAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec : IwbRecord; - Element : IwbElement; - s : string; -begin - Result := ''; - - Rec := aMainRecord.RecordBySignature['DATA']; - if Assigned(Rec) then begin - Element := Rec.ElementByName['Cell']; - if Assigned(Element) then - Element := Element.LinksTo; - if Assigned(Element) then - s := Trim(Element.Name); - if s <> '' then - Result := 'for ' + s; - end; -end; - -function wbCellAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec: IwbRecord; - Container: IwbContainer; - GroupRecord : IwbGroupRecord; - s: string; -begin - Result := ''; - - if not aMainRecord.IsPersistent then begin - Rec := aMainRecord.RecordBySignature['XCLC']; - if Assigned(Rec) then - Result := 'at ' + Rec.Elements[0].Value + ',' + Rec.Elements[1].Value; - end; - - Container := aMainRecord.Container; - while Assigned(Container) and not - (Supports(Container, IwbGroupRecord, GroupRecord) and (GroupRecord.GroupType = 1)) do - Container := Container.Container; - - if Assigned(Container) then begin - s := wbFormID.ToString(GroupRecord.GroupLabel, aMainRecord); - if s <> '' then begin - if Result <> '' then - s := s + ' '; - Result := 'in ' + s + Result; - end; - end; -end; - -function wbWthrDataClassification(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt and not 192 of - 0: Result := 'None'; - 1: Result := 'Pleasant'; - 2: Result := 'Cloudy'; - 4: Result := 'Rainy'; - 8: Result := 'Snow'; - else - Result := ''; - end; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2) - end; - ctCheck: begin - case aInt and not 192 of - 0, 1, 2, 4, 8: Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbNOTETNAMDecide(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rDATA: IwbRecord; -begin - Result := 0; - rDATA := aElement.Container.RecordBySignature[DATA]; - if Assigned(rDATA) then - if rDATA.NativeValue = 3 then //Voice - Result := 1; -end; - -function wbNOTESNAMDecide(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rDATA: IwbRecord; -begin - Result := 0; - rDATA := aElement.Container.RecordBySignature[DATA]; - if Assigned(rDATA) then - if rDATA.NativeValue = 3 then //Voice - Result := 1; -end; - -function wbIPDSDATACount(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if Assigned(aBasePtr) and Assigned(aEndPtr) then - Result := (Cardinal(aBasePtr) - Cardinal(aBasePtr)) div 4 - else - Result := 12; -end; - -function wbNAVINAVMGetCount1(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - DataContainer : IwbDataContainer; -begin - Result := 0; - - if Supports(aElement, IwbDataContainer, DataContainer) then begin - if DataContainer.ElementType = etArray then - if not Supports(DataContainer.Container, IwbDataContainer, DataContainer) then - Exit; - Assert(DataContainer.Name = 'Data'); - Result := PWord(Cardinal(DataContainer.DataBasePtr) + 3*3*4)^; - end; -end; - -function wbNAVINAVMGetCount2(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - DataContainer : IwbDataContainer; -begin - Result := 0; - - if Supports(aElement, IwbDataContainer, DataContainer) then begin - if DataContainer.ElementType = etArray then - if not Supports(DataContainer.Container, IwbDataContainer, DataContainer) then - Exit; - Assert(DataContainer.Name = 'Data'); - Result := PWord(Cardinal(DataContainer.DataBasePtr) + 3*3*4 + 2)^; - end; -end; - -procedure wbCTDARunOnAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - if aOldValue <> aNewValue then - if aNewValue <> 2 then - aElement.Container.ElementNativeValues['Reference'] := 0; -end; - -procedure wbPERKPRKETypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainerElementRef; -// rDATA : IwbRecord; -begin - if aOldValue <> aNewValue then - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - if Supports(Container.Container, IwbContainerElementRef, Container) then begin - Container.RemoveElement('DATA'); - Container.Add('DATA', True); - Container.RemoveElement('Perk Conditions'); - Container.RemoveElement('Entry Point Function Parameters'); - if aNewValue = 2 then begin - Container.Add('EPFT', True); - Container.ElementNativeValues['DATA\Entry Point\Function'] := 2; - end; - end; - end; -end; - -function wbMGEFFAssocItemDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - Archtype : Variant; - DataContainer : IwbDataContainer; - Element : IwbElement; -const - OffsetArchtype = 56; - -begin - Result := 1; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - VarClear(ArchType); - Element := Container.ElementByName['Archtype']; - if Assigned(Element) then - ArchType := Element.NativeValue - else if Supports(Container, IwbDataContainer, DataContainer) and - DataContainer.IsValidOffset(aBasePtr, aEndPtr, OffsetArchtype) then - begin // we are part of a proper structure - aBasePtr := Pointer(Cardinal(aBasePtr) + OffsetArchtype); - ArchType := PCardinal(aBasePtr)^; - end; - - if not VarIsEmpty(ArchType) then - case Integer(ArchType) of - 01: Result := 2;//Script - 18: Result := 3;//Bound Item - 19: Result := 4;//Summon Creature - else - Result := 0; - end; -end; - -procedure wbMGEFFAssocItemAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainer; - Element : IwbElement; -begin - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - if (aNewValue <> 0) then begin - Element := Container.ElementByName['Archtype']; - if Assigned(Element) and Element.NativeValue = 0 then - Element.NativeValue := $FF; // Signals ArchType that it should not mess with us on the next change! - end; -end; - -procedure wbMGEFArchtypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container: IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if (aNewValue < $FF) and (aOldValue < $FF) then begin - Container.ElementNativeValues['..\Assoc. Item'] := 0; - case Integer(aNewValue) of - 11: Container.ElementNativeValues['..\Actor Value'] := 48;//Invisibility - 12: Container.ElementNativeValues['..\Actor Value'] := 49;//Chameleon - 24: Container.ElementNativeValues['..\Actor Value'] := 47;//Paralysis - 36: Container.ElementNativeValues['..\Actor Value'] := 51;//Turbo - else - Container.ElementNativeValues['..\Actor Value'] := -1; - end; - end; -end; - -procedure wbCounterEffectsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterByPathAfterSet('DATA - Data\Counter effect count', aElement); -end; - -procedure wbMGEFAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerByPathAfterSet('DATA - Data\Counter effect count', 'Counter Effects', aElement); -end; - -function wbCTDAReferenceDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Integer(Container.ElementNativeValues['Run On']) = 2 then - Result := 1; -end; - -function wbNAVINVMIDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - case Integer(Container.ElementNativeValues['Type']) of - $00: Result :=1; - $20: Result :=2; - $30: Result :=3; - end; -end; - -function wbIMGSSkinDimmerDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbSubRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - if Supports(Container, IwbSubRecord, SubRecord) then - if SubRecord.SubRecordHeaderSize in [132, 148] then - Result := 1; -end; - -function wbCOEDOwnerDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - LinksTo : IwbElement; - MainRecord : IwbMainRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - LinksTo := Container.ElementByName['Owner'].LinksTo; - - if Supports(LinksTo, IwbMainRecord, MainRecord) then - if MainRecord.Signature = 'NPC_' then - Result := 1 - else if MainRecord.Signature = 'FACT' then - Result := 2; -end; - -function wbCreaLevelDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; - i: Int64; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - i := Container.ElementByName['Flags'].NativeValue; - if i and $00000080 <> 0 then - Result := 1; -end; - - -function wbGMSTUnionDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rEDID: IwbRecord; - s: string; -begin - Result := 1; - rEDID := aElement.Container.RecordBySignature[EDID]; - if Assigned(rEDID) then begin - s := rEDID.Value; - if Length(s) > 0 then - case s[1] of - 's': Result := 0; - 'f': Result := 2; - end; - end; -end; - -function wbFLSTLNAMIsSorted(const aContainer: IwbContainer): Boolean; -var - rEDID : IwbRecord; - s : string; - _File : IwbFile; - MainRecord : IwbMainRecord; -const - OrderedList = 'OrderedList'; -begin - Result := wbSortFLST; {>>> Should not be sorted according to Arthmoor and JustinOther, left as sorted for compatibility <<<} - rEDID := aContainer.RecordBySignature[EDID]; - if Assigned(rEDID) then begin - s := rEDID.Value; - if Length(s) > Length(OrderedList) then - Delete(s, 1, Length(s)-Length(OrderedList)); - if SameText(s, OrderedList) then - Result := False; - end; - if Result then begin - MainRecord := aContainer.ContainingMainRecord; - if not Assigned(MainRecord) then - Exit; - MainRecord := MainRecord.MasterOrSelf; - if not Assigned(MainRecord) then - Exit; - _File := MainRecord._File; - if not Assigned(_File) then - Exit; - if not SameText(_File.FileName, 'WeaponModKits.esp') then - Exit; - case (MainRecord.FormID and $FFFFFF) of - $0130EB, $0130ED, $01522D, $01522E, $0158D5, $0158D6, $0158D7, $0158D8, $0158D9, $0158DA, $0158DC, $0158DD, $018E20: - Result := False; - end; - end; -end; - -function wbPerkDATADecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rPRKE: IwbRecord; - eType: IwbElement; -begin - Result := 0; - rPRKE := aElement.Container.RecordBySignature[PRKE]; - if Assigned(rPRKE) then begin - eType := rPRKE.ElementByName['Type']; - if Assigned(eType) then begin - Result := eType.NativeValue; - end; - end; -end; - -function wbEPFDDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainerElementRef; -begin - Result := 0; - if not Assigned(aElement) then - Exit; - if not Supports(aElement.Container, IwbContainerElementRef, Container) then - Exit; - Result := Container.ElementNativeValues['EPFT']; - if Result = 2 then - if Integer(Container.ElementNativeValues['..\DATA\Entry Point\Function']) = 5 then - Result := 5; -end; - -type - TCTDAFunctionParamType = ( - ptNone, - ptInteger, - ptVariableName, //Integer - ptSex, //Enum: Male, Female - ptActorValue, //Enum: wbActorValue - ptCrimeType, //?? Enum - ptAxis, //?? Char - ptQuestStage, //?? Integer - ptMiscStat, //?? Enum - ptAlignment, //?? Enum - ptEquipType, //?? Enum - ptFormType, //?? Enum - ptCriticalStage, //?? Enum - - ptObjectReference, //REFR, ACHR, ACRE, PGRE - ptInventoryObject, //ARMO, BOOK, MISC, WEAP, AMMO, KEYM, ALCH, NOTE, ARMA - ptActor, //ACHR, ACRE - ptVoiceType, //VTYP - ptIdleForm, //IDLE - ptFormList, //FLST - ptNote, //NOTE - ptQuest, //QUST - ptFaction, //FACT - ptWeapon, //WEAP - ptCell, //CELL - ptClass, //CLAS - ptRace, //RACE - ptActorBase, //NPC_, CREA - ptGlobal, //GLOB - ptWeather, //WTHR - ptPackage, //PACK - ptEncounterZone, //ECZN - ptPerk, //PERK - ptOwner, //FACT, NPC_ - ptFurniture, //FURN - ptMagicItem, //SPEL - ptMagicEffect, //MGEF - ptWorldspace, //WRLD - ptVATSValueFunction, - ptVATSValueParam, - ptCreatureType, - ptMenuMode, - ptPlayerAction, - ptBodyLocation, - ptReferencableObject, //TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, NOTE, PWAT, SCOL, TACT, TERM - ptQuestObjective, //?? Integer - ptReputation, //REPU - ptRegion, //REGN - ptChallenge, //CHAL - ptCasino, //CSNO - ptAnyForm // Any form - ); - - PCTDAFunction = ^TCTDAFunction; - TCTDAFunction = record - Index: Integer; - Name: string; - ParamType1: TCTDAFunctionParamType; - ParamType2: TCTDAFunctionParamType; - end; - -const - wbCTDAFunctions : array[0..288] of TCTDAFunction = ( - (Index: 1; Name: 'GetDistance'; ParamType1: ptObjectReference), - (Index: 5; Name: 'GetLocked'), - (Index: 6; Name: 'GetPos'; ParamType1: ptAxis), - (Index: 8; Name: 'GetAngle'; ParamType1: ptAxis), - (Index: 10; Name: 'GetStartingPos'; ParamType1: ptAxis), - (Index: 11; Name: 'GetStartingAngle'; ParamType1: ptAxis), - (Index: 12; Name: 'GetSecondsPassed'), - (Index: 14; Name: 'GetActorValue'; ParamType1: ptActorValue), - (Index: 18; Name: 'GetCurrentTime'), - (Index: 24; Name: 'GetScale'), - (Index: 25; Name: 'IsMoving'), - (Index: 26; Name: 'IsTurning'), - (Index: 27; Name: 'GetLineOfSight'; ParamType1: ptObjectReference), - (Index: 32; Name: 'GetInSameCell'; ParamType1: ptObjectReference), - (Index: 35; Name: 'GetDisabled'), - (Index: 36; Name: 'MenuMode'; ParamType1: ptMenuMode), - (Index: 39; Name: 'GetDisease'), - (Index: 40; Name: 'GetVampire'), - (Index: 41; Name: 'GetClothingValue'), - (Index: 42; Name: 'SameFaction'; ParamType1: ptActor), - (Index: 43; Name: 'SameRace'; ParamType1: ptActor), - (Index: 44; Name: 'SameSex'; ParamType1: ptActor), - (Index: 45; Name: 'GetDetected'; ParamType1: ptActor), - (Index: 46; Name: 'GetDead'), - (Index: 47; Name: 'GetItemCount'; ParamType1: ptInventoryObject), - (Index: 48; Name: 'GetGold'), - (Index: 49; Name: 'GetSleeping'), - (Index: 50; Name: 'GetTalkedToPC'), - (Index: 53; Name: 'GetScriptVariable'; ParamType1: ptObjectReference; ParamType2: ptVariableName), - (Index: 56; Name: 'GetQuestRunning'; ParamType1: ptQuest), - (Index: 58; Name: 'GetStage'; ParamType1: ptQuest), - (Index: 59; Name: 'GetStageDone'; ParamType1: ptQuest; ParamType2: ptQuestStage), - (Index: 60; Name: 'GetFactionRankDifference'; ParamType1: ptFaction; ParamType2: ptActor), - (Index: 61; Name: 'GetAlarmed'), - (Index: 62; Name: 'IsRaining'), - (Index: 63; Name: 'GetAttacked'), - (Index: 64; Name: 'GetIsCreature'), - (Index: 65; Name: 'GetLockLevel'), - (Index: 66; Name: 'GetShouldAttack'; ParamType1: ptActor), - (Index: 67; Name: 'GetInCell'; ParamType1: ptCell), - (Index: 68; Name: 'GetIsClass'; ParamType1: ptClass), - (Index: 69; Name: 'GetIsRace'; ParamType1: ptRace), - (Index: 70; Name: 'GetIsSex'; ParamType1: ptSex), - (Index: 71; Name: 'GetInFaction'; ParamType1: ptFaction), - (Index: 72; Name: 'GetIsID'; ParamType1: ptReferencableObject), - (Index: 73; Name: 'GetFactionRank'; ParamType1: ptFaction), - (Index: 74; Name: 'GetGlobalValue'; ParamType1: ptGlobal), - (Index: 75; Name: 'IsSnowing'), - (Index: 76; Name: 'GetDisposition'; ParamType1: ptActor), - (Index: 77; Name: 'GetRandomPercent'), - (Index: 79; Name: 'GetQuestVariable'; ParamType1: ptQuest; ParamType2: ptVariableName), - (Index: 80; Name: 'GetLevel'), - (Index: 81; Name: 'GetArmorRating'), - (Index: 84; Name: 'GetDeadCount'; ParamType1: ptActorBase), - (Index: 91; Name: 'GetIsAlerted'), - (Index: 98; Name: 'GetPlayerControlsDisabled'; ParamType1: ptInteger; ParamType2: ptInteger{; ParamType3: ptInteger; ParamType4: ptInteger; ParamType5: ptInteger; ParamType6: ptInteger; ParamType7: ptInteger}), - (Index: 99; Name: 'GetHeadingAngle'; ParamType1: ptObjectReference), - (Index: 101; Name: 'IsWeaponOut'), - (Index: 102; Name: 'IsTorchOut'), - (Index: 103; Name: 'IsShieldOut'), - (Index: 106; Name: 'IsFacingUp'), - (Index: 107; Name: 'GetKnockedState'), - (Index: 108; Name: 'GetWeaponAnimType'), - (Index: 109; Name: 'IsWeaponSkillType'; ParamType1: ptActorValue), - (Index: 110; Name: 'GetCurrentAIPackage'), - (Index: 111; Name: 'IsWaiting'), - (Index: 112; Name: 'IsIdlePlaying'), - (Index: 116; Name: 'GetMinorCrimeCount'), - (Index: 117; Name: 'GetMajorCrimeCount'), - (Index: 118; Name: 'GetActorAggroRadiusViolated'), - (Index: 122; Name: 'GetCrime'; ParamType1: ptActor; ParamType2: ptCrimeType), - (Index: 123; Name: 'IsGreetingPlayer'), - (Index: 125; Name: 'IsGuard'), - (Index: 127; Name: 'HasBeenEaten'), - (Index: 128; Name: 'GetFatiguePercentage'), - (Index: 129; Name: 'GetPCIsClass'; ParamType1: ptClass), - (Index: 130; Name: 'GetPCIsRace'; ParamType1: ptRace), - (Index: 131; Name: 'GetPCIsSex'; ParamType1: ptSex), - (Index: 132; Name: 'GetPCInFaction'; ParamType1: ptFaction), - (Index: 133; Name: 'SameFactionAsPC'), - (Index: 134; Name: 'SameRaceAsPC'), - (Index: 135; Name: 'SameSexAsPC'), - (Index: 136; Name: 'GetIsReference'; ParamType1: ptObjectReference), - (Index: 141; Name: 'IsTalking'), - (Index: 142; Name: 'GetWalkSpeed'), - (Index: 143; Name: 'GetCurrentAIProcedure'), - (Index: 144; Name: 'GetTrespassWarningLevel'), - (Index: 145; Name: 'IsTrespassing'), - (Index: 146; Name: 'IsInMyOwnedCell'), - (Index: 147; Name: 'GetWindSpeed'), - (Index: 148; Name: 'GetCurrentWeatherPercent'), - (Index: 149; Name: 'GetIsCurrentWeather'; ParamType1: ptWeather), - (Index: 150; Name: 'IsContinuingPackagePCNear'), - (Index: 153; Name: 'CanHaveFlames'), - (Index: 154; Name: 'HasFlames'), - (Index: 157; Name: 'GetOpenState'), - (Index: 159; Name: 'GetSitting'), - (Index: 160; Name: 'GetFurnitureMarkerID'), - (Index: 161; Name: 'GetIsCurrentPackage'; ParamType1: ptPackage), - (Index: 162; Name: 'IsCurrentFurnitureRef'; ParamType1: ptObjectReference), - (Index: 163; Name: 'IsCurrentFurnitureObj'; ParamType1: ptFurniture), - (Index: 170; Name: 'GetDayOfWeek'), - (Index: 172; Name: 'GetTalkedToPCParam'; ParamType1: ptActor), - (Index: 175; Name: 'IsPCSleeping'), - (Index: 176; Name: 'IsPCAMurderer'), - (Index: 180; Name: 'GetDetectionLevel'; ParamType1: ptActor), - (Index: 182; Name: 'GetEquipped'; ParamType1: ptInventoryObject), - (Index: 185; Name: 'IsSwimming'), - (Index: 190; Name: 'GetAmountSoldStolen'), - (Index: 192; Name: 'GetIgnoreCrime'), - (Index: 193; Name: 'GetPCExpelled'; ParamType1: ptFaction), - (Index: 195; Name: 'GetPCFactionMurder'; ParamType1: ptFaction), - (Index: 197; Name: 'GetPCEnemyofFaction'; ParamType1: ptFaction), - (Index: 199; Name: 'GetPCFactionAttack'; ParamType1: ptFaction), - (Index: 203; Name: 'GetDestroyed'), - (Index: 214; Name: 'HasMagicEffect'; ParamType1: ptMagicEffect), - (Index: 215; Name: 'GetDefaultOpen'), - (Index: 219; Name: 'GetAnimAction'), - (Index: 223; Name: 'IsSpellTarget'; ParamType1: ptMagicItem), - (Index: 224; Name: 'GetVATSMode'), - (Index: 225; Name: 'GetPersuasionNumber'), - (Index: 226; Name: 'GetSandman'), - (Index: 227; Name: 'GetCannibal'), - (Index: 228; Name: 'GetIsClassDefault'; ParamType1: ptClass), - (Index: 229; Name: 'GetClassDefaultMatch'), - (Index: 230; Name: 'GetInCellParam'; ParamType1: ptCell; ParamType2: ptObjectReference), - (Index: 235; Name: 'GetVatsTargetHeight'), - (Index: 237; Name: 'GetIsGhost'), - (Index: 242; Name: 'GetUnconscious'), - (Index: 244; Name: 'GetRestrained'), - (Index: 246; Name: 'GetIsUsedItem'; ParamType1: ptReferencableObject), - (Index: 247; Name: 'GetIsUsedItemType'; ParamType1: ptFormType), - (Index: 254; Name: 'GetIsPlayableRace'), - (Index: 255; Name: 'GetOffersServicesNow'), - (Index: 258; Name: 'GetUsedItemLevel'), - (Index: 259; Name: 'GetUsedItemActivate'), - (Index: 264; Name: 'GetBarterGold'), - (Index: 265; Name: 'IsTimePassing'), - (Index: 266; Name: 'IsPleasant'), - (Index: 267; Name: 'IsCloudy'), - (Index: 274; Name: 'GetArmorRatingUpperBody'), - (Index: 277; Name: 'GetBaseActorValue'; ParamType1: ptActorValue), - (Index: 278; Name: 'IsOwner'; ParamType1: ptOwner), - (Index: 280; Name: 'IsCellOwner'; ParamType1: ptCell; ParamType2: ptOwner), - (Index: 282; Name: 'IsHorseStolen'), - (Index: 285; Name: 'IsLeftUp'), - (Index: 286; Name: 'IsSneaking'), - (Index: 287; Name: 'IsRunning'), - (Index: 288; Name: 'GetFriendHit'), - (Index: 289; Name: 'IsInCombat'), - (Index: 300; Name: 'IsInInterior'), - (Index: 304; Name: 'IsWaterObject'), - (Index: 306; Name: 'IsActorUsingATorch'), - (Index: 309; Name: 'IsXBox'), - (Index: 310; Name: 'GetInWorldspace'; ParamType1: ptWorldSpace), - (Index: 312; Name: 'GetPCMiscStat'; ParamType1: ptMiscStat), - (Index: 313; Name: 'IsActorEvil'), - (Index: 314; Name: 'IsActorAVictim'), - (Index: 315; Name: 'GetTotalPersuasionNumber'), - (Index: 318; Name: 'GetIdleDoneOnce'), - (Index: 320; Name: 'GetNoRumors'), - (Index: 323; Name: 'WhichServiceMenu'), - (Index: 327; Name: 'IsRidingHorse'), - (Index: 332; Name: 'IsInDangerousWater'), - (Index: 338; Name: 'GetIgnoreFriendlyHits'), - (Index: 339; Name: 'IsPlayersLastRiddenHorse'), - (Index: 353; Name: 'IsActor'), - (Index: 354; Name: 'IsEssential'), - (Index: 358; Name: 'IsPlayerMovingIntoNewSpace'), - (Index: 361; Name: 'GetTimeDead'), - (Index: 362; Name: 'GetPlayerHasLastRiddenHorse'), - (Index: 365; Name: 'IsChild'), - (Index: 367; Name: 'GetLastPlayerAction'), - (Index: 368; Name: 'IsPlayerActionActive'; ParamType1: ptPlayerAction), - (Index: 370; Name: 'IsTalkingActivatorActor'; ParamType1: ptActor), - (Index: 372; Name: 'IsInList'; ParamType1: ptFormList), - (Index: 382; Name: 'GetHasNote'; ParamType1: ptNote), - (Index: 391; Name: 'GetHitLocation'), - (Index: 392; Name: 'IsPC1stPerson'), - (Index: 397; Name: 'GetCauseofDeath'), - (Index: 398; Name: 'IsLimbGone'; ParamType1: ptBodyLocation), - (Index: 399; Name: 'IsWeaponInList'; ParamType1: ptFormList), - (Index: 403; Name: 'HasFriendDisposition'), - (Index: 408; Name: 'GetVATSValue'; ParamType1: ptVATSValueFunction; ParamType2: ptVATSValueParam), - (Index: 409; Name: 'IsKiller'; ParamType1: ptActor), - (Index: 410; Name: 'IsKillerObject'; ParamType1: ptFormList), - (Index: 411; Name: 'GetFactionCombatReaction'; ParamType1: ptFaction; ParamType2: ptFaction), - (Index: 415; Name: 'Exists'; ParamType1: ptObjectReference), - (Index: 416; Name: 'GetGroupMemberCount'), - (Index: 417; Name: 'GetGroupTargetCount'), - (Index: 420; Name: 'GetObjectiveCompleted'; ParamType1: ptQuest; ParamType2: ptQuestObjective), - (Index: 421; Name: 'GetObjectiveDisplayed'; ParamType1: ptQuest; ParamType2: ptQuestObjective), - (Index: 427; Name: 'GetIsVoiceType'; ParamType1: ptVoiceType), - (Index: 428; Name: 'GetPlantedExplosive'), - (Index: 430; Name: 'IsActorTalkingThroughActivator'), - (Index: 431; Name: 'GetHealthPercentage'), - (Index: 433; Name: 'GetIsObjectType'; ParamType1: ptFormType), - (Index: 435; Name: 'GetDialogueEmotion'), - (Index: 436; Name: 'GetDialogueEmotionValue'), - (Index: 438; Name: 'GetIsCreatureType'; ParamType1: ptCreatureType), - (Index: 446; Name: 'GetInZone'; ParamType1: ptEncounterZone), - (Index: 449; Name: 'HasPerk'; ParamType1: ptPerk; ParamType2: ptInteger {boolean Alt}), // PlayerCharacter has 2 lists of perks - (Index: 450; Name: 'GetFactionRelation'; ParamType1: ptActor), - (Index: 451; Name: 'IsLastIdlePlayed'; ParamType1: ptIdleForm), - (Index: 454; Name: 'GetPlayerTeammate'), - (Index: 455; Name: 'GetPlayerTeammateCount'), - (Index: 459; Name: 'GetActorCrimePlayerEnemy'), - (Index: 460; Name: 'GetActorFactionPlayerEnemy'), - (Index: 462; Name: 'IsPlayerTagSkill'; ParamType1: ptActorValue), - (Index: 464; Name: 'IsPlayerGrabbedRef'; ParamType1: ptObjectReference), - (Index: 471; Name: 'GetDestructionStage'), - (Index: 474; Name: 'GetIsAlignment'; ParamType1: ptAlignment), - (Index: 478; Name: 'GetThreatRatio'; ParamType1: ptActor), - (Index: 480; Name: 'GetIsUsedItemEquipType'; ParamType1: ptEquipType), - (Index: 489; Name: 'GetConcussed'), - (Index: 492; Name: 'GetMapMarkerVisible'), - (Index: 495; Name: 'GetPermanentActorValue'; ParamType1: ptActorValue), - (Index: 496; Name: 'GetKillingBlowLimb'), - (Index: 500; Name: 'GetWeaponHealthPerc'), - (Index: 503; Name: 'GetRadiationLevel'), - (Index: 510; Name: 'GetLastHitCritical'), - (Index: 515; Name: 'IsCombatTarget'; ParamType1: ptActor), - (Index: 518; Name: 'GetVATSRightAreaFree'; ParamType1: ptObjectReference), - (Index: 519; Name: 'GetVATSLeftAreaFree'; ParamType1: ptObjectReference), - (Index: 520; Name: 'GetVATSBackAreaFree'; ParamType1: ptObjectReference), - (Index: 521; Name: 'GetVATSFrontAreaFree'; ParamType1: ptObjectReference), - (Index: 522; Name: 'GetIsLockBroken'), - (Index: 523; Name: 'IsPS3'), - (Index: 524; Name: 'IsWin32'), - (Index: 525; Name: 'GetVATSRightTargetVisible'; ParamType1: ptObjectReference), - (Index: 526; Name: 'GetVATSLeftTargetVisible'; ParamType1: ptObjectReference), - (Index: 527; Name: 'GetVATSBackTargetVisible'; ParamType1: ptObjectReference), - (Index: 528; Name: 'GetVATSFrontTargetVisible'; ParamType1: ptObjectReference), - (Index: 531; Name: 'IsInCriticalStage'; ParamType1: ptCriticalStage), - (Index: 533; Name: 'GetXPForNextLevel'), - (Index: 546; Name: 'GetQuestCompleted'; ParamType1: ptQuest), - (Index: 550; Name: 'IsGoreDisabled'), - (Index: 555; Name: 'GetSpellUsageNum'; ParamType1: ptMagicItem), - (Index: 557; Name: 'GetActorsInHigh'), - (Index: 558; Name: 'HasLoaded3D'), - (Index: 573; Name: 'GetReputation'; ParamType1: ptReputation; ParamType2: ptInteger), - (Index: 574; Name: 'GetReputationPct'; ParamType1: ptReputation; ParamType2: ptInteger), - (Index: 575; Name: 'GetReputationThreshold'; ParamType1: ptReputation; ParamType2: ptInteger), - (Index: 586; Name: 'IsHardcore'), - (Index: 601; Name: 'GetForceHitReaction'), - (Index: 607; Name: 'ChallengeLocked'; ParamType1: ptChallenge), - (Index: 610; Name: 'GetCasinoWinningStage'; ParamType1: ptCasino), - (Index: 612; Name: 'PlayerInRegion'; ParamType1: ptRegion), - (Index: 614; Name: 'GetChallengeCompleted'; ParamType1: ptChallenge), - (Index: 619; Name: 'IsAlwaysHardcore'), - - // Added by NVSE - (Index: 1024; Name: 'GetNVSEVersion'; ), - (Index: 1025; Name: 'GetNVSERevision'; ), - (Index: 1026; Name: 'GetNVSEBeta'; ), - (Index: 1028; Name: 'GetWeight'; ParamType1: ptInventoryObject; ), - (Index: 1076; Name: 'GetWeaponHasScope'; ParamType1: ptInventoryObject; ), - (Index: 1089; Name: 'ListGetFormIndex'; ParamType1: ptFormList; ParamType2: ptFormType;), - (Index: 1107; Name: 'IsKeyPressed'; ParamType1: ptInteger; ParamType2: ptInteger;), - (Index: 1131; Name: 'IsControlPressed'; ParamType1: ptInteger; ), - (Index: 1271; Name: 'HasOwnership'; ParamType1: ptObjectReference; ), - (Index: 1272; Name: 'IsOwned'; ParamType1: ptActor ), - (Index: 1274; Name: 'GetDialogueTarget'; ParamType1: ptActor; ), - (Index: 1275; Name: 'GetDialogueSubject'; ParamType1: ptActor; ), - (Index: 1276; Name: 'GetDialogueSpeaker'; ParamType1: ptActor; ), - (Index: 1278; Name: 'GetAgeClass'; ParamType1: ptActorBase; ), - (Index: 1286; Name: 'GetTokenValue'; ParamType1: ptFormType; ), - (Index: 1288; Name: 'GetTokenRef'; ParamType1: ptFormType; ), - (Index: 1291; Name: 'GetPaired'; ParamType1: ptInventoryObject; ParamType2: ptActorBase;), - (Index: 1292; Name: 'GetRespawn'; ParamType1: ptACtorBase; ), - (Index: 1294; Name: 'GetPermanent'; ParamType1: ptObjectReference; ), - (Index: 1297; Name: 'IsRefInList'; ParamType1: ptFormList; ParamType2: ptFormType;), - (Index: 1301; Name: 'GetPackageCount'; ParamType1: ptObjectReference; ), - (Index: 1440; Name: 'IsPlayerSwimming'; ), - (Index: 1441; Name: 'GetTFC'; ), - (Index: 1475; Name: 'GetPerkRank'; ParamType1: ptPerk; ParamType2: ptActor;), - (Index: 1476; Name: 'GetAltPerkRank'; ParamType1: ptPerk; ParamType2: ptActor;), - (Index: 1541; Name: 'GetActorFIKstatus'; ), - - // Added by nvse_plugin_ExtendedActorVariable - (Index: 4352; Name: 'GetExtendedActorVariable'; ParamType1: ptInventoryObject; ), - (Index: 4353; Name: 'GetBaseExtendedActorVariable'; ParamType1: ptInventoryObject; ), - (Index: 4355; Name: 'GetModExtendedActorVariable'; ParamType1: ptInventoryObject; ), - - // Added by nvse_extender - (Index: 4420; Name: 'NX_GetEVFl'; ParamType1: ptNone; ), // Actually ptString, but it cannot be used in GECK - (Index: 4426; Name: 'NX_GetQVEVFl'; ParamType1: ptQuest; ParamType2: ptInteger;), - - // Added by lutana_nvse - (Index: 4708; Name: 'GetArmorClass'; ParamType1: ptAnyForm; ), - (Index: 4709; Name: 'IsRaceInList'; ParamType1: ptFormList; ), - (Index: 4822; Name: 'GetReferenceFlag'; ParamType1: ptInteger; ), - - // Added by JIP NVSE Plugin - (Index: 5637; Name: 'GetIsPoisoned'; ), - (Index: 5708; Name: 'IsEquippedWeaponSilenced'; ), - (Index: 5709; Name: 'IsEquippedWeaponScoped'; ), - (Index: 5953; Name: 'GetPCInRegion'; ParamType1: ptRegion; ), - (Index: 5962; Name: 'GetPCDetectionState'; ) - ); - -var - wbCTDAFunctionEditInfo: string; - -function wbCTDAParamDescFromIndex(aIndex: Integer): PCTDAFunction; -var - L, H, I, C: Integer; -begin - Result := nil; - - L := Low(wbCTDAFunctions); - H := High(wbCTDAFunctions); - while L <= H do begin - I := (L + H) shr 1; - C := CmpW32(wbCTDAFunctions[I].Index, aIndex); - if C < 0 then - L := I + 1 - else begin - H := I - 1; - if C = 0 then begin - L := I; - Result := @wbCTDAFunctions[L]; - end; - end; - end; -end; - -function wbCTDACompValueDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - if Integer(Container.ElementByName['Type'].NativeValue) and $04 <> 0 then - Result := 1; -end; - -function wbCTDAParam1Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Desc: PCTDAFunction; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - Desc := wbCTDAParamDescFromIndex(Container.ElementByName['Function'].NativeValue); - if Assigned(Desc) then - Result := Succ(Integer(Desc.ParamType1)); -end; - -function wbCTDAParam2VATSValueParam(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - Result := Container.ElementByName['Parameter #1'].NativeValue; -end; - -function wbCTDAParam2Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Desc: PCTDAFunction; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - Desc := wbCTDAParamDescFromIndex(Container.ElementByName['Function'].NativeValue); - if Assigned(Desc) then - Result := Succ(Integer(Desc.ParamType2)); -end; - -function wbCTDAFunctionToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Desc : PCTDAFunction; - i : Integer; -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := Desc.Name - else if aType = ctToEditValue then - Result := IntToStr(aInt) - else - Result := ''; - end; - ctToSortKey: Result := IntToHex(aInt, 8); - ctCheck: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := '' - else - Result := ''; - end; - ctEditType: - Result := 'ComboBox'; - ctEditInfo: begin - Result := wbCTDAFunctionEditInfo; - if Result = '' then begin - with TStringList.Create do try - for i := Low(wbCTDAFunctions) to High(wbCTDAFunctions) do - Add(wbCTDAFunctions[i].Name); - Sort; - Result := CommaText; - finally - Free; - end; - wbCTDAFunctionEditInfo := Result; - end; - end; - end; -end; - -function wbCTDAFunctionToInt(const aString: string; const aElement: IwbElement): Int64; -var - i: Integer; -begin - for i := Low(wbCTDAFunctions) to High(wbCTDAFunctions) do - with wbCTDAFunctions[i] do - if SameText(Name, aString) then begin - Result := Index; - Exit; - end; - Result := StrToInt64(aString); -end; - -type - TPERKEntryPointConditionType = ( - epcDefault, - epcItem, - epcWeapon, - epcWeaponTarget, - epcTarget, - epcAttacker, - epcAttackerAttackee, - epcAttackerAttackerWeapon - ); - - TPERKEntryPointFunctionType = ( - epfFloat, - epfLeveledItem, - epfScript, - epfUnknown - ); - - TPERKEntryPointFunctionParamType = ( - epfpNone, - epfpFloat, - epfpFloatFloat, - epfpLeveledItem, - epfpScript - ); - - PPERKEntryPoint = ^TPERKEntryPoint; - TPERKEntryPoint = record - Name : string; - Condition : TPERKEntryPointConditionType; - FunctionType : TPERKEntryPointFunctionType; - end; - - PPERKCondition = ^TPERKCondition; - TPERKCondition = record - Count : Integer; - Caption1 : string; - Caption2 : string; - Caption3 : string; - end; - - PPERKFunction = ^TPERKFunction; - TPERKFunction = record - Name : string; - FunctionType : TPERKEntryPointFunctionType; - ParamType : TPERKEntryPointFunctionParamType; - end; - -const - wbPERKCondition : array[TPERKEntryPointConditionType] of TPERKCondition = ( - (Count: 1; Caption1: 'Perk Owner'), - (Count: 2; Caption1: 'Perk Owner'; Caption2: 'Item'), - (Count: 2; Caption1: 'Perk Owner'; Caption2: 'Weapon'), - (Count: 3; Caption1: 'Perk Owner'; Caption2: 'Weapon'; Caption3: 'Target'), - (Count: 2; Caption1: 'Perk Owner'; Caption2: 'Target'), - (Count: 2; Caption1: 'Perk Owner'; Caption2: 'Attacker'), - (Count: 3; Caption1: 'Perk Owner'; Caption2: 'Attacker'; Caption3: 'Attackee'), - (Count: 3; Caption1: 'Perk Owner'; Caption2: 'Attacker'; Caption3: 'Attacker Weapon') - ); - - wbPERKFunctions : array[0..9] of TPERKFunction = ( - (Name: ''; FunctionType: epfUnknown; ParamType: epfpNone), - (Name: 'Set Value'; FunctionType: epfFloat; ParamType: epfpFloat), - (Name: 'Add Value'; FunctionType: epfFloat; ParamType: epfpFloat), - (Name: 'Multiply Value'; FunctionType: epfFloat; ParamType: epfpFloat), - (Name: 'Add Range To Value'; FunctionType: epfFloat; ParamType: epfpFloatFloat), - (Name: 'Add Actor Value Mult'; FunctionType: epfFloat; ParamType: epfpFloatFloat), - (Name: 'Absolute Value'; FunctionType: epfFloat; ParamType: epfpNone), - (Name: 'Negative Absolute Value'; FunctionType: epfFloat; ParamType: epfpNone), - (Name: 'Add Leveled List'; FunctionType: epfLeveledItem; ParamType: epfpLeveledItem), - (Name: 'Add Activate Choice'; FunctionType: epfScript; ParamType: epfpScript) - ); - - wbPERKEntryPoints : array[0..73] of TPERKEntryPoint = ( - (Name: 'Calculate Weapon Damage'; Condition: epcWeaponTarget), - (Name: 'Calculate My Critical Hit Chance'; Condition: epcWeaponTarget), - (Name: 'Calculate My Critical Hit Damage'; Condition: epcWeaponTarget), - (Name: 'Calculate Weapon Attack AP Cost'; Condition: epcWeapon), - (Name: 'Calculate Mine Explode Chance'; Condition: epcItem), - (Name: 'Adjust Range Penalty'; Condition: epcWeapon), - (Name: 'Adjust Limb Damage'; Condition: epcAttackerAttackerWeapon), - (Name: 'Calculate Weapon Range'; Condition: epcWeapon), - (Name: 'Calculate To Hit Chance'; Condition: epcWeaponTarget), - (Name: 'Adjust Experience Points'), - (Name: 'Adjust Gained Skill Points'), - (Name: 'Adjust Book Skill Points'), - (Name: 'Modify Recovered Health'), - (Name: 'Calculate Inventory AP Cost'), - (Name: 'Get Disposition'; Condition: epcTarget), - (Name: 'Get Should Attack'; Condition: epcAttacker), - (Name: 'Get Should Assist'; Condition: epcAttackerAttackee), - (Name: 'Calculate Buy Price'; Condition: epcItem), - (Name: 'Get Bad Karma'), - (Name: 'Get Good Karma'), - (Name: 'Ignore Locked Terminal'), - (Name: 'Add Leveled List On Death'; Condition: epcTarget; FunctionType: epfLeveledItem), - (Name: 'Get Max Carry Weight'), - (Name: 'Modify Addiction Chance'), - (Name: 'Modify Addiction Duration'), - (Name: 'Modify Positive Chem Duration'), - (Name: 'Adjust Drinking Radiation'), - (Name: 'Activate'; Condition: epcTarget; FunctionType: epfScript), - (Name: 'Mysterious Stranger'), - (Name: 'Has Paralyzing Palm'), - (Name: 'Hacking Science Bonus'), - (Name: 'Ignore Running During Detection'), - (Name: 'Ignore Broken Lock'), - (Name: 'Has Concentrated Fire'), - (Name: 'Calculate Gun Spread'; Condition: epcWeapon), - (Name: 'Player Kill AP Reward'; Condition: epcWeaponTarget), -{36}(Name: 'Modify Enemy Critical Hit Chance'; Condition: epcWeaponTarget), -{37}(Name: 'Reload Speed'; Condition: epcWeapon), -{38}(Name: 'Equip Speed'; Condition: epcWeapon), -{39}(Name: 'Action Point Regen'; Condition: epcWeapon), -{40}(Name: 'Action Point Cost'; Condition: epcWeapon), -{41}(Name: 'Miss Fortune'; Condition: epcDefault), -{42}(Name: 'Modify Run Speed'; Condition: epcDefault), -{43}(Name: 'Modify Attack Speed'; Condition: epcWeapon), -{44}(Name: 'Modify Radiation Consumed'; Condition: epcDefault), -{45}(Name: 'Has Pip Hacker'; Condition: epcDefault), -{46}(Name: 'Has Meltdown'; Condition: epcDefault), -{47}(Name: 'See Enemy Health'; Condition: epcDefault), -{48}(Name: 'Has Jury Rigging'; Condition: epcDefault), -{49}(Name: 'Modify Threat Range'; Condition: epcWeapon), -{50}(Name: 'Modify Thread'; Condition: epcWeapon), -{51}(Name: 'Has Fast Travel Always'; Condition: epcDefault), -{52}(Name: 'Knockdown Chance'; Condition: epcWeapon), -{53}(Name: 'Modify Weapon Strength Req'; Condition: epcWeapon), -{54}(Name: 'Modify Aiming Move Speed'; Condition: epcWeapon), -{55}(Name: 'Modify Light Items'; Condition: epcDefault), -{56}(Name: 'Modify Damage Threshold (defender)'; Condition: epcWeaponTarget), -{57}(Name: 'Modify Chance for Ammo Item'; Condition: epcWeapon), -{58}(Name: 'Modify Damage Threshold (attacker)'; Condition: epcWeaponTarget), -{59}(Name: 'Modify Throwing Velocity'; Condition: epcWeapon), -{60}(Name: 'Chance for Item on Fire'; Condition: epcWeapon), -{61}(Name: 'Has Unarmed Forward Power Attack'; Condition: epcDefault), -{62}(Name: 'Has Unarmed Back Power Attack'; Condition: epcWeaponTarget), -{63}(Name: 'Has Unarmed Crouched Power Attack'; Condition: epcDefault), -{64}(Name: 'Has Unarmed Counter Attack'; Condition: epcWeaponTarget), -{65}(Name: 'Has Unarmed Left Power Attack'; Condition: epcDefault), -{66}(Name: 'Has Unarmed Right Power Attack'; Condition: epcDefault), -{67}(Name: 'VATS HelperChance'; Condition: epcDefault), -{68}(Name: 'Modify Item Damage'; Condition: epcDefault), -{69}(Name: 'Has Improved Detection'; Condition: epcDefault), -{70}(Name: 'Has Improved Spotting'; Condition: epcDefault), -{71}(Name: 'Has Improved Item Detection'; Condition: epcDefault), -{72}(Name: 'Adjust Explosion Radius'; Condition: epcWeapon), -{73}(Name: 'Reserved'; Condition: epcWeapon) - ); - - wbPERKFunctionParams: array[TPERKEntryPointFunctionParamType] of string = ( - 'None', - 'Float', - 'Float, Float', - 'Leveled Item', - 'Script' - ); - -procedure wbPERKEntryPointAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldEntryPoint : PPERKEntryPoint; - NewEntryPoint : PPERKEntryPoint; - OldCondition : PPERKCondition; - NewCondition : PPERKCondition; - OldFunction : PPERKFunction; - EntryPoint : IwbContainerElementRef; - Effect : IwbContainerElementRef; - PerkConditions : IwbContainerElementRef; - PerkCondition : IwbContainerElementRef; - Container : IwbContainerElementRef; - i : Integer; -begin - if aOldValue <> aNewValue then begin - OldEntryPoint := @wbPERKEntryPoints[Integer(aOldValue)]; - NewEntryPoint := @wbPERKEntryPoints[Integer(aNewValue)]; - OldCondition := @wbPERKCondition[OldEntryPoint.Condition]; - NewCondition := @wbPERKCondition[NewEntryPoint.Condition]; - if not Assigned(aElement) then - Exit; - if not Supports(aElement.Container, IwbContainerElementRef, EntryPoint) then - Exit; - i := EntryPoint.ElementNativeValues['Function']; - if (i >= Low(wbPERKFunctions)) and (i <= High(wbPERKFunctions)) then - OldFunction := @wbPERKFunctions[i] - else - OldFunction := nil; - if not Assigned(OldFunction) or (OldFunction.FunctionType <> NewEntryPoint.FunctionType) then - for i := Low(wbPERKFunctions) to High(wbPERKFunctions) do - with wbPERKFunctions[i] do - if FunctionType = NewEntryPoint.FunctionType then begin - EntryPoint.ElementNativeValues['Function'] := i; - Break; - end; - EntryPoint.ElementNativeValues['Perk Condition Tab Count'] := NewCondition.Count; - - if not Supports(EntryPoint.Container, IwbContainerElementRef, Container) then - Exit; - if not Supports(Container.Container, IwbContainerElementRef, Effect) then - Exit; - - if not Supports(Effect.ElementByName['Perk Conditions'], IwbContainerElementRef, PerkConditions) then - Exit; - - for i := Pred(PerkConditions.ElementCount) downto 0 do - if Supports(PerkConditions.Elements[i], IwbContainerElementRef, PerkCondition) then - if Integer(PerkCondition.ElementNativeValues['PRKC']) >= NewCondition.Count then - PerkCondition.Remove - else - case Integer(PerkCondition.ElementNativeValues['PRKC']) of - 2: if OldCondition.Caption2 <> NewCondition.Caption2 then - PerkCondition.Remove; - 3: if OldCondition.Caption3 <> NewCondition.Caption3 then - PerkCondition.Remove; - end; - end; -end; - -function wbPRKCToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - EntryPointVar : Variant; - EntryPoint : Integer; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - EntryPointVar := Container.ElementNativeValues['..\..\..\DATA\Entry Point\Entry Point']; - if VarIsNull(EntryPointVar) or VarIsClear(EntryPointVar) then - Exit; - EntryPoint := EntryPointVar; - if (EntryPoint < Low(wbPERKEntryPoints)) or (EntryPoint > High(wbPERKEntryPoints)) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - with wbPERKEntryPoints[EntryPoint] do begin - with wbPERKCondition[Condition] do begin - case aType of - ctEditType: Result := 'ComboBox'; - ctEditInfo: with TStringList.Create do try - if Caption1 <> '' then - Add(Caption1); - if Caption2 <> '' then - Add(Caption2); - if Caption3 <> '' then - Add(Caption3); - Sort; - Result := CommaText; - finally - Free; - end; - else - if (aInt < 0) or (aInt >= Count) then - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end - else - case aType of - ctToStr, ctToEditValue: case Integer(aInt) of - 0: Result := Caption1; - 1: Result := Caption2; - 2: Result := Caption3; - end; - ctCheck: Result := ''; - end; - end; - end; - end; -end; - -function wbPRKCToInt(const aString: string; const aElement: IwbElement): Int64; -var - Container : IwbContainerElementRef; - EntryPointVar : Variant; - EntryPoint : Integer; - s : string; -begin - s := Trim(aString); - - Result := StrToInt64Def(s, Low(Integer)); - if Result <> Low(Integer) then - Exit; - if s = '' then begin - Result := 0; - Exit; - end; - - if not Supports(aElement, IwbContainerElementRef, Container) then - raise Exception.Create('Could not resolve Entry Point'); - EntryPointVar := Container.ElementNativeValues['..\..\..\DATA\Entry Point\Entry Point']; - if VarIsNull(EntryPointVar) or VarIsClear(EntryPointVar) then - raise Exception.Create('Could not resolve Entry Point'); - - EntryPoint := EntryPointVar; - if (EntryPoint < Low(wbPERKEntryPoints)) or (EntryPoint > High(wbPERKEntryPoints)) then - raise Exception.Create('Unknown Entry Point #'+IntToStr(EntryPoint)); - - with wbPERKEntryPoints[EntryPoint] do - with wbPERKCondition[Condition] do - if SameText(aString, Caption1) then - Result := 0 - else if SameText(aString, Caption2) then - Result := 1 - else if SameText(aString, Caption3) then - Result := 2 - else - raise Exception.Create('"'+s+'" is not valid for this Entry Point'); -end; - -function wbNeverShow(const aElement: IwbElement): Boolean; -begin - Result := wbHideNeverShow; -end; - -function GetREGNType(aElement: IwbElement): Integer; -var - Container: IwbContainerElementRef; -begin - Result := -1; - if not Assigned(aElement) then - Exit; - while aElement.Name <> 'Region Data Entry' do begin - aElement := aElement.Container; - if not Assigned(aElement) then - Exit; - end; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - Result := Container.ElementNativeValues['RDAT\Type']; -end; - -function wbREGNObjectsDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 2; -end; - -function wbREGNWeatherDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 3; -end; - -function wbREGNMapDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 4; -end; - -function wbREGNLandDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 5; -end; - -function wbREGNGrassDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 6; -end; - -function wbREGNSoundDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 7; -end; - -function wbREGNImposterDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 8; -end; - -function wbMESGTNAMDontShow(const aElement: IwbElement): Boolean; -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - Result := False; - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if Integer(Container.ElementNativeValues['DNAM']) and 1 <> 0 then - Result := True; -end; - -function wbEPFDDontShow(const aElement: IwbElement): Boolean; -var - Container: IwbContainerElementRef; -begin - Result := False; - if aElement.Name <> 'Entry Point Function Parameters' then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if not (Integer(Container.ElementNativeValues['EPFT']) in [1..3]) then - Result := True; -end; - -function wbTES4ONAMDontShow(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - Result := False; - if not Assigned(aElement) then - Exit; - MainRecord := aElement.ContainingMainRecord; - if not Assigned(MainRecord) then - Exit; - if not MainRecord.IsESM then - Result := True; -end; - - -function wbEPF2DontShow(const aElement: IwbElement): Boolean; -var - Container: IwbContainerElementRef; -begin - Result := False; - if aElement.Name <> 'Entry Point Function Parameters' then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if not (Integer(Container.ElementNativeValues['EPFT']) in [4]) then - Result := True; -end; - -function wbPERKPRKCDontShow(const aElement: IwbElement): Boolean; -var - Container: IwbContainerElementRef; -begin - Result := False; - if aElement.Name <> 'Effect' then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if Integer(Container.ElementNativeValues['PRKE\Type']) <> 2 then - Result := True; -end; - -function wbPerkDATAFunctionToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - EntryPointVar : Variant; - EntryPoint : Integer; - i : Integer; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - EntryPointVar := Container.ElementNativeValues['..\Entry Point']; - if VarIsNull(EntryPointVar) or VarIsClear(EntryPointVar) then - Exit; - EntryPoint := EntryPointVar; - if (EntryPoint < Low(wbPERKEntryPoints)) or (EntryPoint > High(wbPERKEntryPoints)) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - with wbPERKEntryPoints[EntryPoint] do begin - case aType of - ctEditType: Result := 'ComboBox'; - ctEditInfo: with TStringList.Create do try - for i := Low(wbPERKFunctions) to High(wbPERKFunctions) do - if wbPERKFunctions[i].FunctionType = FunctionType then - if (wbPERKFunctions[i].Name <> '') then - Add(wbPERKFunctions[i].Name); - Sort; - Result := CommaText; - finally - Free; - end; - else - if (aInt < Low(wbPERKFunctions)) or (aInt > High(wbPERKFunctions)) then - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end - else - case aType of - ctToStr, ctToEditValue: begin - Result := wbPERKFunctions[Integer(aInt)].Name; - if (aType = ctToStr) and (wbPERKFunctions[Integer(aInt)].FunctionType <> FunctionType) then - Result := Result + ' '; - end; - ctCheck: - if wbPERKFunctions[Integer(aInt)].FunctionType <> FunctionType then - Result := '' - else - Result := ''; - end; - end; - end; -end; - -function wbPerkDATAFunctionToInt(const aString: string; const aElement: IwbElement): Int64; -var - Container : IwbContainerElementRef; - EntryPointVar : Variant; - EntryPoint : Integer; - s : string; - i : Integer; -begin - s := Trim(aString); - - Result := StrToInt64Def(s, Low(Integer)); - if Result <> Low(Integer) then - Exit; - if s = '' then - raise Exception.Create('"" is not a valid value for this field'); - - if not Supports(aElement, IwbContainerElementRef, Container) then - raise Exception.Create('Could not resolve Entry Point'); - EntryPointVar := Container.ElementNativeValues['..\Entry Point']; - if VarIsNull(EntryPointVar) or VarIsClear(EntryPointVar) then - raise Exception.Create('Could not resolve Entry Point'); - - EntryPoint := EntryPointVar; - if (EntryPoint < Low(wbPERKEntryPoints)) or (EntryPoint > High(wbPERKEntryPoints)) then - raise Exception.Create('Unknown Entry Point #'+IntToStr(EntryPoint)); - - with wbPERKEntryPoints[EntryPoint] do - for i := Low(wbPERKFunctions) to High(wbPERKFunctions) do - if wbPERKFunctions[i].FunctionType = FunctionType then - if SameText(s, wbPERKFunctions[i].Name) then begin - Result := i; - Exit; - end; - - raise Exception.Create('"'+s+'" is not valid for this Entry Point'); -end; - -procedure wbPerkDATAFunctionAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - NewFunction : Integer; - Container : IwbContainerElementRef; - OldParamType: Integer; - NewParamType: Integer; -begin - NewFunction := aNewValue; - if (NewFunction < Low(wbPERKFunctions)) or (NewFunction > High(wbPERKFunctions)) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - OldParamType := Container.ElementNativeValues['..\..\..\Entry Point Function Parameters\EPFT']; - NewParamType := Ord(wbPERKFunctions[NewFunction].ParamType); - if (OldParamType = NewParamType) and not VarSameValue(aOldValue, aNewValue) and (NewFunction in [4,5]) then - Container.ElementNativeValues['..\..\..\Entry Point Function Parameters\EPFT'] := 0; - Container.ElementNativeValues['..\..\..\Entry Point Function Parameters\EPFT'] := NewParamType; -end; - -function wbPerkEPFTToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - FunctionTypeVar : Variant; - FunctionType : Integer; -// i : Integer; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - FunctionTypeVar := Container.ElementNativeValues['..\..\DATA\Entry Point\Function']; - if VarIsNull(FunctionTypeVar) or VarIsClear(FunctionTypeVar) then - Exit; - FunctionType := FunctionTypeVar; - if (FunctionType < Low(wbPERKFunctions)) or (FunctionType > High(wbPERKFunctions)) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - with wbPERKFunctions[FunctionType] do begin - case aType of - ctEditType: Result := 'ComboBox'; - ctEditInfo: Result := '"' + wbPERKFunctionParams[ParamType] + '"'; - else - if (aInt < Ord(Low(wbPERKFunctionParams))) or (aInt > Ord(High(wbPERKFunctionParams))) then - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end - else - case aType of - ctToStr, ctToEditValue: begin - Result := wbPERKFunctionParams[TPERKEntryPointFunctionParamType(aInt)]; - if (aType = ctToStr) and (TPERKEntryPointFunctionParamType(aInt) <> ParamType) then - Result := Result + ' '; - end; - ctCheck: - if TPERKEntryPointFunctionParamType(aInt) <> ParamType then - Result := Result + ' ' - else - Result := ''; - end; - end; - end; -end; - -function wbPerkEPFTToInt(const aString: string; const aElement: IwbElement): Int64; -var - Container : IwbContainerElementRef; - FunctionTypeVar : Variant; - FunctionType : Integer; - s : string; -// i : Integer; - j : TPERKEntryPointFunctionParamType; -begin - s := Trim(aString); - - Result := StrToInt64Def(s, Low(Integer)); - if Result <> Low(Integer) then - Exit; - if s = '' then - raise Exception.Create('"" is not a valid value for this field'); - - if not Supports(aElement, IwbContainerElementRef, Container) then - raise Exception.Create('Could not resolve Function'); - FunctionTypeVar := Container.ElementNativeValues['..\..\DATA\Entry Point\Function']; - if VarIsNull(FunctionTypeVar) or VarIsClear(FunctionTypeVar) then - raise Exception.Create('Could not resolve Function'); - - FunctionType := FunctionTypeVar; - if (FunctionType < Low(wbPERKFunctions)) or (FunctionType > High(wbPERKFunctions)) then - raise Exception.Create('Unknown Function #'+IntToStr(FunctionType)); - - with wbPERKFunctions[FunctionType] do begin - for j := Low(wbPERKFunctionParams) to High(wbPERKFunctionParams) do - if SameText(s, wbPERKFunctionParams[j]) then begin - if j <> ParamType then - raise Exception.Create('"'+s+'" is not a valid Parameter Type for Function "'+Name+'"'); - Result := Ord(j); - Exit; - end; - end; - - raise Exception.Create('"'+s+'" is not a valid Parameter Type'); -end; - -procedure wbPerkEPFTAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - i: Integer; - Container: IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - i := aNewValue; - if (i < Ord(Low(wbPERKFunctionParams))) or (i> Ord(High(wbPERKFunctionParams))) then - Exit; - if not Supports(aElement.Container, IwbContainerElementRef, Container) then - Exit; - Container.RemoveElement('EPFD'); - Container.RemoveElement('EPF2'); - Container.RemoveElement('EPF3'); - Container.RemoveElement('Embedded Script'); - case TPERKEntryPointFunctionParamType(i) of - epfpFloat, epfpFloatFloat, epfpLeveledItem: - Container.Add('EPFD', True); - epfpScript: begin - Container.Add('EPF2', True); - Container.Add('EPF3', True); - Container.Add('SCHR', True); - end; - end; -end; - -procedure wbRemoveOFST(const aElement: IwbElement); -var - Container: IwbContainer; - rOFST: IwbRecord; -begin - if not wbRemoveOffsetData then - Exit; - - if Supports(aElement, IwbContainer, Container) then begin - if wbBeginInternalEdit then try - Container.RemoveElement(OFST); - finally - wbEndInternalEdit; - end else begin - rOFST := Container.RecordBySignature[OFST]; - if Assigned(rOFST) then - Container.RemoveElement(rOFST); - end; - end; -end; - -function wbActorTemplateUseTraits(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000001) <> 0; - end; -end; - -function wbActorTemplateUseStats(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000002) <> 0; - end; -end; - -function wbActorAutoCalcDontShow(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Flags']; - Result := (i and $00000010) <> 0; - end; -end; - -function wbActorTemplateUseStatsAutoCalc(const aElement: IwbElement): Boolean; -begin - if not wbActorTemplateHide then - Result := False - else - Result := wbActorTemplateUseStats(aElement) or wbActorAutoCalcDontShow(aElement); -end; - -function wbActorTemplateUseFactions(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000004) <> 0; - end; -end; - -function wbActorTemplateUseActorEffectList(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000008) <> 0; - end; -end; - -function wbActorTemplateUseAIData(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000010) <> 0; - end; -end; - -function wbActorTemplateUseAIPackages(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000020) <> 0; - end; -end; - -function wbActorTemplateUseModelAnimation(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000040) <> 0; - end; -end; - -function wbActorTemplateUseBaseData(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000080) <> 0; - end; -end; - -function wbActorTemplateUseInventory(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000100) <> 0; - end; -end; - -function wbActorTemplateUseScript(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000200) <> 0; - end; -end; - -procedure wbCTDAAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - //Size : Cardinal; - TypeFlags : Cardinal; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - TypeFlags := Container.ElementNativeValues['Type']; - if (TypeFlags and $02) <> 0 then begin - if Container.DataSize = 20 then - Container.DataSize := 28; - Container.ElementNativeValues['Type'] := TypeFlags and not $02; - Container.ElementEditValues['Run On'] := 'Target'; - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbMGEFAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - OldActorValue : Integer; - NewActorValue : Integer; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - OldActorValue := Container.ElementNativeValues['DATA - Data\Actor Value']; - NewActorValue := OldActorValue; - case Integer(Container.ElementNativeValues['DATA - Data\Archtype']) of - 01, //Script - 02, //Dispel - 03, //Cure Disease - 13, //Light - 16, //Lock - 17, //Open - 18, //Bound Item - 19, //Summon Creature - 30, //Cure Paralysis - 31, //Cure Addiction - 32, //Cure Poison - 33, //Concussion - 35: //Limb Condition - NewActorValue := -1; - 11: //Invisibility - NewActorValue := 48; //Invisibility - 12: //Chameleon - NewActorValue := 49; //Chameleon - 24: //Paralysis - NewActorValue := 47; //Paralysis - 36: //Turbo - NewActorValue := 51; //Turbo - end; - if OldActorValue <> NewActorValue then - Container.ElementNativeValues['DATA - Data\Actor Value'] := NewActorValue; - finally - wbEndInternalEdit; - end; -end; - -procedure wbPACKAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -// OldContainer : IwbContainerElementRef; - NewContainer : IwbContainerElementRef; -// NewContainer2 : IwbContainerElementRef; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - case Integer(Container.ElementNativeValues['PKDT - General\Type']) of - 0: begin {Find} - Container.Add('PTDT'); - end; - 1: begin {Follow} - Container.Add('PKFD'); - end; - 2: begin {Escort} - end; - 3: begin {Eat} - Container.Add('PTDT'); - Container.Add('PKED'); - end; - 4: begin {Sleep} - if not Container.ElementExists['Locations'] then - if Supports(Container.Add('Locations'), IwbContainerElementRef, NewContainer) then - NewContainer.ElementEditValues['PLDT - Location 1\Type'] := 'Near editor location'; - end; - 5: begin {Wander} - end; - 6: begin {Travel} - end; - 7: begin {Accompany} - end; - 8: begin {Use Item At} - end; - 9: begin {Ambush} - end; - 10: begin {Flee Not Combat} - end; - 12: begin {Sandbox} - end; - 13: begin {Patrol} - if not Container.ElementExists['Locations'] then - if Supports(Container.Add('Locations'), IwbContainerElementRef, NewContainer) then - NewContainer.ElementEditValues['PLDT - Location 1\Type'] := 'Near linked reference'; - Container.Add('PKPT'); - end; - 14: begin {Guard} - end; - 15: begin {Dialogue} - end; - 16: begin {Use Weapon} - end; - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbNPCAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -// BaseRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if Container.ElementNativeValues['NAM5'] > 255 then - Container.ElementNativeValues['NAM5'] := 255; - finally - wbEndInternalEdit; - end; -end; - -procedure wbREFRAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - BaseRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - Container.RemoveElement('RCLR'); - - if Container.ElementExists['Ammo'] then begin - BaseRecord := MainRecord.BaseRecord; - if Assigned(BaseRecord) and (BaseRecord.Signature <> 'WEAP') then - Container.RemoveElement('Ammo'); - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbINFOAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if (Integer(Container.ElementNativeValues['DATA\Flags 1']) and $80) = 0 then - Container.RemoveElement('DNAM'); - - Container.RemoveElement('SNDD'); - - if Container.ElementNativeValues['DATA\Type'] = 3 {Persuasion} then - Container.ElementNativeValues['DATA\Type'] := 0 {Topic}; - finally - wbEndInternalEdit; - end; -end; - -procedure wbCELLAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; -// Container2 : IwbContainerElementRef; - MainRecord : IwbMainRecord; -// i : Integer; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if (not Container.ElementExists['XCLW']) and ((Integer(Container.ElementNativeValues['DATA']) and $02) <> 0) then begin - Container.Add('XCLW', True); - Container.ElementEditValues['XCLW'] := 'Default'; - end; - - if (not Container.ElementExists['XNAM']) and ((Integer(Container.ElementNativeValues['DATA']) and $02) <> 0) then - Container.Add('XNAM', True); - -// if Supports(Container.ElementBySignature[XCLR], IwbContainerElementRef, Container2) then begin -// for i:= Pred(Container2.ElementCount) downto 0 do -// if not Supports(Container2.Elements[i].LinksTo, IwbMainRecord, MainRecord) or (MainRecord.Signature <> 'REGN') then -// Container2.RemoveElement(i); -// if Container2.ElementCount < 1 then -// Container2.Remove; -// end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbEmbeddedScriptAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if Container.ElementEditValues['SCHR\Type'] = 'Quest' then - Container.ElementEditValues['SCHR\Type'] := 'Object'; - finally - wbEndInternalEdit; - end; -end; - - -procedure wbSOUNAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; - OldCntr: IwbContainerElementRef; - NewCntr: IwbContainerElementRef; - NewCntr2: IwbContainerElementRef; - i: Integer; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if Container.ElementExists['SNDD'] then - Exit; - - if not Supports(Container.RemoveElement('SNDX - Sound Data'), IwbContainerElementRef, OldCntr) then - Exit; - if not Supports(Container.Add('SNDD', True), IwbContainerElementRef, NewCntr) then - Exit; - for i := 0 to Pred(Min(OldCntr.ElementCount, NewCntr.ElementCount)) do - NewCntr.Elements[i].Assign(Low(Integer), OldCntr.Elements[i], False); - - if not Supports(NewCntr.ElementByName['Attenuation Curve'], IwbContainerElementRef, NewCntr2) then - Assert(False); - Assert(NewCntr2.ElementCount = 5); - - if Supports(Container.RemoveElement('ANAM'), IwbContainerElementRef, OldCntr) then begin - Assert(OldCntr.ElementCount = 5); - for i := 0 to Pred(Min(OldCntr.ElementCount, NewCntr2.ElementCount)) do - NewCntr2.Elements[i].Assign(Low(Integer), OldCntr.Elements[i], False); - end else begin - NewCntr2.Elements[0].NativeValue := 100; - NewCntr2.Elements[1].NativeValue := 50; - NewCntr2.Elements[2].NativeValue := 20; - NewCntr2.Elements[3].NativeValue := 5; - NewCntr2.Elements[4].NativeValue := 0; - end; - - if not Supports(NewCntr.ElementByName['Reverb Attenuation Control'], IwbContainerElementRef, NewCntr2) then - Assert(False); - - if Supports(Container.RemoveElement('GNAM'), IwbContainerElementRef, OldCntr) then - NewCntr2.Assign(Low(Integer), OldCntr, False) - else - NewCntr2.NativeValue := 80; - - if not Supports(NewCntr.ElementByName['Priority'], IwbContainerElementRef, NewCntr2) then - Assert(False); - - if Supports(Container.RemoveElement('HNAM'), IwbContainerElementRef, OldCntr) then - NewCntr2.Assign(Low(Integer), OldCntr, False) - else - NewCntr2.NativeValue := 128; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbWATRAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; -// AnimationMultiplier : Extended; -// AnimationAttackMultiplier : Extended; - OldCntr: IwbContainerElementRef; - NewCntr: IwbContainerElementRef; - i: Integer; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if Container.ElementExists['DNAM'] then - Exit; - - if not Supports(Container.RemoveElement('DATA - Visual Data'), IwbContainerElementRef, OldCntr) then - Exit; - if not Supports(Container.Add('DNAM', True), IwbContainerElementRef, NewCntr) then - Exit; - for i := 0 to Pred(Min(OldCntr.ElementCount, NewCntr.ElementCount)) do - if OldCntr.Elements[i].Name = 'Damage (Old Format)' then - Container.ElementNativeValues['DATA - Damage'] := OldCntr.Elements[i].NativeValue - else - NewCntr.Elements[i].Assign(Low(Integer), OldCntr.Elements[i], False); - - NewCntr.ElementNativeValues['Noise Properties - Noise Layer One - Amplitude Scale'] := 1.0; - NewCntr.ElementNativeValues['Noise Properties - Noise Layer Two - Amplitude Scale'] := 0.5; - NewCntr.ElementNativeValues['Noise Properties - Noise Layer Three - Amplitude Scale'] := 0.25; - finally - wbEndInternalEdit; - end; -end; - - -procedure wbWEAPAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Container.ElementExists['DNAM'] then - Exit; - - if Container.ElementNativeValues['DNAM\Animation Multiplier'] = 0.0 then - Container.ElementNativeValues['DNAM\Animation Multiplier'] := 1.0; - if Container.ElementNativeValues['DNAM\Animation Attack Multiplier'] = 0.0 then - Container.ElementNativeValues['DNAM\Animation Attack Multiplier'] := 1.0; - finally - wbEndInternalEdit; - end; -end; - -procedure wbMESGAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - IsMessageBox : Boolean; - HasTimeDelay : Boolean; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - IsMessageBox := (Integer(Container.ElementNativeValues['DNAM']) and 1) = 1; - HasTimeDelay := Container.ElementExists['TNAM']; - - if IsMessageBox = HasTimeDelay then - if IsMessageBox then - Container.RemoveElement('TNAM') - else begin - if not Container.ElementExists['DNAM'] then - Container.Add('DNAM', True); - Container.ElementNativeValues['DNAM'] := Integer(Container.ElementNativeValues['DNAM']) or 1; - end; - - finally - wbEndInternalEdit; - end; -end; - - -procedure wbEFSHAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; - FullParticleBirthRatio : Extended; - PersistantParticleBirthRatio : Extended; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Container.ElementExists['DATA'] then - Exit; - - FullParticleBirthRatio := Container.ElementNativeValues['DATA\Particle Shader - Full Particle Birth Ratio']; - PersistantParticleBirthRatio := Container.ElementNativeValues['DATA\Particle Shader - Persistant Particle Birth Ratio']; - - if ((FullParticleBirthRatio <> 0) and (FullParticleBirthRatio <= 1)) then begin - FullParticleBirthRatio := FullParticleBirthRatio * 78.0; - Container.ElementNativeValues['DATA\Particle Shader - Full Particle Birth Ratio'] := FullParticleBirthRatio; - end; - - if ((PersistantParticleBirthRatio <> 0) and (PersistantParticleBirthRatio <= 1)) then begin - PersistantParticleBirthRatio := PersistantParticleBirthRatio * 78.0; - Container.ElementNativeValues['DATA\Particle Shader - Persistant Particle Birth Ratio'] := PersistantParticleBirthRatio; - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbFACTAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Container.ElementExists['CNAM'] then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - Container.RemoveElement('CNAM'); - finally - wbEndInternalEdit; - end; -end; - -procedure wbLIGHAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Container.ElementExists['FNAM'] then begin - Container.Add('FNAM', True); - Container.ElementNativeValues['FNAM'] := 1.0; - end; - - if Container.ElementExists['DATA'] then begin - if SameValue(Container.ElementNativeValues['DATA\Falloff Exponent'], 0.0) then - Container.ElementNativeValues['DATA\Falloff Exponent'] := 1.0; - if SameValue(Container.ElementNativeValues['DATA\FOV'], 0.0) then - Container.ElementNativeValues['DATA\FOV'] := 90.0; - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbEFITAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - Element : IwbElement; - ActorValue: Variant; - MainRecord: IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - MainRecord := Container.ContainingMainRecord; - if not Assigned(MainRecord) or MainRecord.IsDeleted then - Exit; - - Element := Container.ElementByPath['..\EFID']; - if not Assigned(Element) then - Exit; - if not Supports(Element.LinksTo, IwbMainRecord, MainRecord) then - Exit; - if MainRecord.Signature <> 'MGEF' then - Exit; - ActorValue := MainRecord.ElementNativeValues['DATA - Data\Actor Value']; - if VarIsNull(ActorValue) or VarIsClear(ActorValue) then - Exit; - if VarCompareValue(ActorValue, Container.ElementNativeValues['Actor Value']) <> vrEqual then - Container.ElementNativeValues['Actor Value'] := ActorValue; - finally - wbEndInternalEdit; - end; -end; - -procedure wbRPLDAfterLoad(const aElement: IwbElement); -var - Container: IwbContainer; - a, b: Single; - NeedsFlip: Boolean; -begin - if wbBeginInternalEdit then try - if Supports(aElement, IwbContainer, Container) then begin - NeedsFlip := False; - if Container.ElementCount > 1 then begin - a := StrToFloat((Container.Elements[0] as IwbContainer).Elements[0].Value); - b := StrToFloat((Container.Elements[Pred(Container.ElementCount)] as IwbContainer).Elements[0].Value); - case CompareValue(a, b) of - EqualsValue: begin - a := StrToFloat((Container.Elements[0] as IwbContainer).Elements[1].Value); - b := StrToFloat((Container.Elements[Pred(Container.ElementCount)] as IwbContainer).Elements[1].Value); - NeedsFlip := CompareValue(a, b) = GreaterThanValue; - end; - GreaterThanValue: - NeedsFlip := True; - end; - end; - if NeedsFlip then - Container.ReverseElements; - end; - finally - wbEndInternalEdit; - end; -end; - -function wbPxDTLocationDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - Result := Container.ElementByName['Type'].NativeValue; -end; - -function wbPKDTFalloutBehaviorFlagsDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbSubRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - if Supports(Container, IwbSubRecord, SubRecord) then - if SubRecord.SubRecordHeaderSize = 8 then - Result := 1; -end; - -function wbPKDTSpecificFlagsDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbSubRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - if Supports(Container, IwbSubRecord, SubRecord) then - if SubRecord.SubRecordHeaderSize = 8 then - Exit; - Result := Container.ElementByName['Type'].NativeValue + 1; -end; - -procedure wbIDLAsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Element : IwbElement; - Container : IwbContainer; - SelfAsContainer : IwbContainer; -begin - if wbBeginInternalEdit then try -// if not wbCounterAfterSet('IDLC - Animation Count', aElement) then - if Supports(aElement.Container, IwbContainer, Container) then begin - Element := Container.ElementByPath['IDLC\Animation Count']; - if Assigned(Element) and Supports(aElement, IwbContainer, SelfAsContainer) and - (Element.GetNativeValue<>SelfAsContainer.GetElementCount) then - Element.SetNativeValue(SelfAsContainer.GetElementCount); - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbAnimationsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Element : IwbElement; - Elems : IwbElement; - Container : IwbContainer; -begin - if wbBeginInternalEdit then try -// if not wbCounterContainerAfterSet('IDLC - Animation Count', 'IDLA - Animations', aElement) then - if Supports(aElement, IwbContainer, Container) then begin - Element := Container.ElementByPath['IDLC\Animation Count']; - Elems := Container.ElementByName['IDLA - Animations']; - if Assigned(Element) and not Assigned(Elems) then - if Element.GetNativeValue<>0 then - Element.SetNativeValue(0); - end; - finally - wbEndInternalEdit; - end; -end; - -function wbOffsetDataColsCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbDataContainer; - Element : IwbElement; - fResult : Extended; -begin - Result := 0; - - if Supports(aElement.Container, IwbDataContainer, Container) and (Container.Name = 'OFST - Offset Data') and - Supports(Container.Container, IwbDataContainer, Container) then begin - Element := Container.ElementByPath['Object Bounds\NAM0 - Min\X']; - if Assigned(Element) then begin - fResult := Element.NativeValue; - if fResult >= MaxInt then - Result := 0 - else - Result := Trunc(fResult); - Element := Container.ElementByPath['Object Bounds\NAM9 - Max\X']; - if Assigned(Element) then begin - fResult := Element.NativeValue; - if fResult >= MaxInt then - Result := 1 - else - Result := Trunc(fResult) - Result + 1; - end; - end; - end; -end; - -procedure DefineFNVa; -begin - wbRecordFlags := wbInteger('Record Flags', itU32, wbFlags([ - {0x00000001}'ESM', - {0x00000002}'', - {0x00000004}'', // Plugin selected (Editor) - {0x00000008}'Form initialized (Runtime only)', // Form cannot be saved (Runtime)/Plugin active (Editor) - {0x00000010}'', // Plugin cannot be active or selected (Editor) - {0x00000020}'Deleted', - {0x00000040}'Border Region / Has Tree LOD / Constant / Hidden From Local Map / Plugin Endian', - {0x00000080}'Turn Off Fire', - {0x00000100}'Inaccessible', - {0x00000200}'Casts shadows / On Local Map / Motion Blur', - {0x00000400}'Quest item / Persistent reference', - {0x00000800}'Initially disabled', - {0x00001000}'Ignored', - {0x00002000}'No Voice Filter', - {0x00004000}'Cannot Save (Runtime only)', - {0x00008000}'Visible when distant', - {0x00010000}'Random Anim Start / High Priority LOD', - {0x00020000}'Dangerous / Off limits (Interior cell) / Radio Station (Talking Activator)', - {0x00040000}'Compressed', - {0x00080000}'Can''t wait / Platform Specific Texture / Dead', - {0x00100000}'Unknown 21', - {0x00200000}'Load Started (Runtime Only)', // set when beginning to load the form from save - {0x00400000}'Unknown 23', - {0x00800000}'Unknown 24', // Runtime might use it for "Not dead" on non actors. - {0x01000000}'Destructible (Runtime only)', - {0x02000000}'Obstacle / No AI Acquire', - {0x03000000}'NavMesh Generation - Filter', - {0x08000000}'NavMesh Generation - Bounding Box', - {0x10000000}'Non-Pipboy / Reflected by Auto Water', - {0x20000000}'Child Can Use / Refracted by Auto Water', - {0x40000000}'NavMesh Generation - Ground', - {0x80000000}'Multibound' - ])); - -(* wbInteger('Record Flags 2', itU32, wbFlags([ - {0x00000001}'Unknown 1', - {0x00000002}'Unknown 2', - {0x00000004}'Unknown 3', - {0x00000008}'Unknown 4', - {0x00000010}'Unknown 5', - {0x00000020}'Unknown 6', - {0x00000040}'Unknown 7', - {0x00000080}'Unknown 8', - {0x00000100}'Unknown 9', - {0x00000200}'Unknown 10', - {0x00000400}'Unknown 11', - {0x00000800}'Unknown 12', - {0x00001000}'Unknown 13', - {0x00002000}'Unknown 14', - {0x00004000}'Unknown 15', - {0x00008000}'Unknown 16', - {0x00010000}'Unknown 17', - {0x00020000}'Unknown 18', - {0x00040000}'Unknown 19', - {0x00080000}'Unknown 20', - {0x00100000}'Unknown 21', - {0x00200000}'Unknown 22', - {0x00400000}'Unknown 23', - {0x00800000}'Unknown 24', - {0x01000000}'Unknown 25', - {0x02000000}'Unknown 26', - {0x03000000}'Unknown 27', - {0x08000000}'Unknown 28', - {0x10000000}'Unknown 29', - {0x20000000}'Unknown 30', - {0x40000000}'Unknown 31', - {0x80000000}'Unknown 32' - ])); (**) - - wbMainRecordHeader := wbStruct('Record Header', [ - wbString('Signature', 4, cpCritical), - wbInteger('Data Size', itU32, nil, cpIgnore), - wbRecordFlags, - wbFormID('FormID', cpFormID), - wbInteger('Version Control Master FormID', itU32, nil, cpIgnore), - wbInteger('Form Version', itU16, nil, cpIgnore), - wbInteger('Version Control Info 2', itU16, nil, cpIgnore) // limited to values from 0 to 0xF - ]); - - wbSizeOfMainRecordStruct := 24; - - wbIgnoreRecords.Add(XXXX); - - wbXRGD := wbByteArray(XRGD, 'Ragdoll Data'); - wbXRGB := wbByteArray(XRGB, 'Ragdoll Biped Data'); - - wbMusicEnum := wbEnum(['Default', 'Public', 'Dungeon']); - wbSoundLevelEnum := wbEnum([ - 'Loud', - 'Normal', - 'Silent' - ]); - - wbWeaponAnimTypeEnum := wbEnum([ - {00} 'Hand to Hand', - {01} 'Melee (1 Hand)', - {02} 'Melee (2 Hand)', - {03} 'Pistol - Balistic (1 Hand)', - {04} 'Pistol - Energy (1 Hand)', - {05} 'Rifle - Balistic (2 Hand)', - {06} 'Rifle - Automatic (2 Hand)', - {07} 'Rifle - Energy (2 Hand)', - {08} 'Handle (2 Hand)', - {09} 'Launcher (2 Hand)', - {10} 'Grenade Throw (1 Hand)', - {11} 'Land Mine (1 Hand)', - {12} 'Mine Drop (1 Hand)', - {13} 'Thrown (1 Hand)' - ]); - - wbReloadAnimEnum := wbEnum([ - 'ReloadA', - 'ReloadB', - 'ReloadC', - 'ReloadD', - 'ReloadE', - 'ReloadF', - 'ReloadG', - 'ReloadH', - 'ReloadI', - 'ReloadJ', - 'ReloadK', - 'ReloadL', - 'ReloadM', - 'ReloadN', - 'ReloadO', - 'ReloadP', - 'ReloadQ', - 'ReloadR', - 'ReloadS', -// 'ReloadT', -// 'ReloadU', -// 'ReloadV', - 'ReloadW', - 'ReloadX', - 'ReloadY', - 'ReloadZ' - ],[255, 'None']); // 255 seen in DLC, though Geck converts to 0 - - wbEDID := wbString(EDID, 'Editor ID', 0, cpNormal); // not cpBenign according to Arthmoor - wbEDIDReq := wbString(EDID, 'Editor ID', 0, cpNormal, True); // not cpBenign according to Arthmoor - wbFULL := wbString(FULL, 'Name', 0, cpTranslate); - wbFULLActor := wbString(FULL, 'Name', 0, cpTranslate, False, wbActorTemplateUseBaseData); - wbFULLReq := wbString(FULL, 'Name', 0, cpNormal, True); - wbDESC := wbString(DESC, 'Description', 0, cpTranslate); - wbDESCReq := wbString(DESC, 'Description', 0, cpTranslate, True); - wbXSCL := wbFloat(XSCL, 'Scale'); - wbOBND := wbStruct(OBND, 'Object Bounds', [ - wbInteger('X1', itS16), - wbInteger('Y1', itS16), - wbInteger('Z1', itS16), - wbInteger('X2', itS16), - wbInteger('Y2', itS16), - wbInteger('Z2', itS16) - ]); - wbOBNDReq := wbStruct(OBND, 'Object Bounds', [ - wbInteger('X1', itS16), - wbInteger('Y1', itS16), - wbInteger('Z1', itS16), - wbInteger('X2', itS16), - wbInteger('Y2', itS16), - wbInteger('Z2', itS16) - ], cpNormal, True); - wbREPL := wbFormIDCkNoReach(REPL, 'Repair List', [FLST]); - wbEITM := wbFormIDCk(EITM, 'Object Effect', [ENCH, SPEL]); - wbBIPL := wbFormIDCk(BIPL, 'Biped Model List', [FLST]); - wbCOED := wbStructExSK(COED, [2], [0, 1], 'Extra Data', [ - {00} wbFormIDCkNoReach('Owner', [NPC_, FACT, NULL]), - {04} wbUnion('Global Variable / Required Rank', wbCOEDOwnerDecider, [ - wbByteArray('Unused', 4, cpIgnore), - wbFormIDCk('Global Variable', [GLOB, NULL]), - wbInteger('Required Rank', itS32) - ]), - {08} wbFloat('Item Condition') - ]); - - wbYNAM := wbFormIDCk(YNAM, 'Sound - Pick Up', [SOUN]); - wbZNAM := wbFormIDCk(ZNAM, 'Sound - Drop', [SOUN]); - - wbPosRot := - wbStruct('Position/Rotation', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ]); - - wbDATAPosRot := - wbStruct(DATA, 'Position/Rotation', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ], cpNormal, True); - - wbMODS := - wbArrayS(MODS, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - wbMO2S := - wbArrayS(MO2S, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - wbMO3S := - wbArrayS(MO3S, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - wbMO4S := - wbArrayS(MO4S, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - - wbMODD := - wbInteger(MODD, 'FaceGen Model Flags', itU8, wbFlags([ - 'Head', - 'Torso', - 'Right Hand', - 'Left Hand' - ])); - wbMOSD := - wbInteger(MOSD, 'FaceGen Model Flags', itU8, wbFlags([ - 'Head', - 'Torso', - 'Right Hand', - 'Left Hand' - ])); - - wbMODL := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbByteArray(MODB, 'Unknown', 4, cpIgnore), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore), -// wbArray(MODT, 'Texture Files Hashes', -// wbByteArray('Unknown', 24, cpBenign), -// wbArray('Hashes', wbInteger('Hash', itU64, wbMODTCallback), 3), -// 0, nil, nil, cpBenign), - wbMODS, - wbMODD - ], [], cpNormal, False, nil, True); - - wbMODLActor := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbByteArray(MODB, 'Unknown', 4, cpIgnore), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore), -// wbArray(MODT, 'Texture Files Hashes', -// wbByteArray('Unknown', 24, cpBenign), -// wbArray('Hashes', wbInteger('Hash', itU64, wbMODTCallback), 3), -// 0, nil, nil, cpBenign), - wbMODS, - wbMODD - ], [], cpNormal, False, wbActorTemplateUseModelAnimation, True); - - wbMODLReq := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbByteArray(MODB, 'Unknown', 4, cpIgnore), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore), -// wbArray(MODT, 'Texture Files', -// wbByteArray('Unknown', 24, cpBenign), -// wbArray('Hashes', wbInteger('Hash', itU64, wbMODTCallback), 3), -// 0, nil, nil, cpBenign), - wbMODS, - wbMODD - ], [], cpNormal, True, nil, True); - - - wbDEST := wbRStruct('Destructable', [ - wbStruct(DEST, 'Header', [ - wbInteger('Health', itS32), - wbInteger('Count', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'VATS Targetable' - ], True)), - wbByteArray('Unused', 2) - ]), - wbRArray('Stages', - wbRStruct('Stage', [ - wbStruct(DSTD, 'Destruction Stage Data', [ - wbInteger('Health %', itU8), - wbInteger('Index', itU8), - wbInteger('Damage Stage', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'Cap Damage', - 'Disable', - 'Destroy' - ])), - wbInteger('Self Damage per Second', itS32), - wbFormIDCk('Explosion', [EXPL, NULL]), - wbFormIDCk('Debris', [DEBR, NULL]), - wbInteger('Debris Count', itS32) - ], cpNormal, True), - wbRStructSK([0], 'Model', [ - wbString(DMDL, 'Model Filename'), - wbByteArray(DMDT, 'Texture Files Hashes', 0, cpIgnore) -// wbArray(DMDT, 'Unknown', -// wbByteArray('Unknown', 24, cpBenign), -// 0, nil, nil, cpBenign) - ], []), - wbEmpty(DSTF, 'End Marker', cpNormal, True) - ], []) - ) - ], []); - - wbDESTActor := wbRStruct('Destructable', [ - wbStruct(DEST, 'Header', [ - wbInteger('Health', itS32), - wbInteger('Count', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'VATS Targetable' - ])), - wbByteArray('Unused', 2) - ]), - wbRArray('Stages', - wbRStruct('Stage', [ - wbStruct(DSTD, 'Destruction Stage Data', [ - wbInteger('Health %', itU8), - wbInteger('Index', itU8), - wbInteger('Damage Stage', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'Cap Damage', - 'Disable', - 'Destroy' - ])), - wbInteger('Self Damage per Second', itS32), - wbFormIDCk('Explosion', [EXPL, NULL]), - wbFormIDCk('Debris', [DEBR, NULL]), - wbInteger('Debris Count', itS32) - ], cpNormal, True), - wbRStructSK([0], 'Model', [ - wbString(DMDL, 'Model Filename'), - wbByteArray(DMDT, 'Texture Files Hashes', 0, cpIgnore) -// wbArray(DMDT, 'Unknown', -// wbByteArray('Unknown', 24, cpBenign), -// 0, nil, nil, cpBenign) - ], []), - wbEmpty(DSTF, 'End Marker', cpNormal, True) - ], []) - ) - ], [], cpNormal, False, wbActorTemplateUseModelAnimation); - - wbSCRI := wbFormIDCk(SCRI, 'Script', [SCPT]); - wbSCRIActor := wbFormIDCk(SCRI, 'Script', [SCPT], False, cpNormal, False, wbActorTemplateUseScript); - wbENAM := wbFormIDCk(ENAM, 'Object Effect', [ENCH]); - - wbXLOD := wbArray(XLOD, 'Distant LOD Data', wbFloat('Unknown'), 3); - - wbXESP := wbStruct(XESP, 'Enable Parent', [ - wbFormIDCk('Reference', [PLYR, REFR, ACRE, ACHR, PGRE, PMIS, PBEA]), - wbInteger('Flags', itU8, wbFlags([ - 'Set Enable State to Opposite of Parent', - 'Pop In' - ])), - wbByteArray('Unused', 3) - ]); - - wbSCHRReq := wbStruct(SCHR, 'Basic Script Data', [ - wbByteArray('Unused', 4), - wbInteger('RefCount', itU32), - wbInteger('CompiledSize', itU32), - wbInteger('VariableCount', itU32), - wbInteger('Type', itU16, wbEnum([ - 'Object', - 'Quest' - ], [ - $100, 'Effect' - ])), - wbInteger('Flags', itU16, wbFlags([ - 'Enabled' - ]), cpNormal, False, nil, nil, 1) - ], cpNormal, True); - - wbSCROs := - wbRArray('References', - wbRUnion('', [ - wbFormID(SCRO, 'Global Reference'), -// wbFormIDCk(SCRO, 'Global Reference', -// [ACTI, DOOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, IMAD, -// BOOK, KEYM, ALCH, LIGH, QUST, PLYR, PACK, LVLI, ECZN, EXPL, FLST, IDLM, PMIS, -// FACT, ACHR, REFR, ACRE, GLOB, DIAL, CELL, SOUN, MGEF, WTHR, CLAS, EFSH, RACE, -// LVLC, CSTY, WRLD, SCPT, IMGS, MESG, MSTT, MUSC, NOTE, PERK, PGRE, PROJ, LVLN, -// WATR, ENCH, TREE, REPU, REGN, CSNO, CHAL, IMOD, RCCT, CMNY, CDCK, CHIP, CCRD, -// TERM, HAIR, EYES, ADDN, RCPE, NULL]), - wbInteger(SCRV, 'Local Variable', itU32) - ], []) - ); - - wbSLSD := wbStructSK(SLSD, [0], 'Local Variable Data', [ - wbInteger('Index', itU32), - wbByteArray('Unused', 12), - wbInteger('Flags', itU8, wbFlags(['IsLongOrShort']), cpCritical), - wbByteArray('Unused', 7) - ]); - - wbEmbeddedScript := wbRStruct('Embedded Script', [ - wbSCHRReq, - wbByteArray(SCDA, 'Compiled Embedded Script', 0, cpNormal{, True}), - wbStringScript(SCTX, 'Embedded Script Source', 0, cpNormal{, True}), - wbRArrayS('Local Variables', wbRStructSK([0], 'Local Variable', [ - wbSLSD, - wbString(SCVR, 'Name', 0, cpCritical, True) - ], [])), - wbSCROs - ], [], cpNormal, False, nil, False, wbEmbeddedScriptAfterLoad); - - wbEmbeddedScriptPerk := wbRStruct('Embedded Script', [ - wbSCHRReq, - wbByteArray(SCDA, 'Compiled Embedded Script', 0, cpNormal, True), - wbStringScript(SCTX, 'Embedded Script Source', 0, cpNormal, True), - wbRArrayS('Local Variables', wbRStructSK([0], 'Local Variable', [ - wbSLSD, - wbString(SCVR, 'Name', 0, cpCritical, True) - ], [])), - wbSCROs - ], [], cpNormal, False, wbEPF2DontShow, False, wbEmbeddedScriptAfterLoad); - - wbEmbeddedScriptReq := wbRStruct('Embedded Script', [ - wbSCHRReq, - wbByteArray(SCDA, 'Compiled Embedded Script', 0, cpNormal{, True}), - wbStringScript(SCTX, 'Embedded Script Source', 0, cpNormal{, True}), - wbRArrayS('Local Variables', wbRStructSK([0], 'Local Variable', [ - wbSLSD, - wbString(SCVR, 'Name', 0, cpCritical, True) - ], [])), - wbSCROs - ], [], cpNormal, True, nil, False, wbEmbeddedScriptAfterLoad); - - - wbXLCM := wbInteger(XLCM, 'Level Modifier', itS32); - - wbRecord(ACHR, 'Placed NPC', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [NPC_], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - {--- Ragdoll ---} - wbXRGD, - wbXRGB, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], []), - - {--- Leveled Actor ----} - wbXLCM, - - {--- Merchant Container ----} - wbFormIDCk(XMRC, 'Merchant Container', [REFR], True), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - - {--- Decals ---} - wbRArrayS('Linked Decals', - wbStructSK(XDCR, [0], 'Decal', [ - wbFormIDCk('Reference', [REFR]), - wbUnknown - ]) - ), - - {--- Linked Ref ---} - wbFormIDCk(XLKR, 'Linked Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbStruct(XCLP, 'Linked Reference Color', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbFloat('Delay') - ]) - ) - ], []), - - wbString(XATO, 'Activation Prompt'), - - {--- Enable Parent ---} - wbXESP, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Flags ---} - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbXOWN := wbFormIDCkNoReach(XOWN, 'Owner', [FACT, ACHR, CREA, NPC_]); // Ghouls can own too aparently ! - wbXGLB := wbFormIDCk(XGLB, 'Global variable', [GLOB]); - - wbRecord(ACRE, 'Placed Creature', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [CREA], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - wbXRGD, - wbXRGB, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], []), - - {--- Leveled Actor ----} - wbXLCM, - - {--- Ownership ---} - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32) - ], [XCMT, XCMO]), - - {--- Merchant Container ----} - wbFormIDCk(XMRC, 'Merchant Container', [REFR], True), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - - {--- Decals ---} - wbRArrayS('Linked Decals', - wbStructSK(XDCR, [0], 'Decal', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA]), - wbUnknown - ]) - ), - - {--- Linked Ref ---} - wbFormIDCk(XLKR, 'Linked Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbStruct(XCLP, 'Linked Reference Color', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbFloat('Delay') - ]) - ) - ], []), - - wbString(XATO, 'Activation Prompt'), - - {--- Enable Parent ---} - wbXESP, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Flags ---} - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbRecord(ACTI, 'Activator', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbSCRI, - wbDEST, - wbFormIDCk(SNAM, 'Sound - Looping', [SOUN]), - wbFormIDCk(VNAM, 'Sound - Activation', [SOUN]), - wbFormIDCk(INAM, 'Radio Template', [SOUN]), - wbFormIDCk(RNAM, 'Radio Station', [TACT]), - wbFormIDCk(WNAM, 'Water Type', [WATR]), - wbString(XATO, 'Activation Prompt') - ]); - - wbICON := wbRStruct('Icon', [ - wbString(ICON, 'Large Icon filename', 0, cpNormal, True), - wbString(MICO, 'Small Icon filename') - ], [], cpNormal, False, nil, True); - - wbICONReq := wbRStruct('Icon', [ - wbString(ICON, 'Large Icon filename', 0, cpNormal, True), - wbString(MICO, 'Small Icon filename') - ], [], cpNormal, True, nil, True); - - wbVatsValueFunctionEnum := - wbEnum([ - 'Weapon Is', - 'Weapon In List', - 'Target Is', - 'Target In List', - 'Target Distance', - 'Target Part', - 'VATS Action', - 'Is Success', - 'Is Critical', - 'Critical Effect Is', - 'Critical Effect In List', - 'Is Fatal', - 'Explode Part', - 'Dismember Part', - 'Cripple Part', - 'Weapon Type Is', - 'Is Stranger', - 'Is Paralyzing Palm' - ]); - - wbActorValueEnum := - wbEnum([ - {00} 'Aggresion', - {01} 'Confidence', - {02} 'Energy', - {03} 'Responsibility', - {04} 'Mood', - {05} 'Strength', - {06} 'Perception', - {07} 'Endurance', - {08} 'Charisma', - {09} 'Intelligence', - {10} 'Agility', - {11} 'Luck', - {12} 'Action Points', - {13} 'Carry Weight', - {14} 'Critical Chance', - {15} 'Heal Rate', - {16} 'Health', - {17} 'Melee Damage', - {18} 'Damage Resistance', - {19} 'Poison Resistance', - {20} 'Rad Resistance', - {21} 'Speed Multiplier', - {22} 'Fatigue', - {23} 'Karma', - {24} 'XP', - {25} 'Perception Condition', - {26} 'Endurance Condition', - {27} 'Left Attack Condition', - {28} 'Right Attack Condition', - {29} 'Left Mobility Condition', - {30} 'Right Mobility Condition', - {31} 'Brain Condition', - {32} 'Barter', - {33} 'Big Guns (obsolete)', - {34} 'Energy Weapons', - {35} 'Explosives', - {36} 'Lockpick', - {37} 'Medicine', - {38} 'Melee Weapons', - {39} 'Repair', - {40} 'Science', - {41} 'Guns', - {42} 'Sneak', - {43} 'Speech', - {44} 'Survival', - {45} 'Unarmed', - {46} 'Inventory Weight', - {47} 'Paralysis', - {48} 'Invisibility', - {49} 'Chameleon', - {50} 'Night Eye', - {51} 'Turbo', - {52} 'Fire Resistance', - {53} 'Water Breathing', - {54} 'Rad Level', - {55} 'Bloody Mess', - {56} 'Unarmed Damage', - {57} 'Assistance', - {58} 'Electric Resistance', - {59} 'Frost Resistance', - {60} 'Energy Resistance', - {61} 'EMP Resistance', - {62} 'Variable01', - {63} 'Variable02', - {64} 'Variable03', - {65} 'Variable04', - {66} 'Variable05', - {67} 'Variable06', - {68} 'Variable07', - {79} 'Variable08', - {70} 'Variable09', - {71} 'Variable10', - {72} 'Ignore Crippled Limbs', - {73} 'Dehydration', - {74} 'Hunger', - {75} 'Sleep Deprivation', - {76} 'Damage Threshold' - ], [ - -1, 'None' - ]); - - wbModEffectEnum := - wbEnum([ - {00} 'None', - {01} 'Increase Weapon Damage', - {02} 'Increase Clip Capacity', - {03} 'Decrease Spread', - {04} 'Decrease Weight', - {05} 'Regenerate Ammo (shots)', - {06} 'Regenerate Ammo (seconds)', - {07} 'Decrease Equip Time', - {08} 'Increase Rate of Fire', - {09} 'Increase Projectile Speed', - {10} 'Increase Max. Condition', - {11} 'Silence', - {12} 'Split Beam', - {13} 'VATS Bonus', - {14} 'Increase Zoom', - {15} 'Decrease Equip Time', - {16} 'Suppressor' - ]); - - wbSkillEnum := - wbEnum([ - 'Barter', - 'Big Guns (obsolete)', - 'Energy Weapons', - 'Explosives', - 'Lockpick', - 'Medicine', - 'Melee Weapons', - 'Repair', - 'Science', - 'Guns', - 'Sneak', - 'Speech', - 'Survival', - 'Unarmed' - ], [ - -1, 'None' - ]); - - wbCrimeTypeEnum := - wbEnum([ - 'Steal', - 'Pickpocket', - 'Trespass', - 'Attack', - 'Murder' - ], [ - -1, 'None' - ]); - - wbActorValue := wbInteger('Actor Value', itS32, wbActorValueEnum); - - wbEquipTypeEnum := - wbEnum([ - {00} 'Big Guns', - {01} 'Energy Weapons', - {02} 'Small Guns', - {03} 'Melee Weapons', - {04} 'Unarmed Weapon', - {05} 'Thrown Weapons', - {06} 'Mine', - {07} 'Body Wear', - {08} 'Head Wear', - {09} 'Hand Wear', - {10} 'Chems', - {11} 'Stimpack', - {12} 'Food', - {13} 'Alcohol' - ], [ - -1, 'None' - ]); - - wbETYP := wbInteger(ETYP, 'Equiptment Type', itS32, wbEquipTypeEnum); - wbETYPReq := wbInteger(ETYP, 'Equiptment Type', itS32, wbEquipTypeEnum, cpNormal, True); - - wbFormTypeEnum := - wbEnum([], [ - $04, 'Texture Set', - $05, 'Menu Icon', - $06, 'Global', - $07, 'Class', - $08, 'Faction', - $09, 'Head Part', - $0A, 'Hair', - $0B, 'Eyes', - $0C, 'Race', - $0D, 'Sound', - $0E, 'Acoustic Space', - $0F, 'Skill', - $10, 'Base Effect', - $11, 'Script', - $12, 'Landscape Texture', - $13, 'Object Effect', - $14, 'Actor Effect', - $15, 'Activator', - $16, 'Talking Activator', - $17, 'Terminal', - $18, 'Armor', - $19, 'Book', - $1A, 'Clothing', - $1B, 'Container', - $1C, 'Door', - $1D, 'Ingredient', - $1E, 'Light', - $1F, 'Misc', - $20, 'Static', - $21, 'Static Collection', - $22, 'Movable Static', - $23, 'Placeable Water', - $24, 'Grass', - $25, 'Tree', - $26, 'Flora', - $27, 'Furniture', - $28, 'Weapon', - $29, 'Ammo', - $2A, 'NPC', - $2B, 'Creature', - $2C, 'Leveled Creature', - $2D, 'Leveled NPC', - $2E, 'Key', - $2F, 'Ingestible', - $30, 'Idle Marker', - $31, 'Note', - $32, 'Constructible Object', - $33, 'Projectile', - $34, 'Leveled Item', - $35, 'Weather', - $36, 'Climate', - $37, 'Region', - $39, 'Cell', - $3A, 'Placed Object', - $3B, 'Placed Character', - $3C, 'Placed Creature', - $3E, 'Placed Grenade', - $41, 'Worldspace', - $42, 'Landscape', - $43, 'Navigation Mesh', - $45, 'Dialog Topic', - $46, 'Dialog Response', - $47, 'Quest', - $48, 'Idle Animation', - $49, 'Package', - $4A, 'Combat Style', - $4B, 'Load Screen', - $4C, 'Leveled Spell', - $4D, 'Animated Object', - $4E, 'Water', - $4F, 'Effect Shader', - $51, 'Explosion', - $52, 'Debris', - $53, 'Image Space', - $54, 'Image Space Modifier', - $55, 'FormID List', - $56, 'Perk', - $57, 'Body Part Data', - $58, 'Addon Node', - $59, 'Actor Value Info', - $5A, 'Radiation Stage', - $5B, 'Camera Shot', - $5C, 'Camera Path', - $5D, 'Voice Type', - $5E, 'Impact Data', - $5F, 'Impact DataSet', - $60, 'Armor Addon', - $61, 'Encounter Zone', - $62, 'Message', - $63, 'Ragdoll', - $64, 'Default Object Manager', - $65, 'Lighting Template', - $66, 'Music Type', - $67, 'Item Mod', - $68, 'Reputation', - $69, '?PCBE', //no such records in FalloutNV.esm - $6A, 'Recipe', - $6B, 'Recipe Category', - $6C, 'Casino Chip', - $6D, 'Casino', - $6E, 'Load Screen Type', - $6F, 'Media Set', - $70, 'Media Location Controller', - $71, 'Challenge', - $72, 'Ammo Effect', - $73, 'Caravan Card', - $74, 'Caravan Money', - $75, 'Caravan Deck', - $76, 'Dehydration Stages', - $77, 'Hunger Stages', - $78, 'Sleep Deprivation Stages' - ]); - - wbMenuModeEnum := - wbEnum([],[ - 1, 'Type: Character Interface', - 2, 'Type: Other', - 3, 'Type: Console', - 1001, 'Specific: Message', - 1002, 'Specific: Inventory', - 1003, 'Specific: Stats', - 1004, 'Specific: HUDMainMenu', - 1007, 'Specific: Loading', - 1008, 'Specific: Container', - 1009, 'Specific: Dialog', - 1012, 'Specific: Sleep/Wait', - 1013, 'Specific: Pause', - 1014, 'Specific: LockPick', - 1016, 'Specific: Quantity', - 1027, 'Specific: Level Up', - 1035, 'Specific: Pipboy Repair', - 1036, 'Specific: Race / Sex', - 1047, 'Specific: Credits', - 1048, 'Specific: CharGen', - 1051, 'Specific: TextEdit', - 1053, 'Specific: Barter', - 1054, 'Specific: Surgery', - 1055, 'Specific: Hacking', - 1056, 'Specific: VATS', - 1057, 'Specific: Computers', - 1058, 'Specific: Vendor Repair', - 1059, 'Specific: Tutorial', - 1060, 'Specific: You''re SPECIAL book' - ]); -end; - -procedure DefineFNVb; -begin - wbMiscStatEnum := - wbEnum([ - 'Quests Completed', - 'Locations Discovered', - 'People Killed', - 'Creatures Killed', - 'Locks Picked', - 'Computers Hacked', - 'Stimpaks Taken', - 'Rad-X Taken', - 'RadAway Taken', - 'Chems Taken', - 'Times Addicted', - 'Mines Disarmed', - 'Speech Successes', - 'Pockets Picked', - 'Pants Exploded', - 'Books Read', - 'Bobbleheads Found', - 'Weapons Created', - 'People Mezzed', - 'Captives Rescued', - 'Sandman Kills', - 'Paralyzing Punches', - 'Robots Disabled', - 'Contracts Completed', - 'Corpses Eaten', - 'Mysterious Stranger Visits', - 'Doctor Bags Used', - 'Challenges Completed', - 'Miss Fortunate Occurrences', - 'Disintegrations', - 'Have Limbs Crippled', - 'Speech Failures', - 'Items Crafted', - 'Weapon Modifications', - 'Items Repaired', - 'Total Things Killed', - 'Dismembered Limbs', - 'Caravan Games Won', - 'Caravan Games Lost', - 'Barter Amount Traded', - 'Roulette Games Played', - 'Blackjack Games Played', - 'Slots Games Played' - ]); - - wbAlignmentEnum := - wbEnum([ - 'Good', - 'Neutral', - 'Evil', - 'Very Good', - 'Very Evil' - ]); - - wbAxisEnum := - wbEnum([], [ - 88, 'X', - 89, 'Y', - 90, 'Z' - ]); - - wbCriticalStageEnum := - wbEnum([ - 'None', - 'Goo Start', - 'Goo End', - 'Disintegrate Start', - 'Disintegrate End' - ]); - - wbSexEnum := - wbEnum(['Male','Female']); - - wbCreatureTypeEnum := - wbEnum([ - 'Animal', - 'Mutated Animal', - 'Mutated Insect', - 'Abomination', - 'Super Mutant', - 'Feral Ghoul', - 'Robot', - 'Giant' - ]); - - wbPlayerActionEnum := - wbEnum([ - '', - 'Swinging Melee Weapon', - 'Throwing Grenade', - 'Fire Weapon', - 'Lay Mine', - 'Z Key Object', - 'Jumping', - 'Knocking over Objects', - 'Stand on Table/Chair', - 'Iron Sites', - 'Destroying Object' - ]); - - wbBodyLocationEnum := - wbEnum([ - 'Torso', - 'Head 1', - 'Head 2', - 'Left Arm 1', - 'Left Arm 2', - 'Right Arm 1', - 'Right Arm 2', - 'Left Leg 1', - 'Left Leg 2', - 'Left Leg 3', - 'Right Leg 1', - 'Right Leg 2', - 'Right Leg 3', - 'Brain' - ], [ - -1, 'None' - ]); - - - wbEFID := wbFormIDCk(EFID, 'Base Effect', [MGEF]); - - wbEFIT := - wbStructSK(EFIT, [3, 4], '', [ - wbInteger('Magnitude', itU32), - wbInteger('Area', itU32), - wbInteger('Duration', itU32), - wbInteger('Type', itU32, wbEnum(['Self', 'Touch', 'Target'])), - wbActorValue - ], cpNormal, True, nil, -1, wbEFITAfterLoad); - - wbCTDA := - wbStruct(CTDA, 'Condition', [ - wbInteger('Type', itU8, wbCtdaTypeToStr, wbCtdaTypeToInt, cpNormal, False, nil, wbCtdaTypeAfterSet), - wbByteArray('Unused', 3), - wbUnion('Comparison Value', wbCTDACompValueDecider, [ - wbFloat('Comparison Value - Float'), - wbFormIDCk('Comparison Value - Global', [GLOB]) - ]), - wbInteger('Function', itU32, wbCTDAFunctionToStr, wbCTDAFunctionToInt), // Limited to itu16 - wbUnion('Parameter #1', wbCTDAParam1Decider, [ - {00} wbByteArray('Unknown', 4), - {01} wbByteArray('None', 4, cpIgnore), - {02} wbInteger('Integer', itS32), - {03} wbInteger('Variable Name (INVALID)', itS32), - {04} wbInteger('Sex', itU32, wbSexEnum), - {05} wbInteger('Actor Value', itS32, wbActorValueEnum), - {06} wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {07} wbInteger('Axis', itU32, wbAxisEnum), - {08} wbInteger('Quest Stage (INVALID)', itS32), - {09} wbInteger('Misc Stat', itU32, wbMiscStatEnum), - {10} wbInteger('Alignment', itU32, wbAlignmentEnum), - {11} wbInteger('Equip Type', itU32, wbEquipTypeEnum), - {12} wbInteger('Form Type', itU32, wbFormTypeEnum), - {13} wbInteger('Critical Stage', itU32, wbCriticalStageEnum), - {14} wbFormIDCkNoReach('Object Reference', [PLYR, REFR, ACHR, ACRE, PGRE, PMIS, PBEA, TRGT], True), - {16} wbFormIDCkNoReach('Inventory Object', [ARMO, BOOK, MISC, WEAP, AMMO, KEYM, ALCH, NOTE, FLST, CHIP, CMNY, IMOD]), - {17} wbFormIDCkNoReach('Actor', [PLYR, ACHR, ACRE, TRGT], True), - {18} wbFormIDCkNoReach('Voice Type', [VTYP]), - {19} wbFormIDCkNoReach('Idle', [IDLE]), - {20} wbFormIDCkNoReach('Form List', [FLST]), - {21} wbFormIDCkNoReach('Note', [NOTE]), - {22} wbFormIDCkNoReach('Quest', [QUST]), - {23} wbFormIDCkNoReach('Faction', [FACT]), - {24} wbFormIDCkNoReach('Weapon', [WEAP]), - {25} wbFormIDCkNoReach('Cell', [CELL]), - {26} wbFormIDCkNoReach('Class', [CLAS]), - {27} wbFormIDCkNoReach('Race', [RACE]), - {28} wbFormIDCkNoReach('Actor Base', [NPC_, CREA, ACTI, TACT, NULL]), - {29} wbFormIDCkNoReach('Global', [GLOB]), - {30} wbFormIDCkNoReach('Weather', [WTHR]), - {31} wbFormIDCkNoReach('Package', [PACK]), - {32} wbFormIDCkNoReach('Encounter Zone', [ECZN]), - {33} wbFormIDCkNoReach('Perk', [PERK]), - {34} wbFormIDCkNoReach('Owner', [FACT, NPC_]), - {35} wbFormIDCkNoReach('Furniture', [FURN, FLST]), - {36} wbFormIDCkNoReach('Effect Item', [SPEL, ENCH, ALCH, INGR]), - {37} wbFormIDCkNoReach('Base Effect', [MGEF]), - {38} wbFormIDCkNoReach('Worldspace', [WRLD]), - {39} wbInteger('VATS Value Function', itU32, wbVATSValueFunctionEnum), - {40} wbInteger('VATS Value Param (INVALID)', itU32), - {41} wbInteger('Creature Type', itU32, wbCreatureTypeEnum), - {42} wbInteger('Menu Mode', itU32, wbMenuModeEnum), - {43} wbInteger('Player Action', itU32, wbPlayerActionEnum), - {44} wbInteger('Body Location', itS32, wbBodyLocationEnum), - {45} wbFormIDCkNoReach('Referenceable Object', [CREA, NPC_, PROJ, TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, NOTE, PWAT, SCOL, TACT, TERM, FLST, CHIP, CMNY, CCRD, IMOD, LVLC, LVLN], - [CREA, NPC_, PROJ, TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, NOTE, PWAT, SCOL, TACT, TERM, CHIP, CMNY, CCRD, IMOD, LVLC, LVLN]), - {46} wbInteger('Quest Objective (INVALID)', itS32), - {47} wbFormIDCkNoReach('Reputation', [REPU]), - {48} wbFormIDCkNoReach('Region', [REGN]), - {49} wbFormIDCkNoReach('Challenge', [CHAL]), - {50} wbFormIDCkNoReach('Casino', [CSNO]), - {51} wbFormID('Form') - ]), - wbUnion('Parameter #2', wbCTDAParam2Decider, [ - {00} wbByteArray('Unknown', 4), - {01} wbByteArray('None', 4, cpIgnore), - {02} wbInteger('Integer', itS32), - {03} wbInteger('Variable Name', itS32, wbCTDAParam2VariableNameToStr, wbCTDAParam2VariableNameToInt), - {04} wbInteger('Sex', itU32, wbSexEnum), - {05} wbInteger('Actor Value', itS32, wbActorValueEnum), - {06} wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {07} wbInteger('Axis', itU32, wbAxisEnum), - {08} wbInteger('Quest Stage', itS32, wbCTDAParam2QuestStageToStr, wbCTDAParam2QuestStageToInt), - {09} wbInteger('Misc Stat', itU32, wbMiscStatEnum), - {10} wbInteger('Alignment', itU32, wbAlignmentEnum), - {11} wbInteger('Equip Type', itU32, wbEquipTypeEnum), - {12} wbInteger('Form Type', itU32, wbFormTypeEnum), - {13} wbInteger('Critical Stage', itU32, wbCriticalStageEnum), - {14} wbFormIDCkNoReach('Object Reference', [PLYR, REFR, PMIS, PBEA, ACHR, ACRE, PGRE, TRGT], True), - {16} wbFormIDCkNoReach('Inventory Object', [ARMO, BOOK, MISC, WEAP, AMMO, KEYM, ALCH, NOTE, FLST, CHIP, CMNY, CCRD, IMOD]), - {17} wbFormIDCkNoReach('Actor', [PLYR, ACHR, ACRE, TRGT], True), - {18} wbFormIDCkNoReach('Voice Type', [VTYP]), - {19} wbFormIDCkNoReach('Idle', [IDLE]), - {20} wbFormIDCkNoReach('Form List', [FLST]), - {21} wbFormIDCkNoReach('Note', [NOTE]), - {22} wbFormIDCkNoReach('Quest', [QUST]), - {23} wbFormIDCkNoReach('Faction', [FACT]), - {24} wbFormIDCkNoReach('Weapon', [WEAP]), - {25} wbFormIDCkNoReach('Cell', [CELL]), - {26} wbFormIDCkNoReach('Class', [CLAS]), - {27} wbFormIDCkNoReach('Race', [RACE]), - {28} wbFormIDCkNoReach('Actor Base', [NPC_, CREA, ACTI, TACT]), - {29} wbFormIDCkNoReach('Global', [GLOB]), - {30} wbFormIDCkNoReach('Weather', [WTHR]), - {31} wbFormIDCkNoReach('Package', [PACK]), - {32} wbFormIDCkNoReach('Encounter Zone', [ECZN]), - {33} wbFormIDCkNoReach('Perk', [PERK]), - {34} wbFormIDCkNoReach('Owner', [FACT, NPC_]), - {35} wbFormIDCkNoReach('Furniture', [FURN, FLST]), - {36} wbFormIDCkNoReach('Effect Item', [SPEL, ENCH, ALCH, INGR]), - {37} wbFormIDCkNoReach('Base Effect', [MGEF]), - {38} wbFormIDCkNoReach('Worldspace', [WRLD]), - {39} wbInteger('VATS Value Function (INVALID)', itU32), - {40} wbUnion('VATS Value Param', wbCTDAParam2VATSValueParam, [ - wbFormIDCkNoReach('Weapon', [WEAP]), - wbFormIDCkNoReach('Weapon List', [FLST], [WEAP]), - wbFormIDCkNoReach('Target', [NPC_, CREA]), - wbFormIDCkNoReach('Target List', [FLST], [NPC_, CREA]), - wbByteArray('Unused', 4, cpIgnore), - wbInteger('Target Part', itS32, wbActorValueEnum), - wbInteger('VATS Action', itU32, wbEnum([ - 'Unarmed Attack', - 'One Hand Melee Attack', - 'Two Hand Melee Attack', - 'Fire Pistol', - 'Fire Rifle', - 'Fire Handle Weapon', - 'Fire Launcher', - 'Throw Grenade', - 'Place Mine', - 'Reload', - 'Crouch', - 'Stand', - 'Switch Weapon', - 'Toggle Weapon Drawn', - 'Heal', - 'Player Death', - 'Special Weapon Attack', - 'Special Unarmed Attack', - 'Kill Camera Shot', - 'Throw Weapon' - ])), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbFormIDCkNoReach('Critical Effect', [SPEL]), - wbFormIDCkNoReach('Critical Effect List', [FLST], [SPEL]), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbInteger('Weapon Type', itU32, wbWeaponAnimTypeEnum), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore) - ]), - {41} wbInteger('Creature Type', itU32, wbCreatureTypeEnum), - {42} wbInteger('Menu Mode', itU32, wbMenuModeEnum), - {43} wbInteger('Player Action', itU32, wbPlayerActionEnum), - {44} wbInteger('Body Location', itS32, wbBodyLocationEnum), - {45} wbFormIDCkNoReach('Referenceable Object', [CREA, NPC_, PROJ, TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, NOTE, PWAT, SCOL, TACT, TERM, FLST, CHIP, CMNY, CCRD, IMOD, LVLC, LVLN], - [CREA, NPC_, PROJ, TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, NOTE, PWAT, SCOL, TACT, TERM, CHIP, CMNY, CCRD, IMOD, LVLC, LVLN]), - {46} wbInteger('Quest Objective', itS32, wbCTDAParam2QuestObjectiveToStr, wbCTDAParam2QuestObjectiveToInt), - {47} wbFormIDCkNoReach('Reputation', [REPU]), - {48} wbFormIDCkNoReach('Region', [REGN]), - {49} wbFormIDCkNoReach('Challenge', [CHAL]), - {50} wbFormIDCkNoReach('Casino', [CSNO]), - {51} wbFormID('Form') - ]), - wbInteger('Run On', itU32, wbEnum([ - 'Subject', - 'Target', - 'Reference', - 'Combat Target', - 'Linked Reference' - ]), cpNormal, False, nil, wbCTDARunOnAfterSet), - wbUnion('Reference', wbCTDAReferenceDecider, [ - wbInteger('Unused', itU32, nil, cpIgnore), - wbFormIDCkNoReach('Reference', [PLYR, ACHR, ACRE, REFR, PMIS, PBEA, PGRE, NULL], True) // Can end up NULL if the original function requiring a reference is replaced by another who has no Run on prerequisite - ]) - ], cpNormal, False, nil, 6, wbCTDAAfterLoad); - wbCTDAs := wbRArray('Conditions', wbCTDA); - wbCTDAsReq := wbRArray('Conditions', wbCTDA, cpNormal, True); - - wbEffects := - wbRStructs('Effects','Effect', [ - wbEFID, - wbEFIT, - wbCTDAs - ], []); - - wbEffectsReq := - wbRStructs('Effects','Effect', [ - wbEFID, - wbEFIT, - wbCTDAs - ], [], cpNormal, True); - - - wbRecord(ALCH, 'Ingestible', [ - wbEDIDReq, - wbOBNDReq, - wbFULLReq, - wbMODL, - wbICON, - wbSCRI, - wbDEST, - wbYNAM, - wbZNAM, - wbETYPReq, - wbFloat(DATA, 'Weight', cpNormal, True), - wbStruct(ENIT, 'Effect Data', [ - wbInteger('Value', itS32), - wbInteger('Flags?', itU8, wbFlags([ - 'No Auto-Calc (Unused)', - 'Food Item', - 'Medicine' - ])), - wbByteArray('Unused', 3), - wbFormIDCk('Withdrawal Effect', [SPEL, NULL]), - wbFloat('Addiction Chance'), - wbFormIDCk('Sound - Consume', [SOUN, NULL]) - ], cpNormal, True), - wbEffectsReq - ]); - - wbRecord(AMMO, 'Ammunition', [ - wbEDIDReq, - wbOBNDReq, - wbFULLReq, - wbMODL, - wbICON, - wbSCRI, - wbDEST, - wbYNAM, - wbZNAM, - wbStruct(DATA, 'Data', [ - wbFloat('Speed'), - wbInteger('Flags', itU8, wbFlags([ - 'Ignores Normal Weapon Resistance', - 'Non-Playable' - ])), - wbByteArray('Unused', 3), - wbInteger('Value', itS32), - wbInteger('Clip Rounds', itU8) - ], cpNormal, True), - wbStruct(DAT2, 'Data 2', [ - wbInteger('Proj. per Shot', itU32), - wbFormIDCk('Projectile', [PROJ, NULL]), - wbFloat('Weight'), - wbFormIDCk('Consumed Ammo', [AMMO, MISC, NULL]), - wbFloat('Consumed Percentage') - ], cpNormal, False, nil, 3), - wbString(ONAM, 'Short Name'), - wbString(QNAM, 'Abbrev.'), - wbRArray('Ammo Effects', - wbFormIDCk(RCIL, 'Effect', [AMEF]) - ) - ]); - - wbRecord(ANIO, 'Animated Object', [ - wbEDIDReq, - wbMODLReq, - wbFormIDCk(DATA, 'Animation', [IDLE], False, cpNormal, True) - ]); - - wbBMDT := wbStruct(BMDT, 'Biped Data', [ - wbInteger('Biped Flags', itU32, wbFlags([ - {0x00000001} 'Head', - {0x00000002} 'Hair', - {0x00000004} 'Upper Body', - {0x00000008} 'Left Hand', - {0x00000010} 'Right Hand', - {0x00000020} 'Weapon', - {0x00000040} 'PipBoy', - {0x00000080} 'Backpack', - {0x00000100} 'Necklace', - {0x00000200} 'Headband', - {0x00000400} 'Hat', - {0x00000800} 'Eye Glasses', - {0x00001000} 'Nose Ring', - {0x00002000} 'Earrings', - {0x00004000} 'Mask', - {0x00008000} 'Choker', - {0x00010000} 'Mouth Object', - {0x00020000} 'Body AddOn 1', - {0x00040000} 'Body AddOn 2', - {0x00080000} 'Body AddOn 3' - ])), - wbInteger('General Flags', itU8, wbFlags([ - {0x0001} '1', - {0x0002} '2', - {0x0004} 'Has Backpack', - {0x0008} 'Medium', - {0x0010} '5', - {0x0020} 'Power Armor', - {0x0040} 'Non-Playable', - {0x0080} 'Heavy' - ], True)), - wbByteArray('Unused') - ], cpNormal, True); - - wbRecord(ARMO, 'Armor', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbSCRI, - wbEITM, - wbBMDT, - wbRStruct('Male biped model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore), - wbMODS, - wbMODD - ], [], cpNormal, False, nil, True), - wbRStruct('Male world model', [ - wbString(MOD2, 'Model Filename'), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore), - wbMO2S - ], []), - wbString(ICON, 'Male icon filename'), - wbString(MICO, 'Male mico filename'), - wbRStruct('Female biped model', [ - wbString(MOD3, 'Model Filename', 0, cpNormal, True), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore), - wbMO3S, - wbMOSD - ], [], cpNormal, False, nil, True), - wbRStruct('Female world model', [ - wbString(MOD4, 'Model Filename'), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore), - wbMO4S - ], []), - wbString(ICO2, 'Female icon filename'), - wbString(MIC2, 'Female mico filename'), - wbString(BMCT, 'Ragdoll Constraint Template'), - wbREPL, - wbBIPL, - wbETYPReq, - wbYNAM, - wbZNAM, - wbStruct(DATA, 'Data', [ - wbInteger('Value', itS32), - wbInteger('Health', itS32), - wbFloat('Weight') - ], cpNormal, True), - wbStruct(DNAM, '', [ - wbInteger('AR', itS16, wbDiv(100)), - wbInteger('Flags', itU16, wbFlags([ - 'Modulates Voice' - ])), - wbFloat('DT'), - wbByteArray('?', 4) - ], cpNormal, True, nil, 2), - wbInteger(BNAM, 'Overrides Animation Sounds', itU32, wbEnum(['No', 'Yes'])), - wbRArray('Animation Sounds', - wbStruct(SNAM, 'Animation Sound', [ - wbFormIDCk('Sound', [SOUN]), - wbInteger('Chance', itU8), - wbByteArray('Unused', 3), - wbInteger('Type', itU32, wbEnum([], [ - 19, 'Run', - 21, 'Run (Armor)', - 18, 'Sneak', - 20, 'Sneak (Armor)', - 17, 'Walk', - 22, 'Walk (Armor)' - ])) - ]) - ), - wbFormIDCk(TNAM, 'Animation Sounds Template', [ARMO]) - ]); - - wbRecord(ARMA, 'Armor Addon', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbBMDT, - wbRStruct('Male biped model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore), - wbMODS, - wbMODD - ], [], cpNormal, False, nil, True), - wbRStruct('Male world model', [ - wbString(MOD2, 'Model Filename'), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore), - wbMO2S - ], []), - wbString(ICON, 'Male icon filename'), - wbString(MICO, 'Male mico filename'), - wbRStruct('Female biped model', [ - wbString(MOD3, 'Model Filename', 0, cpNormal, True), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore), - wbMO3S, - wbMOSD - ], [], cpNormal, False, nil, True), - wbRStruct('Female world model', [ - wbString(MOD4, 'Model Filename'), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore), - wbMO4S - ], []), - wbString(ICO2, 'Female icon filename'), - wbString(MIC2, 'Female mico filename'), - wbETYPReq, - wbStruct(DATA, 'Data', [ - wbInteger('Value', itS32), - wbInteger('Max Condition', itS32), - wbFloat('Weight') - ], cpNormal, True), - wbStruct(DNAM, '', [ - wbInteger('AR', itS16, wbDiv(100)), - wbInteger('Flags', itU16, wbFlags([ // Only a byte or 2 distincts byte - 'Modulates Voice' - ])), - wbFloat('DT'), - wbByteArray('Unused', 4) - ], cpNormal, True, nil, 2) - ]); - - wbRecord(BOOK, 'Book', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbDESCReq, - wbDEST, - wbYNAM, - wbZNAM, - wbStruct(DATA, 'Data', [ - wbInteger('Flags', itU8, wbFlags([ - '', - 'Can''t be Taken' - ])), - wbInteger('Skill', itS8, wbSkillEnum), - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbSPLO := wbFormIDCk(SPLO, 'Actor Effect', [SPEL]); - wbSPLOs := wbRArrayS('Actor Effects', wbSPLO, cpNormal, False, nil, nil, wbActorTemplateUseActorEffectList); - - wbRecord(CELL, 'Cell', [ - wbEDID, - wbFULL, - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Is Interior Cell', - {0x02} 'Has water', - {0x04} 'Invert Fast Travel behavior', - {0x08} 'No LOD Water', - {0x10} '', - {0x20} 'Public place', - {0x40} 'Hand changed', - {0x80} 'Behave like exterior' - ]), cpNormal, True), - wbStruct(XCLC, 'Grid', [ - wbInteger('X', itS32), - wbInteger('Y', itS32), - wbInteger('Force Hide Land', itU32, wbFlags([ - 'Quad 1', - 'Quad 2', - 'Quad 3', - 'Quad 4' - ], True)) - ], cpNormal, False, nil, 2), - wbStruct(XCLL, 'Lighting', [ - wbStruct('Ambient Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Directional Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Fog Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Fog Near'), - wbFloat('Fog Far'), - wbInteger('Directional Rotation XY', itS32), - wbInteger('Directional Rotation Z', itS32), - wbFloat('Directional Fade'), - wbFloat('Fog Clip Dist'), - wbFloat('Fog Power') - ], cpNormal, False, nil, 7), - wbArray(IMPF, 'Footstep Materials', wbString('Unknown', 30), [ - 'ConcSolid', - 'ConcBroken', - 'MetalSolid', - 'MetalHollow', - 'MetalSheet', - 'Wood', - 'Sand', - 'Dirt', - 'Grass', - 'Water' - ]), - wbRStruct('Light Template', [ - wbFormIDCk(LTMP, 'Template', [LGTM, NULL]), - wbInteger(LNAM, 'Inherit', itU32, wbFlags([ - {0x00000001}'Ambient Color', - {0x00000002}'Directional Color', - {0x00000004}'Fog Color', - {0x00000008}'Fog Near', - {0x00000010}'Fog Far', - {0x00000020}'Directional Rotation', - {0x00000040}'Directional Fade', - {0x00000080}'Clip Distance', - {0x00000100}'Fog Power' - ]), cpNormal, True) - ], [], cpNormal, True ), - wbFloat(XCLW, 'Water Height'), - wbString(XNAM, 'Water Noise Texture'), - wbArrayS(XCLR, 'Regions', wbFormIDCk('Region', [REGN])), - wbFormIDCk(XCIM, 'Image Space', [IMGS]), - wbByteArray(XCET, 'Unknown', 1, cpIgnore), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - wbFormIDCk(XCCM, 'Climate', [CLMT]), - wbFormIDCk(XCWT, 'Water', [WATR]), - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32) - ], [XCMT, XCMO]), - wbFormIDCk(XCAS, 'Acoustic Space', [ASPC]), - wbByteArray(XCMT, 'Unused', 1, cpIgnore), - wbFormIDCk(XCMO, 'Music Type', [MUSC]) - ], True, wbCellAddInfo, cpNormal, False, wbCELLAfterLoad); - - wbServiceFlags := - wbFlags([ - {0x00000001} 'Weapons', - {0x00000002} 'Armor', - {0x00000004} 'Alcohol', - {0x00000008} 'Books', - {0x00000010} 'Food', - {0x00000020} 'Chems', - {0x00000040} 'Stimpacks', - {0x00000080} 'Lights?', - {0x00000100} '', - {0x00000200} '', - {0x00000400} 'Miscellaneous', - {0x00000800} '', - {0x00001000} '', - {0x00002000} 'Potions?', - {0x00004000} 'Training', - {0x00008000} '', - {0x00010000} 'Recharge', - {0x00020000} 'Repair' - ]); - - wbSpecializationEnum := wbEnum(['Combat', 'Magic', 'Stealth']); - - wbRecord(CLAS, 'Class', [ - wbEDIDReq, - wbFULLReq, - wbDESCReq, - wbICON, - wbStruct(DATA, '', [ - wbArray('Tag Skills', wbInteger('Tag Skill', itS32, wbActorValueEnum), 4), - wbInteger('Flags', itU32, wbFlags(['Playable', 'Guard'], True)), - wbInteger('Buys/Sells and Services', itU32, wbServiceFlags), - wbInteger('Teaches', itS8, wbSkillEnum), - wbInteger('Maximum training level', itU8), - wbByteArray('Unused', 2) - ], cpNormal, True), - wbArray(ATTR, 'Attributes', wbInteger('Attribute', itU8), [ - 'Strength', - 'Perception', - 'Endurance', - 'Charisma', - 'Intelligence', - 'Agility', - 'Luck' - ], cpNormal, True) - ]); -end; - -procedure DefineFNVc; -begin - wbRecord(CLMT, 'Climate', [ - wbEDIDReq, - wbArrayS(WLST, 'Weather Types', wbStructSK([0], 'Weather Type', [ - wbFormIDCk('Weather', [WTHR, NULL]), - wbInteger('Chance', itS32), - wbFormIDCk('Global', [GLOB, NULL]) - ])), - wbString(FNAM, 'Sun Texture'), - wbString(GNAM, 'Sun Glare Texture'), - wbMODL, - wbStruct(TNAM, 'Timing', [ - wbStruct('Sunrise', [ - wbInteger('Begin', itU8, wbClmtTime), - wbInteger('End', itU8, wbClmtTime) - ]), - wbStruct('Sunset', [ - wbInteger('Begin', itU8, wbClmtTime), - wbInteger('End', itU8, wbClmtTime) - ]), - wbInteger('Volatility', itU8), - wbInteger('Moons / Phase Length', itU8, wbClmtMoonsPhaseLength) - ], cpNormal, True) - ]); - - wbCNTO := - wbRStructExSK([0], [1], 'Item', [ - wbStructExSK(CNTO, [0], [1], 'Item', [ - wbFormIDCk('Item', [ARMO, AMMO, MISC, WEAP, BOOK, LVLI, KEYM, ALCH, NOTE, IMOD, CMNY, CCRD, LIGH, CHIP{, MSTT{?}{, STAT{?}]), - wbInteger('Count', itS32) - ]), - wbCOED - ], []); - - wbCNTOs := wbRArrayS('Items', wbCNTO); - - wbRecord(CONT, 'Container', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbSCRI, - wbCNTOs, - wbDEST, - wbStruct(DATA, '', [ - wbInteger('Flags', itU8, wbFlags(['', 'Respawns'])), - wbFloat('Weight') - ], cpNormal, True), - wbFormIDCk(SNAM, 'Sound - Open', [SOUN]), - wbFormIDCk(QNAM, 'Sound - Close', [SOUN]), - wbFormIDCk(RNAM, 'Sound - Random/Looping', [SOUN]) - ], True); - - wbCSDT := wbRStructSK([0], 'Sound Type', [ - wbInteger(CSDT, 'Type', itU32,wbEnum([ - {00} 'Left Foot', - {01} 'Right Foot', - {02} 'Left Back Foot', - {03} 'Right Back Foot', - {04} 'Idle', - {05} 'Aware', - {06} 'Attack', - {07} 'Hit', - {08} 'Death', - {09} 'Weapon', - {10} 'Movement Loop', - {11} 'Conscious Loop', - {12} 'Auxiliary 1', - {13} 'Auxiliary 2', - {14} 'Auxiliary 3', - {15} 'Auxiliary 4', - {16} 'Auxiliary 5', - {17} 'Auxiliary 6', - {18} 'Auxiliary 7', - {19} 'Auxiliary 8', - {19} 'Auxiliary 8', - {20} 'Jump', - {21} 'PlayRandom/Loop' - ])), - wbRArrayS('Sounds', wbRStructSK([0], 'Sound', [ - wbFormIDCk(CSDI, 'Sound', [SOUN, NULL], False, cpNormal, True), - wbInteger(CSDC, 'Sound Chance', itU8, nil, cpNormal, True) - ], []), cpNormal, True) - ], []); - - wbCSDTs := wbRArrayS('Sound Types', wbCSDT, cpNormal, False, nil, nil, wbActorTemplateUseModelAnimation); - - wbAgressionEnum := wbEnum([ - 'Unaggressive', - 'Aggressive', - 'Very Aggressive', - 'Frenzied' - ]); - - wbConfidenceEnum := wbEnum([ - 'Cowardly', - 'Cautious', - 'Average', - 'Brave', - 'Foolhardy' - ]); - - wbMoodEnum := wbEnum([ - 'Neutral', - 'Afraid', - 'Annoyed', - 'Cocky', - 'Drugged', - 'Pleasant', - 'Angry', - 'Sad' - ]); - - wbAssistanceEnum := wbEnum([ - 'Helps Nobody', - 'Helps Allies', - 'Helps Friends and Allies' - ]); - - wbAggroRadiusFlags := wbFlags([ - 'Aggro Radius Behavior' - ]); - - wbAIDT := - wbStruct(AIDT, 'AI Data', [ - {00} wbInteger('Aggression', itU8, wbAgressionEnum), - {01} wbInteger('Confidence', itU8, wbConfidenceEnum), - {02} wbInteger('Energy Level', itU8), - {03} wbInteger('Responsibility', itU8), - {04} wbInteger('Mood', itU8, wbMoodEnum), - {05} wbByteArray('Unused', 3), // Mood is stored as a DWord as shown by endianSwapping but is truncated to byte during load :) - {08} wbInteger('Buys/Sells and Services', itU32, wbServiceFlags), - {0C} wbInteger('Teaches', itS8, wbSkillEnum), - {0D} wbInteger('Maximum training level', itU8), - {0E} wbInteger('Assistance', itS8, wbAssistanceEnum), - {0F} wbInteger('Aggro Radius Behavior', itU8, wbAggroRadiusFlags), - {10} wbInteger('Aggro Radius', itS32) - ], cpNormal, True, wbActorTemplateUseAIData); - - wbAttackAnimationEnum := - wbEnum([ - ], [ - 26, 'AttackLeft', - 27, 'AttackLeftUp', - 28, 'AttackLeftDown', - 29, 'AttackLeftIS', - 30, 'AttackLeftISUp', - 31, 'AttackLeftISDown', - 32, 'AttackRight', - 33, 'AttackRightUp', - 34, 'AttackRightDown', - 35, 'AttackRightIS', - 36, 'AttackRightISUp', - 37, 'AttackRightISDown', - 38, 'Attack3', - 39, 'Attack3Up', - 40, 'Attack3Down', - 41, 'Attack3IS', - 42, 'Attack3ISUp', - 43, 'Attack3ISDown', - 44, 'Attack4', - 45, 'Attack4Up', - 46, 'Attack4Down', - 47, 'Attack4IS', - 48, 'Attack4ISUp', - 49, 'Attack4ISDown', - 50, 'Attack5', - 51, 'Attack5Up', - 52, 'Attack5Down', - 53, 'Attack5IS', - 54, 'Attack5ISUp', - 55, 'Attack5ISDown', - 56, 'Attack6', - 57, 'Attack6Up', - 58, 'Attack6Down', - 59, 'Attack6IS', - 60, 'Attack6ISUp', - 61, 'Attack6ISDown', - 62, 'Attack7', - 63, 'Attack7Up', - 64, 'Attack7Down', - 65, 'Attack7IS', - 66, 'Attack7ISUp', - 67, 'Attack7ISDown', - 68, 'Attack8', - 69, 'Attack8Up', - 70, 'Attack8Down', - 71, 'Attack8IS', - 72, 'Attack8ISUp', - 73, 'Attack8ISDown', - 74, 'AttackLoop', - 75, 'AttackLoopUp', - 76, 'AttackLoopDown', - 77, 'AttackLoopIS', - 78, 'AttackLoopISUp', - 79, 'AttackLoopISDown', - 80, 'AttackSpin', - 81, 'AttackSpinUp', - 82, 'AttackSpinDown', - 83, 'AttackSpinIS', - 84, 'AttackSpinISUp', - 85, 'AttackSpinISDown', - 86, 'AttackSpin2', - 87, 'AttackSpin2Up', - 88, 'AttackSpin2Down', - 89, 'AttackSpin2IS', - 90, 'AttackSpin2ISUp', - 91, 'AttackSpin2ISDown', - 92, 'AttackPower', - 93, 'AttackForwardPower', - 94, 'AttackBackPower', - 95, 'AttackLeftPower', - 96, 'AttackRightPower', - 97, 'PlaceMine', - 98, 'PlaceMineUp', - 99, 'PlaceMineDown', - 100, 'PlaceMineIS', - 101, 'PlaceMineISUp', - 102, 'PlaceMineISDown', - 103, 'PlaceMine2', - 104, 'PlaceMine2Up', - 105, 'PlaceMine2Down', - 106, 'PlaceMine2IS', - 107, 'PlaceMine2ISUp', - 108, 'PlaceMine2ISDown', - 109, 'AttackThrow', - 110, 'AttackThrowUp', - 111, 'AttackThrowDown', - 112, 'AttackThrowIS', - 113, 'AttackThrowISUp', - 114, 'AttackThrowISDown', - 115, 'AttackThrow2', - 116, 'AttackThrow2Up', - 117, 'AttackThrow2Down', - 118, 'AttackThrow2IS', - 119, 'AttackThrow2ISUp', - 120, 'AttackThrow2ISDown', - 121, 'AttackThrow3', - 122, 'AttackThrow3Up', - 123, 'AttackThrow3Down', - 124, 'AttackThrow3IS', - 125, 'AttackThrow3ISUp', - 126, 'AttackThrow3ISDown', - 127, 'AttackThrow4', - 128, 'AttackThrow4Up', - 129, 'AttackThrow4Down', - 130, 'AttackThrow4IS', - 131, 'AttackThrow4ISUp', - 132, 'AttackThrow4ISDown', - 133, 'AttackThrow5', - 134, 'AttackThrow5Up', - 135, 'AttackThrow5Down', - 136, 'AttackThrow5IS', - 137, 'AttackThrow5ISUp', - 138, 'AttackThrow5ISDown', - - 167, 'PipBoy', - 178, 'PipBoyChild', - - 255, ' ANY' - ]); - - wbImpactMaterialTypeEnum := - wbEnum([ - 'Stone', - 'Dirt', - 'Grass', - 'Glass', - 'Metal', - 'Wood', - 'Organic', - 'Cloth', - 'Water', - 'Hollow Metal', - 'Organic Bug', - 'Organic Glow' - ]); - - wbTemplateFlags := wbFlags([ - 'Use Traits', - 'Use Stats', - 'Use Factions', - 'Use Actor Effect List', - 'Use AI Data', - 'Use AI Packages', - 'Use Model/Animation', - 'Use Base Data', - 'Use Inventory', - 'Use Script' - ]); - - wbRecord(CREA, 'Creature', [ - wbEDIDReq, - wbOBNDReq, - wbFULLActor, - wbMODLActor, - wbSPLOs, - wbFormIDCk(EITM, 'Unarmed Attack Effect', [ENCH, SPEL], False, cpNormal, False, wbActorTemplateUseActorEffectList), - wbInteger(EAMT, 'Unarmed Attack Animation', itU16, wbAttackAnimationEnum, cpNormal, True, False, wbActorTemplateUseActorEffectList), - wbArrayS(NIFZ, 'Model List', wbStringLC('Model'), 0, cpNormal, False, nil, nil, wbActorTemplateUseModelAnimation), - wbByteArray(NIFT, 'Texture Files Hashes', 0, cpIgnore, False, False, wbActorTemplateUseModelAnimation), - wbStruct(ACBS, 'Configuration', [ - {00} wbInteger('Flags', itU32, wbFlags([ - {0x000001} 'Biped', - {0x000002} 'Essential', - {0x000004} 'Weapon & Shield?', - {0x000008} 'Respawn', - {0x000010} 'Swims', - {0x000020} 'Flies', - {0x000040} 'Walks', - {0x000080} 'PC Level Mult', - {0x000100} 'Unknown 8', - {0x000200} 'No Low Level Processing', - {0x000400} '', - {0x000800} 'No Blood Spray', - {0x001000} 'No Blood Decal', - {0x002000} '', - {0x004000} '', - {0x008000} 'No Head', - {0x010000} 'No Right Arm', - {0x020000} 'No Left Arm', - {0x040000} 'No Combat in Water', - {0x080000} 'No Shadow', - {0x100000} 'No VATS Melee', - {0x00200000} 'Allow PC Dialogue', - {0x00400000} 'Can''t Open Doors', - {0x00800000} 'Immobile', - {0x01000000} 'Tilt Front/Back', - {0x02000000} 'Tilt Left/Right', - {0x03000000} 'No Knockdowns', - {0x08000000} 'Not Pushable', - {0x10000000} 'Allow Pickpocket', - {0x20000000} 'Is Ghost', - {0x40000000} 'No Rotating To Head-track', - {0x80000000} 'Invulnerable' - ], [ - {0x000001 Biped} wbActorTemplateUseModelAnimation, - {0x000002 Essential} wbActorTemplateUseBaseData, - {0x000004 Weapon & Shield} nil, - {0x000008 Respawn} wbActorTemplateUseBaseData, - {0x000010 Swims} wbActorTemplateUseModelAnimation, - {0x000020 Flies} wbActorTemplateUseModelAnimation, - {0x000040 Walks} wbActorTemplateUseModelAnimation, - {0x000080 PC Level Mult} wbActorTemplateUseStats, - {0x000100 Unknown 8} nil, - {0x000200 No Low Level Processing} wbActorTemplateUseBaseData, - {0x000400 } nil, - {0x000800 No Blood Spray} wbActorTemplateUseModelAnimation, - {0x001000 No Blood Decal} wbActorTemplateUseModelAnimation, - {0x002000 } nil, - {0x004000 } nil, - {0x008000 No Head} wbActorTemplateUseModelAnimation, - {0x010000 No Right Arm} wbActorTemplateUseModelAnimation, - {0x020000 No Left Arm} wbActorTemplateUseModelAnimation, - {0x040000 No Combat in Water} wbActorTemplateUseModelAnimation, - {0x080000 No Shadow} wbActorTemplateUseModelAnimation, - {0x100000 No VATS Melee} nil, - {0x00200000 Allow PC Dialogue} wbActorTemplateUseBaseData, - {0x00400000 Can''t Open Doors} wbActorTemplateUseBaseData, - {0x00800000 Immobile} wbActorTemplateUseModelAnimation, - {0x01000000 Tilt Front/Back} wbActorTemplateUseModelAnimation, - {0x02000000 Tilt Left/Right} wbActorTemplateUseModelAnimation, - {0x03000000 No Knockdowns} nil, - {0x08000000 Not Pushable} wbActorTemplateUseModelAnimation, - {0x10000000 Allow Pickpocket} wbActorTemplateUseBaseData, - {0x20000000 Is Ghost} nil, - {0x40000000 No Rotating To Head-track} wbActorTemplateUseModelAnimation, - {0x80000000 Invulnerable} nil - ])), - {04} wbInteger('Fatigue', itU16, nil, cpNormal, False, wbActorTemplateUseStats), - {06} wbInteger('Barter gold', itU16, nil, cpNormal, False, wbActorTemplateUseAIData), - {08} wbUnion('Level', wbCreaLevelDecider, [ - wbInteger('Level', itS16, nil, cpNormal, False, wbActorTemplateUseStats), - wbInteger('Level Mult', itS16, wbDiv(1000), cpNormal, False, wbActorTemplateUseStats) - ], cpNormal, False, wbActorTemplateUseStats), - {10} wbInteger('Calc min', itU16, nil, cpNormal, False, wbActorTemplateUseStats), - {12} wbInteger('Calc max', itU16, nil, cpNormal, False, wbActorTemplateUseStats), - {14} wbInteger('Speed Multiplier', itU16, nil, cpNormal, False, wbActorTemplateUseStats), - {16} wbFloat('Karma (Alignment)', cpNormal, False, 1, -1, wbActorTemplateUseTraits), - {20} wbInteger('Disposition Base', itS16, nil, cpNormal, False, wbActorTemplateUseTraits), - {22} wbInteger('Template Flags', itU16, wbTemplateFlags) - ], cpNormal, True), - wbRArrayS('Factions', - wbStructSK(SNAM, [0], 'Faction', [ - wbFormIDCk('Faction', [FACT]), - wbInteger('Rank', itU8), - wbByteArray('Unused', 3) - ]), - cpNormal, False, nil, nil, wbActorTemplateUseFactions), - wbFormIDCk(INAM, 'Death item', [LVLI], False, cpNormal, False, wbActorTemplateUseTraits), - wbFormIDCk(VTCK, 'Voice', [VTYP], False, cpNormal, False, wbActorTemplateUseTraits), - wbFormIDCk(TPLT, 'Template', [CREA, LVLC]), - wbDESTActor, - wbSCRIActor, - wbRArrayS('Items', wbCNTO, cpNormal, False, nil, nil, wbActorTemplateUseInventory), - wbAIDT, - wbRArray('Packages', wbFormIDCk(PKID, 'Package', [PACK]), cpNormal, False, nil, nil, wbActorTemplateUseAIPackages), - wbArrayS(KFFZ, 'Animations', wbStringLC('Animation'), 0, cpNormal, False, nil, nil, wbActorTemplateUseModelAnimation), - wbStruct(DATA, '', [ - {00} wbInteger('Type', itU8, wbCreatureTypeEnum, cpNormal, False, wbActorTemplateUseTraits), - {01} wbInteger('Combat Skill', itU8, nil, cpNormal, False, wbActorTemplateUseStats), - {02} wbInteger('Magic Skill', itU8, nil, cpNormal, False, wbActorTemplateUseStats), - {03} wbInteger('Stealth Skill', itU8, nil, cpNormal, False, wbActorTemplateUseStats), - {04} wbInteger('Health', itS16, nil, cpNormal, False, wbActorTemplateUseStats), - {06} wbByteArray('Unused', 2), - {08} wbInteger('Damage', itS16, nil, cpNormal, False, wbActorTemplateUseStats), - {10} wbArray('Attributes', wbInteger('Attribute', itU8), [ - 'Strength', - 'Perception', - 'Endurance', - 'Charisma', - 'Intelligence', - 'Agility', - 'Luck' - ], cpNormal, False, wbActorTemplateUseStats) - ], cpNormal, True), - wbInteger(RNAM, 'Attack reach', itU8, nil, cpNormal, True, False, wbActorTemplateUseTraits), - wbFormIDCk(ZNAM, 'Combat Style', [CSTY], False, cpNormal, False, wbActorTemplateUseTraits), - wbFormIDCk(PNAM, 'Body Part Data', [BPTD], False, cpNormal, True, wbActorTemplateUseModelAnimation), - wbFloat(TNAM, 'Turning Speed', cpNormal, True, 1, -1, wbActorTemplateUseStats), - wbFloat(BNAM, 'Base Scale', cpNormal, True, 1, -1, wbActorTemplateUseStats), - wbFloat(WNAM, 'Foot Weight', cpNormal, True, 1, -1, wbActorTemplateUseStats), - wbInteger(NAM4, 'Impact Material Type', itU32, wbImpactMaterialTypeEnum, cpNormal, True, False, wbActorTemplateUseModelAnimation), - wbInteger(NAM5, 'Sound Level', itU32, wbSoundLevelEnum, cpNormal, True, False, wbActorTemplateUseModelAnimation), - wbFormIDCk(CSCR, 'Inherits Sounds from', [CREA], False, cpNormal, False, wbActorTemplateUseModelAnimation), - wbCSDTs, - wbFormIDCk(CNAM, 'Impact Dataset', [IPDS], False, cpNormal, False, wbActorTemplateUseModelAnimation), - wbFormIDCk(LNAM, 'Melee Weapon List', [FLST], False, cpNormal, False, wbActorTemplateUseTraits) - ], True); - -end; - -procedure DefineFNVd; -begin - wbRecord(CSTY, 'Combat Style', [ - wbEDIDReq, - wbStruct(CSTD, 'Advanced - Standard', [ - {000}wbInteger('Maneuver Decision - Dodge % Chance', itU8), - {001}wbInteger('Maneuver Decision - Left/Right % Chance', itU8), - {002}wbByteArray('Unused', 2), - {004}wbFloat('Maneuver Decision - Dodge L/R Timer (min)'), - {008}wbFloat('Maneuver Decision - Dodge L/R Timer (max)'), - {012}wbFloat('Maneuver Decision - Dodge Forward Timer (min)'), - {016}wbFloat('Maneuver Decision - Dodge Forward Timer (max)'), - {020}wbFloat('Maneuver Decision - Dodge Back Timer Min'), - {024}wbFloat('Maneuver Decision - Dodge Back Timer Max'), - {028}wbFloat('Maneuver Decision - Idle Timer min'), - {032}wbFloat('Maneuver Decision - Idle Timer max'), - {036}wbInteger('Melee Decision - Block % Chance', itU8), - {037}wbInteger('Melee Decision - Attack % Chance', itU8), - {038}wbByteArray('Unused', 2), - {040}wbFloat('Melee Decision - Recoil/Stagger Bonus to Attack'), - {044}wbFloat('Melee Decision - Unconscious Bonus to Attack'), - {048}wbFloat('Melee Decision - Hand-To-Hand Bonus to Attack'), - {052}wbInteger('Melee Decision - Power Attacks - Power Attack % Chance', itU8), - {053}wbByteArray('Unused', 3), - {056}wbFloat('Melee Decision - Power Attacks - Recoil/Stagger Bonus to Power'), - {060}wbFloat('Melee Decision - Power Attacks - Unconscious Bonus to Power Attack'), - {064}wbInteger('Melee Decision - Power Attacks - Normal', itU8), - {065}wbInteger('Melee Decision - Power Attacks - Forward', itU8), - {066}wbInteger('Melee Decision - Power Attacks - Back', itU8), - {067}wbInteger('Melee Decision - Power Attacks - Left', itU8), - {068}wbInteger('Melee Decision - Power Attacks - Right', itU8), - {069}wbByteArray('Unused', 3), - {072}wbFloat('Melee Decision - Hold Timer (min)'), - {076}wbFloat('Melee Decision - Hold Timer (max)'), - {080}wbInteger('Flags', itU16, wbFlags([ - 'Choose Attack using % Chance', - 'Melee Alert OK', - 'Flee Based on Personal Survival', - '', - 'Ignore Threats', - 'Ignore Damaging Self', - 'Ignore Damaging Group', - 'Ignore Damaging Spectators', - 'Cannot Use Stealthboy' - ])), - {082}wbByteArray('Unused', 2), - {085}wbInteger('Maneuver Decision - Acrobatic Dodge % Chance', itU8), - {085}wbInteger('Melee Decision - Power Attacks - Rushing Attack % Chance', itU8), - {086}wbByteArray('Unused', 2), - {088}wbFloat('Melee Decision - Power Attacks - Rushing Attack Distance Mult') - ], cpNormal, True), - wbStruct(CSAD, 'Advanced - Advanced', [ - wbFloat('Dodge Fatigue Mod Mult'), - wbFloat('Dodge Fatigue Mod Base'), - wbFloat('Encumb. Speed Mod Base'), - wbFloat('Encumb. Speed Mod Mult'), - wbFloat('Dodge While Under Attack Mult'), - wbFloat('Dodge Not Under Attack Mult'), - wbFloat('Dodge Back While Under Attack Mult'), - wbFloat('Dodge Back Not Under Attack Mult'), - wbFloat('Dodge Forward While Attacking Mult'), - wbFloat('Dodge Forward Not Attacking Mult'), - wbFloat('Block Skill Modifier Mult'), - wbFloat('Block Skill Modifier Base'), - wbFloat('Block While Under Attack Mult'), - wbFloat('Block Not Under Attack Mult'), - wbFloat('Attack Skill Modifier Mult'), - wbFloat('Attack Skill Modifier Base'), - wbFloat('Attack While Under Attack Mult'), - wbFloat('Attack Not Under Attack Mult'), - wbFloat('Attack During Block Mult'), - wbFloat('Power Att. Fatigue Mod Base'), - wbFloat('Power Att. Fatigue Mod Mult') - ], cpNormal, True), - wbStruct(CSSD, 'Simple', [ - {00} wbFloat('Cover Search Radius'), - {04} wbFloat('Take Cover Chance'), - {08} wbFloat('Wait Timer (min)'), - {12} wbFloat('Wait Timer (max)'), - {16} wbFloat('Wait to Fire Timer (min)'), - {20} wbFloat('Wait to Fire Timer (max)'), - {24} wbFloat('Fire Timer (min)'), - {28} wbFloat('Fire Timer (max)'), - {32} wbFloat('Ranged Weapon Range Mult (min)'), - {36} wbByteArray('Unused', 4), - {40} wbInteger('Weapon Restrictions', itU32, wbEnum([ - 'None', - 'Melee Only', - 'Ranged Only' - ])), - {44} wbFloat('Ranged Weapon Range Mult (max)'), - {48} wbFloat('Max Targeting FOV'), - {52} wbFloat('Combat Radius'), - {56} wbFloat('Semi-Auto Firing Delay Mult (min)'), - {60} wbFloat('Semi-Auto Firing Delay Mult (max)') - ], cpNormal, True) - ]); - - wbRecord(DIAL, 'Dialog Topic', [ - wbEDIDReq, - wbRArrayS('Added Quests', wbRStructSK([0], 'Added Quest', [ - wbFormIDCkNoReach(QSTI, 'Quest', [QUST], False, cpBenign), - wbRArray('Shared Infos', wbRStruct('Shared Info', [ - wbFormIDCk(INFC, 'Info Connection', [INFO], False, cpBenign), - wbInteger(INFX, 'Info Index', itS32, nil, cpBenign) - ], [])) - ], [])), - // no QSTR in FNV, but keep it just in case - wbRArrayS('Removed Quests', wbRStructSK([0], 'Removed Quest', [ - wbFormIDCkNoReach(QSTR, 'Quest', [QUST], False, cpBenign) - ], [])), - // some records have INFC INFX (with absent formids) but no QSTI, probably error in GECK - // i.e. [DIAL:001287C6] and [DIAL:000E9084] - wbRArray('Unused', wbRStruct('Unused', [ - wbUnknown(INFC, cpIgnore), - wbUnknown(INFX, cpIgnore) - ], []), cpIgnore, False, nil, nil, wbNeverShow), - wbFULL, - wbFloat(PNAM, 'Priority', cpNormal, True, 1, -1, nil, nil, 50.0), - wbString(TDUM, 'Dumb Response'), - wbStruct(DATA, '', [ - wbInteger('Type', itU8, wbEnum([ - {0} 'Topic', - {1} 'Conversation', - {2} 'Combat', - {3} 'Persuasion', - {4} 'Detection', - {5} 'Service', - {6} 'Miscellaneous', - {7} 'Radio' - ])), - wbInteger('Flags', itU8, wbFlags([ - 'Rumors', - 'Top-level' - ])) - ], cpNormal, True, nil, 1) - ], True); - - wbRecord(DOOR, 'Door', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODLReq, - wbSCRI, - wbDEST, - wbFormIDCk(SNAM, 'Sound - Open', [SOUN]), - wbFormIDCk(ANAM, 'Sound - Close', [SOUN]), - wbFormIDCk(BNAM, 'Sound - Looping', [SOUN]), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - '', - 'Automatic Door', - 'Hidden', - 'Minimal Use', - 'Sliding Door' - ]), cpNormal, True) - ]); - - wbBlendModeEnum := wbEnum([ - '', - 'Zero', - 'One', - 'Source Color', - 'Source Inverse Color', - 'Source Alpha', - 'Source Inverted Alpha', - 'Dest Alpha', - 'Dest Inverted Alpha', - 'Dest Color', - 'Dest Inverse Color', - 'Source Alpha SAT' - ]); - - wbBlendOpEnum := wbEnum([ - '', - 'Add', - 'Subtract', - 'Reverse Subtract', - 'Minimum', - 'Maximum' - ]); - wbZTestFuncEnum := wbEnum([ - '', - '', - '', - 'Equal To', - 'Normal', - 'Greater Than', - '', - 'Greater Than or Equal Than', - 'Always Show' - ]); - - wbRecord(EFSH, 'Effect Shader', [ - wbEDID, - wbString(ICON, 'Fill Texture'), - wbString(ICO2, 'Particle Shader Texture'), - wbString(NAM7, 'Holes Texture'), - wbStruct(DATA, '', [ - wbInteger('Flags', itU8, wbFlags([ - {0} 'No Membrane Shader', - {1} '', - {2} '', - {3} 'No Particle Shader', - {4} 'Edge Effect - Inverse', - {5} 'Membrane Shader - Affect Skin Only' - ])), - wbByteArray('Unused', 3), - wbInteger('Membrane Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Membrane Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Membrane Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbStruct('Fill/Texture Effect - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Fill/Texture Effect - Alpha Fade In Time'), - wbFloat('Fill/Texture Effect - Full Alpha Time'), - wbFloat('Fill/Texture Effect - Alpha Fade Out Time'), - wbFloat('Fill/Texture Effect - Presistent Alpha Ratio'), - wbFloat('Fill/Texture Effect - Alpha Pulse Amplitude'), - wbFloat('Fill/Texture Effect - Alpha Pulse Frequency'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (U)'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (V)'), - wbFloat('Edge Effect - Fall Off'), - wbStruct('Edge Effect - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Edge Effect - Alpha Fade In Time'), - wbFloat('Edge Effect - Full Alpha Time'), - wbFloat('Edge Effect - Alpha Fade Out Time'), - wbFloat('Edge Effect - Persistent Alpha Ratio'), - wbFloat('Edge Effect - Alpha Pulse Amplitude'), - wbFloat('Edge Effect - Alpha Pusle Frequence'), - wbFloat('Fill/Texture Effect - Full Alpha Ratio'), - wbFloat('Edge Effect - Full Alpha Ratio'), - wbInteger('Membrane Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Particle Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Particle Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Particle Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbInteger('Particle Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbFloat('Particle Shader - Particle Birth Ramp Up Time'), - wbFloat('Particle Shader - Full Particle Birth Time'), - wbFloat('Particle Shader - Particle Birth Ramp Down Time'), - wbFloat('Particle Shader - Full Particle Birth Ratio'), - wbFloat('Particle Shader - Persistant Particle Birth Ratio'), - wbFloat('Particle Shader - Particle Lifetime'), - wbFloat('Particle Shader - Particle Lifetime +/-'), - wbFloat('Particle Shader - Initial Speed Along Normal'), - wbFloat('Particle Shader - Acceleration Along Normal'), - wbFloat('Particle Shader - Initial Velocity #1'), - wbFloat('Particle Shader - Initial Velocity #2'), - wbFloat('Particle Shader - Initial Velocity #3'), - wbFloat('Particle Shader - Acceleration #1'), - wbFloat('Particle Shader - Acceleration #2'), - wbFloat('Particle Shader - Acceleration #3'), - wbFloat('Particle Shader - Scale Key 1'), - wbFloat('Particle Shader - Scale Key 2'), - wbFloat('Particle Shader - Scale Key 1 Time'), - wbFloat('Particle Shader - Scale Key 2 Time'), - wbStruct('Color Key 1 - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Color Key 2 - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Color Key 3 - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Color Key 1 - Color Alpha'), - wbFloat('Color Key 2 - Color Alpha'), - wbFloat('Color Key 3 - Color Alpha'), - wbFloat('Color Key 1 - Color Key Time'), - wbFloat('Color Key 2 - Color Key Time'), - wbFloat('Color Key 3 - Color Key Time'), - wbFloat('Particle Shader - Initial Speed Along Normal +/-'), - wbFloat('Particle Shader - Initial Rotation (deg)'), - wbFloat('Particle Shader - Initial Rotation (deg) +/-'), - wbFloat('Particle Shader - Rotation Speed (deg/sec)'), - wbFloat('Particle Shader - Rotation Speed (deg/sec) +/-'), - wbFormIDCk('Addon Models', [DEBR, NULL]), - wbFloat('Holes - Start Time'), - wbFloat('Holes - End Time'), - wbFloat('Holes - Start Val'), - wbFloat('Holes - End Val'), - wbFloat('Edge Width (alpha units)'), - wbStruct('Edge Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Explosion Wind Speed'), - wbInteger('Texture Count U', itU32), - wbInteger('Texture Count V', itU32), - wbFloat('Addon Models - Fade In Time'), - wbFloat('Addon Models - Fade Out Time'), - wbFloat('Addon Models - Scale Start'), - wbFloat('Addon Models - Scale End'), - wbFloat('Addon Models - Scale In Time'), - wbFloat('Addon Models - Scale Out Time') - ], cpNormal, True, nil, 57) - ], False, nil, cpNormal, False, wbEFSHAfterLoad); - - wbRecord(ENCH, 'Object Effect', [ - wbEDIDReq, - wbFULL, - wbStruct(ENIT, 'Effect Data', [ - wbInteger('Type', itU32, wbEnum([ - {0} '', - {1} '', - {2} 'Weapon', - {3} 'Apparel' - ])), - wbByteArray('Unused', 4), - wbByteArray('Unused', 4), - wbInteger('Flags', itU8, wbFlags([ - 'No Auto-Calc', - 'Auto Calculate', - 'Hide Effect' - ])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffectsReq - ]); - - wbRecord(EYES, 'Eyes', [ - wbEDIDReq, - wbFULLReq, - wbString(ICON, 'Texture', 0{, cpNormal, True??}), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - 'Playable', - 'Not Male', - 'Not Female' - ]), cpNormal, True) - ]); - - wbXNAM := - wbStructSK(XNAM, [0], 'Relation', [ - wbFormIDCkNoReach('Faction', [FACT, RACE]), - wbInteger('Modifier', itS32), - wbInteger('Group Combat Reaction', itU32, wbEnum([ - 'Neutral', - 'Enemy', - 'Ally', - 'Friend' - ])) - ]); - - wbXNAMs := wbRArrayS('Relations', wbXNAM); - - wbRecord(FACT, 'Faction', [ - wbEDIDReq, - wbFULL, - wbXNAMs, - wbStruct(DATA, '', [ - wbInteger('Flags 1', itU8, wbFlags([ - 'Hidden from PC', - 'Evil', - 'Special Combat' - ])), - wbInteger('Flags 2', itU8, wbFlags([ - 'Track Crime', - 'Allow Sell' - ])), - wbByteArray('Unused', 2) - ], cpNormal, True, nil, 1), - wbFloat(CNAM, 'Unused'), - wbRStructsSK('Ranks', 'Rank', [0], [ - wbInteger(RNAM, 'Rank#', itS32), - wbString(MNAM, 'Male', 0, cpTranslate), - wbString(FNAM, 'Female', 0, cpTranslate), - wbString(INAM, 'Insignia (Unused)') - ], []), - wbFormIDCk(WMI1, 'Reputation', [REPU]) - ], False, nil, cpNormal, False, wbFACTAfterLoad); - - wbRecord(FURN, 'Furniture', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODLReq, - wbSCRI, - wbDEST, - wbByteArray(MNAM, 'Marker Flags', 0, cpNormal, True) - ]); - - wbRecord(GLOB, 'Global', [ - wbEDIDReq, - wbInteger(FNAM, 'Type', itU8, wbGLOBFNAM, nil, cpNormal, True), - wbFloat(FLTV, 'Value', cpNormal, True) - ]); - - - wbRecord(GMST, 'Game Setting', [ - wbString(EDID, 'Editor ID', 0, cpCritical, True, nil, wbGMSTEDIDAfterSet), - wbUnion(DATA, 'Value', wbGMSTUnionDecider, [ - wbString('', 0, cpTranslate), - wbInteger('', itS32), - wbFloat('') - ], cpNormal, True) - ]); - - wbDODT := wbStruct(DODT, 'Decal Data', [ - wbFloat('Min Width'), - wbFloat('Max Width'), - wbFloat('Min Height'), - wbFloat('Max Height'), - wbFloat('Depth'), - wbFloat('Shininess'), - wbStruct('Parallax', [ - wbFloat('Scale'), - wbInteger('Passes', itU8) - ]), - wbInteger('Flags', itU8, wbFlags([ - 'Parallax', - 'Alpha - Blending', - 'Alpha - Testing' - ], True)), - wbByteArray('Unused', 2), - wbStruct('Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]); - - wbRecord(TXST, 'Texture Set', [ - wbEDIDReq, - wbOBNDReq, - wbRStruct('Textures (RGB/A)', [ - wbString(TX00,'Base Image / Transparency'), - wbString(TX01,'Normal Map / Specular'), - wbString(TX02,'Environment Map Mask / ?'), - wbString(TX03,'Glow Map / Unused'), - wbString(TX04,'Parallax Map / Unused'), - wbString(TX05,'Environment Map / Unused') - ], []), - wbDODT, - wbInteger(DNAM, 'Flags', itU16, wbFlags([ - 'No Specular Map' - ]), cpNormal, True) - ]); - - wbRecord(MICN, 'Menu Icon', [ - wbEDIDReq, - wbICONReq - ]); - - wbRecord(HDPT, 'Head Part', [ - wbEDIDReq, - wbFULLReq, - wbMODL, - wbInteger(DATA, 'Flags', itU8, wbFlags([ - 'Playable' - ]), cpNormal, True), - wbRArrayS('Extra Parts', - wbFormIDCk(HNAM, 'Part', [HDPT]) - ) - ]); - - wbRecord(ASPC, 'Acoustic Space', [ - wbEDIDReq, - wbOBNDReq, - - wbFormIDCk(SNAM, 'Dawn / Default Loop', [NULL, SOUN], False, cpNormal, True), - wbFormIDCk(SNAM, 'Afternoon', [NULL, SOUN], False, cpNormal, True), - wbFormIDCk(SNAM, 'Dusk', [NULL, SOUN], False, cpNormal, True), - wbFormIDCk(SNAM, 'Night', [NULL, SOUN], False, cpNormal, True), - wbFormIDCk(SNAM, 'Walla', [NULL, SOUN], False, cpNormal, True), - - wbInteger(WNAM, 'Walla Trigger Count', itU32, nil, cpNormal, True), - wbFormIDCk(RDAT, 'Use Sound from Region (Interiors Only)', [REGN]), - wbInteger(ANAM, 'Environment Type', itU32, wbEnum([ - 'None', - 'Default', - 'Generic', - 'Padded Cell', - 'Room', - 'Bathroom', - 'Livingroom', - 'Stone Room', - 'Auditorium', - 'Concerthall', - 'Cave', - 'Arena', - 'Hangar', - 'Carpeted Hallway', - 'Hallway', - 'Stone Corridor', - 'Alley', - 'Forest', - 'City', - 'Mountains', - 'Quarry', - 'Plain', - 'Parkinglot', - 'Sewerpipe', - 'Underwater', - 'Small Room', - 'Medium Room', - 'Large Room', - 'Medium Hall', - 'Large Hall', - 'Plate' - ]), cpNormal, True), - wbInteger(INAM, 'Is Interior', itU32, wbEnum(['No', 'Yes']), cpNormal, True) - ]); - - wbRecord(TACT, 'Talking Activator', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODLReq, - wbSCRI, - wbDEST, - wbFormIDCk(SNAM, 'Looping Sound', [SOUN]), - wbFormIDCk(VNAM, 'Voice Type', [VTYP]), - wbFormIDCk(INAM, 'Radio Template', [SOUN]) - ]); - - wbRecord(SCPT, 'Script', [ - wbEDIDReq, - wbSCHRReq, - wbByteArray(SCDA, 'Compiled Script'), - wbStringScript(SCTX, 'Script Source', 0, cpNormal{, True}), - wbRArrayS('Local Variables', wbRStructSK([0], 'Local Variable', [ - wbSLSD, - wbString(SCVR, 'Name', 0, cpCritical, True) - ], [])), - wbSCROs - ]); - - wbRecord(TERM, 'Terminal', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbSCRI, - wbDEST, - wbDESCReq, - wbFormIDCk(SNAM, 'Sound - Looping', [SOUN]), - wbFormIDCk(PNAM, 'Password Note', [NOTE]), - wbStruct(DNAM, '', [ - wbInteger('Base Hacking Difficulty', itU8, wbEnum([ - 'Very Easy', - 'Easy', - 'Average', - 'Hard', - 'Very Hard', - 'Requires Key' - ])), - wbInteger('Flags', itU8, wbFlags([ - 'Leveled', - 'Unlocked', - 'Alternate Colors', - 'Hide Welcome Text when displaying Image' - ])), - wbInteger('ServerType', itU8, wbEnum([ - '-Server 1-', - '-Server 2-', - '-Server 3-', - '-Server 4-', - '-Server 5-', - '-Server 6-', - '-Server 7-', - '-Server 8-', - '-Server 9-', - '-Server 10-' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbRArray('Menu Items', - wbRStruct('Menu Item', [ - wbString(ITXT, 'Item Text'), - wbString(RNAM, 'Result Text', 0, cpNormal, True), - wbInteger(ANAM, 'Flags', itU8, wbFlags([ - 'Add Note', - 'Force Redraw' - ]), cpNormal, True), - wbFormIDCk(INAM, 'Display Note', [NOTE]), - wbFormIDCk(TNAM, 'Sub Menu', [TERM]), - wbEmbeddedScriptReq, - wbCTDAs - ], []) - ) - ]); - - wbRecord(SCOL, 'Static Collection', [ - wbEDIDReq, - wbOBNDReq, - wbMODLReq, - wbRStructsSK('Parts', 'Part', [0], [ - wbFormIDCk(ONAM, 'Static', [STAT]), - wbArrayS(DATA, 'Placements', wbStruct('Placement', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]), - wbFloat('Scale') - ]), 0, cpNormal, True) - ], [], cpNormal, True) - ]); - - wbRecord(MSTT, 'Moveable Static', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODLReq, - wbDEST, - wbByteArray(DATA, 'Unknown', 1, cpNormal, True), - wbFormIDCk(SNAM, 'Sound', [SOUN]) - ]); - - wbRecord(PWAT, 'Placeable Water', [ - wbEDIDReq, - wbOBNDReq, - wbMODLReq, - wbStruct(DNAM, '', [ - wbInteger('Flags', itU32, wbFlags([ - {0x00000001}'Reflects', - {0x00000002}'Reflects - Actors', - {0x00000004}'Reflects - Land', - {0x00000008}'Reflects - LOD Land', - {0x00000010}'Reflects - LOD Buildings', - {0x00000020}'Reflects - Trees', - {0x00000040}'Reflects - Sky', - {0x00000080}'Reflects - Dynamic Objects', - {0x00000100}'Reflects - Dead Bodies', - {0x00000200}'Refracts', - {0x00000400}'Refracts - Actors', - {0x00000800}'Refracts - Land', - {0x00001000}'', - {0x00002000}'', - {0x00004000}'', - {0x00008000}'', - {0x00010000}'Refracts - Dynamic Objects', - {0x00020000}'Refracts - Dead Bodies', - {0x00040000}'Silhouette Reflections', - {0x00080000}'', - {0x00100000}'', - {0x00200000}'', - {0x00400000}'', - {0x00800000}'', - {0x01000000}'', - {0x02000000}'', - {0x03000000}'', - {0x08000000}'', - {0x10000000}'Depth', - {0x20000000}'Object Texture Coordinates', - {0x40000000}'', - {0x80000000}'No Underwater Fog' - ])), - wbFormIDCk('Water', [WATR]) - ], cpNormal, True) - ]); - - wbRecord(IDLM, 'Idle Marker', [ - wbEDIDReq, - wbOBNDReq, - wbInteger(IDLF, 'Flags', itU8, wbFlags([ - 'Run in Sequence', - '', - 'Do Once' - ]), cpNormal, True), - wbStruct(IDLC, '', [ - wbInteger('Animation Count', itU8), - wbByteArray('Unused', 3) - ], cpNormal, True, nil, 1), - wbFloat(IDLT, 'Idle Timer Setting', cpNormal, True), - wbArray(IDLA, 'Animations', wbFormIDCk('Animation', [IDLE, NULL]), 0, nil, wbIDLAsAfterSet, cpNormal, True) // NULL looks valid if IDLS\Animation Count is 0 - ], False, nil, cpNormal, False, nil, wbAnimationsAfterSet); - - wbRecord(NOTE, 'Note', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbYNAM, - wbZNAM, - wbInteger(DATA, 'Type', itU8, wbEnum([ - 'Sound', - 'Text', - 'Image', - 'Voice' - ]), cpNormal, True), - wbRArrayS('Quests', - wbFormIDCkNoReach(ONAM, 'Quest', [QUST]) - ), - wbString(XNAM, 'Texture'), - wbUnion(TNAM, 'Text / Topic', wbNOTETNAMDecide, [ - wbString('Text'), - wbFormIDCk('Topic', [DIAL]) - ]), - wbUnion(SNAM, 'Sound / NPC', wbNOTESNAMDecide, [ - wbFormIDCk('Sound', [SOUN]), - wbFormIDCk('Actor', [NPC_, CREA]) - ]) - ]); - -end; - -procedure DefineFNVe; -begin - wbRecord(PROJ, 'Projectile', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODLReq, - wbDEST, - wbStruct(DATA, 'Data', [ - {00} wbInteger('Flags', itU16, wbFlags([ - 'Hitscan', - 'Explosion', - 'Alt. Trigger', - 'Muzzle Flash', - '', - 'Can Be Disabled', - 'Can Be Picked Up', - 'Supersonic', - 'Pins Limbs', - 'Pass Through Small Transparent', - 'Detonates', - 'Rotation' - ])), - {02} wbInteger('Type', itU16, wbEnum([ - {00} '', - {01} 'Missile', - {02} 'Lobber', - {03} '', - {04} 'Beam', - {05} '', - {06} '', - {07} '', - {08} 'Flame', - {09} '', - {10} '', - {11} '', - {12} '', - {13} '', - {14} '', - {15} '', - {16} 'Continuous Beam' - ])), - {04} wbFloat('Gravity'), - {08} wbFloat('Speed'), - {12} wbFloat('Range'), - {16} wbFormIDCk('Light', [LIGH, NULL]), - {20} wbFormIDCk('Muzzle Flash - Light', [LIGH, NULL]), - {24} wbFloat('Tracer Chance'), - {28} wbFloat('Explosion - Alt. Trigger - Proximity'), - {32} wbFloat('Explosion - Alt. Trigger - Timer'), - {36} wbFormIDCk('Explosion', [EXPL, NULL]), - {40} wbFormIDCk('Sound', [SOUN, NULL]), - {44} wbFloat('Muzzle Flash - Duration'), - {48} wbFloat('Fade Duration'), - {52} wbFloat('Impact Force'), - {56} wbFormIDCk('Sound - Countdown', [SOUN, NULL]), - {60} wbFormIDCk('Sound - Disable', [SOUN, NULL]), - {64} wbFormIDCk('Default Weapon Source', [WEAP, NULL]), - {68} wbStruct('Rotation', [ - {68} wbFloat('X'), - {72} wbFloat('Y'), - {76} wbFloat('Z') - ]), - {80} wbFloat('Bouncy Mult') - ], cpNormal, True), - wbRStructSK([0], 'Muzzle Flash Model', [ - wbString(NAM1, 'Model Filename'), - wbByteArray(NAM2, 'Texture Files Hashes', 0, cpIgnore) - ], [], cpNormal, True), - wbInteger(VNAM, 'Sound Level', itU32, wbSoundLevelEnum, cpNormal, True) - ]); - - wbRecord(NAVI, 'Navigation Mesh Info Map', [ - wbEDID, - wbInteger(NVER, 'Version', itU32), - wbRArray('Navigation Map Infos', - wbStruct(NVMI, 'Navigation Map Info', [ - wbByteArray('Unknown', 4), - wbFormIDCk('Navigation Mesh', [NAVM]), - wbFormIDCk('Location', [CELL, WRLD]), - wbStruct('Grid', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbUnknown -{ wbUnion('Data', wbNAVINVMIDecider, [ - wbStruct('Data', [ - wbUnknown - ]), - wbStruct('Data', [ - wbArray('Unknown', wbFloat('Unknown'), 3), - wbByteArray('Unknown', 4) - ]), - wbStruct('Data', [ - wbArray('Unknown', wbArray('Unknown', wbFloat('Unknown'), 3), 3), - wbInteger('Count 1', itU16), - wbInteger('Count 2', itU16), - wbArray('Unknown', wbArray('Unknown', wbFloat('Unknown'), 3), [], wbNAVINAVMGetCount1), - wbUnknown - ]), - wbStruct('Data', [ - wbUnknown - ]) - ])} - ]) - ), - wbRArray('Unknown', - wbStruct(NVCI, 'Unknown', [ - wbFormIDCk('Unknown', [NAVM]), - wbArray('Unknown', wbFormIDCk('Unknown', [NAVM]), -1), - wbArray('Unknown', wbFormIDCk('Unknown', [NAVM]), -1), - wbArray('Doors', wbFormIDCk('Door', [REFR]), -1) - ]) - ) - ]); - - if wbSimpleRecords then begin - - wbRecord(NAVM, 'Navigation Mesh', [ - wbEDID, - wbInteger(NVER, 'Version', itU32), - wbStruct(DATA, '', [ - wbFormIDCk('Cell', [CELL]), - wbInteger('Vertex Count', itU32), - wbInteger('Triangle Count', itU32), - wbInteger('External Connections Count', itU32), - wbInteger('NVCA Count', itU32), - wbInteger('Doors Count', itU32) - ]), - wbByteArray(NVVX, 'Vertices'), - wbByteArray(NVTR, 'Triangles'), - wbByteArray(NVCA, 'Unknown'), - wbArray(NVDP, 'Doors', wbStruct('Door', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Triangle', itU16), - wbByteArray('Unused', 2) - ])), - wbByteArray(NVGD, 'Unknown'), - wbArray(NVEX, 'External Connections', wbStruct('Connection', [ - wbByteArray('Unknown', 4), - wbFormIDCk('Navigation Mesh', [NAVM], False, cpNormal), - wbInteger('Triangle', itU16, nil, cpNormal) - ])) - ], False, wbNAVMAddInfo); - - end else begin - - wbRecord(NAVM, 'Navigation Mesh', [ - wbEDID, - wbInteger(NVER, 'Version', itU32), - wbStruct(DATA, '', [ - wbFormIDCk('Cell', [CELL]), - wbInteger('Vertex Count', itU32), - wbInteger('Triangle Count', itU32), - wbInteger('External Connections Count', itU32), - wbInteger('NVCA Count', itU32), - wbInteger('Doors Count', itU32) // as of version = 5 (earliest NavMesh version I saw (Fallout3 1.7) is already 11) - ]), - wbArray(NVVX, 'Vertices', wbStruct('Vertex', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ])), - wbArray(NVTR, 'Triangles', wbStruct('Triangle', [ - wbArray('Vertices', wbInteger('Vertex', itS16), 3), - wbArray('Edges', wbInteger('Triangle', itS16, wbNVTREdgeToStr, wbNVTREdgeToInt), [ - '0 <-> 1', - '1 <-> 2', - '2 <-> 0' - ]), - wbInteger('Flags', itU32, wbFlags([ - 'Triangle #0 Is External', - 'Triangle #1 Is External', - 'Triangle #2 Is External', - 'Unknown 4', - 'Unknown 5', - 'Unknown 6', - 'Preferred pathing', - 'Unknown 8', - 'Unknown 9', - 'Water', - 'Contains door', - 'Unknown 12', - 'Unknown 13', // Cleared on LoadForm - 'Unknown 14', // Cleared on LoadForm - 'Unknown 15', // Cleared on LoadForm - 'Unknown 16', - 'Unknown 17', - 'Unknown 18', - 'Unknown 19', - 'Unknown 20', - 'Unknown 21', - 'Unknown 22', - 'Unknown 23', - 'Unknown 24', - 'Unknown 25', - 'Unknown 26', - 'Unknown 27', - 'Unknown 28', - 'Unknown 29', - 'Unknown 30', - 'Unknown 31', - 'Unknown 32' - ])) - ])), - wbArray(NVCA, 'Unknown', wbInteger('Triangle', itS16)), // Assumed triangle as the value fits the triangle id's - wbArray(NVDP, 'Doors', wbStruct('Door', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Triangle', itU16), - wbByteArray('Unused', 2) - ])), - wbStruct(NVGD, 'NavMesh Grid', [ - wbInteger('NavMeshGrid Divisor', itU32), - wbFloat('Max X Distance'), // Floats named after TES5 definition - wbFloat('Max Y Distance'), - wbFloat('Min X'), - wbFloat('Min Y'), - wbFloat('Min Z'), - wbFloat('Max X'), - wbFloat('Max Y'), - wbFloat('Max Z'), - wbArray('Cells', wbArray('Cell', wbInteger('Triangle', itS16), -2)) // Divisor is row count² , assumed triangle as the values fit the triangle id's - ]), - wbArray(NVEX, 'External Connections', wbStruct('Connection', [ - wbByteArray('Unknown', 4), // absent in ver<9, not endian swap in ver>=9, so char or byte array - wbFormIDCk('Navigation Mesh', [NAVM, NULL], False, cpNormal), // NULL values are ignored silently. - wbInteger('Triangle', itU16, nil, cpNormal) - ])) // Different if ver<5: Length = $2E/$30 and contains other data between NavMesh and Triangle - ], False, wbNAVMAddInfo); - - end; - - wbRecord(PGRE, 'Placed Grenade', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [PROJ], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - wbXRGD, - wbXRGB, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], []), - - {--- Ownership ---} - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32) - ], [XCMT, XCMO]), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - - {--- Reflected By / Refracted By ---} - wbRArrayS('Reflected/Refracted By', - wbStructSK(XPWR, [0], 'Water', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Type', itU32, wbFlags([ - 'Reflection', - 'Refraction' - ])) - ]) - ), - - {--- Decals ---} - wbRArrayS('Linked Decals', - wbStructSK(XDCR, [0], 'Decal', [ - wbFormIDCk('Reference', [REFR]), - wbUnknown - ]) - ), - - {--- Linked Ref ---} - wbFormIDCk(XLKR, 'Linked Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbStruct(XCLP, 'Linked Reference Color', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbFloat('Delay') - ]) - ) - ], []), - - wbString(XATO, 'Activation Prompt'), - - {--- Enable Parent ---} - wbXESP, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Flags ---} - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbRecord(PMIS, 'Placed Missile', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [PROJ], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - wbXRGD, - wbXRGB, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], []), - - {--- Ownership ---} - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32) - ], [XCMT, XCMO]), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - - {--- Reflected By / Refracted By ---} - wbRArrayS('Reflected/Refracted By', - wbStructSK(XPWR, [0], 'Water', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Type', itU32, wbFlags([ - 'Reflection', - 'Refraction' - ])) - ]) - ), - - {--- Decals ---} - wbRArrayS('Linked Decals', - wbStructSK(XDCR, [0], 'Decal', [ - wbFormIDCk('Reference', [REFR]), - wbUnknown - ]) - ), - - {--- Linked Ref ---} - wbFormIDCk(XLKR, 'Linked Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbStruct(XCLP, 'Linked Reference Color', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbFloat('Delay') - ]) - ) - ], []), - - wbString(XATO, 'Activation Prompt'), - - {--- Enable Parent ---} - wbXESP, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Flags ---} - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbRecord(PBEA, 'Placed Beam', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [PROJ], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - wbXRGD, - wbXRGB, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], []), - - {--- Ownership ---} - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32) - ], [XCMT, XCMO]), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - - {--- Reflected By / Refracted By ---} - wbRArrayS('Reflected/Refracted By', - wbStructSK(XPWR, [0], 'Water', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Type', itU32, wbFlags([ - 'Reflection', - 'Refraction' - ])) - ]) - ), - - {--- Decals ---} - wbRArrayS('Linked Decals', - wbStructSK(XDCR, [0], 'Decal', [ - wbFormIDCk('Reference', [REFR]), - wbUnknown - ]) - ), - - {--- Linked Ref ---} - wbFormIDCk(XLKR, 'Linked Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbStruct(XCLP, 'Linked Reference Color', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbFloat('Delay') - ]) - ) - ], []), - - wbString(XATO, 'Activation Prompt'), - - {--- Enable Parent ---} - wbXESP, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Flags ---} - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbRecord(EXPL, 'Explosion', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbEITM, - wbFormIDCk(MNAM, 'Image Space Modifier', [IMAD]), - wbStruct(DATA, 'Data', [ - {00} wbFloat('Force'), - {04} wbFloat('Damage'), - {08} wbFloat('Radius'), - {12} wbFormIDCk('Light', [LIGH, NULL]), - {16} wbFormIDCk('Sound 1', [SOUN, NULL]), - {20} wbInteger('Flags', itU32, wbFlags([ - {0x00000001}'Unknown 1', - {0x00000002}'Always Uses World Orientation', - {0x00000004}'Knock Down - Always', - {0x00000008}'Knock Down - By Formula', - {0x00000010}'Ignore LOS Check', - {0x00000020}'Push Explosion Source Ref Only', - {0x00000040}'Ignore Image Space Swap' - ])), - {24} wbFloat('IS Radius'), - {28} wbFormIDCk('Impact DataSet', [IPDS, NULL]), - {32} wbFormIDCk('Sound 2', [SOUN, NULL]), - wbStruct('Radiation', [ - {36} wbFloat('Level'), - {40} wbFloat('Dissipation Time'), - {44} wbFloat('Radius') - ]), - {48} wbInteger('Sound Level', itU32, wbSoundLevelEnum, cpNormal, True) - ], cpNormal, True), - wbFormIDCk(INAM, 'Placed Impact Object', [TREE, SOUN, ACTI, DOOR, STAT, FURN, - CONT, ARMO, AMMO, LVLN, LVLC, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, - ASPC, IDLM, ARMA, MSTT, NOTE, PWAT, SCOL, TACT, TERM, TXST, CHIP, CMNY, - CCRD, IMOD]) - ]); - - wbRecord(DEBR, 'Debris', [ - wbEDIDReq, - wbRStructs('Models', 'Model', [ - wbStruct(DATA, 'Data', [ - wbInteger('Percentage', itU8), - wbString('Model Filename'), - wbInteger('Flags', itU8, wbFlags([ - 'Has Collission Data' - ])) - ], cpNormal, True), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore) - ], [], cpNormal, True) - ]); - - wbRecord(IMGS, 'Image Space', [ - wbEDIDReq, - wbStruct(DNAM, '', [ - wbStruct('HDR', [ - {00} wbFloat('Eye Adapt Speed'), - {04} wbFloat('Blur Radius'), - {08} wbFloat('Blur Passes'), - {12} wbFloat('Emissive Mult'), - {16} wbFloat('Target LUM'), - {20} wbFloat('Upper LUM Clamp'), - {24} wbFloat('Bright Scale'), - {28} wbFloat('Bright Clamp'), - {32} wbFloat('LUM Ramp No Tex'), - {36} wbFloat('LUM Ramp Min'), - {40} wbFloat('LUM Ramp Max'), - {44} wbFloat('Sunlight Dimmer'), - {48} wbFloat('Grass Dimmer'), - {52} wbFloat('Tree Dimmer'), - {56} wbUnion('Skin Dimmer', wbIMGSSkinDimmerDecider, [ - wbFloat('Skin Dimmer'), - wbEmpty('Skin Dimmer', cpIgnore) - ]) - ], cpNormal, False, nil, 14), - wbStruct('Bloom', [ - {60} wbFloat('Blur Radius'), - {64} wbFloat('Alpha Mult Interior'), - {68} wbFloat('Alpha Mult Exterior') - ]), - wbStruct('Get Hit', [ - {72} wbFloat('Blur Radius'), - {76} wbFloat('Blur Damping Constant'), - {80} wbFloat('Damping Constant') - ]), - wbStruct('Night Eye', [ - wbStruct('Tint Color', [ - {84} wbFloat('Red', cpNormal, False, 255, 0), - {88} wbFloat('Green', cpNormal, False, 255, 0), - {92} wbFloat('Blue', cpNormal, False, 255, 0) - ]), - {96} wbFloat('Brightness') - ]), - wbStruct('Cinematic', [ - {100} wbFloat('Saturation'), - wbStruct('Contrast', [ - {104} wbFloat('Avg Lum Value'), - {108} wbFloat('Value') - ]), - {112} wbFloat('Cinematic - Brightness - Value'), - wbStruct('Tint', [ - wbStruct('Color', [ - {116} wbFloat('Red', cpNormal, False, 255, 0), - {120} wbFloat('Green', cpNormal, False, 255, 0), - {124} wbFloat('Blue', cpNormal, False, 255, 0) - ]), - {128} wbFloat('Value') - ]) - ]), - wbByteArray('Unused', 4), - wbByteArray('Unused', 4), - wbByteArray('Unused', 4), - wbByteArray('Unused', 4), - wbInteger('Flags', itU8, wbFlags([ - 'Saturation', - 'Contrast', - 'Tint', - 'Brightness' - ], True)), - wbByteArray('Unused', 3) - ], cpNormal, True, nil, 5) - ]); - - wbTimeInterpolator := wbStruct('Data', [ - wbFloat('Time'), - wbFloat('Value') - ]); - - wbColorInterpolator := wbStruct('Data', [ - wbFloat('Time'), - wbFloat('Red', cpNormal, False, 255, 0), - wbFloat('Green', cpNormal, False, 255, 0), - wbFloat('Blue', cpNormal, False, 255, 0), - wbFloat('Alpha', cpNormal, False, 255, 0) - ]); - - wbRecord(IMAD, 'Image Space Adapter', [ - wbEDID, - wbStruct(DNAM, 'Data Count', [ - wbInteger('Flags', itU32, wbFlags(['Animatable'])), - wbFloat('Duration'), - wbStruct('HDR', [ - wbInteger('Eye Adapt Speed Mult', itU32), - wbInteger('Eye Adapt Speed Add', itU32), - wbInteger('Bloom Blur Radius Mult', itU32), - wbInteger('Bloom Blur Radius Add', itU32), - wbInteger('Bloom Threshold Mult', itU32), - wbInteger('Bloom Threshold Add', itU32), - wbInteger('Bloom Scale Mult', itU32), - wbInteger('Bloom Scale Add', itU32), - wbInteger('Target Lum Min Mult', itU32), - wbInteger('Target Lum Min Add', itU32), - wbInteger('Target Lum Max Mult', itU32), - wbInteger('Target Lum Max Add', itU32), - wbInteger('Sunlight Scale Mult', itU32), - wbInteger('Sunlight Scale Add', itU32), - wbInteger('Sky Scale Mult', itU32), - wbInteger('Sky Scale Add', itU32) - ]), - wbInteger('Unknown08 Mult', itU32), - wbInteger('Unknown48 Add', itU32), - wbInteger('Unknown09 Mult', itU32), - wbInteger('Unknown49 Add', itU32), - wbInteger('Unknown0A Mult', itU32), - wbInteger('Unknown4A Add', itU32), - wbInteger('Unknown0B Mult', itU32), - wbInteger('Unknown4B Add', itU32), - wbInteger('Unknown0C Mult', itU32), - wbInteger('Unknown4C Add', itU32), - wbInteger('Unknown0D Mult', itU32), - wbInteger('Unknown4D Add', itU32), - wbInteger('Unknown0E Mult', itU32), - wbInteger('Unknown4E Add', itU32), - wbInteger('Unknown0F Mult', itU32), - wbInteger('Unknown4F Add', itU32), - wbInteger('Unknown10 Mult', itU32), - wbInteger('Unknown50 Add', itU32), - wbStruct('Cinematic', [ - wbInteger('Saturation Mult', itU32), - wbInteger('Saturation Add', itU32), - wbInteger('Brightness Mult', itU32), - wbInteger('Brightness Add', itU32), - wbInteger('Contrast Mult', itU32), - wbInteger('Contrast Add', itU32) - ]), - wbInteger('Unknown14 Mult', itU32), - wbInteger('Unknown54 Add', itU32), - wbInteger('Tint Color', itU32), - wbInteger('Blur Radius', itU32), - wbInteger('Double Vision Strength', itU32), - wbInteger('Radial Blur Strength', itU32), - wbInteger('Radial Blur Ramp Up', itU32), - wbInteger('Radial Blur Start', itU32), - wbInteger('Radial Blur Flags', itU32, wbFlags(['Use Target'])), - wbFloat('Radial Blur Center X'), - wbFloat('Radial Blur Center Y'), - wbInteger('DoF Strength', itU32), - wbInteger('DoF Distance', itU32), - wbInteger('DoF Range', itU32), - wbInteger('DoF Flags', itU32, wbFlags(['Use Target'])), - wbInteger('Radial Blur Ramp Down', itU32), - wbInteger('Radial Blur Down Start', itU32), - wbInteger('Fade Color', itU32), - wbInteger('Motion Blur Strength', itU32) - ], cpNormal, True, nil, 26), - wbArray(BNAM, 'Blur Radius', wbTimeInterpolator), - wbArray(VNAM, 'Double Vision Strength', wbTimeInterpolator), - wbArray(TNAM, 'Tint Color', wbColorInterpolator), - wbArray(NAM3, 'Fade Color', wbColorInterpolator), - wbArray(RNAM, 'Radial Blur Strength', wbTimeInterpolator), - wbArray(SNAM, 'Radial Blur Ramp Up', wbTimeInterpolator), - wbArray(UNAM, 'Radial Blur Start', wbTimeInterpolator), - wbArray(NAM1, 'Radial Blur Ramp Down', wbTimeInterpolator), - wbArray(NAM2, 'Radial Blur Down Start', wbTimeInterpolator), - wbArray(WNAM, 'DoF Strength', wbTimeInterpolator), - wbArray(XNAM, 'DoF Distance', wbTimeInterpolator), - wbArray(YNAM, 'DoF Range', wbTimeInterpolator), - wbArray(NAM4, 'Motion Blur Strength', wbTimeInterpolator), - wbRStruct('HDR', [ - wbArray(_00_IAD, 'Eye Adapt Speed Mult', wbTimeInterpolator), - wbArray(_40_IAD, 'Eye Adapt Speed Add', wbTimeInterpolator), - wbArray(_01_IAD, 'Bloom Blur Radius Mult', wbTimeInterpolator), - wbArray(_41_IAD, 'Bloom Blur Radius Add', wbTimeInterpolator), - wbArray(_02_IAD, 'Bloom Threshold Mult', wbTimeInterpolator), - wbArray(_42_IAD, 'Bloom Threshold Add', wbTimeInterpolator), - wbArray(_03_IAD, 'Bloom Scale Mult', wbTimeInterpolator), - wbArray(_43_IAD, 'Bloom Scale Add', wbTimeInterpolator), - wbArray(_04_IAD, 'Target Lum Min Mult', wbTimeInterpolator), - wbArray(_44_IAD, 'Target Lum Min Add', wbTimeInterpolator), - wbArray(_05_IAD, 'Target Lum Max Mult', wbTimeInterpolator), - wbArray(_45_IAD, 'Target Lum Max Add', wbTimeInterpolator), - wbArray(_06_IAD, 'Sunlight Scale Mult', wbTimeInterpolator), - wbArray(_46_IAD, 'Sunlight Scale Add', wbTimeInterpolator), - wbArray(_07_IAD, 'Sky Scale Mult', wbTimeInterpolator), - wbArray(_47_IAD, 'Sky Scale Add', wbTimeInterpolator) - ], []), - wbUnknown(_08_IAD), - wbUnknown(_48_IAD), - wbUnknown(_09_IAD), - wbUnknown(_49_IAD), - wbUnknown(_0A_IAD), - wbUnknown(_4A_IAD), - wbUnknown(_0B_IAD), - wbUnknown(_4B_IAD), - wbUnknown(_0C_IAD), - wbUnknown(_4C_IAD), - wbUnknown(_0D_IAD), - wbUnknown(_4D_IAD), - wbUnknown(_0E_IAD), - wbUnknown(_4E_IAD), - wbUnknown(_0F_IAD), - wbUnknown(_4F_IAD), - wbUnknown(_10_IAD), - wbUnknown(_50_IAD), - wbRStruct('Cinematic', [ - wbArray(_11_IAD, 'Saturation Mult', wbTimeInterpolator), - wbArray(_51_IAD, 'Saturation Add', wbTimeInterpolator), - wbArray(_12_IAD, 'Brightness Mult', wbTimeInterpolator), - wbArray(_52_IAD, 'Brightness Add', wbTimeInterpolator), - wbArray(_13_IAD, 'Contrast Mult', wbTimeInterpolator), - wbArray(_53_IAD, 'Contrast Add', wbTimeInterpolator) - ], []), - wbUnknown(_14_IAD), - wbUnknown(_54_IAD), - wbFormIDCk(RDSD, 'Sound - Intro', [SOUN]), - wbFormIDCk(RDSI, 'Sound - Outro', [SOUN]) - ]); - - wbRecord(FLST, 'FormID List', [ - wbString(EDID, 'Editor ID', 0, cpBenign, True, nil, wbFLSTEDIDAfterSet), - wbRArrayS('FormIDs', wbFormID(LNAM, 'FormID'), cpNormal, False, nil, nil, nil, wbFLSTLNAMIsSorted) - ]); - - wbRecord(PERK, 'Perk', [ - wbEDIDReq, - wbFULL, - wbDESCReq, - wbICON, - wbCTDAs, - wbStruct(DATA, 'Data', [ - wbInteger('Trait', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Min Level', itU8), - wbInteger('Ranks', itU8), - wbInteger('Playable', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Hidden', itU8, wbEnum(['No', 'Yes'])) - ], cpNormal, True, nil, 4), - wbRStructsSK('Effects', 'Effect', [0, 1], [ - wbStructSK(PRKE, [1, 2, 0], 'Header', [ - wbInteger('Type', itU8, wbEnum([ - 'Quest + Stage', - 'Ability', - 'Entry Point' - ]), cpNormal, False, nil, wbPERKPRKETypeAfterSet), - wbInteger('Rank', itU8), - wbInteger('Priority', itU8) - ]), - wbUnion(DATA, 'Effect Data', wbPerkDATADecider, [ - wbStructSK([0, 1], 'Quest + Stage', [ - wbFormIDCk('Quest', [QUST]), - wbInteger('Quest Stage', itU8, wbPerkDATAQuestStageToStr, wbCTDAParam2QuestStageToInt), - wbByteArray('Unused', 3) - ]), - wbFormIDCk('Ability', [SPEL]), - wbStructSK([0, 1], 'Entry Point', [ - wbInteger('Entry Point', itU8, wbEnum([ - {00} 'Calculate Weapon Damage', - {01} 'Calculate My Critical Hit Chance', - {02} 'Calculate My Critical Hit Damage', - {03} 'Calculate Weapon Attack AP Cost', - {04} 'Calculate Mine Explode Chance', - {05} 'Adjust Range Penalty', - {06} 'Adjust Limb Damage', - {07} 'Calculate Weapon Range', - {08} 'Calculate To Hit Chance', - {09} 'Adjust Experience Points', - {10} 'Adjust Gained Skill Points', - {11} 'Adjust Book Skill Points', - {12} 'Modify Recovered Health', - {13} 'Calculate Inventory AP Cost', - {14} 'Get Disposition', - {15} 'Get Should Attack', - {16} 'Get Should Assist', - {17} 'Calculate Buy Price', - {18} 'Get Bad Karma', - {19} 'Get Good Karma', - {20} 'Ignore Locked Terminal', - {21} 'Add Leveled List On Death', - {22} 'Get Max Carry Weight', - {23} 'Modify Addiction Chance', - {24} 'Modify Addiction Duration', - {25} 'Modify Positive Chem Duration', - {26} 'Adjust Drinking Radiation', - {27} 'Activate', - {28} 'Mysterious Stranger', - {29} 'Has Paralyzing Palm', - {30} 'Hacking Science Bonus', - {31} 'Ignore Running During Detection', - {32} 'Ignore Broken Lock', - {33} 'Has Concentrated Fire', - {34} 'Calculate Gun Spread', - {35} 'Player Kill AP Reward', - {36} 'Modify Enemy Critical Hit Chance', - {37} 'Reload Speed', - {38} 'Equip Speed', - {39} 'Action Point Regen', - {40} 'Action Point Cost', - {41} 'Miss Fortune', - {42} 'Modify Run Speed', - {43} 'Modify Attack Speed', - {44} 'Modify Radiation Consumed', - {45} 'Has Pip Hacker', - {46} 'Has Meltdown', - {47} 'See Enemy Health', - {48} 'Has Jury Rigging', - {49} 'Modify Threat Range', - {50} 'Modify Thread', - {51} 'Has Fast Travel Always', - {52} 'Knockdown Chance', - {53} 'Modify Weapon Strength Req', - {54} 'Modify Aiming Move Speed', - {55} 'Modify Light Items', - {56} 'Modify Damage Threshold (defender)', - {57} 'Modify Chance for Ammo Item', - {58} 'Modify Damage Threshold (attacker)', - {59} 'Modify Throwing Velocity', - {60} 'Chance for Item on Fire', - {61} 'Has Unarmed Forward Power Attack', - {62} 'Has Unarmed Back Power Attack', - {63} 'Has Unarmed Crouched Power Attack', - {64} 'Has Unarmed Counter Attack', - {65} 'Has Unarmed Left Power Attack', - {66} 'Has Unarmed Right Power Attack', - {67} 'VATS HelperChance', - {68} 'Modify Item Damage', - {69} 'Has Improved Detection', - {70} 'Has Improved Spotting', - {71} 'Has Improved Item Detection', - {72} 'Adjust Explosion Radius', - {73} 'Reserved' - ]), cpNormal, True, nil, wbPERKEntryPointAfterSet), - wbInteger('Function', itU8, wbPerkDATAFunctionToStr, wbPerkDATAFunctionToInt, cpNormal, False, nil, wbPerkDATAFunctionAfterSet), - wbInteger('Perk Condition Tab Count', itU8, nil, cpIgnore) - ]) - ], cpNormal, True), - wbRStructsSK('Perk Conditions', 'Perk Condition', [0], [ - wbInteger(PRKC, 'Run On', itS8, wbPRKCToStr, wbPRKCToInt), - wbCTDAsReq - ], [], cpNormal, False, nil, nil, wbPERKPRKCDontShow), - wbRStruct('Entry Point Function Parameters', [ - wbInteger(EPFT, 'Type', itU8, wbPerkEPFTToStr, wbPerkEPFTToInt, cpIgnore, False, nil, wbPerkEPFTAfterSet), - wbUnion(EPFD, 'Data', wbEPFDDecider, [ - wbByteArray('Unknown'), - wbFloat('Float'), - wbStruct('Float, Float', [ - wbFloat('Float 1'), - wbFloat('Float 2') - ]), - wbFormIDCk('Leveled Item', [LVLI]), - wbEmpty('None (Script)'), - wbStruct('Actor Value, Float', [ - wbInteger('Actor Value', itU32, wbEPFDActorValueToStr, wbEPFDActorValueToInt), - wbFloat('Float') - ]) - ], cpNormal, False, wbEPFDDontShow), - wbString(EPF2, 'Button Label', 0, cpNormal, False, wbEPF2DontShow), - wbInteger(EPF3, 'Script Flags', itU16, wbFlags([ - 'Run Immediately' - ]), cpNormal, False, False, wbEPF2DontShow), - wbEmbeddedScriptPerk - ], [], cpNormal, False, wbPERKPRKCDontShow), - wbEmpty(PRKF, 'End Marker', cpIgnore, True) - ], []) - ]); - - wbBPNDStruct := wbStruct(BPND, '', [ - {00} wbFloat('Damage Mult'), - {04} wbInteger('Flags', itU8, wbFlags([ - 'Severable', - 'IK Data', - 'IK Data - Biped Data', - 'Explodable', - 'IK Data - Is Head', - 'IK Data - Headtracking', - 'To Hit Chance - Absolute' - ])), - {05} wbInteger('Part Type', itU8, wbEnum([ - 'Torso', - 'Head 1', - 'Head 2', - 'Left Arm 1', - 'Left Arm 2', - 'Right Arm 1', - 'Right Arm 2', - 'Left Leg 1', - 'Left Leg 2', - 'Left Leg 3', - 'Right Leg 1', - 'Right Leg 2', - 'Right Leg 3', - 'Brain', - 'Weapon' - ])), - {06} wbInteger('Health Percent', itU8), - {07} wbInteger('Actor Value', itS8, wbActorValueEnum), - {08} wbInteger('To Hit Chance', itU8), - {09} wbInteger('Explodable - Explosion Chance %', itU8), - {10} wbInteger('Explodable - Debris Count', itU16), - {12} wbFormIDCk('Explodable - Debris', [DEBR, NULL]), - {16} wbFormIDCk('Explodable - Explosion', [EXPL, NULL]), - {20} wbFloat('Tracking Max Angle'), - {24} wbFloat('Explodable - Debris Scale'), - {28} wbInteger('Severable - Debris Count', itS32), - {32} wbFormIDCk('Severable - Debris', [DEBR, NULL]), - {36} wbFormIDCk('Severable - Explosion', [EXPL, NULL]), - {40} wbFloat('Severable - Debris Scale'), - wbStruct('Gore Effects Positioning', [ - wbStruct('Translate', [ - {44} wbFloat('X'), - {48} wbFloat('Y'), - {52} wbFloat('Z') - ]), - wbStruct('Rotation', [ - {56} wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - {60} wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - {64} wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ]), - {68} wbFormIDCk('Severable - Impact DataSet', [IPDS, NULL]), - {72} wbFormIDCk('Explodable - Impact DataSet', [IPDS, NULL]), - {28} wbInteger('Severable - Decal Count', itU8), - {28} wbInteger('Explodable - Decal Count', itU8), - {76} wbByteArray('Unused', 2), - {80} wbFloat('Limb Replacement Scale') - ], cpNormal, True); - - wbRecord(BPTD, 'Body Part Data', [ - wbEDIDReq, - wbMODLReq, - wbRStructS('Body Parts', 'Body Part', [ // When the Part Name is provided - wbString(BPTN, 'Part Name', 0, cpNormal, True), - wbString(BPNN, 'Part Node', 0, cpNormal, True), - wbString(BPNT, 'VATS Target', 0, cpNormal, True), - wbString(BPNI, 'IK Data - Start Node', 0, cpNormal, True), - wbBPNDStruct, - wbString(NAM1, 'Limb Replacement Model', 0, cpNormal, True), - wbString(NAM4, 'Gore Effects - Target Bone', 0, cpNormal, True), - wbByteArray(NAM5, 'Texture Files Hashes', 0, cpIgnore) - ], [], cpNormal, False), - wbRStructS('Unnamed Body Parts', 'Body Part', [ // When the Part Name is not provided - wbString(BPNN, 'Part Node', 0, cpNormal, True), - wbString(BPNT, 'VATS Target', 0, cpNormal, True), - wbString(BPNI, 'IK Data - Start Node', 0, cpNormal, True), - wbBPNDStruct, - wbString(NAM1, 'Limb Replacement Model', 0, cpNormal, True), - wbString(NAM4, 'Gore Effects - Target Bone', 0, cpNormal, True), - wbByteArray(NAM5, 'Texture Files Hashes', 0, cpIgnore) - ], [], cpNormal, False), - wbFormIDCk(RAGA, 'Ragdoll', [RGDL]) - ]); - - wbRecord(ADDN, 'Addon Node', [ - wbEDIDReq, - wbOBNDReq, - wbMODLReq, - wbInteger(DATA, 'Node Index', itS32, nil, cpNormal, True), - wbFormIDCk(SNAM, 'Sound', [SOUN]), - wbStruct(DNAM, 'Data', [ - wbInteger('Master Particle System Cap', itU16), - wbByteArray('Unknown', 2) - ], cpNormal, True) - ]); - - wbRecord(AVIF, 'ActorValue Information', [ - wbEDIDReq, - wbFULL, - wbDESCReq, - wbICON, - wbString(ANAM, 'Short Name') - ]); - - wbRecord(RADS, 'Radiation Stage', [ - wbEDIDReq, - wbStruct(DATA, '', [ - wbInteger('Trigger Threshold', itU32), - wbFormIDCk('Actor Effect', [SPEL]) - ], cpNormal, True) - ]); - - wbRecord(CAMS, 'Camera Shot', [ - wbEDIDReq, - wbMODL, - wbStruct(DATA, 'Data', [ - {00} wbInteger('Action', itU32, wbEnum([ - 'Shoot', - 'Fly', - 'Hit', - 'Zoom' - ])), - {04} wbInteger('Location', itU32, wbEnum([ - 'Attacker', - 'Projectile', - 'Target' - ])), - {08} wbInteger('Target', itU32, wbEnum([ - 'Attacker', - 'Projectile', - 'Target' - ])), - {12} wbInteger('Flags', itU32, wbFlags([ - 'Position Follows Location', - 'Rotation Follows Target', - 'Don''t Follow Bone', - 'First Person Camera', - 'No Tracer', - 'Start At Time Zero' - ])), - wbStruct('Time Multipliers', [ - {16} wbFloat('Player'), - {20} wbFloat('Target'), - {24} wbFloat('Global') - ]), - {28} wbFloat('Max Time'), - {32} wbFloat('Min Time'), - {36} wbFloat('Target % Between Actors') - ], cpNormal, True, nil, 7), - wbFormIDCk(MNAM, 'Image Space Modifier', [IMAD]) - ]); - - wbRecord(CPTH, 'Camera Path', [ - wbEDIDReq, - wbCTDAs, - wbArray(ANAM, 'Related Camera Paths', wbFormIDCk('Related Camera Path', [CPTH, NULL]), ['Parent', 'Previous Sibling'], cpNormal, True), - wbInteger(DATA, 'Camera Zoom', itU8, wbEnum([ - 'Default', - 'Disable', - 'Shot List' - ]), cpNormal, True), - wbRArray('Camera Shots', wbFormIDCk(SNAM, 'Camera Shot', [CAMS])) - ]); - - wbRecord(VTYP, 'Voice Type', [ - wbEDIDReq, - wbInteger(DNAM, 'Flags', itU8, wbFlags([ - 'Allow Default Dialog', - 'Female' - ]), cpNormal, False) - ]); - - wbRecord(IPCT, 'Impact', [ - wbEDIDReq, - wbMODL, - wbStruct(DATA, '', [ - wbFloat('Effect - Duration'), - wbInteger('Effect - Orientation', itU32, wbEnum([ - 'Surface Normal', - 'Projectile Vector', - 'Projectile Reflection' - ])), - wbFloat('Angle Threshold'), - wbFloat('Placement Radius'), - wbInteger('Sound Level', itU32, wbSoundLevelEnum), - wbInteger('Flags', itU32, wbFlags([ - 'No Decal Data' - ])) - ], cpNormal, True), - wbDODT, - wbFormIDCk(DNAM, 'Texture Set', [TXST]), - wbFormIDCk(SNAM, 'Sound 1', [SOUN]), - wbFormIDCk(NAM1, 'Sound 2', [SOUN]) - ]); - - wbRecord(IPDS, 'Impact DataSet', [ - wbEDIDReq, - wbStruct(DATA, 'Impacts', [ - wbFormIDCk('Stone', [IPCT, NULL]), - wbFormIDCk('Dirt', [IPCT, NULL]), - wbFormIDCk('Grass', [IPCT, NULL]), - wbFormIDCk('Glass', [IPCT, NULL]), - wbFormIDCk('Metal', [IPCT, NULL]), - wbFormIDCk('Wood', [IPCT, NULL]), - wbFormIDCk('Organic', [IPCT, NULL]), - wbFormIDCk('Cloth', [IPCT, NULL]), - wbFormIDCk('Water', [IPCT, NULL]), - wbFormIDCk('Hollow Metal', [IPCT, NULL]), - wbFormIDCk('Organic Bug', [IPCT, NULL]), - wbFormIDCk('Organic Glow', [IPCT, NULL]) - ], cpNormal, True, nil, 9) - ]); - - wbRecord(ECZN, 'Encounter Zone', [ - wbEDIDReq, - wbStruct(DATA, '', [ - wbFormIDCkNoReach('Owner', [NPC_, FACT, NULL]), - wbInteger('Rank', itS8), - wbInteger('Minimum Level', itS8), - wbInteger('Flags', itU8, wbFlags([ - 'Never Resets', - 'Match PC Below Minimum Level' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True) - ]); - - wbRecord(MESG, 'Message', [ - wbEDIDReq, - wbDESCReq, - wbFULL, - wbFormIDCk(INAM, 'Icon', [MICN, NULL], False, cpNormal, True), - wbByteArray(NAM0, 'Unused', 0, cpIgnore), - wbByteArray(NAM1, 'Unused', 0, cpIgnore), - wbByteArray(NAM2, 'Unused', 0, cpIgnore), - wbByteArray(NAM3, 'Unused', 0, cpIgnore), - wbByteArray(NAM4, 'Unused', 0, cpIgnore), - wbByteArray(NAM5, 'Unused', 0, cpIgnore), - wbByteArray(NAM6, 'Unused', 0, cpIgnore), - wbByteArray(NAM7, 'Unused', 0, cpIgnore), - wbByteArray(NAM8, 'Unused', 0, cpIgnore), - wbByteArray(NAM9, 'Unused', 0, cpIgnore), - wbInteger(DNAM, 'Flags', itU32, wbFlags([ - 'Message Box', - 'Auto Display' - ]), cpNormal, True, False, nil, wbMESGDNAMAfterSet), - wbInteger(TNAM, 'Display Time', itU32, nil, cpNormal, False, False, wbMESGTNAMDontShow), - wbRStructs('Menu Buttons', 'Menu Button', [ - wbString(ITXT, 'Button Text'), - wbCTDAs - ], []) - ], False, nil, cpNormal, False, wbMESGAfterLoad); - - wbRecord(RGDL, 'Ragdoll', [ - wbEDIDReq, - wbInteger(NVER, 'Version', itU32, nil, cpNormal, True), - wbStruct(DATA, 'General Data', [ - wbInteger('Dynamic Bone Count', itU32), - wbByteArray('Unused', 4), - wbStruct('Enabled', [ - wbInteger('Feedback', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Foot IK (broken, don''t use)', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Look IK (broken, don''t use)', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Grab IK (broken, don''t use)', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Pose Matching', itU8, wbEnum(['No', 'Yes'])) - ]), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbFormIDCk(XNAM, 'Actor Base', [CREA, NPC_], False, cpNormal, True), - wbFormIDCk(TNAM, 'Body Part Data', [BPTD], False, cpNormal, True), - wbStruct(RAFD, 'Feedback Data', [ - {00} wbFloat('Dynamic/Keyframe Blend Amount'), - {04} wbFloat('Hierarchy Gain'), - {08} wbFloat('Position Gain'), - {12} wbFloat('Velocity Gain'), - {16} wbFloat('Acceleration Gain'), - {20} wbFloat('Snap Gain'), - {24} wbFloat('Velocity Damping'), - wbStruct('Snap Max Settings', [ - {28} wbFloat('Linear Velocity'), - {32} wbFloat('Angular Velocity'), - {36} wbFloat('Linear Distance'), - {40} wbFloat('Angular Distance') - ]), - wbStruct('Position Max Velocity', [ - {44} wbFloat('Linear'), - {48} wbFloat('Angular') - ]), - wbStruct('Position Max Velocity', [ - {52} wbInteger('Projectile', itS32, wbDiv(1000)), - {56} wbInteger('Melee', itS32, wbDiv(1000)) - ]) - ], cpNormal, False), - wbArray(RAFB, 'Feedback Dynamic Bones', wbInteger('Bone', itU16), 0, nil, nil, cpNormal, False), - wbStruct(RAPS, 'Pose Matching Data', [ - {00} wbArray('Match Bones', wbInteger('Bone', itU16, wbHideFFFF), 3), - {06} wbInteger('Flags', itU8, wbFlags([ - 'Disable On Move' - ])), - {07} wbByteArray('Unused', 1), - {08} wbFloat('Motors Strength'), - {12} wbFloat('Pose Activation Delay Time'), - {16} wbFloat('Match Error Allowance'), - {20} wbFloat('Displacement To Disable') - ], cpNormal, True), - wbString(ANAM, 'Death Pose') - ]); - - wbRecord(DOBJ, 'Default Object Manager', [ - wbEDIDReq, - wbArray(DATA, 'Default Objects', wbFormID('Default Object'), [ - 'Stimpack', - 'SuperStimpack', - 'RadX', - 'RadAway', - 'Morphine', - 'Perk Paralysis', - 'Player Faction', - 'Mysterious Stranger NPC', - 'Mysterious Stranger Faction', - 'Default Music', - 'Battle Music', - 'Death Music', - 'Success Music', - 'Level Up Music', - 'Player Voice (Male)', - 'Player Voice (Male Child)', - 'Player Voice (Female)', - 'Player Voice (Female Child)', - 'Eat Package Default Food', - 'Every Actor Ability', - 'Drug Wears Off Image Space', - 'Doctor''s Bag', - 'Miss Fortune NPC', - 'Miss Fortune Faction', - 'Meltdown Explosion', - 'Unarmed Forward PA', - 'Unarmed Backward PA', - 'Unarmed Left PA', - 'Unarmed Right PA', - 'Unarmed Crouch PA', - 'Unarmed Counter PA', - 'Spotter Effect', - 'Item Detected Effect', - 'Cateye Mobile Effect (NYI)' - ], cpNormal, True) - ]); - - wbRecord(LGTM, 'Lighting Template', [ - wbEDIDReq, - wbStruct(DATA, 'Lighting', [ - wbStruct('Ambient Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Directional Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Fog Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Fog Near'), - wbFloat('Fog Far'), - wbInteger('Directional Rotation XY', itS32), - wbInteger('Directional Rotation Z', itS32), - wbFloat('Directional Fade'), - wbFloat('Fog Clip Dist'), - wbFloat('Fog Power') - ], cpNormal, True) - ]); - - wbRecord(MUSC, 'Music Type', [ - wbEDIDReq, - wbString(FNAM, 'Filename'), - wbFloat(ANAM, 'dB (positive = Loop)') - ]); - - wbRecord(GRAS, 'Grass', [ - wbEDIDReq, - wbOBNDReq, - wbMODLReq, - wbStruct(DATA, '', [ - wbInteger('Density', itU8), - wbInteger('Min Slope', itU8), - wbInteger('Max Slope', itU8), - wbByteArray('Unused', 1), - wbInteger('Unit from water amount', itU16), - wbByteArray('Unused', 2), - wbInteger('Unit from water type', itU32, wbEnum([ - 'Above - At Least', - 'Above - At Most', - 'Below - At Least', - 'Below - At Most', - 'Either - At Least', - 'Either - At Most', - 'Either - At Most Above', - 'Either - At Most Below' - ])), - wbFloat('Position Range'), - wbFloat('Height Range'), - wbFloat('Color Range'), - wbFloat('Wave Period'), - wbInteger('Flags', itU8, wbFlags([ - 'Vertex Lighting', - 'Uniform Scaling', - 'Fit to Slope' - ])), - wbByteArray('Unused', 3) - ], cpNormal, True) - ]); - - wbRecord(HAIR, 'Hair', [ - wbEDIDReq, - wbFULLReq, - wbMODLReq, - wbString(ICON, 'Texture', 0, cpNormal, True), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - 'Playable', - 'Not Male', - 'Not Female', - 'Fixed' - ]), cpNormal, True) - ]); - - wbRecord(IDLE, 'Idle Animation', [ - wbEDID, - wbMODLReq, - wbCTDAs, - wbArray(ANAM, 'Related Idle Animations', wbFormIDCk('Related Idle Animation', [IDLE, NULL]), ['Parent', 'Previous Sibling'], cpNormal, True), - wbStruct(DATA, '', [ - wbInteger('Animation Group Section', itU8, wbIdleAnam), - wbStruct('Looping', [ - wbInteger('Min', itU8), - wbInteger('Max', itU8) - ]), - wbByteArray('Unused', 1), - wbInteger('Replay Delay', itS16), - wbInteger('Flags', itU8, wbFlags([ - 'No attacking' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True, nil, 4) - ]); - - wbRecord(INFO, 'Dialog response', [ - wbStruct(DATA, '', [ - wbInteger('Type', itU8, wbEnum([ - {0} 'Topic', - {1} 'Conversation', - {2} 'Combat', - {3} 'Persuasion', - {4} 'Detection', - {5} 'Service', - {6} 'Miscellaneous', - {7} 'Radio' - ])), - wbInteger('Next Speaker', itU8, wbEnum([ - {0} 'Target', - {1} 'Self', - {2} 'Either' - ])), - wbInteger('Flags 1', itU8, wbFlags([ - {0x01} 'Goodbye', - {0x02} 'Random', - {0x04} 'Say Once', - {0x08} 'Run Immediately', - {0x10} 'Info Refusal', - {0x20} 'Random End', - {0x40} 'Run for Rumors', - {0x80} 'Speech Challenge' - ])), - wbInteger('Flags 2', itU8, wbFlags([ - {0x01} 'Say Once a Day', - {0x02} 'Always Darken', - {0x04} 'Unknown 2', - {0x08} 'Unknown 3', - {0x10} 'Low Intelligence', - {0x20} 'High Intelligence' - ])) - ], cpNormal, True, nil, 3), - wbFormIDCkNoReach(QSTI, 'Quest', [QUST], False, cpNormal, True), - wbFormIDCk(TPIC, 'Topic', [DIAL]), // The GECK ignores it for ESM - wbFormIDCkNoReach(PNAM, 'Previous INFO', [INFO, NULL]), - wbRArray('Add Topics', wbFormIDCk(NAME, 'Topic', [DIAL])), - wbRArray('Responses', - wbRStruct('Response', [ - wbStruct(TRDT, 'Response Data', [ - wbInteger('Emotion Type', itU32, wbEnum([ - {0} 'Neutral', - {1} 'Anger', - {2} 'Disgust', - {3} 'Fear', - {4} 'Sad', - {5} 'Happy', - {6} 'Surprise', - {7} 'Pained' - ])), - wbInteger('Emotion Value', itS32), - wbByteArray('Unused', 4), - wbInteger('Response number', itU8), - wbByteArray('Unused', 3), - wbFormIDCk('Sound', [SOUN, NULL]), - wbInteger('Flags', itU8, wbFlags([ - 'Use Emotion Animation' - ])), - wbByteArray('Unused', 3) - ], cpNormal, False, nil, 5), - wbStringKC(NAM1, 'Response Text', 0, cpTranslate, True), - wbString(NAM2, 'Script Notes', 0, cpTranslate, True), - wbString(NAM3, 'Edits'), - wbFormIDCk(SNAM, 'Speaker Animation', [IDLE]), - wbFormIDCk(LNAM, 'Listener Animation', [IDLE]) - ], []) - ), - wbCTDAs, - wbRArray('Choices', wbFormIDCk(TCLT, 'Choice', [DIAL])), - wbRArray('Link From', wbFormIDCk(TCLF, 'Topic', [DIAL])), - wbRArray('Unknown', wbFormIDCk(TCFU, 'Info', [INFO] )), - wbRStruct('Script (Begin)', [ - wbEmbeddedScriptReq - ], [], cpNormal, True), - wbRStruct('Script (End)', [ - wbEmpty(NEXT, 'Marker'), - wbEmbeddedScriptReq - ], [], cpNormal, True), - wbFormIDCk(SNDD, 'Unused', [SOUN]), - wbString(RNAM, 'Prompt'), - wbFormIDCk(ANAM, 'Speaker', [CREA, NPC_]), - wbFormIDCk(KNAM, 'ActorValue/Perk', [AVIF, PERK]), - wbInteger(DNAM, 'Speech Challenge', itU32, wbEnum([ - '---', - 'Very Easy', - 'Easy', - 'Average', - 'Hard', - 'Very Hard' - ])) - ], False, wbINFOAddInfo, cpNormal, False, wbINFOAfterLoad); - - wbRecord(INGR, 'Ingredient', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbETYPReq, - wbFloat(DATA, 'Weight', cpNormal, True), - wbStruct(ENIT, 'Effect Data', [ - wbInteger('Value', itS32), - wbInteger('Flags', itU8, wbFlags(['No auto-calculation', 'Food item'])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffectsReq - ]); - - wbRecord(KEYM, 'Key', [ - wbEDIDReq, - wbOBNDReq, - wbFULLReq, - wbMODL, - wbICONReq, - wbSCRI, - wbDEST, - wbYNAM, - wbZNAM, - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True), - wbFormIDCk(RNAM, 'Sound - Random/Looping', [SOUN]) - ]); - - wbQuadrantEnum := wbEnum([ - {0} 'Bottom Left', - {1} 'Bottom Right', - {2} 'Top Left', - {3} 'Top Right' - ]); - - if wbSimpleRecords then begin - - wbRecord(LAND, 'Landscape', [ - wbByteArray(DATA, 'Unknown'), - wbByteArray(VNML, 'Vertex Normals'), - wbByteArray(VHGT, 'Vertext Height Map'), - wbByteArray(VCLR, 'Vertex Colours'), - - wbRArrayS('Layers', wbRUnion('Layer', [ - wbRStructSK([0],'Base Layer', [ - wbStructSK(BTXT, [1, 3], 'Base Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]) - ], []), - wbRStructSK([0],'Alpha Layer', [ - wbStructSK(ATXT, [1, 3], 'Alpha Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]), - wbByteArray(VTXT, 'Alpha Layer Data') - ], []) - ], [])), - - wbArray(VTEX, 'Textures', wbFormIDCk('Texture', [LTEX, NULL])) - ]); - - end else begin - - wbRecord(LAND, 'Landscape', [ - wbByteArray(DATA, 'Unknown'), - wbArray(VNML, 'Vertex Normals', wbStruct('Row', [ - wbArray('Columns', wbStruct('Column', [ - wbInteger('X', itU8), - wbInteger('Y', itU8), - wbInteger('Z', itU8) - ]), 33) - ]), 33), - wbStruct(VHGT, 'Vertext Height Map', [ - wbFloat('Offset'), - wbArray('Rows', wbStruct('Row', [ - wbArray('Columns', wbInteger('Column', itU8), 33) - ]), 33), - wbByteArray('Unused', 3) - ]), - wbArray(VCLR, 'Vertex Colours', wbStruct('Row', [ - wbArray('Columns', wbStruct('Column', [ - wbInteger('X', itU8), - wbInteger('Y', itU8), - wbInteger('Z', itU8) - ]), 33) - ]), 33), - - wbRArrayS('Layers', wbRUnion('Layer', [ - wbRStructSK([0],'Base Layer', [ - wbStructSK(BTXT, [1, 3], 'Base Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]) - ], []), - wbRStructSK([0],'Alpha Layer', [ - wbStructSK(ATXT, [1, 3], 'Alpha Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]), - wbArrayS(VTXT, 'Alpha Layer Data', wbStructSK([0], 'Cell', [ - wbInteger('Position', itU16, wbAtxtPosition), - wbByteArray('Unused', 2), - wbFloat('Opacity') - ])) - ], []) - ], [])), - - wbArray(VTEX, 'Textures', wbFormIDCk('Texture', [LTEX, NULL])) - ]); - - end; - - wbRecord(LIGH, 'Light', [ - wbEDIDReq, - wbOBNDReq, - wbMODL, - wbSCRI, - wbDEST, - wbFULL, - wbICON, - wbStruct(DATA, '', [ - wbInteger('Time', itS32), - wbInteger('Radius', itU32), - wbStruct('Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbInteger('Unused', itU8) - ]), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Dynamic', - {0x00000002} 'Can be Carried', - {0x00000004} 'Negative', - {0x00000008} 'Flicker', - {0x00000010} 'Unused', - {0x00000020} 'Off By Default', - {0x00000040} 'Flicker Slow', - {0x00000080} 'Pulse', - {0x00000100} 'Pulse Slow', - {0x00000200} 'Spot Light', - {0x00000400} 'Spot Shadow' - ])), - wbFloat('Falloff Exponent'), - wbFloat('FOV'), - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True), - wbFloat(FNAM, 'Fade value', cpNormal, True), - wbFormIDCk(SNAM, 'Sound', [SOUN]) - ], False, nil, cpNormal, False, wbLIGHAfterLoad); - - wbRecord(LSCR, 'Load Screen', [ - wbEDIDReq, - wbICONReq, - wbDESCReq, - wbRArrayS('Locations', wbStructSK(LNAM, [0, 1], 'Location', [ - wbFormIDCk('Direct', [CELL, WRLD, NULL]), - wbStructSK([0, 1], 'Indirect', [ - wbFormIDCk('World', [NULL, WRLD]), - wbStructSK([0,1], 'Grid', [ - wbInteger('Y', itS16), - wbInteger('X', itS16) - ]) - ]) - ])), - wbFormIDCk(WMI1, 'Load Screen Type', [LSCT]) - ]); - - wbRecord(LTEX, 'Landscape Texture', [ - wbEDIDReq, - wbICON, - wbFormIDCk(TNAM, 'Texture', [TXST], False, cpNormal, True), - wbStruct(HNAM, 'Havok Data', [ - wbInteger('Material Type', itU8, wbEnum([ - {00} 'STONE', - {01} 'CLOTH', - {02} 'DIRT', - {03} 'GLASS', - {04} 'GRASS', - {05} 'METAL', - {06} 'ORGANIC', - {07} 'SKIN', - {08} 'WATER', - {09} 'WOOD', - {10} 'HEAVY STONE', - {11} 'HEAVY METAL', - {12} 'HEAVY WOOD', - {13} 'CHAIN', - {14} 'SNOW', - {15} 'ELEVATOR', - {16} 'HOLLOW METAL', - {17} 'SHEET METAL', - {18} 'SAND', - {19} 'BRIKEN CONCRETE', - {20} 'VEHILCE BODY', - {21} 'VEHILCE PART SOLID', - {22} 'VEHILCE PART HOLLOW', - {23} 'BARREL', - {24} 'BOTTLE', - {25} 'SODA CAN', - {26} 'PISTOL', - {27} 'RIFLE', - {28} 'SHOPPING CART', - {29} 'LUNCHBOX', - {30} 'BABY RATTLE', - {31} 'RUBER BALL' - ])), - wbInteger('Friction', itU8), - wbInteger('Restitution', itU8) - ], cpNormal, True), - wbInteger(SNAM, 'Texture Specular Exponent', itU8, nil, cpNormal, True), - wbRArrayS('Grasses', wbFormIDCk(GNAM, 'Grass', [GRAS])) - ]); - - wbRecord(LVLC, 'Leveled Creature', [ - wbEDIDReq, - wbOBNDReq, - wbInteger(LVLD, 'Chance none', itU8, nil, cpNormal, True), - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count' - ]), cpNormal, True), - wbRArrayS('Leveled List Entries', - wbRStructExSK([0], [1], 'Leveled List Entry', [ - wbStructExSK(LVLO , [0, 2], [3], 'Base Data', [ - wbInteger('Level', itS16), - wbByteArray('Unused', 2), - wbFormIDCk('Reference', [CREA, LVLC]), - wbInteger('Count', itS16), - wbByteArray('Unused', 2) - ]), - wbCOED - ], []), - cpNormal, True), - wbMODL - ]); - - wbRecord(LVLN, 'Leveled NPC', [ - wbEDIDReq, - wbOBNDReq, - wbInteger(LVLD, 'Chance none', itU8, nil, cpNormal, True), - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count' - ]), cpNormal, True), - wbRArrayS('Leveled List Entries', - wbRStructExSK([0], [1], 'Leveled List Entry', [ - wbStructExSK(LVLO , [0, 2], [3], 'Base Data', [ - wbInteger('Level', itS16), - wbByteArray('Unused', 2), - wbFormIDCk('Reference', [NPC_, LVLN]), - wbInteger('Count', itS16), - wbByteArray('Unused', 2) - ]), - wbCOED - ], []), - cpNormal, True), - wbMODL - ]); - - wbRecord(LVLI, 'Leveled Item', [ - wbEDIDReq, - wbOBNDReq, - wbInteger(LVLD, 'Chance none', itU8, nil, cpNormal, True), - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count', - {0x04} 'Use All' - ]), cpNormal, True), - wbFormIDCk(LVLG, 'Global', [GLOB]), - wbRArrayS('Leveled List Entries', - wbRStructExSK([0], [1], 'Leveled List Entry', [ - wbStructExSK(LVLO , [0, 2], [3], 'Base Data', [ - wbInteger('Level', itS16), - wbByteArray('Unused', 2), - wbFormIDCk('Reference', [ARMO, AMMO, MISC, WEAP, BOOK, LVLI, KEYM, ALCH, NOTE, IMOD, CMNY, CCRD, CHIP]), - wbInteger('Count', itS16), - wbByteArray('Unused', 2) - ]), - wbCOED - ], []) - ) - ]); - - wbArchtypeEnum := wbEnum([ - {00} 'Value Modifier', - {01} 'Script', - {02} 'Dispel', - {03} 'Cure Disease', - {04} '', - {05} '', - {06} '', - {07} '', - {08} '', - {09} '', - {10} '', - {11} 'Invisibility', - {12} 'Chameleon', - {13} 'Light', - {14} '', - {15} '', - {16} 'Lock', - {17} 'Open', - {18} 'Bound Item', - {19} 'Summon Creature', - {20} '', - {21} '', - {22} '', - {23} '', - {24} 'Paralysis', - {25} '', - {26} '', - {27} '', - {28} '', - {29} '', - {30} 'Cure Paralysis', - {31} 'Cure Addiction', - {32} 'Cure Poison', - {33} 'Concussion', - {34} 'Value And Parts', - {35} 'Limb Condition', - {36} 'Turbo' - ]); - - wbRecord(MGEF, 'Base Effect', [ - wbEDIDReq, - wbFULL, - wbDESCReq, - wbICON, - wbMODL, - wbStruct(DATA, 'Data', [ - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Hostile', - {0x00000002} 'Recover', - {0x00000004} 'Detrimental', - {0x00000008} '', - {0x00000010} 'Self', - {0x00000020} 'Touch', - {0x00000040} 'Target', - {0x00000080} 'No Duration', - {0x00000100} 'No Magnitude', - {0x00000200} 'No Area', - {0x00000400} 'FX Persist', - {0x00000800} '', - {0x00001000} 'Gory Visuals', - {0x00002000} 'Display Name Only', - {0x00004000} '', - {0x00008000} 'Radio Broadcast ??', - {0x00010000} '', - {0x00020000} '', - {0x00040000} '', - {0x00080000} 'Use skill', - {0x00100000} 'Use attribute', - {0x00200000} '', - {0x00400000} '', - {0x00800000} '', - {0x01000000} 'Painless', - {0x02000000} 'Spray projectile type (or Fog if Bolt is specified as well)', - {0x04000000} 'Bolt projectile type (or Fog if Spray is specified as well)', - {0x08000000} 'No Hit Effect', - {0x10000000} 'No Death Dispel', - {0x20000000} '????' - ])), - {04} wbFloat('Base cost (Unused)'), - {08} wbUnion('Assoc. Item', wbMGEFFAssocItemDecider, [ - wbFormID('Unused', cpIgnore), - wbFormID('Assoc. Item'), - wbFormIDCk('Assoc. Script', [SCPT, NULL]), //Script - wbFormIDCk('Assoc. Item', [WEAP, ARMO, NULL]), //Bound Item - wbFormIDCk('Assoc. Creature', [CREA]) //Summon Creature - ], cpNormal, false, nil, wbMGEFFAssocItemAfterSet), - {12} wbInteger('Magic School (Unused)', itS32, wbEnum([ - ], [ - -1, 'None' - ])), - {16} wbInteger('Resistance Type', itS32, wbActorValueEnum), - {20} wbInteger('Counter effect count', itU16), - {22} wbByteArray('Unused', 2), - {24} wbFormIDCk('Light', [LIGH, NULL]), - {28} wbFloat('Projectile speed'), - {32} wbFormIDCk('Effect Shader', [EFSH, NULL]), - {36} wbFormIDCk('Object Display Shader', [EFSH, NULL]), - {40} wbFormIDCk('Effect sound', [NULL, SOUN]), - {44} wbFormIDCk('Bolt sound', [NULL, SOUN]), - {48} wbFormIDCk('Hit sound', [NULL, SOUN]), - {52} wbFormIDCk('Area sound', [NULL, SOUN]), - {56} wbFloat('Constant Effect enchantment factor (Unused)'), - {60} wbFloat('Constant Effect barter factor (Unused)'), - {64} wbInteger('Archtype', itU32, wbArchtypeEnum, cpNormal, False, nil, wbMGEFArchtypeAfterSet), - {68} wbActorValue - ], cpNormal, True), - wbRArrayS('Counter Effects', wbFormIDCk(ESCE, 'Effect', [MGEF]), cpNormal, False, nil, wbCounterEffectsAfterSet) - ], False, nil, cpNormal, False, wbMGEFAfterLoad, wbMGEFAfterSet); - - wbRecord(MISC, 'Misc. Item', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbDEST, - wbYNAM, - wbZNAM, - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True), - wbFormIDCk(RNAM, 'Sound - Random/Looping', [SOUN]) - ]); - - wbRecord(COBJ, 'Constructible Object', [ - wbEDID, - wbOBND, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbYNAM, - wbZNAM, - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - // floats are reported to change faces after copying - if True {wbSimpleRecords} then begin - wbFaceGen := wbRStruct('FaceGen Data', [ - wbByteArray(FGGS, 'FaceGen Geometry-Symmetric', 0, cpNormal, True), - wbByteArray(FGGA, 'FaceGen Geometry-Asymmetric', 0, cpNormal, True), - wbByteArray(FGTS, 'FaceGen Texture-Symmetric', 0, cpNormal, True) - ], [], cpNormal, True); - - wbFaceGenNPC := wbRStruct('FaceGen Data', [ // Arrays of 4bytes elements - wbByteArray(FGGS, 'FaceGen Geometry-Symmetric', 0, cpNormal, True), - wbByteArray(FGGA, 'FaceGen Geometry-Asymmetric', 0, cpNormal, True), - wbByteArray(FGTS, 'FaceGen Texture-Symmetric', 0, cpNormal, True) - ], [], cpNormal, True, wbActorTemplateUseModelAnimation); - end else begin - wbFaceGen := wbRStruct('FaceGen Data', [ - wbArray(FGGS, 'FaceGen Geometry-Symmetric', wbFloat('Value'), [], cpNormal, True), - wbArray(FGGA, 'FaceGen Geometry-Asymmetric', wbFloat('Value'), [], cpNormal, True), - wbArray(FGTS, 'FaceGen Texture-Symmetric', wbFloat('Value'), [], cpNormal, True) - ], [], cpNormal, True); - - wbFaceGenNPC := wbRStruct('FaceGen Data', [ - wbArray(FGGS, 'FaceGen Geometry-Symmetric', wbFloat('Value'), [], cpNormal, True), - wbArray(FGGA, 'FaceGen Geometry-Asymmetric', wbFloat('Value'), [], cpNormal, True), - wbArray(FGTS, 'FaceGen Texture-Symmetric', wbFloat('Value'), [], cpNormal, True) - ], [], cpNormal, True, wbActorTemplateUseModelAnimation); - end; - - wbRecord(NPC_, 'Non-Player Character', [ - wbEDIDReq, - wbOBNDReq, - wbFULLActor, - wbMODLActor, - wbStruct(ACBS, 'Configuration', [ - {00} wbInteger('Flags', itU32, wbFlags([ - {0x000001} 'Female', - {0x000002} 'Essential', - {0x000004} 'Is CharGen Face Preset', - {0x000008} 'Respawn', - {0x000010} 'Auto-calc stats', - {0x000020} '', - {0x000040} '', - {0x000080} 'PC Level Mult', - {0x000100} 'Use Template', - {0x000200} 'No Low Level Processing', - {0x000400} '', - {0x000800} 'No Blood Spray', - {0x001000} 'No Blood Decal', - {0x002000} '', - {0x004000} '', - {0x008000} '', - {0x010000} '', - {0x020000} '', - {0x040000} '', - {0x080000} '', - {0x100000} 'No VATS Melee', - {0x00200000} '', - {0x00400000} 'Can be all races', - {0x00800000} 'Autocalc Service', - {0x01000000} '', - {0x02000000} '', - {0x04000000} 'No Knockdowns', - {0x08000000} 'Not Pushable', - {0x10000000} 'Unknown 28', - {0x20000000} '', - {0x40000000} 'No Rotating To Head-track', - {0x80000000} '' - ], [ - {0x000001 Female} wbActorTemplateUseTraits, - {0x000002 Essential} wbActorTemplateUseBaseData, - {0x000004 Is CharGen Face Preset} nil, - {0x000008 Respawn} wbActorTemplateUseBaseData, - {0x000010 Auto-calc stats} wbActorTemplateUseStats, - {0x000020 } nil, - {0x000040 } nil, - {0x000080 PC Level Mult} wbActorTemplateUseStats, - {0x000100 Use Template} nil, - {0x000200 No Low Level Processing} wbActorTemplateUseBaseData, - {0x000400 } nil, - {0x000800 No Blood Spray} wbActorTemplateUseModelAnimation, - {0x001000 No Blood Decal} wbActorTemplateUseModelAnimation, - {0x002000 } nil, - {0x004000 } nil, - {0x008000 } nil, - {0x010000 } nil, - {0x020000 } nil, - {0x040000 } nil, - {0x080000 } nil, - {0x100000 No VATS Melee} nil, - {0x00200000 } nil, - {0x00400000 Can be all races} nil, - {0x00800000 } nil, - {0x01000000 } nil, - {0x02000000 } nil, - {0x04000000 No Knockdowns} nil, - {0x08000000 Not Pushable} wbActorTemplateUseModelAnimation, - {0x10000000 } nil, - {0x20000000 } nil, - {0x40000000 No Rotating To Head-track} wbActorTemplateUseModelAnimation, - {0x80000000 } nil - ])), - {04} wbInteger('Fatigue', itU16, nil, cpNormal, True, wbActorTemplateUseStats), - {06} wbInteger('Barter gold', itU16, nil, cpNormal, False, wbActorTemplateUseAIData), - {08} wbUnion('Level', wbCreaLevelDecider, [ - wbInteger('Level', itS16, nil, cpNormal, True, wbActorTemplateUseStats), - wbInteger('Level Mult', itS16, wbDiv(1000), cpNormal, True, wbActorTemplateUseStats) - ], cpNormal, True, wbActorTemplateUseStats), - {10} wbInteger('Calc min', itU16, nil, cpNormal, True, wbActorTemplateUseStats), - {12} wbInteger('Calc max', itU16, nil, cpNormal, True, wbActorTemplateUseStats), - {14} wbInteger('Speed Multiplier', itU16, nil, cpNormal, True, wbActorTemplateUseStats), - {16} wbFloat('Karma (Alignment)', cpNormal, False, 1, -1, wbActorTemplateUseTraits), - {20} wbInteger('Disposition Base', itS16, nil, cpNormal, False, wbActorTemplateUseTraits), - {22} wbInteger('Template Flags', itU16, wbTemplateFlags) - ], cpNormal, True), - wbRArrayS('Factions', - wbStructSK(SNAM, [0], 'Faction', [ - wbFormIDCk('Faction', [FACT]), - wbInteger('Rank', itU8), - wbByteArray('Unused', 3) - ]), - cpNormal, False, nil, nil, wbActorTemplateUseFactions), - wbFormIDCk(INAM, 'Death item', [LVLI], False, cpNormal, False, wbActorTemplateUseTraits), - wbFormIDCk(VTCK, 'Voice', [VTYP], False, cpNormal, True, wbActorTemplateUseTraits), - wbFormIDCk(TPLT, 'Template', [LVLN, NPC_]), - wbFormIDCk(RNAM, 'Race', [RACE], False, cpNormal, True, wbActorTemplateUseTraits), - wbSPLOs, - wbFormIDCk(EITM, 'Unarmed Attack Effect', [ENCH, SPEL], False, cpNormal, False, wbActorTemplateUseActorEffectList), - wbInteger(EAMT, 'Unarmed Attack Animation', itU16, wbAttackAnimationEnum, cpNormal, True, False, wbActorTemplateUseActorEffectList), - wbDESTActor, - wbSCRIActor, - wbRArrayS('Items', wbCNTO, cpNormal, False, nil, nil, wbActorTemplateUseInventory), - wbAIDT, - wbRArray('Packages', wbFormIDCk(PKID, 'Package', [PACK]), cpNormal, False, nil, nil, wbActorTemplateUseAIPackages), - wbArrayS(KFFZ, 'Animations', wbStringLC('Animation'), 0, cpNormal, False, nil, nil, wbActorTemplateUseModelAnimation), - wbFormIDCk(CNAM, 'Class', [CLAS], False, cpNormal, True, wbActorTemplateUseTraits), - wbStruct(DATA, '', [ - {00} wbInteger('Base Health', itS32), - {04} wbArray('Attributes', wbInteger('Attribute', itU8), [ - 'Strength', - 'Perception', - 'Endurance', - 'Charisma', - 'Intelligence', - 'Agility', - 'Luck' - ], cpNormal, False, wbActorAutoCalcDontShow), - wbByteArray('Unused'{, 14 - only present in old record versions}) - ], cpNormal, True, wbActorTemplateUseStats), - wbStruct(DNAM, '', [ - {00} wbArray('Skill Values', wbInteger('Skill', itU8), [ - 'Barter', - 'Big Guns (obsolete)', - 'Energy Weapons', - 'Explosives', - 'Lockpick', - 'Medicine', - 'Melee Weapons', - 'Repair', - 'Science', - 'Guns', - 'Sneak', - 'Speech', - 'Survival', - 'Unarmed' - ]), - {14} wbArray('Skill Offsets', wbInteger('Skill', itU8), [ - 'Barter', - 'Big Guns (obsolete)', - 'Energy Weapons', - 'Explosives', - 'Lockpick', - 'Medicine', - 'Melee Weapons', - 'Repair', - 'Science', - 'Guns', - 'Sneak', - 'Speech', - 'Survival', - 'Unarmed' - ]) - ], cpNormal, False, wbActorTemplateUseStatsAutoCalc), - wbRArrayS('Head Parts', - wbFormIDCk(PNAM, 'Head Part', [HDPT]), - cpNormal, False, nil, nil, wbActorTemplateUseModelAnimation), - wbFormIDCk(HNAM, 'Hair', [HAIR], False, cpNormal, False, wbActorTemplateUseModelAnimation), - wbFloat(LNAM, 'Hair length', cpNormal, False, 1, -1, wbActorTemplateUseModelAnimation), - wbFormIDCk(ENAM, 'Eyes', [EYES], False, cpNormal, False, wbActorTemplateUseModelAnimation), - wbStruct(HCLR, 'Hair color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ], cpNormal, True, wbActorTemplateUseModelAnimation), - wbFormIDCk(ZNAM, 'Combat Style', [CSTY], False, cpNormal, False, wbActorTemplateUseTraits), - wbInteger(NAM4, 'Impact Material Type', itU32, wbImpactMaterialTypeEnum, cpNormal, True, False, wbActorTemplateUseModelAnimation), - wbFaceGenNPC, - wbInteger(NAM5, 'Unknown', itU16, nil, cpNormal, True, False, nil, nil, 255), - wbFloat(NAM6, 'Height', cpNormal, True, 1, -1, wbActorTemplateUseTraits), - wbFloat(NAM7, 'Weight', cpNormal, True, 1, -1, wbActorTemplateUseTraits) - ], True, nil, cpNormal, False, wbNPCAfterLoad); - - wbPKDTFlags := wbFlags([ - {0x00000001} 'Offers Services', - {0x00000002} 'Must reach location', - {0x00000004} 'Must complete', - {0x00000008} 'Lock doors at package start', - {0x00000010} 'Lock doors at package end', - {0x00000020} 'Lock doors at location', - {0x00000040} 'Unlock doors at package start', - {0x00000080} 'Unlock doors at package end', - {0x00000100} 'Unlock doors at location', - {0x00000200} 'Continue if PC near', - {0x00000400} 'Once per day', - {0x00000800} '', - {0x00001000} 'Skip fallout behavior', - {0x00002000} 'Always run', - {0x00004000} '', - {0x00008000} '', - {0x00010000} '', - {0x00020000} 'Always sneak', - {0x00040000} 'Allow swimming', - {0x00080000} 'Allow falls', - {0x00100000} 'Head-Tracking off', - {0x00200000} 'Weapons unequipped', - {0x00400000} 'Defensive combat', - {0x00800000} 'Weapon Drawn', - {0x01000000} 'No idle anims', - {0x02000000} 'Pretend In Combat', - {0x04000000} 'Continue During Combat', - {0x08000000} 'No Combat Alert', - {0x10000000} 'No Warn/Attack Behaviour', - {0x20000000} '', - {0x40000000} '', - {0x80000000} '' - ]); - - wbPKDTType := wbEnum([ - {0} 'Find', - {1} 'Follow', - {2} 'Escort', - {3} 'Eat', - {4} 'Sleep', - {5} 'Wander', - {6} 'Travel', - {7} 'Accompany', - {8} 'Use Item At', - {9} 'Ambush', - {10} 'Flee Not Combat', - {11} 'Package Type 11', - {12} 'Sandbox', - {13} 'Patrol', - {14} 'Guard', - {15} 'Dialogue', - {16} 'Use Weapon', - {17} 'Package Type 17', - {18} 'Combat Controller', - {19} 'Package Type 19', - {20} 'Package Type 20', - {21} 'Alarm', - {22} 'Flee', - {23} 'TressPass', - {24} 'Spectator', - {25} 'Package Type 25', - {26} 'Package Type 26', - {27} 'Package Type 27', - {28} 'Dialogue 2', - {29} 'Package Type 29', - {30} 'Package Type 30', - {31} 'Package Type 31', - {32} 'Package Type 32', - {33} 'Package Type 33', - {34} 'Package Type 34', - {35} 'Package Type 35', - {36} 'Package Type 36', - {37} 'Package Type 37', - {38} 'Package Type 38', - {39} 'Package Type 39', - {40} 'Package Type 40' - ]); - - wbObjectTypeEnum := wbEnum([ - ' NONE', - 'Activators', - 'Armor', - 'Books', - 'Clothing', - 'Containers', - 'Doors', - 'Ingredients', - 'Lights', - 'Misc', - 'Flora', - 'Furniture', - 'Weapons: Any', - 'Ammo', - 'NPCs', - 'Creatures', - 'Keys', - 'Alchemy', - 'Food', - ' All: Combat Wearable', - ' All: Wearable', - 'Weapons: Ranged', - 'Weapons: Melee', - 'Weapons: NONE', - 'Actor Effects: Any', - 'Actor Effects: Range Target', - 'Actor Effects: Range Touch', - 'Actor Effects: Range Self', -// '', - 'Actors: Any' - ]); - - - wbPKDTSpecificFlagsUnused := True; - - wbRecord(PACK, 'Package', [ - wbEDIDReq, - wbStruct(PKDT, 'General', [ - wbInteger('General Flags', itU32, wbPKDTFlags), - wbInteger('Type', itU8, wbPKDTType), - wbByteArray('Unused', 1), - wbInteger('Fallout Behavior Flags', itU16, wbFlags([ - {0x00000001}'Hellos To Player', - {0x00000002}'Random Conversations', - {0x00000004}'Observe Combat Behavior', - {0x00000008}'Unknown 4', - {0x00000010}'Reaction To Player Actions', - {0x00000020}'Friendly Fire Comments', - {0x00000040}'Aggro Radius Behavior', - {0x00000080}'Allow Idle Chatter', - {0x00000100}'Avoid Radiation' - ], True)), - wbUnion('Type Specific Flags', wbPKDTSpecificFlagsDecider, [ - wbEmpty('Type Specific Flags (missing)', cpIgnore, False, nil, True), - wbInteger('Type Specific Flags - Find', itU16, wbFlags([ - {0x00000001}'', - {0x00000002}'', - {0x00000004}'', - {0x00000008}'', - {0x00000010}'', - {0x00000020}'', - {0x00000040}'', - {0x00000080}'', - {0x00000100}'Find - Allow Buying', - {0x00000200}'Find - Allow Killing', - {0x00000400}'Find - Allow Stealing' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Follow', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Escort', itU16, wbFlags([ - {0x00000001}'', - {0x00000002}'', - {0x00000004}'', - {0x00000008}'', - {0x00000010}'', - {0x00000020}'', - {0x00000040}'', - {0x00000080}'', - {0x00000100}'Escort - Allow Buying', - {0x00000200}'Escort - Allow Killing', - {0x00000400}'Escort - Allow Stealing' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Eat', itU16, wbFlags([ - {0x00000001}'', - {0x00000002}'', - {0x00000004}'', - {0x00000008}'', - {0x00000010}'', - {0x00000020}'', - {0x00000040}'', - {0x00000080}'', - {0x00000100}'Eat - Allow Buying', - {0x00000200}'Eat - Allow Killing', - {0x00000400}'Eat - Allow Stealing' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Sleep', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Wander', itU16, wbFlags([ - {0x00000001}'Wander - No Eating', - {0x00000002}'Wander - No Sleeping', - {0x00000004}'Wander - No Conversation', - {0x00000008}'Wander - No Idle Markers', - {0x00000010}'Wander - No Furniture', - {0x00000020}'Wander - No Wandering' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Travel', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Accompany', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Use Item At', itU16, wbFlags([ - {0x00000001}'', - {0x00000002}'Use Item At - Sit Down', - {0x00000004}'', - {0x00000008}'', - {0x00000010}'', - {0x00000020}'', - {0x00000040}'', - {0x00000080}'', - {0x00000100}'Use Item At - Allow Buying', - {0x00000200}'Use Item At - Allow Killing', - {0x00000400}'Use Item At - Allow Stealing' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Ambush', itU16, wbFlags([ - {0x00000001}'Ambush - Hide While Ambushing' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Flee Not Combat', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - ?', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Sandbox', itU16, wbFlags([ - {0x00000001}'Sandbox - No Eating', - {0x00000002}'Sandbox - No Sleeping', - {0x00000004}'Sandbox - No Conversation', - {0x00000008}'Sandbox - No Idle Markers', - {0x00000010}'Sandbox - No Furniture', - {0x00000020}'Sandbox - No Wandering' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Patrol', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Guard', itU16, wbFlags([ - {0x00000001}'', - {0x00000002}'', - {0x00000004}'Guard - Remain Near Reference to Guard' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Dialogue', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Use Weapon', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)) - ]), - wbByteArray('Unused', 2) - ], cpNormal, True, nil, 2), - wbRStruct('Locations', [ - wbStruct(PLDT, 'Location 1', [ - wbInteger('Type', itS32, wbEnum([ // Byte + filler - {0} 'Near reference', - {1} 'In cell', - {2} 'Near current location', - {3} 'Near editor location', - {4} 'Object ID', - {5} 'Object Type', - {6} 'Near linked reference', - {7} 'At package location' - ])), - wbUnion('Location', wbPxDTLocationDecider, [ - wbFormIDCkNoReach('Reference', [REFR, PGRE, PMIS, PBEA, ACHR, ACRE, PLYR], True), - wbFormIDCkNoReach('Cell', [CELL]), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbFormIDCkNoReach('Object ID', [ACTI, DOOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, CHIP, CMNY, CCRD, IMOD]), - wbInteger('Object Type', itU32, wbObjectTypeEnum), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore) - ]), - wbInteger('Radius', itS32) - ], cpNormal, True), - wbStruct(PLD2, 'Location 2', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Near reference', - {1} 'In cell', - {2} 'Near current location', - {3} 'Near editor location', - {4} 'Object ID', - {5} 'Object Type', - {6} 'Near linked reference', - {7} 'At package location' - ])), - wbUnion('Location', wbPxDTLocationDecider, [ - wbFormIDCkNoReach('Reference', [REFR, PGRE, PMIS, PBEA, ACHR, ACRE, PLYR], True), - wbFormIDCkNoReach('Cell', [CELL]), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbFormIDCkNoReach('Object ID', [ACTI, DOOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, CHIP, CMNY, CCRD, IMOD]), - wbInteger('Object Type', itU32, wbObjectTypeEnum), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore) - ]), - wbInteger('Radius', itS32) - ]) - ], [], cpNormal, False, nil, True), - wbStruct(PSDT, 'Schedule', [ - wbInteger('Month', itS8), - wbInteger('Day of week', itS8, wbEnum([ - 'Sunday', - 'Monday', - 'Tuesday', - 'Wednesday', - 'Thursday', - 'Friday', - 'Saturday', - 'Weekdays', - 'Weekends', - 'Monday, Wednesday, Friday', - 'Tuesday, Thursday' - ], [ - -1, 'Any' - ])), - wbInteger('Date', itU8), - wbInteger('Time', itS8), - wbInteger('Duration', itS32) - ], cpNormal, True), - wbStruct(PTDT, 'Target 1', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Specific Reference', - {1} 'Object ID', - {2} 'Object Type', - {3} 'Linked Reference' - ]), cpNormal, False, nil, nil, 2), - wbUnion('Target', wbPxDTLocationDecider, [ - wbFormIDCkNoReach('Reference', [ACHR, ACRE, REFR, PGRE, PMIS, PBEA, PLYR], True), - wbFormIDCkNoReach('Object ID', [ACTI, DOOR, STAT, FURN, CREA, SPEL, NPC_, LVLN, LVLC, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, FACT, FLST, IDLM, CHIP, CMNY, CCRD, IMOD]), - wbInteger('Object Type', itU32, wbObjectTypeEnum), - wbByteArray('Unused', 4, cpIgnore) - ]), - wbInteger('Count / Distance', itS32), - wbFloat('Unknown') - ], cpNormal, False, nil, 3), - wbCTDAs, - wbRStruct('Idle Animations', [ - wbInteger(IDLF, 'Flags', itU8, wbFlags([ - 'Run in Sequence', - '', - 'Do Once' - ]), cpNormal, True), - wbStruct(IDLC, '', [ - wbInteger( 'Animation Count', itU8), - wbByteArray('Unused', 3) - ], cpNormal, True, nil, 1), - wbFloat(IDLT, 'Idle Timer Setting', cpNormal, True), - wbArray(IDLA, 'Animations', wbFormIDCk('Animation', [IDLE]), 0, nil, wbIDLAsAfterSet, cpNormal, True), - wbByteArray(IDLB, 'Unused', 4, cpIgnore) - ], [], cpNormal, False, nil, False, nil {cannot be totally removed , wbAnimationsAfterSet}), - wbFormIDCk(CNAM, 'Combat Style', [CSTY]), - wbEmpty(PKED, 'Eat Marker'), - wbInteger(PKE2, 'Escort Distance', itU32), - wbFloat(PKFD, 'Follow - Start Location - Trigger Radius'), - wbStruct(PKPT, 'Patrol Flags', [ - wbInteger('Repeatable', itU8, wbEnum(['No', 'Yes']), cpNormal, False, nil, nil, 1), - wbByteArray('Unused', 1) - ], cpNormal, False, nil, 1), - wbStruct(PKW3, 'Use Weapon Data', [ - wbInteger('Flags', itU32, wbFlags([ - 'Always Hit', - '', - '', - '', - '', - '', - '', - '', - 'Do No Damage', - '', - '', - '', - '', - '', - '', - '', - 'Crouch To Reload', - '', - '', - '', - '', - '', - '', - '', - 'Hold Fire When Blocked' - ])), - wbInteger('Fire Rate', itU8, wbEnum([ - 'Auto Fire', - 'Volley Fire' - ])), - wbInteger('Fire Count', itU8, wbEnum([ - 'Number of Bursts', - 'Repeat Fire' - ])), - wbInteger('Number of Bursts', itU16), - wbStruct('Shoots Per Volleys', [ - wbInteger('Min', itU16), - wbInteger('Max', itU16) - ]), - wbStruct('Pause Between Volleys', [ - wbFloat('Min'), - wbFloat('Max') - ]), - wbByteArray('Unused', 4) - ]), - wbStruct(PTD2, 'Target 2', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Specific reference', - {1} 'Object ID', - {2} 'Object Type', - {3} 'Linked Reference' - ])), - wbUnion('Target', wbPxDTLocationDecider, [ - wbFormIDCkNoReach('Reference', [ACHR, ACRE, REFR, PGRE, PMIS, PBEA, PLYR], True), - wbFormIDCkNoReach('Object ID', [ACTI, DOOR, STAT, FURN, CREA, SPEL, NPC_, LVLN, LVLC, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, FACT, FLST, CHIP, CMNY, CCRD, IMOD]), - wbInteger('Object Type', itU32, wbObjectTypeEnum), - wbByteArray('Unused', 4, cpIgnore) - ]), - wbInteger('Count / Distance', itS32), - wbFloat('Unknown') - ], cpNormal, False, nil, 3), - wbEmpty(PUID, 'Use Item Marker'), - wbEmpty(PKAM, 'Ambush Marker'), - wbStruct(PKDD, 'Dialogue Data', [ - wbFloat('FOV'), - wbFormIDCk('Topic', [DIAL, NULL]), - wbInteger('Flags', itU32, wbFlags([ - 'No Headtracking', - '', - '', - '', - '', - '', - '', - '', - 'Don''t Control Target Movement' - ])), - wbByteArray('Unused', 4), - wbInteger('Dialogue Type', itU32, wbEnum([ - 'Conversation', - 'Say To' - ])), - wbByteArray('Unknown', 4) - ], cpNormal, False, nil, 3), - wbStruct(PLD2, 'Location 2 (again??)', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Near reference', - {1} 'In cell', - {2} 'Near current location', - {3} 'Near editor location', - {4} 'Object ID', - {5} 'Object Type', - {6} 'Near linked reference', - {7} 'At package location' - ])), - wbUnion('Location', wbPxDTLocationDecider, [ - wbFormIDCkNoReach('Reference', [REFR, PGRE, PMIS, PBEA, ACHR, ACRE, PLYR], True), - wbFormIDCkNoReach('Cell', [CELL]), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbFormIDCkNoReach('Object ID', [ACTI, DOOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, CHIP, CMNY, CCRD, IMOD]), - wbInteger('Object Type', itU32, wbObjectTypeEnum), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore) - ]), - wbInteger('Radius', itS32) - ]), - wbRStruct('OnBegin', [ - wbEmpty(POBA, 'OnBegin Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], [], cpNormal, True), - wbRStruct('OnEnd', [ - wbEmpty(POEA, 'OnEnd Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], [], cpNormal, True), - wbRStruct('OnChange', [ - wbEmpty(POCA, 'OnChange Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], [], cpNormal, True) - ], False, nil, cpNormal, False, wbPACKAfterLoad); - - wbRecord(QUST, 'Quest', [ - wbEDIDReq, - wbSCRI, - wbFULL, - wbICON, - wbStruct(DATA, 'General', [ - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Start game enabled', - {0x02} '', - {0x04} 'Allow repeated conversation topics', - {0x08} 'Allow repeated stages', - {0x10} 'Unknown 4' - ])), - wbInteger('Priority', itU8), - wbByteArray('Unused', 2), - wbFloat('Quest Delay') - ], cpNormal, True, nil, 3), - wbCTDAs, - wbRArrayS('Stages', wbRStructSK([0], 'Stage', [ - wbInteger(INDX, 'Stage Index', itS16), - wbRArray('Log Entries', wbRStruct('Log Entry', [ - wbInteger(QSDT, 'Stage Flags', itU8, wbFlags([ - {0x01} 'Complete Quest', - {0x02} 'Fail Quest' - ])), - wbCTDAs, - wbString(CNAM, 'Log Entry', 0, cpTranslate), - wbEmbeddedScriptReq, - wbFormIDCk(NAM0, 'Next Quest', [QUST]) - ], [])) - ], [])), - wbRArray('Objectives', wbRStruct('Objective', [ - wbInteger(QOBJ, 'Objective Index', itS32), - wbString(NNAM, 'Description', 0, cpNormal, True), - wbRArray('Targets', wbRStruct('Target', [ - wbStruct(QSTA, 'Target', [ - wbFormIDCkNoReach('Target', [REFR, PGRE, PMIS, PBEA, ACRE, ACHR], True), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Compass Marker Ignores Locks' - ])), - wbByteArray('Unused', 3) - ]), - wbCTDAs - ], [])) - ], [])) - ]); - - wbHeadPartIndexEnum := wbEnum([ - 'Head', - 'Ears', - 'Mouth', - 'Teeth Lower', - 'Teeth Upper', - 'Tongue', - 'Left Eye', - 'Right Eye' - ]); - - wbBodyPartIndexEnum := wbEnum([ - 'Upper Body', - 'Left Hand', - 'Right Hand', - 'Upper Body Texture' - ]); - - wbRecord(RACE, 'Race', [ - wbEDIDReq, - wbFULLReq, - wbDESCReq, - wbXNAMs, - wbStruct(DATA, '', [ - wbArrayS('Skill Boosts', wbStructSK([0], 'Skill Boost', [ - wbInteger('Skill', itS8, wbActorValueEnum), - wbInteger('Boost', itS8) - ]), 7), - wbByteArray('Unused', 2), - wbFloat('Male Height'), - wbFloat('Female Height'), - wbFloat('Male Weight'), - wbFloat('Female Weight'), - wbInteger('Flags', itU32, wbFlags([ - 'Playable', - '', - 'Child' - ])) - ], cpNormal, True), - wbFormIDCk(ONAM, 'Older', [RACE]), - wbFormIDCk(YNAM, 'Younger', [RACE]), - wbEmpty(NAM2, 'Unknown Marker', cpNormal, True), - wbArray(VTCK, 'Voices', wbFormIDCk('Voice', [VTYP]), ['Male', 'Female'], cpNormal, True), - wbArray(DNAM, 'Default Hair Styles', wbFormIDCk('Default Hair Style', [HAIR, NULL]), ['Male', 'Female'], cpNormal, True), - wbArray(CNAM, 'Default Hair Colors', wbInteger('Default Hair Color', itU8, wbEnum([ - 'Bleached', - 'Brown', - 'Chocolate', - 'Platinum', - 'Cornsilk', - 'Suede', - 'Pecan', - 'Auburn', - 'Ginger', - 'Honey', - 'Gold', - 'Rosewood', - 'Black', - 'Chestnut', - 'Steel', - 'Champagne' - ])), ['Male', 'Female'], cpNormal, True), - wbFloat(PNAM, 'FaceGen - Main clamp', cpNormal, True), - wbFloat(UNAM, 'FaceGen - Face clamp', cpNormal, True), - wbByteArray(ATTR, 'Unused', 0, cpNormal, True), - wbRStruct('Head Data', [ - wbEmpty(NAM0, 'Head Data Marker', cpNormal, True), - wbRStruct('Male Head Data', [ - wbEmpty(MNAM, 'Male Data Marker', cpNormal, True), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbHeadPartIndexEnum), - wbMODLReq, - wbICON - ], [], cpNormal, False, nil, False, nil, wbHeadPartsAfterSet), cpNormal, True) - ], [], cpNormal, True), - wbRStruct('Female Head Data', [ - wbEmpty(FNAM, 'Female Data Marker', cpNormal, True), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbHeadPartIndexEnum), - wbMODLReq, - wbICON - ], [], cpNormal, False, nil, False, nil, wbHeadPartsAfterSet), cpNormal, True) - ], [], cpNormal, True) - ], [], cpNormal, True), - wbRStruct('Body Data', [ - wbEmpty(NAM1, 'Body Data Marker', cpNormal, True), - wbRStruct('Male Body Data', [ - wbEmpty(MNAM, 'Male Data Marker'), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbBodyPartIndexEnum), - wbICON, - wbMODLReq - ], []), cpNormal, True) - ], [], cpNormal, True), - wbRStruct('Female Body Data', [ - wbEmpty(FNAM, 'Female Data Marker', cpNormal, True), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbBodyPartIndexEnum), - wbICON, - wbMODLReq - ], []), cpNormal, True) - ], [], cpNormal, True) - ], [], cpNormal, True), - wbArrayS(HNAM, 'Hairs', wbFormIDCk('Hair', [HAIR]), 0, cpNormal, True), - wbArrayS(ENAM, 'Eyes', wbFormIDCk('Eye', [EYES]), 0, cpNormal, True), - wbRStruct('FaceGen Data', [ - wbRStruct('Male FaceGen Data', [ - wbEmpty(MNAM, 'Male Data Marker', cpNormal, True), - wbFaceGen, - wbInteger(SNAM, 'Unknown', itU16, nil, cpNormal, True) - ], [], cpNormal, True), - wbRStruct('Female FaceGen Data', [ - wbEmpty(FNAM, 'Female Data Marker', cpNormal, True), - wbFaceGen, - wbInteger(SNAM, 'Unknown', itU16, nil, cpNormal, True) // will effectivly overwrite the SNAM from the male :) - ], [], cpNormal, True) - ], [], cpNormal, True) - ]); - - wbRecord(REFR, 'Placed Object', [ - wbEDID, - { - wbStruct(RCLR, 'Linked Reference Color (Old Format?)', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ], cpIgnore),} - wbByteArray(RCLR, 'Unused', 0, cpIgnore), - wbFormIDCk(NAME, 'Base', [TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, LVLN, LVLC, - MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, CHIP, - MSTT, NOTE, PWAT, SCOL, TACT, TERM, TXST, CCRD, IMOD, CMNY], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - {--- ?? ---} - wbXRGD, - wbXRGB, - - {--- Primitive ---} - wbStruct(XPRM, 'Primitive', [ - wbStruct('Bounds', [ - wbFloat('X', cpNormal, True, 2, 4), - wbFloat('Y', cpNormal, True, 2, 4), - wbFloat('Z', cpNormal, True, 2, 4) - ]), - wbStruct('Color', [ - {84} wbFloat('Red', cpNormal, False, 255, 0), - {88} wbFloat('Green', cpNormal, False, 255, 0), - {92} wbFloat('Blue', cpNormal, False, 255, 0) - ]), - wbFloat('Unknown'), - wbInteger('Type', itU32, wbEnum([ - 'None', - 'Box', - 'Sphere', - 'Portal Box' - ])) - ]), - wbInteger(XTRI, 'Collision Layer', itU32, wbEnum([ - 'Unidentified', - 'Static', - 'AnimStatic', - 'Transparent', - 'Clutter', - 'Weapon', - 'Projectile', - 'Spell', - 'Biped', - 'Trees', - 'Props', - 'Water', - 'Trigger', - 'Terrain', - 'Trap', - 'Non Collidable', - 'Cloud Trap', - 'Ground', - 'Portal', - 'Debris Small', - 'Debris Large', - 'Acustic Space', - 'Actor Zone', - 'Projectile Zone', - 'Gas Trap', - 'Shell Casing', - 'Transparent Small', - 'Invisible Wall', - 'Transparent Small Anim', - 'Dead Bip', - 'Char Controller', - 'Avoid Box', - 'Collision Box', - 'Camera Sphere', - 'Door Detection', - 'Camera Pick', - 'Item Pick', - 'Line Of Sight', - 'Path Pick', - 'Custom Pick 1', - 'Custom Pick 2', - 'Spell Explosion', - 'Dropping Pick' - ])), - wbEmpty(XMBP, 'MultiBound Primitive Marker'), - - {--- Bound Contents ---} - - {--- Bound Data ---} - wbStruct(XMBO, 'Bound Half Extents', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - - {--- Teleport ---} - wbStruct(XTEL, 'Teleport Destination', [ - wbFormIDCk('Door', [REFR], True), - wbPosRot, - wbInteger('Flags', itU32, wbFlags([ - 'No Alarm' - ])) - ]), - - {--- Map Data ---} - wbRStruct('Map Marker', [ - wbEmpty(XMRK, 'Map Marker Data'), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - {0x01} 'Visible', - {0x02} 'Can Travel To', - {0x04} '"Show All" Hidden' - ]), cpNormal, True), - wbFULLReq, - wbStruct(TNAM, '', [ - wbInteger('Type', itU8, wbEnum([ - 'None', - 'City', - 'Settlement', - 'Encampment', - 'Natural Landmark', - 'Cave', - 'Factory', - 'Monument', - 'Military', - 'Office', - 'Town Ruins', - 'Urban Ruins', - 'Sewer Ruins', - 'Metro', - 'Vault' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbFormIDCk(WMI1, 'Reputation', [REPU]) - ], []), - - {--- Audio Data ---} - wbRStruct('Audio Data', [ - wbEmpty(MMRK, 'Audio Marker'), - wbUnknown(FULL), - wbFormIDCk(CNAM, 'Audio Location', [ALOC]), - wbInteger(BNAM, 'Flags', itU32, wbFlags(['Use Controller Values'])), - wbFloat(MNAM, 'Layer 2 Trigger %', cpNormal, True, 100), - wbFloat(NNAM, 'Layer 3 Trigger %', cpNormal, True, 100) - ], []), - - wbInteger(XSRF, 'Special Rendering Flags', itU32, wbFlags([ - 'Unknown 0', - 'Imposter', - 'Use Full Shader in LOD' - ])), - wbByteArray(XSRD, 'Special Rendering Data', 4), - - {--- X Target Data ---} - wbFormIDCk(XTRG, 'Target', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA], True), - - {--- Leveled Actor ----} - wbXLCM, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], []), - - {--- Radio ---} - wbStruct(XRDO, 'Radio Data', [ - wbFloat('Range Radius'), - wbInteger('Broadcast Range Type', itU32, wbEnum([ - 'Radius', - 'Everywhere', - 'Worldspace and Linked Interiors', - 'Linked Interiors', - 'Current Cell Only' - ])), - wbFloat('Static Percentage'), - wbFormIDCkNoReach('Position Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, NULL]) - ]), - - {--- Ownership ---} - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32) - ], [XCMT, XCMO]), - - {--- Lock ---} - wbStruct(XLOC, 'Lock Data', [ - wbInteger('Level', itU8), - wbByteArray('Unused', 3), - wbFormIDCkNoReach('Key', [KEYM, NULL]), - wbInteger('Flags', itU8, wbFlags(['', '', 'Leveled Lock'])), - wbByteArray('Unused', 3), - wbByteArray('Unknown', 8) - ], cpNormal, False, nil, 5), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - wbFloat(XRAD, 'Radiation'), - wbFloat(XCHG, 'Charge'), - wbRStruct('Ammo', [ - wbFormIDCk(XAMT, 'Type', [AMMO], False, cpNormal, True), - wbInteger(XAMC, 'Count', itS32, nil, cpNormal, True) - ], []), - - {--- Reflected By / Refracted By ---} - wbRArrayS('Reflected/Refracted By', - wbStructSK(XPWR, [0], 'Water', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Type', itU32, wbFlags([ - 'Reflection', - 'Refraction' - ])) - ]) - ), - - {--- Lit Water ---} - wbRArrayS('Lit Water', - wbFormIDCk(XLTW, 'Water', [REFR]) - ), - - {--- Decals ---} - wbRArrayS('Linked Decals', - wbStructSK(XDCR, [0], 'Decal', [ - wbFormIDCk('Reference', [REFR]), - wbUnknown - ]) - ), - - {--- Linked Ref ---} - wbFormIDCk(XLKR, 'Linked Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbStruct(XCLP, 'Linked Reference Color', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbFloat('Delay') - ]) - ) - ], []), - - wbString(XATO, 'Activation Prompt'), - - {--- Enable Parent ---} - wbXESP, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Flags ---} - wbInteger(XACT, 'Action Flag', itU32, wbFlags([ - 'Use Default', - 'Activate', - 'Open', - 'Open by Default' - ])), - wbEmpty(ONAM, 'Open by Default'), - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- Generated Data ---} - wbStruct(XNDP, 'Navigation Door Link', [ - wbFormIDCk('Navigation Mesh', [NAVM]), - wbInteger('Teleport Marker Triangle', itS16, wbREFRNavmeshTriangleToStr, wbStringToInt), - wbByteArray('Unused', 2) - ]), - - wbArray(XPOD, 'Portal Data', wbFormIDCk('Room', [REFR, NULL]), 2), - wbStruct(XPTL, 'Portal Data', [ - wbStruct('Size', [ - wbFloat('Width', cpNormal, False, 2), - wbFloat('Height', cpNormal, False, 2) - ]), - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation (Quaternion?)', [ - wbFloat('q1'), - wbFloat('q2'), - wbFloat('q3'), - wbFloat('q4') - ]) - ]), - - wbInteger(XSED, 'SpeedTree Seed', itU8), - - wbRStruct('Room Data', [ - wbStruct(XRMR, 'Header', [ - wbInteger('Linked Rooms Count', itU16), - wbByteArray('Unknown', 2) - ]), - wbRArrayS('Linked Rooms', - wbFormIDCk(XLRM, 'Linked Room', [REFR]) - ) - ], []), - - wbStruct(XOCP, 'Occlusion Plane Data', [ - wbStruct('Size', [ - wbFloat('Width', cpNormal, False, 2), - wbFloat('Height', cpNormal, False, 2) - ]), - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation (Quaternion?)', [ - wbFloat('q1'), - wbFloat('q2'), - wbFloat('q3'), - wbFloat('q4') - ]) - ]), - wbArray(XORD, 'Linked Occlusion Planes', wbFormIDCk('Plane', [REFR, NULL]), [ - 'Right', - 'Left', - 'Bottom', - 'Top' - ]), - - wbXLOD, - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo, cpNormal, False, wbREFRAfterLoad); - - - wbRecord(REGN, 'Region', [ - wbEDID, - wbICON, - wbStruct(RCLR, 'Map Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbFormIDCkNoReach(WNAM, 'Worldspace', [WRLD]), - - wbRArray('Region Areas', wbRStruct('Region Area', [ - wbInteger(RPLI, 'Edge Fall-off', itU32), - wbArray(RPLD, 'Region Point List Data', wbStruct('Point', [ - wbFloat('X'), - wbFloat('Y') - ]), 0, wbRPLDAfterLoad) - ], [])), - - wbRArrayS('Region Data Entries', wbRStructSK([0], 'Region Data Entry', [ - {always starts with an RDAT} - wbStructSK(RDAT, [0], 'Data Header', [ - wbInteger('Type', itU32, wbEnum([ - {0}'', - {1}'', - {2}'Objects', - {3}'Weather', - {4}'Map', - {5}'Land', - {6}'Grass', - {7}'Sound', - {8}'Imposter', - {9}'' - ])), - wbInteger('Flags', itU8, wbFlags([ - 'Override' - ])), - wbInteger('Priority', itU8), - wbByteArray('Unused') - ], cpNormal, True), - - {followed by one of these: } - - {--- Objects ---} - wbArray(RDOT, 'Objects', wbStruct('Object', [ - wbFormIDCk('Object', [TREE, STAT, LTEX]), - wbInteger('Parent Index', itU16, wbHideFFFF), - wbByteArray('Unused', 2), - wbFloat('Density'), - wbInteger('Clustering', itU8), - wbInteger('Min Slope', itU8), - wbInteger('Max Slope', itU8), - wbInteger('Flags', itU8, wbFlags([ - {0}'Conform to slope', - {1}'Paint Vertices', - {2}'Size Variance +/-', - {3}'X +/-', - {4}'Y +/-', - {5}'Z +/-', - {6}'Tree', - {7}'Huge Rock' - ])), - wbInteger('Radius wrt Parent', itU16), - wbInteger('Radius', itU16), - wbFloat('Min Height'), - wbFloat('Max Height'), - wbFloat('Sink'), - wbFloat('Sink Variance'), - wbFloat('Size Variance'), - wbStruct('Angle Variance', [ - wbInteger('X', itU16), - wbInteger('Y', itU16), - wbInteger('Z', itU16) - ]), - wbByteArray('Unused', 2), - wbByteArray('Unknown', 4) - ]), 0, nil, nil, cpNormal, False, wbREGNObjectsDontShow), - - {--- Map ---} - wbString(RDMP, 'Map Name', 0, cpTranslate, False, wbREGNMapDontShow), - - {--- Grass ---} - wbArrayS(RDGS, 'Grasses', wbStructSK([0], 'Grass', [ - wbFormIDCk('Grass', [GRAS]), - wbByteArray('Unknown',4) - ]), 0, cpNormal, False, nil, nil, wbREGNGrassDontShow), - - {--- Sound ---} - wbInteger(RDMD, 'Music Type', itU32, wbMusicEnum, cpIgnore, False, False, wbNeverShow), - wbFormIDCk(RDMO, 'Music', [MUSC], False, cpNormal, False, wbREGNSoundDontShow), - wbFormIDCk(RDSI, 'Incidental MediaSet', [MSET], False, cpNormal, False, wbREGNSoundDontShow), - wbRArray('Battle MediaSets', wbFormIDCk(RDSB, 'Battle MediaSet', [MSET]), cpNormal, False, nil, nil, wbREGNSoundDontShow), - wbArrayS(RDSD, 'Sounds', wbStructSK([0], 'Sound', [ - wbFormIDCk('Sound', [SOUN]), - wbInteger('Flags', itU32, wbFlags([ - 'Pleasant', - 'Cloudy', - 'Rainy', - 'Snowy' - ])), - wbInteger('Chance', itU32, wbScaledInt4ToStr, wbScaledInt4ToInt) - ]), 0, cpNormal, False, nil, nil, wbREGNSoundDontShow), - - {--- Weather ---} - wbArrayS(RDWT, 'Weather Types', wbStructSK([0], 'Weather Type', [ - wbFormIDCk('Weather', [WTHR]), - wbInteger('Chance', itU32), - wbFormIDCk('Global', [GLOB, NULL]) - ]), 0, cpNormal, False, nil, nil, wbREGNWeatherDontShow), - - {--- Imposter ---} - wbArrayS(RDID, 'Imposters', wbFormIDCk('Imposter', [REFR]), 0, cpNormal, False, nil, nil, wbREGNImposterDontShow) - ], [])) - ], True); - - wbRecord(SOUN, 'Sound', [ - wbEDIDReq, - wbOBNDReq, - wbString(FNAM, 'Sound Filename'), - wbInteger(RNAM, 'Random Chance %', itU8), - wbRUnion('Sound Data', [ - wbStruct(SNDD, 'Sound Data', [ - wbInteger('Minimum Attentuation Distance', itU8, wbMul(5)), - wbInteger('Maximum Attentuation Distance', itU8, wbMul(100)), - wbInteger('Frequency Adjustment %', itS8), - wbByteArray('Unused', 1), - wbInteger('Flags', itU32, wbFlags([ - {0x0001} 'Random Frequency Shift', - {0x0002} 'Play At Random', - {0x0004} 'Environment Ignored', - {0x0008} 'Random Location', - {0x0010} 'Loop', - {0x0020} 'Menu Sound', - {0x0040} '2D', - {0x0080} '360 LFE', - {0x0100} 'Dialogue Sound', - {0x0200} 'Envelope Fast', - {0x0400} 'Envelope Slow', - {0x0800} '2D Radius', - {0x1000} 'Mute When Submerged', - {0x2000} 'Start at Random Position' - ])), - wbInteger('Static attentuation cdB', itS16), - wbInteger('Stop time ', itU8), - wbInteger('Start time ', itU8), - wbArray('Attenuation Curve', wbInteger('Point', itS16), 5), - wbInteger('Reverb Attenuation Control', itS16), - wbInteger('Priority', itS32), -// wbByteArray('Unknown', 8) - wbInteger('x', itS32), - wbInteger('y', itS32) - - ], cpNormal, True), - wbStruct(SNDX, 'Sound Data', [ - wbInteger('Minimum attentuation distance', itU8, wbMul(5)), - wbInteger('Maximum attentuation distance', itU8, wbMul(100)), - wbInteger('Frequency adjustment %', itS8), - wbByteArray('Unused', 1), - wbInteger('Flags', itU32, wbFlags([ - {0x0001} 'Random Frequency Shift', - {0x0002} 'Play At Random', - {0x0004} 'Environment Ignored', - {0x0008} 'Random Location', - {0x0010} 'Loop', - {0x0020} 'Menu Sound', - {0x0040} '2D', - {0x0080} '360 LFE', - {0x0100} 'Dialogue Sound', - {0x0200} 'Envelope Fast', - {0x0400} 'Envelope Slow', - {0x0800} '2D Radius', - {0x1000} 'Mute When Submerged' - ])), - wbInteger('Static attentuation cdB', itS16), - wbInteger('Stop time ', itU8), - wbInteger('Start time ', itU8) - ], cpNormal, True) - ], [], cpNormal, True), - wbArray(ANAM, 'Attenuation Curve', wbInteger('Point', itS16), 5, nil, nil, cpNormal, False, wbNeverShow), - wbInteger(GNAM, 'Reverb Attenuation Control', itS16, nil, cpNormal, False, False, wbNeverShow), - wbInteger(HNAM, 'Priority', itS32, nil, cpNormal, False, False, wbNeverShow) - ], False, nil, cpNormal, False, wbSOUNAfterLoad); - - wbRecord(SPEL, 'Actor Effect', [ - wbEDIDReq, - wbFULL, - wbStruct(SPIT, '', [ - wbInteger('Type', itU32, wbEnum([ - {0} 'Actor Effect', - {1} 'Disease', - {2} 'Power', - {3} 'Lesser Power', - {4} 'Ability', - {5} 'Poison', - {6} '', - {7} '', - {8} '', - {9} '', - {10} 'Addiction' - ])), - wbInteger('Cost (Unused)', itU32), - wbInteger('Level (Unused)', itU32, wbEnum([ - {0} 'Unused' - ])), - wbInteger('Flags', itU8, wbFlags([ - {0x00000001} 'No Auto-Calc', - {0x00000002} 'Immune to Silence 1?', - {0x00000004} 'PC Start Effect', - {0x00000008} 'Immune to Silence 2?', - {0x00000010} 'Area Effect Ignores LOS', - {0x00000020} 'Script Effect Always Applies', - {0x00000040} 'Disable Absorb/Reflect', - {0x00000080} 'Force Touch Explode' - ])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffectsReq - ]); - - wbRecord(STAT, 'Static', [ - wbEDIDReq, - wbOBNDReq, - wbMODL, - wbInteger(BRUS, 'Passthrough Sound', itS8, wbEnum([ - 'BushA', - 'BushB', - 'BushC', - 'BushD', - 'BushE', - 'BushF', - 'BushG', - 'BushH', - 'BushI', - 'BushJ' - ], [ - -1, 'NONE' - ])), - wbFormIDCk(RNAM, 'Sound - Looping/Random', [SOUN]) - ]); - - wbRecord(TES4, 'Main File Header', [ - wbStruct(HEDR, 'Header', [ - wbFloat('Version'), - wbInteger('Number of Records', itU32), - wbInteger('Next Object ID', itU32) - ], cpNormal, True), - wbByteArray(OFST, 'Unknown', 0, cpIgnore), - wbByteArray(DELE, 'Unknown', 0, cpIgnore), - wbString(CNAM, 'Author', 0, cpTranslate, True), - wbString(SNAM, 'Description', 0, cpTranslate), - wbRArray('Master Files', wbRStruct('Master File', [ - wbString(MAST, 'Filename', 0, cpNormal, True), - wbByteArray(DATA, 'Unused', 8, cpIgnore, True) - ], [ONAM])), - wbArray(ONAM, 'Overriden Forms', wbFormIDCk('Form', [REFR, ACHR, ACRE, PMIS, PBEA, PGRE, LAND, NAVM]), 0, nil, nil, cpNormal, False, wbTES4ONAMDontShow), - wbByteArray(SCRN, 'Screenshot') - ], True, nil, cpNormal, True, wbRemoveOFST); - - wbRecord(TREE, 'Tree', [ - wbEDIDReq, - wbOBNDReq, - wbMODLReq, - wbICONReq, - wbArrayS(SNAM, 'SpeedTree Seeds', wbInteger('SpeedTree Seed', itU32), 0, cpNormal, True), - wbStruct(CNAM, 'Tree Data', [ - wbFloat('Leaf Curvature'), - wbFloat('Minimum Leaf Angle'), - wbFloat('Maximum Leaf Angle'), - wbFloat('Branch Dimming Value'), - wbFloat('Leaf Dimming Value'), - wbInteger('Shadow Radius', itS32), - wbFloat('Rock Speed'), - wbFloat('Rustle Speed') - ], cpNormal, True), - wbStruct(BNAM, 'Billboard Dimensions', [ - wbFloat('Width'), - wbFloat('Height') - ], cpNormal, True) - ]); -end; - -procedure DefineFNVf; -begin - wbRecord(WATR, 'Water', [ - wbEDIDReq, - wbFULL, - wbString(NNAM, 'Noise Map', 0, cpNormal, True), - wbInteger(ANAM, 'Opacity', itU8, nil, cpNormal, True), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - {0}'Causes Damage', - {1}'Reflective' - ]), cpNormal, True), - wbString(MNAM, 'Material ID', 0, cpNormal, True), - wbFormIDCk(SNAM, 'Sound', [SOUN]), - wbFormIDCk(XNAM, 'Actor Effect', [SPEL]), - wbInteger(DATA, 'Damage', itU16, nil, cpNormal, True, True), - wbRUnion('Visual Data', [ - wbStruct(DNAM, 'Visual Data', [ - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Water Properties - Sun Power'), - wbFloat('Water Properties - Reflectivity Amount'), - wbFloat('Water Properties - Fresnel Amount'), - wbByteArray('Unused', 4), - wbFloat('Fog Properties - Above Water - Fog Distance - Near Plane'), - wbFloat('Fog Properties - Above Water - Fog Distance - Far Plane'), - wbStruct('Shallow Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Deep Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Reflection Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbByteArray('Unused', 4), - wbFloat('Rain Simulator - Force'), - wbFloat('Rain Simulator - Velocity'), - wbFloat('Rain Simulator - Falloff'), - wbFloat('Rain Simulator - Dampner'), - wbFloat('Displacement Simulator - Starting Size'), - wbFloat('Displacement Simulator - Force'), - wbFloat('Displacement Simulator - Velocity'), - wbFloat('Displacement Simulator - Falloff'), - wbFloat('Displacement Simulator - Dampner'), - wbFloat('Rain Simulator - Starting Size'), - wbFloat('Noise Properties - Normals - Noise Scale'), - wbFloat('Noise Properties - Noise Layer One - Wind Direction'), - wbFloat('Noise Properties - Noise Layer Two - Wind Direction'), - wbFloat('Noise Properties - Noise Layer Three - Wind Direction'), - wbFloat('Noise Properties - Noise Layer One - Wind Speed'), - wbFloat('Noise Properties - Noise Layer Two - Wind Speed'), - wbFloat('Noise Properties - Noise Layer Three - Wind Speed'), - wbFloat('Noise Properties - Normals - Depth Falloff Start'), - wbFloat('Noise Properties - Normals - Depth Falloff End'), - wbFloat('Fog Properties - Above Water - Fog Amount'), - wbFloat('Noise Properties - Normals - UV Scale'), - wbFloat('Fog Properties - Under Water - Fog Amount'), - wbFloat('Fog Properties - Under Water - Fog Distance - Near Plane'), - wbFloat('Fog Properties - Under Water - Fog Distance - Far Plane'), - wbFloat('Water Properties - Distortion Amount'), - wbFloat('Water Properties - Shininess'), - wbFloat('Water Properties - Reflection HDR Multiplier'), - wbFloat('Water Properties - Light Radius'), - wbFloat('Water Properties - Light Brightness'), - wbFloat('Noise Properties - Noise Layer One - UV Scale'), - wbFloat('Noise Properties - Noise Layer Two - UV Scale'), - wbFloat('Noise Properties - Noise Layer Three - UV Scale'), - wbFloat('Noise Properties - Noise Layer One - Amplitude Scale'), - wbFloat('Noise Properties - Noise Layer Two - Amplitude Scale'), - wbFloat('Noise Properties - Noise Layer Three - Amplitude Scale') - ], cpNormal, True, nil, 46), - wbStruct(DATA, 'Visual Data', [ - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Water Properties - Sun Power'), - wbFloat('Water Properties - Reflectivity Amount'), - wbFloat('Water Properties - Fresnel Amount'), - wbByteArray('Unused', 4), - wbFloat('Fog Properties - Above Water - Fog Distance - Near Plane'), - wbFloat('Fog Properties - Above Water - Fog Distance - Far Plane'), - wbStruct('Shallow Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Deep Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Reflection Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbByteArray('Unused', 4), - wbFloat('Rain Simulator - Force'), - wbFloat('Rain Simulator - Velocity'), - wbFloat('Rain Simulator - Falloff'), - wbFloat('Rain Simulator - Dampner'), - wbFloat('Displacement Simulator - Starting Size'), - wbFloat('Displacement Simulator - Force'), - wbFloat('Displacement Simulator - Velocity'), - wbFloat('Displacement Simulator - Falloff'), - wbFloat('Displacement Simulator - Dampner'), - wbFloat('Rain Simulator - Starting Size'), - wbFloat('Noise Properties - Normals - Noise Scale'), - wbFloat('Noise Properties - Noise Layer One - Wind Direction'), - wbFloat('Noise Properties - Noise Layer Two - Wind Direction'), - wbFloat('Noise Properties - Noise Layer Three - Wind Direction'), - wbFloat('Noise Properties - Noise Layer One - Wind Speed'), - wbFloat('Noise Properties - Noise Layer Two - Wind Speed'), - wbFloat('Noise Properties - Noise Layer Three - Wind Speed'), - wbFloat('Noise Properties - Normals - Depth Falloff Start'), - wbFloat('Noise Properties - Normals - Depth Falloff End'), - wbFloat('Fog Properties - Above Water - Fog Amount'), - wbFloat('Noise Properties - Normals - UV Scale'), - wbFloat('Fog Properties - Under Water - Fog Amount'), - wbFloat('Fog Properties - Under Water - Fog Distance - Near Plane'), - wbFloat('Fog Properties - Under Water - Fog Distance - Far Plane'), - wbFloat('Water Properties - Distortion Amount'), - wbFloat('Water Properties - Shininess'), - wbFloat('Water Properties - Reflection HDR Multiplier'), - wbFloat('Water Properties - Light Radius'), - wbFloat('Water Properties - Light Brightness'), - wbFloat('Noise Properties - Noise Layer One - UV Scale'), - wbFloat('Noise Properties - Noise Layer Two - UV Scale'), - wbFloat('Noise Properties - Noise Layer Three - UV Scale'), - wbEmpty('Noise Properties - Noise Layer One - Amplitude Scale'), - wbEmpty('Noise Properties - Noise Layer Two - Amplitude Scale'), - wbEmpty('Noise Properties - Noise Layer Three - Amplitude Scale'), - wbInteger('Damage (Old Format)', itU16) - ], cpNormal, True) - ], [], cpNormal, True), - wbStruct(GNAM, 'Related Waters (Unused)', [ - wbFormIDCk('Daytime', [WATR, NULL]), - wbFormIDCk('Nighttime', [WATR, NULL]), - wbFormIDCk('Underwater', [WATR, NULL]) - ], cpNormal, True) - ], False, nil, cpNormal, False, wbWATRAfterLoad); - - wbRecord(WEAP, 'Weapon', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbEITM, - wbInteger(EAMT, 'Enchantment Charge Amount', itS16), - wbFormIDCkNoReach(NAM0, 'Ammo', [AMMO, FLST]), - wbDEST, - wbREPL, - wbETYPReq, - wbBIPL, - wbYNAM, - wbZNAM, - wbRStruct('Shell Casing Model', [ - wbString(MOD2, 'Model Filename'), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore), - wbMO2S - ], []), - wbRStruct('Scope Model', [ - wbString(MOD3, 'Model Filename'), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore), - wbMO3S - ], []), - wbFormIDCK(EFSD, 'Scope Effect', [EFSH]), - wbRStruct('World Model', [ - wbString(MOD4, 'Model Filename'), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore), - wbMO4S - ], []), - wbString(MWD1, 'Model - Mod 1'), - wbString(MWD2, 'Model - Mod 2'), - wbString(MWD3, 'Model - Mod 1 and 2'), - wbString(MWD4, 'Model - Mod 3'), - wbString(MWD5, 'Model - Mod 1 and 3'), - wbString(MWD6, 'Model - Mod 2 and 3'), - wbString(MWD7, 'Model - Mod 1, 2 and 3'), - {wbRStruct( 'Model with Mods', [ - wbString(MWD1, 'Mod 1'), - wbString(MWD2, 'Mod 2'), - wbString(MWD3, 'Mod 1 and 2'), - wbString(MWD4, 'Mod 3'), - wbString(MWD5, 'Mod 1 and 3'), - wbString(MWD6, 'Mod 2 and 3'), - wbString(MWD7, 'Mod 1, 2 and 3') - ], [], cpNormal, False, nil, True),} - - wbString(VANM, 'VATS Attack Name'), - wbString(NNAM, 'Embedded Weapon Node'), - - wbFormIDCk(INAM, 'Impact DataSet', [IPDS]), - wbFormIDCk(WNAM, '1st Person Model', [STAT]), - wbFormIDCk(WNM1, '1st Person Model - Mod 1', [STAT]), - wbFormIDCk(WNM2, '1st Person Model - Mod 2', [STAT]), - wbFormIDCk(WNM3, '1st Person Model - Mod 1 and 2', [STAT]), - wbFormIDCk(WNM4, '1st Person Model - Mod 3', [STAT]), - wbFormIDCk(WNM5, '1st Person Model - Mod 1 and 3', [STAT]), - wbFormIDCk(WNM6, '1st Person Model - Mod 2 and 3', [STAT]), - wbFormIDCk(WNM7, '1st Person Model - Mod 1, 2 and 3', [STAT]), - {wbRStruct('1st Person Models with Mods', [ - wbFormIDCk(WNM1, 'Mod 1', [STAT]), - wbFormIDCk(WNM2, 'Mod 2', [STAT]), - wbFormIDCk(WNM3, 'Mod 1 and 2', [STAT]), - wbFormIDCk(WNM4, 'Mod 3', [STAT]), - wbFormIDCk(WNM5, 'Mod 1 and 3', [STAT]), - wbFormIDCk(WNM6, 'Mod 2 and 3', [STAT]), - wbFormIDCk(WNM7, 'Mod 1, 2 and 3', [STAT]) - ], [], cpNormal, False, nil, True),} - wbFormIDCk(WMI1, 'Weapon Mod 1', [IMOD]), - wbFormIDCk(WMI2, 'Weapon Mod 2', [IMOD]), - wbFormIDCk(WMI3, 'Weapon Mod 3', [IMOD]), - {wbRStruct('Weapon Mods', [ - wbFormIDCk(WMI1, 'Mod 1', [IMOD]), - wbFormIDCk(WMI2, 'Mod 2', [IMOD]), - wbFormIDCk(WMI3, 'Mod 3', [IMOD]) - ], [], cpNormal, False, nil, True),} - wbRStruct('Sound - Gun', [ - wbFormIDCk(SNAM, 'Shoot 3D', [SOUN]), - wbFormIDCk(SNAM, 'Shoot Dist', [SOUN]) - ], []), - //wbFormIDCk(SNAM, 'Sound - Gun - Shoot 3D', [SOUN]), - //wbFormIDCk(SNAM, 'Sound - Gun - Shoot Dist', [SOUN]), - wbFormIDCk(XNAM, 'Sound - Gun - Shoot 2D', [SOUN]), - wbFormIDCk(NAM7, 'Sound - Gun - Shoot 3D Looping', [SOUN]), - wbFormIDCk(TNAM, 'Sound - Melee - Swing / Gun - No Ammo', [SOUN]), - wbFormIDCk(NAM6, 'Sound - Block', [SOUN]), - wbFormIDCk(UNAM, 'Sound - Idle', [SOUN]), - wbFormIDCk(NAM9, 'Sound - Equip', [SOUN]), - wbFormIDCk(NAM8, 'Sound - Unequip', [SOUN]), - wbRStruct('Sound - Mod 1', [ - wbFormIDCk(WMS1, 'Shoot 3D', [SOUN]), - wbFormIDCk(WMS1, 'Shoot Dist', [SOUN]) - ], []), - //wbFormIDCk(WMS1, 'Sound - Mod 1 - Shoot 3D', [SOUN]), - //wbFormIDCk(WMS1, 'Sound - Mod 1 - Shoot Dist', [SOUN]), - wbFormIDCk(WMS2, 'Sound - Mod 1 - Shoot 2D', [SOUN]), - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbInteger('Health', itS32), - wbFloat('Weight'), - wbInteger('Base Damage', itS16), - wbInteger('Clip Size', itU8) - ], cpNormal, True), - wbStruct(DNAM, '', [ - {00} wbInteger('Animation Type', itU32, wbWeaponAnimTypeEnum), - {04} wbFloat('Animation Multiplier'), - {08} wbFloat('Reach'), - {12} wbInteger('Flags 1', itU8, wbFlags([ - 'Ignores Normal Weapon Resistance', - 'Is Automatic', - 'Has Scope', - 'Can''t Drop', - 'Hide Backpack', - 'Embedded Weapon', - 'Don''t Use 1st Person IS Animations', - 'Non-Playable' - ])), - {13} wbInteger('Grip Animation', itU8, wbEnum([ - ], [ - 230, 'HandGrip1', - 231, 'HandGrip2', - 232, 'HandGrip3', - 233, 'HandGrip4', - 234, 'HandGrip5', - 235, 'HandGrip6', - 255, 'DEFAULT' - ])), - {14} wbInteger('Ammo Use', itU8), - {15} wbInteger('Reload Animation', itU8, wbReloadAnimEnum), - {16} wbFloat('Min Spread'), - {20} wbFloat('Spread'), - {24} wbFloat('Unknown'), - {28} wbFloat('Sight FOV'), - {32} wbFloat, - {36} wbFormIDCk('Projectile', [PROJ, NULL]), - {40} wbInteger('Base VATS To-Hit Chance', itU8), - {41} wbInteger('Attack Animation', itU8, wbEnum([ - ], [ - 26, 'AttackLeft', - 32, 'AttackRight', - 38, 'Attack3', - 44, 'Attack4', - 50, 'Attack5', - 56, 'Attack6', - 62, 'Attack7', - 68, 'Attack8', - 144, 'Attack9', - 74, 'AttackLoop', - 80, 'AttackSpin', - 86, 'AttackSpin2', - 114, 'AttackThrow', - 120, 'AttackThrow2', - 126, 'AttackThrow3', - 132, 'AttackThrow4', - 138, 'AttackThrow5', - 150, 'AttackThrow6', - 156, 'AttackThrow7', - 162, 'AttackThrow8', - 102, 'PlaceMine', - 108, 'PlaceMine2', - 255, 'DEFAULT' - ])), - {42} wbInteger('Projectile Count', itU8), - {43} wbInteger('Embedded Weapon - Actor Value', itU8, wbEnum([ - {00} 'Perception', - {01} 'Endurance', - {02} 'Left Attack', - {03} 'Right Attack', - {04} 'Left Mobility', - {05} 'Right Mobilty', - {06} 'Brain' - ])), - {44} wbFloat('Min Range'), - {48} wbFloat('Max Range'), - {52} wbInteger('On Hit', itU32, wbEnum([ - 'Normal formula behavior', - 'Dismember Only', - 'Explode Only', - 'No Dismember/Explode' - ])), - {56} wbInteger('Flags 2', itU32, wbFlags([ - {0x00000001}'Player Only', - {0x00000002}'NPCs Use Ammo', - {0x00000004}'No Jam After Reload', - {0x00000008}'Override - Action Points', - {0x00000010}'Minor Crime', - {0x00000020}'Range - Fixed', - {0x00000040}'Not Used In Normal Combat', - {0x00000080}'Override - Damage to Weapon Mult', - {0x00000100}'Don''t Use 3rd Person IS Animations', - {0x00000200}'Short Burst', - {0x00000400}'Rumble Alternate', - {0x00000800}'Long Burst', - {0x00001000}'Scope has NightVision', - {0x00002000}'Scope from Mod' - ])), - {60} wbFloat('Animation Attack Multiplier'), - {64} wbFloat('Fire Rate'), - {68} wbFloat('Override - Action Points'), - {72} wbFloat('Rumble - Left Motor Strength'), - {76} wbFloat('Rumble - Right Motor Strength'), - {80} wbFloat('Rumble - Duration'), - {84} wbFloat('Override - Damage to Weapon Mult'), - {88} wbFloat('Attack Shots/Sec'), - {92} wbFloat('Reload Time'), - {96} wbFloat('Jam Time'), - {100} wbFloat('Aim Arc'), - {104} wbInteger('Skill', itS32, wbActorValueEnum), - {108} wbInteger('Rumble - Pattern', itU32, wbEnum([ - 'Constant', - 'Square', - 'Triangle', - 'Sawtooth' - ])), - {112} wbFloat('Rumble - Wavelength'), - {116} wbFloat('Limb Dmg Mult'), - {120} wbInteger('Resist Type', itS32, wbActorValueEnum), - {124} wbFloat('Sight Usage'), - {128} wbFloat('Semi-Automatic Fire Delay Min'), - {132} wbFloat('Semi-Automatic Fire Delay Max'), - wbFloat, - wbInteger('Effect - Mod 1', itU32, wbModEffectEnum), - wbInteger('Effect - Mod 2', itU32, wbModEffectEnum), - wbInteger('Effect - Mod 3', itU32, wbModEffectEnum), - wbFloat('Value A - Mod 1'), - wbFloat('Value A - Mod 2'), - wbFloat('Value A - Mod 3'), - wbInteger('Power Attack Animation Override', itU32, wbEnum([ - ], [ - 0, '0?', - 97, 'AttackCustom1Power', - 98, 'AttackCustom2Power', - 99, 'AttackCustom3Power', - 100, 'AttackCustom4Power', - 101, 'AttackCustom5Power', - 255, 'DEFAULT' - ])), - wbInteger('Strength Req', itU32), - wbByteArray('Unknown', 1), - wbInteger('Reload Animation - Mod', itU8, wbReloadAnimEnum), - wbByteArray('Unknown', 2), - wbFloat('Regen Rate'), - wbFloat('Kill Impulse'), - wbFloat('Value B - Mod 1'), - wbFloat('Value B - Mod 2'), - wbFloat('Value B - Mod 3'), - wbFloat('Impulse Dist'), - wbInteger('Skill Req', itU32) - ], cpNormal, True, nil, 36), - - wbStruct(CRDT, 'Critical Data', [ - {00} wbInteger('Critical Damage', itU16), - {09} wbByteArray('Unused', 2), - {04} wbFloat('Crit % Mult'), - {08} wbInteger('Flags', itU8, wbFlags([ - 'On Death' - ])), - {09} wbByteArray('Unused', 3), - {12} wbFormIDCk('Effect', [SPEL, NULL]) - ], cpNormal, True), - wbStruct(VATS, 'VATS', [ - wbFormIDCk('Effect',[SPEL, NULL]), - wbFloat('Skill'), - wbFloat('Dam. Mult'), - wbFloat('AP'), - wbInteger('Silent', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Mod Required', itU8, wbEnum(['No', 'Yes'])), - wbByteArray('Unused', 2) - ]), - wbInteger(VNAM, 'Sound Level', itU32, wbSoundLevelEnum, cpNormal, True) - ], True, nil, cpNormal, False, wbWEAPAfterLoad); - - if wbSimpleRecords then - wbRecord(WRLD, 'Worldspace', [ - wbEDIDReq, - wbFULL, - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - wbRStruct('Parent', [ - wbFormIDCk(WNAM, 'Worldspace', [WRLD]), - wbInteger(PNAM, 'Flags', itU16, wbFlags([ - {0x00000001}'Use Land Data', - {0x00000002}'Use LOD Data', - {0x00000004}'Use Map Data', - {0x00000008}'Use Water Data', - {0x00000010}'Use Climate Data', - {0x00000020}'Use Image Space Data' - ], True), cpNormal, True) - ], []), - wbFormIDCk(CNAM, 'Climate', [CLMT]), - wbFormIDCk(NAM2, 'Water', [WATR]), - wbFormIDCk(NAM3, 'LOD Water Type', [WATR]), - wbFloat(NAM4, 'LOD Water Height'), - wbStruct(DNAM, 'Land Data', [ - wbFloat('Default Land Height'), - wbFloat('Default Water Height') - ]), - wbICON, - wbStruct(MNAM, 'Map Data', [ - wbStruct('Usable Dimensions', [ - wbInteger('X', itS32), - wbInteger('Y', itS32) - ]), - wbStruct('Cell Coordinates', [ - wbStruct('NW Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbStruct('SE Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]) - ]) - ]), - wbStruct(ONAM, 'World Map Offset Data', [ - wbFloat('World Map Scale'), - wbFloat('Cell X Offset'), - wbFloat('Cell Y Offset') - ], cpNormal, True), - wbFormIDCk(INAM, 'Image Space', [IMGS]), - wbInteger(DATA, 'Flags', itU8, wbFlags([ // LoadForm supports a DWord here, but only first byte would be used. - {0x01} 'Small World', - {0x02} 'Can''t Fast Travel', - {0x04} '', - {0x08} '', - {0x10} 'No LOD Water', - {0x20} 'No LOD Noise', - {0x40} 'Don''t Allow NPC Fall Damage', - {0x80} 'Needs Water Adjustment' - ]), cpNormal, True), - wbRStruct('Object Bounds', [ - wbStruct(NAM0, 'Min', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True), - wbStruct(NAM9, 'Max', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True) - ], []), - wbFormIDCk(ZNAM, 'Music', [MUSC]), - wbString(NNAM, 'Canopy Shadow', 0, cpNormal, True), - wbString(XNAM, 'Water Noise Texture', 0, cpNormal, True), - wbRArrayS('Swapped Impacts', wbStructExSK(IMPS, [0, 1], [2], 'Swapped Impact', [ - wbInteger('Material Type', itU32, wbImpactMaterialTypeEnum), - wbFormIDCkNoReach('Old', [IPCT]), - wbFormIDCk('New', [IPCT, NULL]) - ])), - wbArray(IMPF, 'Footstep Materials', wbString('Unknown', 30), [ - 'ConcSolid', - 'ConcBroken', - 'MetalSolid', - 'MetalHollow', - 'MetalSheet', - 'Wood', - 'Sand', - 'Dirt', - 'Grass', - 'Water' - ]), - wbByteArray(OFST, 'Offset Data') - ], False, nil, cpNormal, False, wbRemoveOFST) - else - wbRecord(WRLD, 'Worldspace', [ - wbEDIDReq, - wbFULL, - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - wbRStruct('Parent', [ - wbFormIDCk(WNAM, 'Worldspace', [WRLD]), - wbInteger(PNAM, 'Flags', itU16, wbFlags([ - {0x00000001}'Use Land Data', - {0x00000002}'Use LOD Data', - {0x00000004}'Use Map Data', - {0x00000008}'Use Water Data', - {0x00000010}'Use Climate Data', - {0x00000020}'Use Image Space Data' // in order to use this "Image Space" needs to be NULL. - // Other parent flags are checked before the form value. - ], True), cpNormal, True) - ], []), - wbFormIDCk(CNAM, 'Climate', [CLMT]), - wbFormIDCk(NAM2, 'Water', [WATR]), - wbFormIDCk(NAM3, 'LOD Water Type', [WATR]), - wbFloat(NAM4, 'LOD Water Height'), - wbStruct(DNAM, 'Land Data', [ - wbFloat('Default Land Height'), - wbFloat('Default Water Height') - ]), - wbICON, - wbStruct(MNAM, 'Map Data', [ - wbStruct('Usable Dimensions', [ - wbInteger('X', itS32), - wbInteger('Y', itS32) - ]), - wbStruct('Cell Coordinates', [ - wbStruct('NW Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbStruct('SE Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]) - ]) - ]), - wbStruct(ONAM, 'World Map Offset Data', [ - wbFloat('World Map Scale'), - wbFloat('Cell X Offset'), - wbFloat('Cell Y Offset') - ], cpNormal, True), - wbFormIDCk(INAM, 'Image Space', [IMGS]), - wbInteger(DATA, 'Flags', itU8, wbFlags([ // LoadForm supports a DWord here, but only first byte would be used. - {0x01} 'Small World', - {0x02} 'Can''t Fast Travel', - {0x04} '', - {0x08} '', - {0x10} 'No LOD Water', - {0x20} 'No LOD Noise', - {0x40} 'Don''t Allow NPC Fall Damage', - {0x80} 'Needs Water Adjustment' - ]), cpNormal, True), - wbRStruct('Object Bounds', [ - wbStruct(NAM0, 'Min', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True), - wbStruct(NAM9, 'Max', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True) - ], []), - wbFormIDCk(ZNAM, 'Music', [MUSC]), - wbString(NNAM, 'Canopy Shadow', 0, cpNormal, True), - wbString(XNAM, 'Water Noise Texture', 0, cpNormal, True), - wbRArrayS('Swapped Impacts', wbStructExSK(IMPS, [0, 1], [2], 'Swapped Impact', [ - wbInteger('Material Type', itU32, wbImpactMaterialTypeEnum), - wbFormIDCkNoReach('Old', [IPCT]), - wbFormIDCk('New', [IPCT, NULL]) - ])), - wbArray(IMPF, 'Footstep Materials', wbString('Unknown', 30), [ - 'ConcSolid', - 'ConcBroken', - 'MetalSolid', - 'MetalHollow', - 'MetalSheet', - 'Wood', - 'Sand', - 'Dirt', - 'Grass', - 'Water' - ]), - wbArray(OFST, 'Offset Data', wbArray('Rows', wbInteger('Offset', itU32), wbOffsetDataColsCounter), 0) // cannot be saved by GECK - ], False, nil, cpNormal, False, wbRemoveOFST); - - wbRecord(WTHR, 'Weather', [ - wbEDIDReq, - wbFormIDCk(_0_IAD, 'Sunrise Image Space Modifier', [IMAD]), - wbFormIDCk(_1_IAD, 'Day Image Space Modifier', [IMAD]), - wbFormIDCk(_2_IAD, 'Sunset Image Space Modifier', [IMAD]), - wbFormIDCk(_3_IAD, 'Night Image Space Modifier', [IMAD]), - wbFormIDCk(_4_IAD, 'Unknown', [IMAD]), - wbFormIDCk(_5_IAD, 'Unknown', [IMAD]), - wbString(DNAM, 'Cloud Textures - Layer 0', 0, cpNormal, True), - wbString(CNAM, 'Cloud Textures - Layer 1', 0, cpNormal, True), - wbString(ANAM, 'Cloud Textures - Layer 2', 0, cpNormal, True), - wbString(BNAM, 'Cloud Textures - Layer 3', 0, cpNormal, True), - wbMODL, - wbByteArray(LNAM, 'Unknown', 4, cpNormal, True), - wbArray(ONAM, 'Cloud Speed', wbInteger('Layer', itU8{, wbDiv(2550)}), 4, nil, nil, cpNormal, True), - wbArray(PNAM, 'Cloud Layer Colors', - wbArray('Layer', - wbStruct('Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - ['Sunrise', 'Day', 'Sunset', 'Night', 'High Noon', 'Midnight'] - ), - 4), - wbArray(NAM0, 'Colors by Types/Times', - wbArray('Type', - wbStruct('Time', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - ['Sunrise', 'Day', 'Sunset', 'Night', 'High Noon', 'Midnight'] - ), - ['Sky-Upper','Fog','Unused','Ambient','Sunlight','Sun','Stars','Sky-Lower','Horizon','Unused'] - , cpNormal, True), - wbStruct(FNAM, 'Fog Distance', [ - wbFloat('Day - Near'), - wbFloat('Day - Far'), - wbFloat('Night - Near'), - wbFloat('Night - Far'), - wbFloat('Day - Power'), - wbFloat('Night - Fower') - ], cpNormal, True), - wbByteArray(INAM, 'Unused', 304, cpIgnore, True), - wbStruct(DATA, '', [ - wbInteger('Wind Speed', itU8), - wbInteger('Cloud Speed (Lower)', itU8), - wbInteger('Cloud Speed (Upper)', itU8), - wbInteger('Trans Delta', itU8), - wbInteger('Sun Glare', itU8), - wbInteger('Sun Damage', itU8), - wbInteger('Precipitation - Begin Fade In', itU8), - wbInteger('Precipitation - End Fade Out', itU8), - wbInteger('Thunder/Lightning - Begin Fade In', itU8), - wbInteger('Thunder/Lightning - End Fade Out', itU8), - wbInteger('Thunder/Lightning - Frequency', itU8), - wbInteger('Weather Classification', itU8, wbWthrDataClassification), - wbStruct('Lightning Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8) - ]) - ], cpNormal, True), - wbRArray('Sounds', wbStruct(SNAM, 'Sound', [ - wbFormIDCk('Sound', [SOUN]), - wbInteger('Type', itU32, wbEnum([ - {0}'Default', - {1}'Precip', - {2}'Wind', - {3}'Thunder' - ])) - ])) - ]); - - wbRecord(IMOD, 'Item Mod', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbDESC, - wbDEST, - wbYNAM, - wbZNAM, - wbStruct(DATA, 'Data', [ - wbInteger('Value', itU32), - wbFloat('Weight') - ]) - ]); - - wbRecord(ALOC, 'Media Location Controller', [ - wbEDIDReq, - wbFULL, - wbByteArray(NAM1, 'Flags and Enums, messily combined'), - wbUnknown(NAM2), - wbUnknown(NAM3), - wbFloat(NAM4, 'Location Delay'), - wbInteger(NAM5, 'Day Start', itU32, wbAlocTime), - wbInteger(NAM6, 'Night Start', itU32, wbAlocTime), - wbFloat(NAM7, 'Retrigger Delay'), - wbRArrayS('Neutral Sets', - wbFormIDCk(HNAM, 'Media Set', [MSET]) - ), - wbRArrayS('Ally Sets', - wbFormIDCk(ZNAM, 'Media Set', [MSET]) - ), - wbRArrayS('Friend Sets', - wbFormIDCk(XNAM, 'Media Set', [MSET]) - ), - wbRArrayS('Enemy Sets', - wbFormIDCk(YNAM, 'Media Set', [MSET]) - ), - wbRArrayS('Location Sets', - wbFormIDCk(LNAM, 'Media Set', [MSET]) - ), - wbRArrayS('Battle Sets', - wbFormIDCk(GNAM, 'Media Set', [MSET]) - ), - wbFormIDCk(RNAM, 'Conditional Faction', [FACT]), - wbUnknown(FNAM) - ]); - - wbRecord(MSET, 'Media Set', [ - wbEDIDReq, - wbFULL, - wbInteger(NAM1, 'Type', itU32, wbEnum([ - 'Battle Set', - 'Location Set', - 'Dungeon Set', - 'Incidental Set' - ], [ - -1, 'No Set' - ])), - wbString(NAM2, 'Loop (B) / Battle (D) / Day Outer (L)'), - wbString(NAM3, 'Explore (D) / Day Middle (L)'), - wbString(NAM4, 'Suspense (D) / Day Inner (L)'), - wbString(NAM5, 'Night Outer (L)'), - wbString(NAM6, 'Night Middle (L)'), - wbString(NAM7, 'Night Inner (L)'), - wbFloat(NAM8, 'Loop dB (B) / Battle dB (D) / Day Outer dB (L)'), - wbFloat(NAM9, 'Explore dB (D) / Day Middle dB (L)'), - wbFloat(NAM0, 'Suspense dB (D) / Day Inner dB (L)'), - wbFloat(ANAM, 'Night Outer dB (L)'), - wbFloat(BNAM, 'Night Middle dB (L)'), - wbFloat(CNAM, 'Night Inner dB (L)'), - wbFloat(JNAM, 'Day Outer Boundary % (L)'), - wbFloat(KNAM, 'Day Middle Boundary % (L)'), - wbFloat(LNAM, 'Day Inner Boundary % (L)'), - wbFloat(MNAM, 'Night Outer Boundary % (L)'), - wbFloat(NNAM, 'Night Middle Boundary % (L)'), - wbFloat(ONAM, 'Night Inner Boundary % (L)'), - wbInteger(PNAM, 'Enable Flags', itU8, wbFlags([ - {0x01} 'Day Outer', - {0x02} 'Day Middle', - {0x04} 'Day Inner', - {0x08} 'Night Outer', - {0x10} 'Night Middle', - {0x20} 'Night Inner' - ])), - wbFloat(DNAM, 'Wait Time (B) / Minimum Time On (D,L) / Daytime Min (I)'), - wbFloat(ENAM, 'Loop Fade Out (B) / Looping/Random Crossfade Overlap (D,L) / Nighttime Min (I)'), - wbFloat(FNAM, 'Recovery Time (B) / Layer Crossfade Time (D,L) / Daytime Max (I)'), - wbFloat(GNAM, 'Nighttime Max (I)'), - wbFormIDCk(HNAM, 'Intro (B,D) / Daytime (I)', [SOUN]), - wbFormIDCk(INAM, 'Outro (B,D) / Nighttime (I)', [SOUN]), - wbUnknown(DATA) - ]); - - wbRecord(AMEF, 'Ammo Effect', [ - wbEDIDReq, - wbFULL, - wbStruct(DATA, 'Data', [ - wbInteger('Type', itU32, wbEnum([ - 'Damage Mod', - 'DR Mod', - 'DT Mod', - 'Spread Mod', - 'Weapon Condition Mod', - 'Fatigue Mod' - ])), - wbInteger('Operation', itU32, wbEnum([ - 'Add', - 'Multiply', - 'Subtract' - ])), - wbFloat('Value') - ]) - ]); - - wbRecord(CCRD, 'Caravan Card', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbYNAM, - wbZNAM, - wbRStruct('High Res Image', [ - wbString(TX00, 'Face'), - wbString(TX01, 'Back') - ], []), - wbRStruct('Card', [ - wbInteger(INTV, 'Suit', itU32, wbEnum([ - '', - 'Hearts', - 'Spades', - 'Diamonds', - 'Clubs', - 'Joker' - ])), - wbInteger(INTV, 'Value', itU32, wbEnum([ - '', - 'Ace', - '2', - '3', - '4', - '5', - '6', - '7', - '8', - '9', - '10', - '', - 'Jack', - 'Queen', - 'King', - 'Joker' - ])) - ], []), - wbInteger(DATA, 'Value', itU32) - ]); - - wbRecord(CDCK, 'Caravan Deck', [ - wbEDIDReq, - wbFULL, - wbRArrayS('Cards', - wbFormIDCk(CARD, 'Card', [CCRD]) - ), - wbInteger(DATA, 'Count (broken)', itU32) - ]); - - wbRecord(CHAL, 'Challenge', [ - wbEDIDReq, - wbFULL, - wbICON, - wbSCRI, - wbDESC, - wbStruct(DATA, 'Data', [ - wbInteger('Type', itU32, wbEnum([ - {00} 'Kill from a Form List', - {01} 'Kill a specific FormID', - {02} 'Kill any in a category', - {03} 'Hit an Enemy', - {04} 'Discover a Map Marker', - {05} 'Use an Item', - {06} 'Acquire an Item', - {07} 'Use a Skill', - {08} 'Do Damage', - {09} 'Use an Item from a List', - {10} 'Acquire an Item from a List', - {11} 'Miscellaneous Stat', - {12} 'Craft Using an Item', - {13} 'Scripted Challenge' - ])), - wbInteger('Threshold', itU32), - wbInteger('Flags', itU32, wbFlags([ - 'Start Disabled', - 'Recurring', - 'Show Zero Progress' - ])), - wbInteger('Interval', itU32), - wbByteArray('(depends on type)', 2), - wbByteArray('(depends on type)', 2), - wbByteArray('(depends on type)', 4) - ]), - wbFormID(SNAM, '(depends on type)'), - wbFormID(XNAM, '(depends on type)') - ]); - - wbRecord(CHIP, 'Casino Chip', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbDEST, - wbYNAM, - wbZNAM - ]); - - wbRecord(CMNY, 'Caravan Money', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbYNAM, - wbZNAM, - wbInteger(DATA, 'Absolute Value', itU32) - ]); - - wbRecord(CSNO, 'Casino', [ - wbEDIDReq, - wbFULL, - wbStruct(DATA, 'Data', [ - wbFloat('Decks % Before Shuffle'), - wbFloat('BlackJack Payout Ratio'), - wbArray('Slot Reel Stops', wbInteger('Reel', itU32),[ - 'Symbol 1', - 'Symbol 2', - 'Symbol 3', - 'Symbol 4', - 'Symbol 5', - 'Symbol 6', - 'Symbol W' - ]), - wbInteger('Number of Decks', itU32), - wbInteger('Max Winnings', itU32), - wbFormIDCk('Currency', [CHIP]), - wbFormIDCk('Casino Winnings Quest', [QUST]), - wbInteger('Flags', itU32, wbFlags([ - 'Dealer Stay on Soft 17' - ])) - ]), - wbRStruct('Casino Chip Models', [ - wbString(MODL, '$1 Chip'), - wbString(MODL, '$5 Chip'), - wbString(MODL, '$10 Chip'), - wbString(MODL, '$25 Chip'), - wbString(MODL, '$100 Chip'), - wbString(MODL, '$500 Chip'), - wbString(MODL, 'Roulette Chip') - ], []), - wbString(MODL, 'Slot Machine Model'), - wbString(MOD2, 'Slot Machine Model (again?)'), - wbString(MOD3, 'BlackJack Table Model'), - wbString(MODT, 'BlackJack Table Model related'), - wbString(MOD4, 'Roulette Table Model'), - wbRStruct('Slot Reel Textures', [ - wbString(ICON, 'Symbol 1'), - wbString(ICON, 'Symbol 2'), - wbString(ICON, 'Symbol 3'), - wbString(ICON, 'Symbol 4'), - wbString(ICON, 'Symbol 5'), - wbString(ICON, 'Symbol 6'), - wbString(ICON, 'Symbol W') - ], []), - wbRStruct('BlackJack Decks', [ - wbString(ICO2, 'Deck 1'), - wbString(ICO2, 'Deck 2'), - wbString(ICO2, 'Deck 3'), - wbString(ICO2, 'Deck 4') - ], []) - ]); - - wbRecord(DEHY, 'Dehydration Stage', [ - wbEDIDReq, - wbStruct(DATA, '', [ - wbInteger('Trigger Threshold', itU32), - wbFormIDCk('Actor Effect', [SPEL]) - ], cpNormal, True) - ]); - - wbRecord(HUNG, 'Hunger Stage', [ - wbEDIDReq, - wbStruct(DATA, '', [ - wbInteger('Trigger Threshold', itU32), - wbFormIDCk('Actor Effect', [SPEL]) - ], cpNormal, True) - ]); - - wbRecord(LSCT, 'Load Screen Type', [ - wbEDIDReq, - wbStruct(DATA, 'Data', [ - wbInteger('Type', itU32, wbEnum([ - 'None', - 'XP Progress', - 'Objective', - 'Tip', - 'Stats' - ])), - wbStruct('Data 1', [ - wbInteger('X', itU32), - wbInteger('Y', itU32), - wbInteger('Width', itU32), - wbInteger('Height', itU32), - wbFloat('Orientation', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbInteger('Font', itU32, wbEnum([ - '', - '2', - '3', - '4', - '5', - '6', - '7', - '8' - ])), - wbStruct('Font Color', [ - wbFloat('R'), - wbFloat('G'), - wbFloat('B') - ]), - wbInteger('Font', itU32, wbEnum([ - '', - 'Left', - 'Center', - '', - 'Right' - ])) - ]), - wbByteArray('Unknown', 20), - wbStruct('Data 2', [ - wbInteger('Font', itU32, wbEnum([ - '', - '2', - '3', - '4', - '5', - '6', - '7', - '8' - ])), - wbStruct('Font Color', [ - wbFloat('R'), - wbFloat('G'), - wbFloat('B') - ]), - wbByteArray('', 4), - wbInteger('Stats', itU32, wbEnum([ - '', - '2', - '3', - '4', - '5', - '6', - '7', - '8' - ])) - ]) - ]) - ]); - - wbRecord(RCCT, 'Recipe Category', [ - wbEDIDReq, - wbFULL, - wbInteger(DATA, 'Flags', itU8, wbFlags([ - 'Subcategory?', - '', - '', - '', - '', - '', - '', - '' - ])) - ]); - - wbRecord(RCPE, 'Recipe', [ - wbEDIDReq, - wbFULL, - wbCTDAs, - wbStruct(DATA, 'Data', [ - wbInteger('Skill', itS32, wbActorValueEnum), - wbInteger('Level', itU32), - wbFormIDCk('Category', [RCCT, NULL]), // Some of DeadMoney are NULL - wbFormIDCk('Sub-Category', [RCCT]) - ]), - wbRStructs('Ingredients', 'Ingredient', [ - wbFormIDCk(RCIL, 'Item', [ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, NOTE, IMOD, CMNY, CCRD, CHIP, LIGH], False, cpNormal, True), - wbInteger(RCQY, 'Quantity', itU32, nil, cpNormal, True) - ], []), - wbRStructs('Outputs', 'Output', [ - wbFormIDCk(RCOD, 'Item', [ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, NOTE, IMOD, CMNY, CCRD, CHIP, LIGH], False, cpNormal, True), - wbInteger(RCQY, 'Quantity', itU32, nil, cpNormal, True) - ], []) - ]); - - wbRecord(REPU, 'Reputation', [ - wbEDIDReq, - wbFULL, - wbICON, - wbFloat(DATA, 'Value') - ]); - - wbRecord(SLPD, 'Sleep Deprivation Stage', [ - wbEDIDReq, - wbStruct(DATA, '', [ - wbInteger('Trigger Threshold', itU32), - wbFormIDCk('Actor Effect', [SPEL]) - ], cpNormal, True) - ]); - - wbAddGroupOrder(GMST); - wbAddGroupOrder(TXST); - wbAddGroupOrder(MICN); - wbAddGroupOrder(GLOB); - wbAddGroupOrder(CLAS); - wbAddGroupOrder(FACT); - wbAddGroupOrder(HDPT); - wbAddGroupOrder(HAIR); - wbAddGroupOrder(EYES); - wbAddGroupOrder(RACE); - wbAddGroupOrder(SOUN); - wbAddGroupOrder(ASPC); - wbAddGroupOrder(MGEF); - wbAddGroupOrder(SCPT); - wbAddGroupOrder(LTEX); - wbAddGroupOrder(ENCH); - wbAddGroupOrder(SPEL); - wbAddGroupOrder(ACTI); - wbAddGroupOrder(TACT); - wbAddGroupOrder(TERM); - wbAddGroupOrder(ARMO); - wbAddGroupOrder(BOOK); - wbAddGroupOrder(CONT); - wbAddGroupOrder(DOOR); - wbAddGroupOrder(INGR); - wbAddGroupOrder(LIGH); - wbAddGroupOrder(MISC); - wbAddGroupOrder(STAT); - wbAddGroupOrder(SCOL); - wbAddGroupOrder(MSTT); - wbAddGroupOrder(PWAT); - wbAddGroupOrder(GRAS); - wbAddGroupOrder(TREE); - wbAddGroupOrder(FURN); - wbAddGroupOrder(WEAP); - wbAddGroupOrder(AMMO); - wbAddGroupOrder(NPC_); - wbAddGroupOrder(CREA); - wbAddGroupOrder(LVLC); - wbAddGroupOrder(LVLN); - wbAddGroupOrder(KEYM); - wbAddGroupOrder(ALCH); - wbAddGroupOrder(IDLM); - wbAddGroupOrder(NOTE); - wbAddGroupOrder(COBJ); - wbAddGroupOrder(PROJ); - wbAddGroupOrder(LVLI); - wbAddGroupOrder(WTHR); - wbAddGroupOrder(CLMT); - wbAddGroupOrder(REGN); - wbAddGroupOrder(NAVI); - wbAddGroupOrder(DIAL); - wbAddGroupOrder(QUST); - wbAddGroupOrder(IDLE); - wbAddGroupOrder(PACK); - wbAddGroupOrder(CSTY); - wbAddGroupOrder(LSCR); - wbAddGroupOrder(ANIO); - wbAddGroupOrder(WATR); - wbAddGroupOrder(EFSH); - wbAddGroupOrder(EXPL); - wbAddGroupOrder(DEBR); - wbAddGroupOrder(IMGS); - wbAddGroupOrder(IMAD); - wbAddGroupOrder(FLST); - wbAddGroupOrder(PERK); - wbAddGroupOrder(BPTD); - wbAddGroupOrder(ADDN); - wbAddGroupOrder(AVIF); - wbAddGroupOrder(RADS); - wbAddGroupOrder(CAMS); - wbAddGroupOrder(CPTH); - wbAddGroupOrder(VTYP); - wbAddGroupOrder(IPCT); - wbAddGroupOrder(IPDS); - wbAddGroupOrder(ARMA); - wbAddGroupOrder(ECZN); - wbAddGroupOrder(MESG); - wbAddGroupOrder(RGDL); - wbAddGroupOrder(DOBJ); - wbAddGroupOrder(LGTM); - wbAddGroupOrder(MUSC); - wbAddGroupOrder(IMOD); - wbAddGroupOrder(REPU); - wbAddGroupOrder(RCPE); - wbAddGroupOrder(RCCT); - wbAddGroupOrder(CHIP); - wbAddGroupOrder(CSNO); - wbAddGroupOrder(LSCT); - wbAddGroupOrder(MSET); - wbAddGroupOrder(ALOC); - wbAddGroupOrder(CHAL); - wbAddGroupOrder(AMEF); - wbAddGroupOrder(CCRD); - wbAddGroupOrder(CMNY); - wbAddGroupOrder(CDCK); - wbAddGroupOrder(DEHY); - wbAddGroupOrder(HUNG); - wbAddGroupOrder(SLPD); - // Forced at the end. - wbAddGroupOrder(CELL); - wbAddGroupOrder(WRLD); -end; - -procedure DefineFNV; -begin - DefineFNVa; - DefineFNVb; - DefineFNVc; - DefineFNVd; - DefineFNVe; - DefineFNVf; -end; - -end. diff --git a/lib/xedit/wbDefinitionsFO3.pas b/lib/xedit/wbDefinitionsFO3.pas deleted file mode 100644 index 103a65d..0000000 --- a/lib/xedit/wbDefinitionsFO3.pas +++ /dev/null @@ -1,10758 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} - -unit wbDefinitionsFO3; - -{$I wbDefines.inc} - -interface - -uses - wbInterface; - -var - wbAggroRadiusFlags: IwbFlagsDef; - wbPKDTFlags: IwbFlagsDef; - wbRecordFlagsFlags: IwbFlagsDef; - wbServiceFlags: IwbFlagsDef; - wbTemplateFlags: IwbFlagsDef; - - wbAgressionEnum: IwbEnumDef; - wbAlignmentEnum: IwbEnumDef; - wbArchtypeEnum: IwbEnumDef; - wbAssistanceEnum: IwbEnumDef; - wbAttackAnimationEnum: IwbEnumDef; - wbAxisEnum: IwbEnumDef; - wbBlendModeEnum: IwbEnumDef; - wbBlendOpEnum: IwbEnumDef; - wbBodyLocationEnum: IwbEnumDef; - wbBodyPartIndexEnum: IwbEnumDef; - wbConfidenceEnum: IwbEnumDef; - wbCreatureTypeEnum: IwbEnumDef; - wbCrimeTypeEnum: IwbEnumDef; - wbCriticalStageEnum: IwbEnumDef; - wbEquipTypeEnum: IwbEnumDef; - wbFormTypeEnum: IwbEnumDef; - wbFunctionsEnum: IwbEnumDef; - wbHeadPartIndexEnum: IwbEnumDef; - wbImpactMaterialTypeEnum: IwbEnumDef; - wbMenuModeEnum: IwbEnumDef; - wbMiscStatEnum: IwbEnumDef; - wbModEffectEnum: IwbEnumDef; - wbMoodEnum: IwbEnumDef; - wbMusicEnum: IwbEnumDef; - wbObjectTypeEnum: IwbEnumDef; - wbPKDTType: IwbEnumDef; - wbPlayerActionEnum: IwbEnumDef; - wbQuadrantEnum: IwbEnumDef; - wbReloadAnimEnum: IwbEnumDef; - wbSexEnum: IwbEnumDef; - wbSkillEnum: IwbEnumDef; - wbSoundLevelEnum: IwbEnumDef; - wbSpecializationEnum: IwbEnumDef; - wbVatsValueFunctionEnum: IwbEnumDef; - wbWeaponAnimTypeEnum: IwbEnumDef; - wbZTestFuncEnum: IwbEnumDef; - -procedure DefineFO3; - -implementation - -uses - Types, - Classes, - SysUtils, - Math, - Variants, - wbHelpers; - -const - _00_IAD: TwbSignature = #$00'IAD'; - _40_IAD: TwbSignature = #$40'IAD'; - _01_IAD: TwbSignature = #$01'IAD'; - _41_IAD: TwbSignature = #$41'IAD'; - _02_IAD: TwbSignature = #$02'IAD'; - _42_IAD: TwbSignature = #$42'IAD'; - _03_IAD: TwbSignature = #$03'IAD'; - _43_IAD: TwbSignature = #$43'IAD'; - _04_IAD: TwbSignature = #$04'IAD'; - _44_IAD: TwbSignature = #$44'IAD'; - _05_IAD: TwbSignature = #$05'IAD'; - _45_IAD: TwbSignature = #$45'IAD'; - _06_IAD: TwbSignature = #$06'IAD'; - _46_IAD: TwbSignature = #$46'IAD'; - _07_IAD: TwbSignature = #$07'IAD'; - _47_IAD: TwbSignature = #$47'IAD'; - _08_IAD: TwbSignature = #$08'IAD'; - _48_IAD: TwbSignature = #$48'IAD'; - _09_IAD: TwbSignature = #$09'IAD'; - _49_IAD: TwbSignature = #$49'IAD'; - _0A_IAD: TwbSignature = #$0A'IAD'; - _4A_IAD: TwbSignature = #$4A'IAD'; - _0B_IAD: TwbSignature = #$0B'IAD'; - _4B_IAD: TwbSignature = #$4B'IAD'; - _0C_IAD: TwbSignature = #$0C'IAD'; - _4C_IAD: TwbSignature = #$4C'IAD'; - _0D_IAD: TwbSignature = #$0D'IAD'; - _4D_IAD: TwbSignature = #$4D'IAD'; - _0E_IAD: TwbSignature = #$0E'IAD'; - _4E_IAD: TwbSignature = #$4E'IAD'; - _0F_IAD: TwbSignature = #$0F'IAD'; - _4F_IAD: TwbSignature = #$4F'IAD'; - _10_IAD: TwbSignature = #$10'IAD'; - _50_IAD: TwbSignature = #$50'IAD'; - _11_IAD: TwbSignature = #$11'IAD'; - _51_IAD: TwbSignature = #$51'IAD'; - _12_IAD: TwbSignature = #$12'IAD'; - _52_IAD: TwbSignature = #$52'IAD'; - _13_IAD: TwbSignature = #$13'IAD'; - _53_IAD: TwbSignature = #$53'IAD'; - _14_IAD: TwbSignature = #$14'IAD'; - _54_IAD: TwbSignature = #$54'IAD'; - - _0_IAD : TwbSignature = #0'IAD'; - _1_IAD : TwbSignature = #1'IAD'; - _2_IAD : TwbSignature = #2'IAD'; - _3_IAD : TwbSignature = #3'IAD'; - ACBS : TwbSignature = 'ACBS'; - ACHR : TwbSignature = 'ACHR'; - ACRE : TwbSignature = 'ACRE'; - ACTI : TwbSignature = 'ACTI'; - ADDN : TwbSignature = 'ADDN'; - AIDT : TwbSignature = 'AIDT'; - ALCH : TwbSignature = 'ALCH'; - AMMO : TwbSignature = 'AMMO'; - ANAM : TwbSignature = 'ANAM'; - ANIO : TwbSignature = 'ANIO'; - ARMA : TwbSignature = 'ARMA'; - ARMO : TwbSignature = 'ARMO'; - ASPC : TwbSignature = 'ASPC'; - ATTR : TwbSignature = 'ATTR'; - ATXT : TwbSignature = 'ATXT'; - AVIF : TwbSignature = 'AVIF'; - BIPL : TwbSignature = 'BIPL'; - BMCT : TwbSignature = 'BMCT'; - BMDT : TwbSignature = 'BMDT'; - BNAM : TwbSignature = 'BNAM'; - BOOK : TwbSignature = 'BOOK'; - BPND : TwbSignature = 'BPND'; - BPNI : TwbSignature = 'BPNI'; - BPNN : TwbSignature = 'BPNN'; - BPNT : TwbSignature = 'BPNT'; - BPTD : TwbSignature = 'BPTD'; - BPTN : TwbSignature = 'BPTN'; - BTXT : TwbSignature = 'BTXT'; - CAMS : TwbSignature = 'CAMS'; - CELL : TwbSignature = 'CELL'; - CLAS : TwbSignature = 'CLAS'; - CLMT : TwbSignature = 'CLMT'; - CNAM : TwbSignature = 'CNAM'; - CNTO : TwbSignature = 'CNTO'; - COBJ : TwbSignature = 'COBJ'; - COED : TwbSignature = 'COED'; - CONT : TwbSignature = 'CONT'; - CPTH : TwbSignature = 'CPTH'; - CRDT : TwbSignature = 'CRDT'; - CREA : TwbSignature = 'CREA'; - CSAD : TwbSignature = 'CSAD'; - CSCR : TwbSignature = 'CSCR'; - CSDC : TwbSignature = 'CSDC'; - CSDI : TwbSignature = 'CSDI'; - CSDT : TwbSignature = 'CSDT'; - CSSD : TwbSignature = 'CSSD'; - CSTD : TwbSignature = 'CSTD'; - CSTY : TwbSignature = 'CSTY'; - CTDA : TwbSignature = 'CTDA'; - DATA : TwbSignature = 'DATA'; - DEBR : TwbSignature = 'DEBR'; - DELE : TwbSignature = 'DELE'; - DESC : TwbSignature = 'DESC'; - DEST : TwbSignature = 'DEST'; - DIAL : TwbSignature = 'DIAL'; - DMDL : TwbSignature = 'DMDL'; - DMDT : TwbSignature = 'DMDT'; - DNAM : TwbSignature = 'DNAM'; - DOBJ : TwbSignature = 'DOBJ'; - DODT : TwbSignature = 'DODT'; - DOOR : TwbSignature = 'DOOR'; - DSTD : TwbSignature = 'DSTD'; - DSTF : TwbSignature = 'DSTF'; - EAMT : TwbSignature = 'EAMT'; - ECZN : TwbSignature = 'ECZN'; - EDID : TwbSignature = 'EDID'; - EFID : TwbSignature = 'EFID'; - EFIT : TwbSignature = 'EFIT'; - EFSD : TwbSignature = 'EFSD'; - EFSH : TwbSignature = 'EFSH'; - EITM : TwbSignature = 'EITM'; - ENAM : TwbSignature = 'ENAM'; - ENCH : TwbSignature = 'ENCH'; - ENIT : TwbSignature = 'ENIT'; - EPF2 : TwbSignature = 'EPF2'; - EPF3 : TwbSignature = 'EPF3'; - EPFD : TwbSignature = 'EPFD'; - EPFT : TwbSignature = 'EPFT'; - ESCE : TwbSignature = 'ESCE'; - ETYP : TwbSignature = 'ETYP'; - EXPL : TwbSignature = 'EXPL'; - EYES : TwbSignature = 'EYES'; - FACT : TwbSignature = 'FACT'; - FGGA : TwbSignature = 'FGGA'; - FGGS : TwbSignature = 'FGGS'; - FGTS : TwbSignature = 'FGTS'; - FLST : TwbSignature = 'FLST'; - FLTV : TwbSignature = 'FLTV'; - FNAM : TwbSignature = 'FNAM'; - FULL : TwbSignature = 'FULL'; - FURN : TwbSignature = 'FURN'; - GLOB : TwbSignature = 'GLOB'; - GMST : TwbSignature = 'GMST'; - GNAM : TwbSignature = 'GNAM'; - GRAS : TwbSignature = 'GRAS'; - HAIR : TwbSignature = 'HAIR'; - HCLR : TwbSignature = 'HCLR'; - HDPT : TwbSignature = 'HDPT'; - HEDR : TwbSignature = 'HEDR'; - HNAM : TwbSignature = 'HNAM'; - ICO2 : TwbSignature = 'ICO2'; - ICON : TwbSignature = 'ICON'; - IDLA : TwbSignature = 'IDLA'; - IDLB : TwbSignature = 'IDLB'; - IDLC : TwbSignature = 'IDLC'; - IDLE : TwbSignature = 'IDLE'; - IDLF : TwbSignature = 'IDLF'; - IDLM : TwbSignature = 'IDLM'; - IDLT : TwbSignature = 'IDLT'; - IMAD : TwbSignature = 'IMAD'; - IMGS : TwbSignature = 'IMGS'; - INAM : TwbSignature = 'INAM'; - INDX : TwbSignature = 'INDX'; - INFO : TwbSignature = 'INFO'; - INGR : TwbSignature = 'INGR'; - IPCT : TwbSignature = 'IPCT'; - IPDS : TwbSignature = 'IPDS'; - ITXT : TwbSignature = 'ITXT'; - JNAM : TwbSignature = 'JNAM'; - KEYM : TwbSignature = 'KEYM'; - KFFZ : TwbSignature = 'KFFZ'; - KNAM : TwbSignature = 'KNAM'; - LAND : TwbSignature = 'LAND'; - LGTM : TwbSignature = 'LGTM'; - LIGH : TwbSignature = 'LIGH'; - LNAM : TwbSignature = 'LNAM'; - LSCR : TwbSignature = 'LSCR'; - LTEX : TwbSignature = 'LTEX'; - LTMP : TwbSignature = 'LTMP'; - LVLC : TwbSignature = 'LVLC'; - LVLD : TwbSignature = 'LVLD'; - LVLF : TwbSignature = 'LVLF'; - LVLG : TwbSignature = 'LVLG'; - LVLI : TwbSignature = 'LVLI'; - LVLN : TwbSignature = 'LVLN'; - LVLO : TwbSignature = 'LVLO'; - MAST : TwbSignature = 'MAST'; - MESG : TwbSignature = 'MESG'; - MGEF : TwbSignature = 'MGEF'; - MICN : TwbSignature = 'MICN'; - MICO : TwbSignature = 'MICO'; - MIC2 : TwbSignature = 'MIC2'; - MISC : TwbSignature = 'MISC'; - MNAM : TwbSignature = 'MNAM'; - MO2B : TwbSignature = 'MO2B'; - MO2S : TwbSignature = 'MO2S'; - MO2T : TwbSignature = 'MO2T'; - MO3B : TwbSignature = 'MO3B'; - MO3S : TwbSignature = 'MO3S'; - MO3T : TwbSignature = 'MO3T'; - MO4B : TwbSignature = 'MO4B'; - MO4S : TwbSignature = 'MO4S'; - MO4T : TwbSignature = 'MO4T'; - MOD2 : TwbSignature = 'MOD2'; - MOD3 : TwbSignature = 'MOD3'; - MOD4 : TwbSignature = 'MOD4'; - MODB : TwbSignature = 'MODB'; - MODD : TwbSignature = 'MODD'; - MODL : TwbSignature = 'MODL'; - MODS : TwbSignature = 'MODS'; - MODT : TwbSignature = 'MODT'; - MOSD : TwbSignature = 'MOSD'; - MSTT : TwbSignature = 'MSTT'; - MUSC : TwbSignature = 'MUSC'; - IMPS : TwbSignature = 'IMPS'; - IMPF : TwbSignature = 'IMPF'; - NAM0 : TwbSignature = 'NAM0'; - NAM1 : TwbSignature = 'NAM1'; - NAM2 : TwbSignature = 'NAM2'; - NAM3 : TwbSignature = 'NAM3'; - NAM4 : TwbSignature = 'NAM4'; - NAM5 : TwbSignature = 'NAM5'; - NAM6 : TwbSignature = 'NAM6'; - NAM7 : TwbSignature = 'NAM7'; - NAM8 : TwbSignature = 'NAM8'; - NAM9 : TwbSignature = 'NAM9'; - NAME : TwbSignature = 'NAME'; - NAVI : TwbSignature = 'NAVI'; - NAVM : TwbSignature = 'NAVM'; - NEXT : TwbSignature = 'NEXT'; - NIFT : TwbSignature = 'NIFT'; - NIFZ : TwbSignature = 'NIFZ'; - NNAM : TwbSignature = 'NNAM'; - NOTE : TwbSignature = 'NOTE'; - NPC_ : TwbSignature = 'NPC_'; - NULL : TwbSignature = 'NULL'; - NVCA : TwbSignature = 'NVCA'; - NVCI : TwbSignature = 'NVCI'; - NVDP : TwbSignature = 'NVDP'; - NVER : TwbSignature = 'NVER'; - NVEX : TwbSignature = 'NVEX'; - NVGD : TwbSignature = 'NVGD'; - NVMI : TwbSignature = 'NVMI'; - NVTR : TwbSignature = 'NVTR'; - NVVX : TwbSignature = 'NVVX'; - OBND : TwbSignature = 'OBND'; - OFST : TwbSignature = 'OFST'; - ONAM : TwbSignature = 'ONAM'; - PACK : TwbSignature = 'PACK'; - PBEA : TwbSignature = 'PBEA'; - PERK : TwbSignature = 'PERK'; - PFIG : TwbSignature = 'PFIG'; - PFPC : TwbSignature = 'PFPC'; - PGAG : TwbSignature = 'PGAG'; - PGRE : TwbSignature = 'PGRE'; - PMIS : TwbSignature = 'PMIS'; - TRGT : TwbSignature = 'TRGT'; - PGRI : TwbSignature = 'PGRI'; - PGRL : TwbSignature = 'PGRL'; - PGRP : TwbSignature = 'PGRP'; - PGRR : TwbSignature = 'PGRR'; - PKAM : TwbSignature = 'PKAM'; - PKDD : TwbSignature = 'PKDD'; - PKDT : TwbSignature = 'PKDT'; - PKE2 : TwbSignature = 'PKE2'; - PKED : TwbSignature = 'PKED'; - PKFD : TwbSignature = 'PKFD'; - PKID : TwbSignature = 'PKID'; - PKPT : TwbSignature = 'PKPT'; - PKW3 : TwbSignature = 'PKW3'; - PLD2 : TwbSignature = 'PLD2'; - PLDT : TwbSignature = 'PLDT'; - PLYR : TwbSignature = 'PLYR'; - PNAM : TwbSignature = 'PNAM'; - POBA : TwbSignature = 'POBA'; - POCA : TwbSignature = 'POCA'; - POEA : TwbSignature = 'POEA'; - PRKC : TwbSignature = 'PRKC'; - PRKE : TwbSignature = 'PRKE'; - PRKF : TwbSignature = 'PRKF'; - PROJ : TwbSignature = 'PROJ'; - PSDT : TwbSignature = 'PSDT'; - PTD2 : TwbSignature = 'PTD2'; - PTDT : TwbSignature = 'PTDT'; - PUID : TwbSignature = 'PUID'; - PWAT : TwbSignature = 'PWAT'; - QNAM : TwbSignature = 'QNAM'; - QOBJ : TwbSignature = 'QOBJ'; - QSDT : TwbSignature = 'QSDT'; - QSTA : TwbSignature = 'QSTA'; - QSTI : TwbSignature = 'QSTI'; - TPIC : TwbSignature = 'TPIC'; - QSTR : TwbSignature = 'QSTR'; - QUST : TwbSignature = 'QUST'; - RACE : TwbSignature = 'RACE'; - RADS : TwbSignature = 'RADS'; - RAFB : TwbSignature = 'RAFB'; - RAFD : TwbSignature = 'RAFD'; - RAGA : TwbSignature = 'RAGA'; - RAPS : TwbSignature = 'RAPS'; - RCLR : TwbSignature = 'RCLR'; - RDAT : TwbSignature = 'RDAT'; - RDMD : TwbSignature = 'RDMD'; - RDMO : TwbSignature = 'RDMO'; - RDMP : TwbSignature = 'RDMP'; - RDGS : TwbSignature = 'RDGS'; - RDOT : TwbSignature = 'RDOT'; - RDSD : TwbSignature = 'RDSD'; - RDWT : TwbSignature = 'RDWT'; - REFR : TwbSignature = 'REFR'; - REGN : TwbSignature = 'REGN'; - REPL : TwbSignature = 'REPL'; - RGDL : TwbSignature = 'RGDL'; - RNAM : TwbSignature = 'RNAM'; - RPLD : TwbSignature = 'RPLD'; - RPLI : TwbSignature = 'RPLI'; - SCDA : TwbSignature = 'SCDA'; - SCHR : TwbSignature = 'SCHR'; - SCOL : TwbSignature = 'SCOL'; - SCPT : TwbSignature = 'SCPT'; - SCRI : TwbSignature = 'SCRI'; - SCRN : TwbSignature = 'SCRN'; - SCRO : TwbSignature = 'SCRO'; - SCRV : TwbSignature = 'SCRV'; - SCTX : TwbSignature = 'SCTX'; - SCVR : TwbSignature = 'SCVR'; - SLCP : TwbSignature = 'SLCP'; - SLSD : TwbSignature = 'SLSD'; - SNAM : TwbSignature = 'SNAM'; - SNDD : TwbSignature = 'SNDD'; - SNDX : TwbSignature = 'SNDX'; - SOUL : TwbSignature = 'SOUL'; - SOUN : TwbSignature = 'SOUN'; - SPEL : TwbSignature = 'SPEL'; - SPIT : TwbSignature = 'SPIT'; - SPLO : TwbSignature = 'SPLO'; - STAT : TwbSignature = 'STAT'; - TACT : TwbSignature = 'TACT'; - TCLF : TwbSignature = 'TCLF'; - TCLT : TwbSignature = 'TCLT'; - TERM : TwbSignature = 'TERM'; - TES4 : TwbSignature = 'TES4'; - TNAM : TwbSignature = 'TNAM'; - TPLT : TwbSignature = 'TPLT'; - TRDT : TwbSignature = 'TRDT'; - TREE : TwbSignature = 'TREE'; - TX00 : TwbSignature = 'TX00'; - TX01 : TwbSignature = 'TX01'; - TX02 : TwbSignature = 'TX02'; - TX03 : TwbSignature = 'TX03'; - TX04 : TwbSignature = 'TX04'; - TX05 : TwbSignature = 'TX05'; - TXST : TwbSignature = 'TXST'; - UNAM : TwbSignature = 'UNAM'; - VCLR : TwbSignature = 'VCLR'; - VHGT : TwbSignature = 'VHGT'; - VNAM : TwbSignature = 'VNAM'; - VNML : TwbSignature = 'VNML'; - VTCK : TwbSignature = 'VTCK'; - VTEX : TwbSignature = 'VTEX'; - VTXT : TwbSignature = 'VTXT'; - VTYP : TwbSignature = 'VTYP'; - WATR : TwbSignature = 'WATR'; - WEAP : TwbSignature = 'WEAP'; - WLST : TwbSignature = 'WLST'; - WNAM : TwbSignature = 'WNAM'; - WRLD : TwbSignature = 'WRLD'; - WTHR : TwbSignature = 'WTHR'; - XACT : TwbSignature = 'XACT'; - XAMC : TwbSignature = 'XAMC'; - XAMT : TwbSignature = 'XAMT'; - XAPD : TwbSignature = 'XAPD'; - XAPR : TwbSignature = 'XAPR'; - XCAS : TwbSignature = 'XCAS'; - XCCM : TwbSignature = 'XCCM'; - XCET : TwbSignature = 'XCET'; - XCHG : TwbSignature = 'XCHG'; - XCIM : TwbSignature = 'XCIM'; - XCLC : TwbSignature = 'XCLC'; - XCLL : TwbSignature = 'XCLL'; - XCLP : TwbSignature = 'XCLP'; - XCLR : TwbSignature = 'XCLR'; - XCLW : TwbSignature = 'XCLW'; - XCMO : TwbSignature = 'XCMO'; - XCMT : TwbSignature = 'XCMT'; - XCNT : TwbSignature = 'XCNT'; - XCWT : TwbSignature = 'XCWT'; - XEMI : TwbSignature = 'XEMI'; - XESP : TwbSignature = 'XESP'; - XEZN : TwbSignature = 'XEZN'; - XGLB : TwbSignature = 'XGLB'; - XHLP : TwbSignature = 'XHLP'; - XDCR : TwbSignature = 'XDCR'; - XHLT : TwbSignature = 'XHLT'; - XIBS : TwbSignature = 'XIBS'; - XLCM : TwbSignature = 'XLCM'; - XLKR : TwbSignature = 'XLKR'; - XLOC : TwbSignature = 'XLOC'; - XLOD : TwbSignature = 'XLOD'; - XLRM : TwbSignature = 'XLRM'; - XLTW : TwbSignature = 'XLTW'; - XMBO : TwbSignature = 'XMBO'; - XMBP : TwbSignature = 'XMBP'; - XMBR : TwbSignature = 'XMBR'; - XMRC : TwbSignature = 'XMRC'; - XMRK : TwbSignature = 'XMRK'; - XNAM : TwbSignature = 'XNAM'; - XNDP : TwbSignature = 'XNDP'; - XOCP : TwbSignature = 'XOCP'; - XORD : TwbSignature = 'XORD'; - XOWN : TwbSignature = 'XOWN'; - XPOD : TwbSignature = 'XPOD'; - XPTL : TwbSignature = 'XPTL'; - XPPA : TwbSignature = 'XPPA'; - XPRD : TwbSignature = 'XPRD'; - XPRM : TwbSignature = 'XPRM'; - XPWR : TwbSignature = 'XPWR'; - XRAD : TwbSignature = 'XRAD'; - XRDO : TwbSignature = 'XRDO'; - XRDS : TwbSignature = 'XRDS'; - XRGB : TwbSignature = 'XRGB'; - XRGD : TwbSignature = 'XRGD'; - XRMR : TwbSignature = 'XRMR'; - XRNK : TwbSignature = 'XRNK'; - XRTM : TwbSignature = 'XRTM'; - XSCL : TwbSignature = 'XSCL'; - XSED : TwbSignature = 'XSED'; - XSRF : TwbSignature = 'XSRF'; - XSRD : TwbSignature = 'XSRD'; - XTEL : TwbSignature = 'XTEL'; - XTRG : TwbSignature = 'XTRG'; - XTRI : TwbSignature = 'XTRI'; - XXXX : TwbSignature = 'XXXX'; - YNAM : TwbSignature = 'YNAM'; - ZNAM : TwbSignature = 'ZNAM'; - -var - wbPKDTSpecificFlagsUnused : Boolean; - wbEDID: IwbSubRecordDef; - wbEDIDReq: IwbSubRecordDef; - wbBMDT: IwbSubRecordDef; - wbYNAM: IwbSubRecordDef; - wbZNAM: IwbSubRecordDef; - wbCOED: IwbSubRecordDef; - wbXLCM: IwbSubRecordDef; - wbEITM: IwbSubRecordDef; - wbREPL: IwbSubRecordDef; - wbBIPL: IwbSubRecordDef; - wbOBND: IwbSubRecordDef; - wbOBNDReq: IwbSubRecordDef; - wbDEST: IwbSubRecordStructDef; - wbDESTActor: IwbSubRecordStructDef; - wbDODT: IwbSubRecordDef; - wbXOWN: IwbSubRecordDef; - wbXGLB: IwbSubRecordDef; - wbXRGD: IwbSubRecordDef; - wbXRGB: IwbSubRecordDef; - wbSLSD: IwbSubRecordDef; - wbSPLO: IwbSubRecordDef; - wbSPLOs: IwbSubRecordArrayDef; - wbCNTO: IwbSubRecordStructDef; - wbCNTOs: IwbSubRecordArrayDef; - wbAIDT: IwbSubRecordDef; - wbCSDT: IwbSubRecordStructDef; - wbCSDTs: IwbSubRecordArrayDef; - wbFULL: IwbSubRecordDef; - wbFULLActor: IwbSubRecordDef; - wbFULLReq: IwbSubRecordDef; - wbXNAM: IwbSubRecordDef; - wbXNAMs: IwbSubRecordArrayDef; - wbDESC: IwbSubRecordDef; - wbDESCReq: IwbSubRecordDef; - wbXSCL: IwbSubRecordDef; - wbDATAPosRot : IwbSubRecordDef; - wbPosRot : IwbStructDef; - wbMODD: IwbSubRecordDef; - wbMOSD: IwbSubRecordDef; - wbMODL: IwbSubRecordStructDef; - wbMODS: IwbSubRecordDef; - wbMO2S: IwbSubRecordDef; - wbMO3S: IwbSubRecordDef; - wbMO4S: IwbSubRecordDef; - wbMODLActor: IwbSubRecordStructDef; - wbMODLReq: IwbSubRecordStructDef; - wbCTDA: IwbSubRecordDef; - wbSCHRReq: IwbSubRecordDef; - wbCTDAs: IwbSubRecordArrayDef; - wbCTDAsReq: IwbSubRecordArrayDef; - wbSCROs: IwbSubRecordArrayDef; - wbPGRP: IwbSubRecordDef; - wbEmbeddedScript: IwbSubRecordStructDef; - wbEmbeddedScriptPerk: IwbSubRecordStructDef; - wbEmbeddedScriptReq: IwbSubRecordStructDef; - wbSCRI: IwbSubRecordDef; - wbSCRIActor: IwbSubRecordDef; - wbFaceGen: IwbSubRecordStructDef; - wbFaceGenNPC: IwbSubRecordStructDef; - wbENAM: IwbSubRecordDef; - wbFGGS: IwbSubRecordDef; - wbXLOD: IwbSubRecordDef; - wbXESP: IwbSubRecordDef; - wbICON: IwbSubRecordStructDef; - wbICONReq: IwbSubRecordStructDef; - wbActorValue: IwbIntegerDef; - wbETYP: IwbSubRecordDef; - wbETYPReq: IwbSubRecordDef; - wbEFID: IwbSubRecordDef; - wbEFIT: IwbSubRecordDef; - wbEffects: IwbSubRecordArrayDef; - wbEffectsReq: IwbSubRecordArrayDef; - wbBPNDStruct: IwbSubRecordDef; - wbTimeInterpolator: IwbStructDef; - wbColorInterpolator: IwbStructDef; - -function wbNVTREdgeToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Index : Integer; - Flags : Cardinal; - IsExternal : Boolean; - Container : IwbContainerElementRef; -begin - Result := ''; - IsExternal := False; - if Supports(aElement, IwbContainerElementRef, Container) then begin - Index := StrToIntDef(Copy(Container.Name, 11, 1), -1); - if (Index >= 0) and (Index <= 2) then begin - Flags := Container.ElementNativeValues['..\..\Flags']; - IsExternal := Flags and (Cardinal(1) shl Index) <> 0; - end; - end; - - if IsExternal then begin - case aType of - ctToStr: begin - Result := IntToStr(aInt); - if Container.ElementExists['..\..\..\..\NVEX\Connection #' + IntToStr(aInt)] then - Result := Result + ' (Triangle #' + - Container.ElementValues['..\..\..\..\NVEX\Connection #' + IntToStr(aInt) + '\Triangle'] + ' in ' + - Container.ElementValues['..\..\..\..\NVEX\Connection #' + IntToStr(aInt) + '\Navigation Mesh'] + ')' - else - Result := Result + ' '; - end; - ctToSortKey: - if Container.ElementExists['..\..\..\..\NVEX\Connection #' + IntToStr(aInt)] then - Result := - Container.ElementSortKeys['..\..\..\..\NVEX\Connection #' + IntToStr(aInt) + '\Navigation Mesh', True] + '|' + - Container.ElementSortKeys['..\..\..\..\NVEX\Connection #' + IntToStr(aInt) + '\Triangle', True]; - ctCheck: - if Container.ElementExists['..\..\..\..\NVEX\Connection #' + IntToStr(aInt)] then - Result := '' - else - Result := 'NVEX\Connection #' + IntToStr(aInt) + ' is missing'; - end - end else - case aType of - ctToStr: Result := IntToStr(aInt); - end; -end; - -function wbNVTREdgeToInt(const aString: string; const aElement: IwbElement): Int64; -begin - Result := StrToInt64(aString); -end; - - -function wbEPFDActorValueToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - AsCardinal : Cardinal; - AsFloat : Single; -begin - AsCardinal := aInt; - AsFloat := PSingle(@AsCardinal)^; - aInt := Round(AsFloat); - case aType of - ctToStr: Result := wbActorValueEnum.ToString(aInt, aElement); - ctToSortKey: Result := wbActorValueEnum.ToSortKey(aInt, aElement); - ctCheck: Result := wbActorValueEnum.Check(aInt, aElement); - ctToEditValue: Result := wbActorValueEnum.ToEditValue(aInt, aElement); - ctEditType: Result := 'ComboBox'; - ctEditInfo: Result := wbActorValueEnum.EditInfo[aInt, aElement]; - end; -end; - -function wbEPFDActorValueToInt(const aString: string; const aElement: IwbElement): Int64; -var - AsCardinal : Cardinal; - AsFloat : Single; -begin - AsFloat := wbActorValueEnum.FromEditValue(aString, aElement); - PSingle(@AsCardinal)^ := AsFloat; - Result := AsCardinal; -end; - -function wbCTDAParam2VariableNameToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - //Container2 : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - BaseRecord : IwbMainRecord; - ScriptRef : IwbElement; - Script : IwbMainRecord; - Variables : TStringList; - LocalVars : IwbContainerElementRef; - LocalVar : IwbContainerElementRef; - i, j : Integer; - s : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - Exit; - - MainRecord := nil; - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; -{ if Param1.NativeValue = 0 then - if Supports(Container.Container, IwbContainerElementRef, Container) then - for i := 0 to Pred(Container.ElementCount) do - if Supports(Container.Elements[i], IwbContainerElementRef, Container2) then - if SameText(Container2.ElementValues['Function'], 'GetIsID') then begin - Param1 := Container2.ElementByName['Parameter #1']; - if Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Break; - end;} - - if not Assigned(MainRecord) then - Exit; - - BaseRecord := MainRecord.BaseRecord; - if Assigned(BaseRecord) then - MainRecord := BaseRecord; - - ScriptRef := MainRecord.RecordBySignature['SCRI']; - - if not Assigned(ScriptRef) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - if not Supports(ScriptRef.LinksTo, IwbMainRecord, Script) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - Script := Script.HighestOverrideOrSelf[aElement._File.LoadOrder]; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - Variables := TStringList.Create; - else - Variables := nil; - end; - try - if Supports(Script.ElementByName['Local Variables'], IwbContainerElementRef, LocalVars) then begin - for i := 0 to Pred(LocalVars.ElementCount) do - if Supports(LocalVars.Elements[i], IwbContainerElementRef, LocalVar) then begin - j := LocalVar.ElementNativeValues['SLSD\Index']; - s := LocalVar.ElementNativeValues['SCVR']; - if Assigned(Variables) then - Variables.AddObject(s, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := s; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - Variables.Sort; - Result := Variables.CommaText; - end; - end; - finally - FreeAndNil(Variables); - end; -end; - -function wbCTDAParam2VariableNameToInt(const aString: string; const aElement: IwbElement): Int64; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - BaseRecord : IwbMainRecord; - ScriptRef : IwbElement; - Script : IwbMainRecord; - LocalVars : IwbContainerElementRef; - LocalVar : IwbContainerElementRef; - i, j : Integer; - s : string; -begin - Result := StrToInt64Def(aString, Low(Cardinal)); - if Result <> Low(Cardinal) then - Exit; - - if not Assigned(aElement) then - raise Exception.Create('aElement not specified'); - - Container := GetContainerRefFromUnionOrValue(aElement); - - if not Assigned(Container) then - raise Exception.Create('Container not assigned'); - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - raise Exception.Create('Could not find "Parameter #1"'); - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - raise Exception.Create('"Parameter #1" does not reference a valid main record'); - - BaseRecord := MainRecord.BaseRecord; - if Assigned(BaseRecord) then - MainRecord := BaseRecord; - - ScriptRef := MainRecord.RecordBySignature['SCRI']; - - if not Assigned(ScriptRef) then - raise Exception.Create('"'+MainRecord.ShortName+'" does not contain a SCRI subrecord'); - - if not Supports(ScriptRef.LinksTo, IwbMainRecord, Script) then - raise Exception.Create('"'+MainRecord.ShortName+'" does not have a valid script'); - - Script := Script.HighestOverrideOrSelf[aElement._File.LoadOrder]; - - if Supports(Script.ElementByName['Local Variables'], IwbContainerElementRef, LocalVars) then begin - for i := 0 to Pred(LocalVars.ElementCount) do - if Supports(LocalVars.Elements[i], IwbContainerElementRef, LocalVar) then begin - j := LocalVar.ElementNativeValues['SLSD\Index']; - s := LocalVar.ElementNativeValues['SCVR']; - if SameText(s, Trim(aString)) then begin - Result := j; - Exit; - end; - end; - end; - - raise Exception.Create('Variable "'+aString+'" was not found in "'+MainRecord.ShortName+'"'); -end; - -function wbCTDAParam2QuestStageToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Stages : IwbContainerElementRef; - Stage : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - Exit; - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - try - if Supports(MainRecord.ElementByName['Stages'], IwbContainerElementRef, Stages) then begin - for i := 0 to Pred(Stages.ElementCount) do - if Supports(Stages.Elements[i], IwbContainerElementRef, Stage) then begin - j := Stage.ElementNativeValues['INDX']; - s := Trim(Stage.ElementValues['Log Entries\Log Entry\CNAM']); - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.AddObject(t, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbPerkDATAQuestStageToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Stages : IwbContainerElementRef; - Stage : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Quest']; - - if not Assigned(Param1) then - Exit; - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - try - if Supports(MainRecord.ElementByName['Stages'], IwbContainerElementRef, Stages) then begin - for i := 0 to Pred(Stages.ElementCount) do - if Supports(Stages.Elements[i], IwbContainerElementRef, Stage) then begin - j := Stage.ElementNativeValues['INDX']; - s := Trim(Stage.ElementValues['Log Entries\Log Entry\CNAM']); - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.AddObject(t, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbCTDAParam2QuestObjectiveToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Objectives : IwbContainerElementRef; - Objective : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - Exit; - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - try - if Supports(MainRecord.ElementByName['Objectives'], IwbContainerElementRef, Objectives) then begin - for i := 0 to Pred(Objectives.ElementCount) do - if Supports(Objectives.Elements[i], IwbContainerElementRef, Objective) then begin - j := Objective.ElementNativeValues['QOBJ']; - s := Trim(Objective.ElementValues['NNAM']); - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.AddObject(t, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbCTDAParam2QuestStageToInt(const aString: string; const aElement: IwbElement): Int64; -var - i : Integer; - s : string; -begin - i := 1; - s := Trim(aString); - while (i <= Length(s)) and (s[i] in ['0'..'9']) do - Inc(i); - s := Copy(s, 1, Pred(i)); - - Result := StrToInt(s); -end; - -function wbCTDAParam2QuestObjectiveToInt(const aString: string; const aElement: IwbElement): Int64; -var - i : Integer; - s : string; -begin - i := 1; - s := Trim(aString); - while (i <= Length(s)) and (s[i] in ['0'..'9']) do - Inc(i); - s := Copy(s, 1, Pred(i)); - - Result := StrToInt(s); -end; - - -function wbClmtMoonsPhaseLength(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - PhaseLength : Byte; - Masser : Boolean; - Secunda : Boolean; -begin - Result := ''; - if aType = ctToSortKey then begin - Result := IntToHex64(aInt, 2); - end else if aType = ctToStr then begin - PhaseLength := aInt mod 64; - Masser := (aInt and 64) <> 0; - Secunda := (aInt and 128) <> 0; - if Masser then - if Secunda then - Result := 'Masser, Secunda / ' - else - Result := 'Masser / ' - else - if Secunda then - Result := 'Secunda / ' - else - Result := 'No Moon / '; - Result := Result + IntToStr(PhaseLength); - end; -end; - -function wbClmtTime(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - Result := TimeToStr( EncodeTime(aInt div 6, (aInt mod 6) * 10, 0, 0) ) - else - Result := ''; -end; - -function wbREFRNavmeshTriangleToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Navmesh : IwbElement; - MainRecord : IwbMainRecord; - Triangles : IwbContainerElementRef; -begin - case aType of - ctToStr: Result := IntToStr(aInt); - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Navmesh := Container.Elements[0]; - - if not Assigned(Navmesh) then - Exit; - - if not Supports(Navmesh.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> NAVM then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - if not wbSimpleRecords and (aType = ctCheck) and Supports(MainRecord.ElementByPath['NVTR'], IwbContainerElementRef, Triangles) then - if aInt >= Triangles.ElementCount then - Result := ''; -end; - -function wbStringToInt(const aString: string; const aElement: IwbElement): Int64; -begin - Result := StrToIntDef(aString, 0); -end; - - -var - wbCtdaTypeFlags : IwbFlagsDef; - -function wbCtdaTypeToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - s: string; -begin - Result := ''; - case aType of - ctEditType: - Result := 'CheckComboBox'; - ctEditInfo: - Result := 'Equal,Greater,Lesser,Or,"Use Global","Run on Target"'; - ctToEditValue: begin - Result := '000000'; - case aInt and $F0 of - $00 : Result[1] := '1'; - $40 : Result[2] := '1'; - $60 : begin - Result[1] := '1'; - Result[2] := '1'; - end; - $80 : Result[3] := '1'; - $A0 : begin - Result[1] := '1'; - Result[3] := '1'; - end; - end; - if (aInt and $01) <> 0 then - Result[4] := '1'; - if (aInt and $02) <> 0 then - Result[6] := '1'; - if (aInt and $04) <> 0 then - Result[5] := '1'; - end; - ctToStr: begin - case aInt and $F0 of - $00 : Result := 'Equal to'; - $20 : Result := 'Not equal to'; - $40 : Result := 'Greater than'; - $60 : Result := 'Greater than or equal to'; - $80 : Result := 'Less than'; - $A0 : Result := 'Less than or equal to'; - else - Result := '' - end; - - if not Assigned(wbCtdaTypeFlags) then - wbCtdaTypeFlags := wbFlags([ - {0x01} 'Or', - {0x02} 'Run on target', - {0x04} 'Use global' - ]); - - s := wbCtdaTypeFlags.ToString(aInt and $0F, aElement); - - if s <> '' then - Result := Result + ' / ' + s; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - Exit; - end; - ctCheck: begin - case aInt and $F0 of - $00, $20, $40, $60, $80, $A0 : Result := ''; - else - Result := '' - end; - - if not Assigned(wbCtdaTypeFlags) then - wbCtdaTypeFlags := wbFlags([ - {0x01} 'Or', - {0x02} 'Run on target', - {0x04} 'Use global' - ]); - - s := wbCtdaTypeFlags.Check(aInt and $0F, aElement); - - if s <> '' then - Result := Result + ' / ' + s; - end; - end; -end; - -function wbCtdaTypeToInt(const aString: string; const aElement: IwbElement): Int64; -var - s: string; -begin - s := aString + '000000'; -// Result := 0; - if s[1] = '1' then begin - if s[2] = '1' then begin - if s[3] = '1' then begin - Result := $00; - end else begin - Result := $60; - end; - end else begin - if s[3] = '1' then begin - Result := $A0; - end else begin - Result := $00; - end; - end; - end else begin - if s[2] = '1' then begin - if s[3] = '1' then begin - Result := $20; - end else begin - Result := $40; - end; - end else begin - if s[3] = '1' then begin - Result := $80; - end else begin - Result := $20; - end; - end; - end; - if s[4] = '1' then - Result := Result or $01; - if s[6] = '1' then - Result := Result or $02; - if s[5] = '1' then - Result := Result or $04; -end; - -procedure wbHeadPartsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainerElementRef; -begin - if wbBeginInternalEdit then try - if Supports(aElement, IwbContainerElementRef, Container) then - if (Container.Elements[0].NativeValue = 1) and (Container.ElementCount > 2) then - Container.RemoveElement(1); - finally - wbEndInternalEdit; - end; -end; - -procedure wbMESGDNAMAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue : Integer; - Container : IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - OldValue := Integer(aOldValue) and 1; - NewValue := Integer(aNewValue) and 1; - if NewValue = OldValue then - Exit; - if NewValue = 1 then - Container.RemoveElement('TNAM') - else - Container.Add('TNAM', True); - end; -end; - -procedure wbGMSTEDIDAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue : string; - Container : IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - OldValue := aOldValue; - NewValue := aNewValue; - if (Length(OldValue) < 1) or (Length(OldValue) < 1) or (OldValue[1] <> NewValue[1]) then begin - Container.RemoveElement('DATA'); - Container.Add('DATA', True); - end; - end; -end; - -procedure wbFLSTEDIDAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue : string; - OldOrdered, NewOrdered : Boolean; - Container : IwbContainerElementRef; -const - OrderedList = 'OrderedList'; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - OldValue := aOldValue; - NewValue := aNewValue; - - if Length(OldValue) > Length(OrderedList) then - Delete(OldValue, 1, Length(OldValue)-Length(OrderedList)); - if Length(NewValue) > Length(OrderedList) then - Delete(NewValue, 1, Length(NewValue)-Length(OrderedList)); - - OldOrdered := SameText(OldValue, OrderedList); - NewOrdered := SameText(NewValue, OrderedList); - - if OldOrdered <> NewOrdered then - Container.RemoveElement('FormIDs'); - end; -end; - -procedure wbCtdaTypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue: Integer; - Container: IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - OldValue := aOldValue and $04; - NewValue := aNewValue and $04; - if OldValue <> NewValue then - Container.ElementNativeValues['..\Comparison Value'] := 0; - - if aNewValue and $02 then begin - Container.ElementNativeValues['..\Run On'] := 1; - if Integer(Container.ElementNativeValues['..\Run On']) = 1 then - aElement.NativeValue := Byte(aNewValue) and not $02; - end; -end; - -function wbMODTCallback(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Strings: TDynStrings; - i: Integer; -begin - Result := ''; - if wbLoaderDone and (aType in [ctToStr, ctToSortKey] ) then begin - Strings := wbContainerHandler.ResolveHash(aInt); - for i := Low(Strings) to High(Strings) do - Result := Result + Strings[i] + ', '; - SetLength(Result, Length(Result) -2 ); - end; -end; - - -function wbIdleAnam(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt and not $C0 of - 0: Result := 'Idle'; - 1: Result := 'Movement'; - 2: Result := 'Left Arm'; - 3: Result := 'Left Hand'; - 4: Result := 'Weapon'; - 5: Result := 'Weapon Up'; - 6: Result := 'Weapon Down'; - 7: Result := 'Special Idle'; - 20: Result := 'Whole Body'; - 21: Result := 'Upper Body'; - else - Result := ''; - end; - - if (aInt and $80) = 0 then - Result := Result + ', Must return a file'; - if (aInt and $40) = 1 then - Result := Result + ', Unknown Flag'; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - end; - ctCheck: begin - case aInt and not $C0 of - 0..7, 20, 21: Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbScaledInt4ToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -const - PlusMinus : array[Boolean] of string = ('+', '-'); -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: Result := FloatToStrF(aInt / 10000, ffFixed, 99, 4); - ctToSortKey: begin - Result := FloatToStrF(aInt / 10000, ffFixed, 99, 4); - if Length(Result) < 22 then - Result := StringOfChar('0', 22 - Length(Result)) + Result; - Result := PlusMinus[aInt < 0] + Result; - end; - ctCheck: Result := ''; - end; -end; - -function wbScaledInt4ToInt(const aString: string; const aElement: IwbElement): Int64; -var - f: Extended; -begin - f := StrToFloat(aString); - f := f * 10000; - Result := Round(f); -end; - -function wbHideFFFF(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - if aInt = $FFFF then - Result := 'None' - else - Result := IntToStr(aInt); -end; - -function wbAtxtPosition(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt div 17, 2) + IntToHex64(aInt mod 17, 2) - else if aType = ctCheck then begin - if (aInt < 0) or (aInt > 288) then - Result := '' - else - Result := ''; - end else if aType = ctToStr then - Result := IntToStr(aInt) + ' -> ' + IntToStr(aInt div 17) + ':' + IntToStr(aInt mod 17); -end; - -function wbGLOBFNAM(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt of - Ord('s'): Result := 'Short'; - Ord('l'): Result := 'Long'; - Ord('f'): Result := 'Float'; - else - Result := ''; - end; - end; - ctToSortKey: Result := Chr(aInt); - ctCheck: begin - case aInt of - Ord('s'), Ord('l'), Ord('f'): Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbPlacedAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec: IwbRecord; - Container: IwbContainer; - s: string; - Cell: IwbMainRecord; - Position: TwbVector; - Grid: TwbGridCell; -begin - Result := ''; - - Rec := aMainRecord.RecordBySignature['NAME']; - if Assigned(Rec) then begin - s := Trim(Rec.Value); - if s <> '' then - Result := 'places ' + s; - end; - - Container := aMainRecord.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if Assigned(Container) then begin - s := Trim(Container.Name); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'in ' + s; - - // grid position of persistent reference in exterior persistent cell (interior cells are not persistent) - if Supports(aMainRecord.Container, IwbGroupRecord, Container) then - Cell := IwbGroupRecord(Container).ChildrenOf; - if Assigned(Cell) and Cell.IsPersistent and (Cell.Signature = 'CELL') then - if aMainRecord.GetPosition(Position) then begin - Grid := wbPositionToGridCell(Position); - Result := Result + ' at ' + IntToStr(Grid.x) + ',' + IntToStr(Grid.y); - end; - end; - end; -end; - -function wbINFOAddInfo(const aMainRecord: IwbMainRecord): string; -var - Container: IwbContainer; - s: string; -begin - Result := Trim(aMainRecord.ElementValues['Responses\Response\NAM1']); - if Result <> '' then - Result := '''' + Result + ''''; - - Container := aMainRecord.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if Assigned(Container) then begin - s := Trim(Container.Name); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'in ' + s; - end; - end; - - s := Trim(aMainRecord.ElementValues['QSTI']); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'for ' + s; - end; -end; - -function wbNAVMAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec : IwbRecord; - Element : IwbElement; - s : string; -begin - Result := ''; - - Rec := aMainRecord.RecordBySignature['DATA']; - if Assigned(Rec) then begin - Element := Rec.ElementByName['Cell']; - if Assigned(Element) then - Element := Element.LinksTo; - if Assigned(Element) then - s := Trim(Element.Name); - if s <> '' then - Result := 'for ' + s; - end; -end; - -function wbCellAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec: IwbRecord; - Container: IwbContainer; - GroupRecord : IwbGroupRecord; - s: string; -begin - Result := ''; - - if not aMainRecord.IsPersistent then begin - Rec := aMainRecord.RecordBySignature['XCLC']; - if Assigned(Rec) then - Result := 'at ' + Rec.Elements[0].Value + ',' + Rec.Elements[1].Value; - end; - - Container := aMainRecord.Container; - while Assigned(Container) and not - (Supports(Container, IwbGroupRecord, GroupRecord) and (GroupRecord.GroupType = 1)) do - Container := Container.Container; - - if Assigned(Container) then begin - s := wbFormID.ToString(GroupRecord.GroupLabel, aMainRecord); - if s <> '' then begin - if Result <> '' then - s := s + ' '; - Result := 'in ' + s + Result; - end; - end; -end; - -function wbWthrDataClassification(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt and not 192 of - 0: Result := 'None'; - 1: Result := 'Pleasant'; - 2: Result := 'Cloudy'; - 4: Result := 'Rainy'; - 8: Result := 'Snow'; - else - Result := ''; - end; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2) - end; - ctCheck: begin - case aInt and not 192 of - 0, 1, 2, 4, 8: Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbNOTETNAMDecide(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rDATA: IwbRecord; -begin - Result := 0; - rDATA := aElement.Container.RecordBySignature[DATA]; - if Assigned(rDATA) then - if rDATA.NativeValue = 3 then //Voice - Result := 1; -end; - -function wbNOTESNAMDecide(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rDATA: IwbRecord; -begin - Result := 0; - rDATA := aElement.Container.RecordBySignature[DATA]; - if Assigned(rDATA) then - if rDATA.NativeValue = 3 then //Voice - Result := 1; -end; - -function wbIPDSDATACount(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if Assigned(aBasePtr) and Assigned(aEndPtr) then - Result := (Cardinal(aBasePtr) - Cardinal(aBasePtr)) div 4 - else - Result := 12; -end; - -function wbNAVINAVMGetCount1(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - DataContainer : IwbDataContainer; -begin - Result := 0; - - if Supports(aElement, IwbDataContainer, DataContainer) then begin - if DataContainer.ElementType = etArray then - if not Supports(DataContainer.Container, IwbDataContainer, DataContainer) then - Exit; - Assert(DataContainer.Name = 'Data'); - Result := PWord(Cardinal(DataContainer.DataBasePtr) + 3*3*4)^; - end; -end; - -function wbNAVINAVMGetCount2(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - DataContainer : IwbDataContainer; -begin - Result := 0; - - if Supports(aElement, IwbDataContainer, DataContainer) then begin - if DataContainer.ElementType = etArray then - if not Supports(DataContainer.Container, IwbDataContainer, DataContainer) then - Exit; - Assert(DataContainer.Name = 'Data'); - Result := PWord(Cardinal(DataContainer.DataBasePtr) + 3*3*4 + 2)^; - end; -end; - -procedure wbCTDARunOnAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - if aOldValue <> aNewValue then - if aNewValue <> 2 then - aElement.Container.ElementNativeValues['Reference'] := 0; -end; - -procedure wbPERKPRKETypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainerElementRef; -// rDATA : IwbRecord; -begin - if aOldValue <> aNewValue then - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - if Supports(Container.Container, IwbContainerElementRef, Container) then begin - Container.RemoveElement('DATA'); - Container.Add('DATA', True); - Container.RemoveElement('Perk Conditions'); - Container.RemoveElement('Entry Point Function Parameters'); - if aNewValue = 2 then begin - Container.Add('EPFT', True); - Container.ElementNativeValues['DATA\Entry Point\Function'] := 2; - end; - end; - end; -end; - -function wbMGEFFAssocItemDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - Archtype : Variant; - DataContainer : IwbDataContainer; - Element : IwbElement; -const - OffsetArchtype = 56; - -begin - Result := 1; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - VarClear(ArchType); - Element := Container.ElementByName['Archtype']; - if Assigned(Element) then - ArchType := Element.NativeValue - else if Supports(Container, IwbDataContainer, DataContainer) and - DataContainer.IsValidOffset(aBasePtr, aEndPtr, OffsetArchtype) then - begin // we are part of a proper structure - aBasePtr := Pointer(Cardinal(aBasePtr) + OffsetArchtype); - ArchType := PCardinal(aBasePtr)^; - end; - - if not VarIsEmpty(ArchType) then - case Integer(ArchType) of - 01: Result := 2;//Script - 18: Result := 3;//Bound Item - 19: Result := 4;//Summon Creature - else - Result := 0; - end; -end; - -procedure wbMGEFFAssocItemAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainer; - Element : IwbElement; -begin - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - if (aNewValue <> 0) then begin - Element := Container.ElementByName['Archtype']; - if Assigned(Element) and Element.NativeValue = 0 then - Element.NativeValue := $FF; // Signals ArchType that it should not mess with us on the next change! - end; -end; - -procedure wbMGEFArchtypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container: IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if (aNewValue < $FF) and (aOldValue < $FF) then begin - Container.ElementNativeValues['..\Assoc. Item'] := 0; - case Integer(aNewValue) of - 11: Container.ElementNativeValues['..\Actor Value'] := 48;//Invisibility - 12: Container.ElementNativeValues['..\Actor Value'] := 49;//Chameleon - 24: Container.ElementNativeValues['..\Actor Value'] := 47;//Paralysis - else - Container.ElementNativeValues['..\Actor Value'] := -1; - end; - end; -end; - -procedure wbCounterEffectsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterByPathAfterSet('DATA - Data\Counter effect count', aElement); -end; - -procedure wbMGEFAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerByPathAfterSet('DATA - Data\Counter effect count', 'Counter Effects', aElement); -end; - -function wbCTDAReferenceDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Integer(Container.ElementNativeValues['Run On']) = 2 then - Result := 1; -end; - -function wbNAVINVMIDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - case Integer(Container.ElementNativeValues['Type']) of - $00: Result :=1; - $20: Result :=2; - $30: Result :=3; - end; -end; - -function wbIMGSSkinDimmerDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbSubRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Supports(Container, IwbSubRecord, SubRecord) then - if SubRecord.SubRecordHeaderSize in [132, 148] then - Result := 1; -end; - -function wbCOEDOwnerDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - LinksTo : IwbElement; - MainRecord : IwbMainRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - LinksTo := Container.ElementByName['Owner'].LinksTo; - - if Supports(LinksTo, IwbMainRecord, MainRecord) then - if MainRecord.Signature = 'NPC_' then - Result := 1 - else if MainRecord.Signature = 'FACT' then - Result := 2; -end; - -function wbCreaLevelDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; - i: Int64; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - i := Container.ElementByName['Flags'].NativeValue; - if i and $00000080 <> 0 then - Result := 1; -end; - - -function wbGMSTUnionDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rEDID: IwbRecord; - s: string; -begin - Result := 1; - rEDID := aElement.Container.RecordBySignature[EDID]; - if Assigned(rEDID) then begin - s := rEDID.Value; - if Length(s) > 0 then - case s[1] of - 's': Result := 0; - 'f': Result := 2; - end; - end; -end; - -function wbFLSTLNAMIsSorted(const aContainer: IwbContainer): Boolean; -var - rEDID : IwbRecord; - s : string; - _File : IwbFile; - MainRecord : IwbMainRecord; -const - OrderedList = 'OrderedList'; -begin - Result := wbSortFLST; {>>> Should not be sorted according to Arthmoor and JustinOther, left as sorted for compatibility <<<} - rEDID := aContainer.RecordBySignature[EDID]; - if Assigned(rEDID) then begin - s := rEDID.Value; - if Length(s) > Length(OrderedList) then - Delete(s, 1, Length(s)-Length(OrderedList)); - if SameText(s, OrderedList) then - Result := False; - end; - if Result then begin - MainRecord := aContainer.ContainingMainRecord; - if not Assigned(MainRecord) then - Exit; - MainRecord := MainRecord.MasterOrSelf; - if not Assigned(MainRecord) then - Exit; - _File := MainRecord._File; - if not Assigned(_File) then - Exit; - if not SameText(_File.FileName, 'WeaponModKits.esp') then - Exit; - case (MainRecord.FormID and $FFFFFF) of - $0130EB, $0130ED, $01522D, $01522E, $0158D5, $0158D6, $0158D7, $0158D8, $0158D9, $0158DA, $0158DC, $0158DD, $018E20: - Result := False; - end; - end; -end; - -function wbPerkDATADecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rPRKE: IwbRecord; - eType: IwbElement; -begin - Result := 0; - rPRKE := aElement.Container.RecordBySignature[PRKE]; - if Assigned(rPRKE) then begin - eType := rPRKE.ElementByName['Type']; - if Assigned(eType) then begin - Result := eType.NativeValue; - end; - end; -end; - -function wbEPFDDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainerElementRef; -begin - Result := 0; - if not Assigned(aElement) then - Exit; - if not Supports(aElement.Container, IwbContainerElementRef, Container) then - Exit; - Result := Container.ElementNativeValues['EPFT']; - if Result = 2 then - if Integer(Container.ElementNativeValues['..\DATA\Entry Point\Function']) = 5 then - Result := 5; -end; - -type - TCTDAFunctionParamType = ( - ptNone, - ptInteger, - ptVariableName, //Integer - ptSex, //Enum: Male, Female - ptActorValue, //Enum: wbActorValue - ptCrimeType, //?? Enum - ptAxis, //?? Char - ptQuestStage, //?? Integer - ptMiscStat, //?? Enum - ptAlignment, //?? Enum - ptEquipType, //?? Enum - ptFormType, //?? Enum - ptCriticalStage, //?? Enum - - ptObjectReference, //REFR, ACHR, ACRE, PGRE - ptInventoryObject, //ARMO, BOOK, MISC, WEAP, AMMO, KEYM, ALCH, NOTE, ARMA - ptActor, //ACHR, ACRE - ptVoiceType, //VTYP - ptIdleForm, //IDLE - ptFormList, //FLST - ptNote, //NOTE - ptQuest, //QUST - ptFaction, //FACT - ptWeapon, //WEAP - ptCell, //CELL - ptClass, //CLAS - ptRace, //RACE - ptActorBase, //NPC_, CREA - ptGlobal, //GLOB - ptWeather, //WTHR - ptPackage, //PACK - ptEncounterZone, //ECZN - ptPerk, //PERK - ptOwner, //FACT, NPC_ - ptFurniture, //FURN - ptMagicItem, //SPEL - ptMagicEffect, //MGEF - ptWorldspace, //WRLD - ptVATSValueFunction, - ptVATSValueParam, - ptCreatureType, - ptMenuMode, - ptPlayerAction, - ptBodyLocation, - ptReferencableObject //TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, NOTE, PWAT, SCOL, TACT, TERM - ); - - PCTDAFunction = ^TCTDAFunction; - TCTDAFunction = record - Index: Integer; - Name: string; - ParamType1: TCTDAFunctionParamType; - ParamType2: TCTDAFunctionParamType; - end; - -const - wbCTDAFunctions : array[0..243] of TCTDAFunction = ( - (Index: 1; Name: 'GetDistance'; ParamType1: ptObjectReference), - (Index: 5; Name: 'GetLocked'), - (Index: 6; Name: 'GetPos'; ParamType1: ptAxis), - (Index: 8; Name: 'GetAngle'; ParamType1: ptAxis), - (Index: 10; Name: 'GetStartingPos'; ParamType1: ptAxis), - (Index: 11; Name: 'GetStartingAngle'; ParamType1: ptAxis), - (Index: 12; Name: 'GetSecondsPassed'), - (Index: 14; Name: 'GetActorValue'; ParamType1: ptActorValue), - (Index: 18; Name: 'GetCurrentTime'), - (Index: 24; Name: 'GetScale'), - (Index: 25; Name: 'IsMoving'), - (Index: 26; Name: 'IsTurning'), - (Index: 27; Name: 'GetLineOfSight'; ParamType1: ptObjectReference), - (Index: 32; Name: 'GetInSameCell'; ParamType1: ptObjectReference), - (Index: 35; Name: 'GetDisabled'), - (Index: 36; Name: 'MenuMode'; ParamType1: ptMenuMode), - (Index: 39; Name: 'GetDisease'), - (Index: 40; Name: 'GetVampire'), - (Index: 41; Name: 'GetClothingValue'), - (Index: 42; Name: 'SameFaction'; ParamType1: ptActor), - (Index: 43; Name: 'SameRace'; ParamType1: ptActor), - (Index: 44; Name: 'SameSex'; ParamType1: ptActor), - (Index: 45; Name: 'GetDetected'; ParamType1: ptActor), - (Index: 46; Name: 'GetDead'), - (Index: 47; Name: 'GetItemCount'; ParamType1: ptInventoryObject), - (Index: 48; Name: 'GetGold'), - (Index: 49; Name: 'GetSleeping'), - (Index: 50; Name: 'GetTalkedToPC'), - (Index: 53; Name: 'GetScriptVariable'; ParamType1: ptObjectReference; ParamType2: ptVariableName), - (Index: 56; Name: 'GetQuestRunning'; ParamType1: ptQuest), - (Index: 58; Name: 'GetStage'; ParamType1: ptQuest), - (Index: 59; Name: 'GetStageDone'; ParamType1: ptQuest; ParamType2: ptQuestStage), - (Index: 60; Name: 'GetFactionRankDifference'; ParamType1: ptFaction; ParamType2: ptActor), - (Index: 61; Name: 'GetAlarmed'), - (Index: 62; Name: 'IsRaining'), - (Index: 63; Name: 'GetAttacked'), - (Index: 64; Name: 'GetIsCreature'), - (Index: 65; Name: 'GetLockLevel'), - (Index: 66; Name: 'GetShouldAttack'; ParamType1: ptActor), - (Index: 67; Name: 'GetInCell'; ParamType1: ptCell), - (Index: 68; Name: 'GetIsClass'; ParamType1: ptClass), - (Index: 69; Name: 'GetIsRace'; ParamType1: ptRace), - (Index: 70; Name: 'GetIsSex'; ParamType1: ptSex), - (Index: 71; Name: 'GetInFaction'; ParamType1: ptFaction), - (Index: 72; Name: 'GetIsID'; ParamType1: ptReferencableObject), - (Index: 73; Name: 'GetFactionRank'; ParamType1: ptFaction), - (Index: 74; Name: 'GetGlobalValue'; ParamType1: ptGlobal), - (Index: 75; Name: 'IsSnowing'), - (Index: 76; Name: 'GetDisposition'; ParamType1: ptActor), - (Index: 77; Name: 'GetRandomPercent'), - (Index: 79; Name: 'GetQuestVariable'; ParamType1: ptQuest; ParamType2: ptVariableName), - (Index: 80; Name: 'GetLevel'), - (Index: 81; Name: 'GetArmorRating'), - (Index: 84; Name: 'GetDeadCount'; ParamType1: ptActorBase), - (Index: 91; Name: 'GetIsAlerted'), - (Index: 98; Name: 'GetPlayerControlsDisabled'; ParamType1: ptInteger; ParamType2: ptInteger{; ParamType3: ptInteger; ParamType4: ptInteger; ParamType5: ptInteger; ParamType6: ptInteger; ParamType7: ptInteger}), - (Index: 99; Name: 'GetHeadingAngle'; ParamType1: ptObjectReference), - (Index: 101; Name: 'IsWeaponOut'), - (Index: 102; Name: 'IsTorchOut'), - (Index: 103; Name: 'IsShieldOut'), - (Index: 106; Name: 'IsFacingUp'), - (Index: 107; Name: 'GetKnockedState'), - (Index: 108; Name: 'GetWeaponAnimType'), - (Index: 109; Name: 'IsWeaponSkillType'; ParamType1: ptActorValue), - (Index: 110; Name: 'GetCurrentAIPackage'), - (Index: 111; Name: 'IsWaiting'), - (Index: 112; Name: 'IsIdlePlaying'), - (Index: 116; Name: 'GetMinorCrimeCount'), - (Index: 117; Name: 'GetMajorCrimeCount'), - (Index: 118; Name: 'GetActorAggroRadiusViolated'), - (Index: 122; Name: 'GetCrime'; ParamType1: ptActor; ParamType2: ptCrimeType), - (Index: 123; Name: 'IsGreetingPlayer'), - (Index: 125; Name: 'IsGuard'), - (Index: 127; Name: 'HasBeenEaten'), - (Index: 128; Name: 'GetFatiguePercentage'), - (Index: 129; Name: 'GetPCIsClass'; ParamType1: ptClass), - (Index: 130; Name: 'GetPCIsRace'; ParamType1: ptRace), - (Index: 131; Name: 'GetPCIsSex'; ParamType1: ptSex), - (Index: 132; Name: 'GetPCInFaction'; ParamType1: ptFaction), - (Index: 133; Name: 'SameFactionAsPC'), - (Index: 134; Name: 'SameRaceAsPC'), - (Index: 135; Name: 'SameSexAsPC'), - (Index: 136; Name: 'GetIsReference'; ParamType1: ptObjectReference), - (Index: 141; Name: 'IsTalking'), - (Index: 142; Name: 'GetWalkSpeed'), - (Index: 143; Name: 'GetCurrentAIProcedure'), - (Index: 144; Name: 'GetTrespassWarningLevel'), - (Index: 145; Name: 'IsTrespassing'), - (Index: 146; Name: 'IsInMyOwnedCell'), - (Index: 147; Name: 'GetWindSpeed'), - (Index: 148; Name: 'GetCurrentWeatherPercent'), - (Index: 149; Name: 'GetIsCurrentWeather'; ParamType1: ptWeather), - (Index: 150; Name: 'IsContinuingPackagePCNear'), - (Index: 153; Name: 'CanHaveFlames'), - (Index: 154; Name: 'HasFlames'), - (Index: 157; Name: 'GetOpenState'), - (Index: 159; Name: 'GetSitting'), - (Index: 160; Name: 'GetFurnitureMarkerID'), - (Index: 161; Name: 'GetIsCurrentPackage'; ParamType1: ptPackage), - (Index: 162; Name: 'IsCurrentFurnitureRef'; ParamType1: ptObjectReference), - (Index: 163; Name: 'IsCurrentFurnitureObj'; ParamType1: ptFurniture), - (Index: 170; Name: 'GetDayOfWeek'), - (Index: 172; Name: 'GetTalkedToPCParam'; ParamType1: ptActor), - (Index: 175; Name: 'IsPCSleeping'), - (Index: 176; Name: 'IsPCAMurderer'), - (Index: 180; Name: 'GetDetectionLevel'; ParamType1: ptActor), - (Index: 182; Name: 'GetEquipped'; ParamType1: ptInventoryObject), - (Index: 185; Name: 'IsSwimming'), - (Index: 190; Name: 'GetAmountSoldStolen'), - (Index: 192; Name: 'GetIgnoreCrime'), - (Index: 193; Name: 'GetPCExpelled'; ParamType1: ptFaction), - (Index: 195; Name: 'GetPCFactionMurder'; ParamType1: ptFaction), - (Index: 197; Name: 'GetPCEnemyofFaction'; ParamType1: ptFaction), - (Index: 199; Name: 'GetPCFactionAttack'; ParamType1: ptFaction), - (Index: 203; Name: 'GetDestroyed'), - (Index: 214; Name: 'HasMagicEffect'; ParamType1: ptMagicEffect), - (Index: 215; Name: 'GetDefaultOpen'), - (Index: 219; Name: 'GetAnimAction'), - (Index: 223; Name: 'IsSpellTarget'; ParamType1: ptMagicItem), - (Index: 224; Name: 'GetVATSMode'), - (Index: 225; Name: 'GetPersuasionNumber'), - (Index: 226; Name: 'GetSandman'), - (Index: 227; Name: 'GetCannibal'), - (Index: 228; Name: 'GetIsClassDefault'; ParamType1: ptClass), - (Index: 229; Name: 'GetClassDefaultMatch'), - (Index: 230; Name: 'GetInCellParam'; ParamType1: ptCell; ParamType2: ptObjectReference), - (Index: 235; Name: 'GetVatsTargetHeight'), - (Index: 237; Name: 'GetIsGhost'), - (Index: 242; Name: 'GetUnconscious'), - (Index: 244; Name: 'GetRestrained'), - (Index: 246; Name: 'GetIsUsedItem'; ParamType1: ptReferencableObject), - (Index: 247; Name: 'GetIsUsedItemType'; ParamType1: ptFormType), - (Index: 254; Name: 'GetIsPlayableRace'), - (Index: 255; Name: 'GetOffersServicesNow'), - (Index: 258; Name: 'GetUsedItemLevel'), - (Index: 259; Name: 'GetUsedItemActivate'), - (Index: 264; Name: 'GetBarterGold'), - (Index: 265; Name: 'IsTimePassing'), - (Index: 266; Name: 'IsPleasant'), - (Index: 267; Name: 'IsCloudy'), - (Index: 274; Name: 'GetArmorRatingUpperBody'), - (Index: 277; Name: 'GetBaseActorValue'; ParamType1: ptActorValue), - (Index: 278; Name: 'IsOwner'; ParamType1: ptOwner), - (Index: 280; Name: 'IsCellOwner'; ParamType1: ptCell; ParamType2: ptOwner), - (Index: 282; Name: 'IsHorseStolen'), - (Index: 285; Name: 'IsLeftUp'), - (Index: 286; Name: 'IsSneaking'), - (Index: 287; Name: 'IsRunning'), - (Index: 288; Name: 'GetFriendHit'), - (Index: 289; Name: 'IsInCombat'), - (Index: 300; Name: 'IsInInterior'), - (Index: 304; Name: 'IsWaterObject'), - (Index: 306; Name: 'IsActorUsingATorch'), - (Index: 309; Name: 'IsXBox'), - (Index: 310; Name: 'GetInWorldspace'; ParamType1: ptWorldSpace), - (Index: 312; Name: 'GetPCMiscStat'; ParamType1: ptMiscStat), - (Index: 313; Name: 'IsActorEvil'), - (Index: 314; Name: 'IsActorAVictim'), - (Index: 315; Name: 'GetTotalPersuasionNumber'), - (Index: 318; Name: 'GetIdleDoneOnce'), - (Index: 320; Name: 'GetNoRumors'), - (Index: 323; Name: 'WhichServiceMenu'), - (Index: 327; Name: 'IsRidingHorse'), - (Index: 332; Name: 'IsInDangerousWater'), - (Index: 338; Name: 'GetIgnoreFriendlyHits'), - (Index: 339; Name: 'IsPlayersLastRiddenHorse'), - (Index: 353; Name: 'IsActor'), - (Index: 354; Name: 'IsEssential'), - (Index: 358; Name: 'IsPlayerMovingIntoNewSpace'), - (Index: 361; Name: 'GetTimeDead'), - (Index: 362; Name: 'GetPlayerHasLastRiddenHorse'), - (Index: 365; Name: 'IsChild'), - (Index: 367; Name: 'GetLastPlayerAction'), - (Index: 368; Name: 'IsPlayerActionActive'; ParamType1: ptPlayerAction), - (Index: 370; Name: 'IsTalkingActivatorActor'; ParamType1: ptActor), - (Index: 372; Name: 'IsInList'; ParamType1: ptFormList), - (Index: 382; Name: 'GetHasNote'; ParamType1: ptNote), - (Index: 391; Name: 'GetHitLocation'), - (Index: 392; Name: 'IsPC1stPerson'), - (Index: 397; Name: 'GetCauseofDeath'), - (Index: 398; Name: 'IsLimbGone'; ParamType1: ptBodyLocation), - (Index: 399; Name: 'IsWeaponInList'; ParamType1: ptFormList), - (Index: 403; Name: 'HasFriendDisposition'), - (Index: 408; Name: 'GetVATSValue'; ParamType1: ptVATSValueFunction; ParamType2: ptVATSValueParam), - (Index: 409; Name: 'IsKiller'; ParamType1: ptActor), - (Index: 410; Name: 'IsKillerObject'; ParamType1: ptFormList), - (Index: 411; Name: 'GetFactionCombatReaction'; ParamType1: ptFaction; ParamType2: ptFaction), - (Index: 415; Name: 'Exists'; ParamType1: ptObjectReference), - (Index: 416; Name: 'GetGroupMemberCount'), - (Index: 417; Name: 'GetGroupTargetCount'), - (Index: 427; Name: 'GetIsVoiceType'; ParamType1: ptVoiceType), - (Index: 428; Name: 'GetPlantedExplosive'), - (Index: 430; Name: 'IsActorTalkingThroughActivator'), - (Index: 431; Name: 'GetHealthPercentage'), - (Index: 433; Name: 'GetIsObjectType'; ParamType1: ptFormType), - (Index: 435; Name: 'GetDialogueEmotion'), - (Index: 436; Name: 'GetDialogueEmotionValue'), - (Index: 438; Name: 'GetIsCreatureType'; ParamType1: ptCreatureType), - (Index: 446; Name: 'GetInZone'; ParamType1: ptEncounterZone), - (Index: 449; Name: 'HasPerk'; ParamType1: ptPerk), - (Index: 450; Name: 'GetFactionRelation'; ParamType1: ptActor), - (Index: 451; Name: 'IsLastIdlePlayed'; ParamType1: ptIdleForm), - (Index: 454; Name: 'GetPlayerTeammate'), - (Index: 455; Name: 'GetPlayerTeammateCount'), - (Index: 459; Name: 'GetActorCrimePlayerEnemy'), - (Index: 460; Name: 'GetActorFactionPlayerEnemy'), - (Index: 464; Name: 'IsPlayerGrabbedRef'; ParamType1: ptObjectReference), - (Index: 471; Name: 'GetDestructionStage'), - (Index: 474; Name: 'GetIsAlignment'; ParamType1: ptAlignment), - (Index: 478; Name: 'GetThreatRatio'; ParamType1: ptActor), - (Index: 480; Name: 'GetIsUsedItemEquipType'; ParamType1: ptEquipType), - (Index: 489; Name: 'GetConcussed'), - (Index: 492; Name: 'GetMapMarkerVisible'), - (Index: 495; Name: 'GetPermanentActorValue'; ParamType1: ptActorValue), - (Index: 496; Name: 'GetKillingBlowLimb'), - (Index: 500; Name: 'GetWeaponHealthPerc'), - (Index: 503; Name: 'GetRadiationLevel'), - (Index: 510; Name: 'GetLastHitCritical'), - (Index: 515; Name: 'IsCombatTarget'; ParamType1: ptActor), - (Index: 518; Name: 'GetVATSRightAreaFree'; ParamType1: ptObjectReference), - (Index: 519; Name: 'GetVATSLeftAreaFree'; ParamType1: ptObjectReference), - (Index: 520; Name: 'GetVATSBackAreaFree'; ParamType1: ptObjectReference), - (Index: 521; Name: 'GetVATSFrontAreaFree'; ParamType1: ptObjectReference), - (Index: 522; Name: 'GetIsLockBroken'), - (Index: 523; Name: 'IsPS3'), - (Index: 524; Name: 'IsWin32'), - (Index: 525; Name: 'GetVATSRightTargetVisible'; ParamType1: ptObjectReference), - (Index: 526; Name: 'GetVATSLeftTargetVisible'; ParamType1: ptObjectReference), - (Index: 527; Name: 'GetVATSBackTargetVisible'; ParamType1: ptObjectReference), - (Index: 528; Name: 'GetVATSFrontTargetVisible'; ParamType1: ptObjectReference), - (Index: 531; Name: 'IsInCriticalStage'; ParamType1: ptCriticalStage), - (Index: 533; Name: 'GetXPForNextLevel'), - (Index: 546; Name: 'GetQuestCompleted'; ParamType1: ptQuest), - (Index: 550; Name: 'IsGoreDisabled'), - (Index: 555; Name: 'GetSpellUsageNum'; ParamType1: ptMagicItem), - (Index: 557; Name: 'GetActorsInHigh'), - (Index: 558; Name: 'HasLoaded3D'), - - // Added by FOSE: - (Index: 1024; Name: 'GetFOSEVersion'; ), - (Index: 1025; Name: 'GetFOSERevision'; ), - (Index: 1028; Name: 'GetWeight'; ParamType1: ptInventoryObject; ), - (Index: 1082; Name: 'IsKeyPressed'; ParamType1: ptInteger;), - (Index: 1165; Name: 'GetWeaponHasScope'; ParamType1: ptInventoryObject; ), - (Index: 1166; Name: 'IsControlPressed'; ParamType1: ptInteger; ), - (Index: 1213; Name: 'GetFOSEBeta'; ) - ); -var - wbCTDAFunctionEditInfo: string; - -function wbCTDAParamDescFromIndex(aIndex: Integer): PCTDAFunction; -var - L, H, I, C: Integer; -begin - Result := nil; - - L := Low(wbCTDAFunctions); - H := High(wbCTDAFunctions); - while L <= H do begin - I := (L + H) shr 1; - C := CmpW32(wbCTDAFunctions[I].Index, aIndex); - if C < 0 then - L := I + 1 - else begin - H := I - 1; - if C = 0 then begin - L := I; - Result := @wbCTDAFunctions[L]; - end; - end; - end; -end; - -function wbCTDACompValueDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Integer(Container.ElementByName['Type'].NativeValue) and $04 <> 0 then - Result := 1; -end; - -function wbCTDAParam1Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Desc: PCTDAFunction; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Desc := wbCTDAParamDescFromIndex(Container.ElementByName['Function'].NativeValue); - if Assigned(Desc) then - Result := Succ(Integer(Desc.ParamType1)); -end; - -function wbCTDAParam2VATSValueParam(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Result := Container.ElementByName['Parameter #1'].NativeValue; -end; - -function wbCTDAParam2Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Desc: PCTDAFunction; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Desc := wbCTDAParamDescFromIndex(Container.ElementByName['Function'].NativeValue); - if Assigned(Desc) then - Result := Succ(Integer(Desc.ParamType2)); -end; - -function wbCTDAFunctionToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Desc : PCTDAFunction; - i : Integer; -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := Desc.Name - else if aType = ctToEditValue then - Result := IntToStr(aInt) - else - Result := ''; - end; - ctToSortKey: Result := IntToHex(aInt, 8); - ctCheck: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := '' - else - Result := ''; - end; - ctEditType: - Result := 'ComboBox'; - ctEditInfo: begin - Result := wbCTDAFunctionEditInfo; - if Result = '' then begin - with TStringList.Create do try - for i := Low(wbCTDAFunctions) to High(wbCTDAFunctions) do - Add(wbCTDAFunctions[i].Name); - Sort; - Result := CommaText; - finally - Free; - end; - wbCTDAFunctionEditInfo := Result; - end; - end; - end; -end; - -function wbCTDAFunctionToInt(const aString: string; const aElement: IwbElement): Int64; -var - i: Integer; -begin - for i := Low(wbCTDAFunctions) to High(wbCTDAFunctions) do - with wbCTDAFunctions[i] do - if SameText(Name, aString) then begin - Result := Index; - Exit; - end; - Result := StrToInt64(aString); -end; - -type - TPERKEntryPointConditionType = ( - epcDefault, - epcItem, - epcWeapon, - epcWeaponTarget, - epcTarget, - epcAttacker, - epcAttackerAttackee, - epcAttackerAttackerWeapon - ); - - TPERKEntryPointFunctionType = ( - epfFloat, - epfLeveledItem, - epfScript, - epfUnknown - ); - - TPERKEntryPointFunctionParamType = ( - epfpNone, - epfpFloat, - epfpFloatFloat, - epfpLeveledItem, - epfpScript - ); - - PPERKEntryPoint = ^TPERKEntryPoint; - TPERKEntryPoint = record - Name : string; - Condition : TPERKEntryPointConditionType; - FunctionType : TPERKEntryPointFunctionType; - end; - - PPERKCondition = ^TPERKCondition; - TPERKCondition = record - Count : Integer; - Caption1 : string; - Caption2 : string; - Caption3 : string; - end; - - PPERKFunction = ^TPERKFunction; - TPERKFunction = record - Name : string; - FunctionType : TPERKEntryPointFunctionType; - ParamType : TPERKEntryPointFunctionParamType; - end; - -const - wbPERKCondition : array[TPERKEntryPointConditionType] of TPERKCondition = ( - (Count: 1; Caption1: 'Perk Owner'), - (Count: 2; Caption1: 'Perk Owner'; Caption2: 'Item'), - (Count: 2; Caption1: 'Perk Owner'; Caption2: 'Weapon'), - (Count: 3; Caption1: 'Perk Owner'; Caption2: 'Weapon'; Caption3: 'Target'), - (Count: 2; Caption1: 'Perk Owner'; Caption2: 'Target'), - (Count: 2; Caption1: 'Perk Owner'; Caption2: 'Attacker'), - (Count: 3; Caption1: 'Perk Owner'; Caption2: 'Attacker'; Caption3: 'Attackee'), - (Count: 3; Caption1: 'Perk Owner'; Caption2: 'Attacker'; Caption3: 'Attacker Weapon') - ); - - wbPERKFunctions : array[0..9] of TPERKFunction = ( - (Name: ''; FunctionType: epfUnknown; ParamType: epfpNone), - (Name: 'Set Value'; FunctionType: epfFloat; ParamType: epfpFloat), - (Name: 'Add Value'; FunctionType: epfFloat; ParamType: epfpFloat), - (Name: 'Multiply Value'; FunctionType: epfFloat; ParamType: epfpFloat), - (Name: 'Add Range To Value'; FunctionType: epfFloat; ParamType: epfpFloatFloat), - (Name: 'Add Actor Value Mult'; FunctionType: epfFloat; ParamType: epfpFloatFloat), - (Name: ''; FunctionType: epfUnknown; ParamType: epfpNone), - (Name: ''; FunctionType: epfUnknown; ParamType: epfpNone), - (Name: 'Add Leveled List'; FunctionType: epfLeveledItem; ParamType: epfpLeveledItem), - (Name: 'Add Activate Choice'; FunctionType: epfScript; ParamType: epfpScript) - ); - - wbPERKEntryPoints : array[0..36] of TPERKEntryPoint = ( - (Name: 'Calculate Weapon Damage'; Condition: epcWeaponTarget), - (Name: 'Calculate My Critical Hit Chance'; Condition: epcWeaponTarget), - (Name: 'Calculate My Critical Hit Damage'; Condition: epcWeaponTarget), - (Name: 'Calculate Weapon Attack AP Cost'; Condition: epcWeapon), - (Name: 'Calculate Mine Explode Chance'; Condition: epcItem), - (Name: 'Adjust Range Penalty'; Condition: epcWeapon), - (Name: 'Adjust Limb Damage'; Condition: epcAttackerAttackerWeapon), - (Name: 'Calculate Weapon Range'; Condition: epcWeapon), - (Name: 'Calculate To Hit Chance'; Condition: epcWeaponTarget), - (Name: 'Adjust Experience Points'), - (Name: 'Adjust Gained Skill Points'), - (Name: 'Adjust Book Skill Points'), - (Name: 'Modify Recovered Health'), - (Name: 'Calculate Inventory AP Cost'), - (Name: 'Get Disposition'; Condition: epcTarget), - (Name: 'Get Should Attack'; Condition: epcAttacker), - (Name: 'Get Should Assist'; Condition: epcAttackerAttackee), - (Name: 'Calculate Buy Price'; Condition: epcItem), - (Name: 'Get Bad Karma'), - (Name: 'Get Good Karma'), - (Name: 'Ignore Locked Terminal'), - (Name: 'Add Leveled List On Death'; Condition: epcTarget; FunctionType: epfLeveledItem), - (Name: 'Get Max Carry Weight'), - (Name: 'Modify Addiction Chance'), - (Name: 'Modify Addiction Duration'), - (Name: 'Modify Positive Chem Duration'), - (Name: 'Adjust Drinking Radiation'), - (Name: 'Activate'; Condition: epcTarget; FunctionType: epfScript), - (Name: 'Mysterious Stranger'), - (Name: 'Has Paralyzing Palm'), - (Name: 'Hacking Science Bonus'), - (Name: 'Ignore Running During Detection'), - (Name: 'Ignore Broken Lock'), - (Name: 'Has Concentrated Fire'), - (Name: 'Calculate Gun Spread'; Condition: epcWeapon), - (Name: 'Player Kill AP Reward'; Condition: epcWeaponTarget), - (Name: 'Modify Enemy Critical Hit Chance'; Condition: epcWeaponTarget) - ); - - wbPERKFunctionParams: array[TPERKEntryPointFunctionParamType] of string = ( - 'None', - 'Float', - 'Float, Float', - 'Leveled Item', - 'Script' - ); - -procedure wbPERKEntryPointAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldEntryPoint : PPERKEntryPoint; - NewEntryPoint : PPERKEntryPoint; - OldCondition : PPERKCondition; - NewCondition : PPERKCondition; - OldFunction : PPERKFunction; - EntryPoint : IwbContainerElementRef; - Effect : IwbContainerElementRef; - PerkConditions : IwbContainerElementRef; - PerkCondition : IwbContainerElementRef; - Container : IwbContainerElementRef; - i : Integer; -begin - if aOldValue <> aNewValue then begin - OldEntryPoint := @wbPERKEntryPoints[Integer(aOldValue)]; - NewEntryPoint := @wbPERKEntryPoints[Integer(aNewValue)]; - OldCondition := @wbPERKCondition[OldEntryPoint.Condition]; - NewCondition := @wbPERKCondition[NewEntryPoint.Condition]; - if not Assigned(aElement) then - Exit; - if not Supports(aElement.Container, IwbContainerElementRef, EntryPoint) then - Exit; - i := EntryPoint.ElementNativeValues['Function']; - if (i >= Low(wbPERKFunctions)) and (i <= High(wbPERKFunctions)) then - OldFunction := @wbPERKFunctions[i] - else - OldFunction := nil; - if not Assigned(OldFunction) or (OldFunction.FunctionType <> NewEntryPoint.FunctionType) then - for i := Low(wbPERKFunctions) to High(wbPERKFunctions) do - with wbPERKFunctions[i] do - if FunctionType = NewEntryPoint.FunctionType then begin - EntryPoint.ElementNativeValues['Function'] := i; - Break; - end; - EntryPoint.ElementNativeValues['Perk Condition Tab Count'] := NewCondition.Count; - - if not Supports(EntryPoint.Container, IwbContainerElementRef, Container) then - Exit; - if not Supports(Container.Container, IwbContainerElementRef, Effect) then - Exit; - - if not Supports(Effect.ElementByName['Perk Conditions'], IwbContainerElementRef, PerkConditions) then - Exit; - - for i := Pred(PerkConditions.ElementCount) downto 0 do - if Supports(PerkConditions.Elements[i], IwbContainerElementRef, PerkCondition) then - if Integer(PerkCondition.ElementNativeValues['PRKC']) >= NewCondition.Count then - PerkCondition.Remove - else - case Integer(PerkCondition.ElementNativeValues['PRKC']) of - 2: if OldCondition.Caption2 <> NewCondition.Caption2 then - PerkCondition.Remove; - 3: if OldCondition.Caption3 <> NewCondition.Caption3 then - PerkCondition.Remove; - end; - end; -end; - -function wbPRKCToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - EntryPointVar : Variant; - EntryPoint : Integer; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - EntryPointVar := Container.ElementNativeValues['..\..\..\DATA\Entry Point\Entry Point']; - if VarIsNull(EntryPointVar) or VarIsClear(EntryPointVar) then - Exit; - EntryPoint := EntryPointVar; - if (EntryPoint < Low(wbPERKEntryPoints)) or (EntryPoint > High(wbPERKEntryPoints)) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - with wbPERKEntryPoints[EntryPoint] do begin - with wbPERKCondition[Condition] do begin - case aType of - ctEditType: Result := 'ComboBox'; - ctEditInfo: with TStringList.Create do try - if Caption1 <> '' then - Add(Caption1); - if Caption2 <> '' then - Add(Caption2); - if Caption3 <> '' then - Add(Caption3); - Sort; - Result := CommaText; - finally - Free; - end; - else - if (aInt < 0) or (aInt >= Count) then - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end - else - case aType of - ctToStr, ctToEditValue: case Integer(aInt) of - 0: Result := Caption1; - 1: Result := Caption2; - 2: Result := Caption3; - end; - ctCheck: Result := ''; - end; - end; - end; - end; -end; - -function wbPRKCToInt(const aString: string; const aElement: IwbElement): Int64; -var - Container : IwbContainerElementRef; - EntryPointVar : Variant; - EntryPoint : Integer; - s : string; -begin - s := Trim(aString); - - Result := StrToInt64Def(s, Low(Integer)); - if Result <> Low(Integer) then - Exit; - if s = '' then begin - Result := 0; - Exit; - end; - - if not Supports(aElement, IwbContainerElementRef, Container) then - raise Exception.Create('Could not resolve Entry Point'); - EntryPointVar := Container.ElementNativeValues['..\..\..\DATA\Entry Point\Entry Point']; - if VarIsNull(EntryPointVar) or VarIsClear(EntryPointVar) then - raise Exception.Create('Could not resolve Entry Point'); - - EntryPoint := EntryPointVar; - if (EntryPoint < Low(wbPERKEntryPoints)) or (EntryPoint > High(wbPERKEntryPoints)) then - raise Exception.Create('Unknown Entry Point #'+IntToStr(EntryPoint)); - - with wbPERKEntryPoints[EntryPoint] do - with wbPERKCondition[Condition] do - if SameText(aString, Caption1) then - Result := 0 - else if SameText(aString, Caption2) then - Result := 1 - else if SameText(aString, Caption3) then - Result := 2 - else - raise Exception.Create('"'+s+'" is not valid for this Entry Point'); -end; - -function wbNeverShow(const aElement: IwbElement): Boolean; -begin - Result := wbHideNeverShow; -end; - -function GetREGNType(aElement: IwbElement): Integer; -var - Container: IwbContainerElementRef; -begin - Result := -1; - if not Assigned(aElement) then - Exit; - while aElement.Name <> 'Region Data Entry' do begin - aElement := aElement.Container; - if not Assigned(aElement) then - Exit; - end; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - Result := Container.ElementNativeValues['RDAT\Type']; -end; - -function wbREGNObjectsDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 2; -end; - -function wbREGNWeatherDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 3; -end; - -function wbREGNMapDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 4; -end; - -function wbREGNLandDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 5; -end; - -function wbREGNGrassDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 6; -end; - -function wbREGNSoundDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 7; -end; - -function wbMESGTNAMDontShow(const aElement: IwbElement): Boolean; -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - Result := False; - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if Integer(Container.ElementNativeValues['DNAM']) and 1 <> 0 then - Result := True; -end; - -function wbEPFDDontShow(const aElement: IwbElement): Boolean; -var - Container: IwbContainerElementRef; -begin - Result := False; - if aElement.Name <> 'Entry Point Function Parameters' then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if not (Integer(Container.ElementNativeValues['EPFT']) in [1..3]) then - Result := True; -end; - -function wbTES4ONAMDontShow(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - Result := False; - if not Assigned(aElement) then - Exit; - MainRecord := aElement.ContainingMainRecord; - if not Assigned(MainRecord) then - Exit; - if not MainRecord.IsESM then - Result := True; -end; - - -function wbEPF2DontShow(const aElement: IwbElement): Boolean; -var - Container: IwbContainerElementRef; -begin - Result := False; - if aElement.Name <> 'Entry Point Function Parameters' then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if not (Integer(Container.ElementNativeValues['EPFT']) in [4]) then - Result := True; -end; - -function wbPERKPRKCDontShow(const aElement: IwbElement): Boolean; -var - Container: IwbContainerElementRef; -begin - Result := False; - if aElement.Name <> 'Effect' then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if Integer(Container.ElementNativeValues['PRKE\Type']) <> 2 then - Result := True; -end; - -function wbPerkDATAFunctionToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - EntryPointVar : Variant; - EntryPoint : Integer; - i : Integer; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - EntryPointVar := Container.ElementNativeValues['..\Entry Point']; - if VarIsNull(EntryPointVar) or VarIsClear(EntryPointVar) then - Exit; - EntryPoint := EntryPointVar; - if (EntryPoint < Low(wbPERKEntryPoints)) or (EntryPoint > High(wbPERKEntryPoints)) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - with wbPERKEntryPoints[EntryPoint] do begin - case aType of - ctEditType: Result := 'ComboBox'; - ctEditInfo: with TStringList.Create do try - for i := Low(wbPERKFunctions) to High(wbPERKFunctions) do - if wbPERKFunctions[i].FunctionType = FunctionType then - if (wbPERKFunctions[i].Name <> '') then - Add(wbPERKFunctions[i].Name); - Sort; - Result := CommaText; - finally - Free; - end; - else - if (aInt < Low(wbPERKFunctions)) or (aInt > High(wbPERKFunctions)) then - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end - else - case aType of - ctToStr, ctToEditValue: begin - Result := wbPERKFunctions[Integer(aInt)].Name; - if (aType = ctToStr) and (wbPERKFunctions[Integer(aInt)].FunctionType <> FunctionType) then - Result := Result + ' '; - end; - ctCheck: - if wbPERKFunctions[Integer(aInt)].FunctionType <> FunctionType then - Result := '' - else - Result := ''; - end; - end; - end; -end; - -function wbPerkDATAFunctionToInt(const aString: string; const aElement: IwbElement): Int64; -var - Container : IwbContainerElementRef; - EntryPointVar : Variant; - EntryPoint : Integer; - s : string; - i : Integer; -begin - s := Trim(aString); - - Result := StrToInt64Def(s, Low(Integer)); - if Result <> Low(Integer) then - Exit; - if s = '' then - raise Exception.Create('"" is not a valid value for this field'); - - if not Supports(aElement, IwbContainerElementRef, Container) then - raise Exception.Create('Could not resolve Entry Point'); - EntryPointVar := Container.ElementNativeValues['..\Entry Point']; - if VarIsNull(EntryPointVar) or VarIsClear(EntryPointVar) then - raise Exception.Create('Could not resolve Entry Point'); - - EntryPoint := EntryPointVar; - if (EntryPoint < Low(wbPERKEntryPoints)) or (EntryPoint > High(wbPERKEntryPoints)) then - raise Exception.Create('Unknown Entry Point #'+IntToStr(EntryPoint)); - - with wbPERKEntryPoints[EntryPoint] do - for i := Low(wbPERKFunctions) to High(wbPERKFunctions) do - if wbPERKFunctions[i].FunctionType = FunctionType then - if SameText(s, wbPERKFunctions[i].Name) then begin - Result := i; - Exit; - end; - - raise Exception.Create('"'+s+'" is not valid for this Entry Point'); -end; - -procedure wbPerkDATAFunctionAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - NewFunction : Integer; - Container : IwbContainerElementRef; - OldParamType: Integer; - NewParamType: Integer; -begin - NewFunction := aNewValue; - if (NewFunction < Low(wbPERKFunctions)) or (NewFunction > High(wbPERKFunctions)) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - OldParamType := Container.ElementNativeValues['..\..\..\Entry Point Function Parameters\EPFT']; - NewParamType := Ord(wbPERKFunctions[NewFunction].ParamType); - if (OldParamType = NewParamType) and not VarSameValue(aOldValue, aNewValue) and (NewFunction in [4,5]) then - Container.ElementNativeValues['..\..\..\Entry Point Function Parameters\EPFT'] := 0; - Container.ElementNativeValues['..\..\..\Entry Point Function Parameters\EPFT'] := NewParamType; -end; - -function wbPerkEPFTToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - FunctionTypeVar : Variant; - FunctionType : Integer; -// i : Integer; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - FunctionTypeVar := Container.ElementNativeValues['..\..\DATA\Entry Point\Function']; - if VarIsNull(FunctionTypeVar) or VarIsClear(FunctionTypeVar) then - Exit; - FunctionType := FunctionTypeVar; - if (FunctionType < Low(wbPERKFunctions)) or (FunctionType > High(wbPERKFunctions)) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - with wbPERKFunctions[FunctionType] do begin - case aType of - ctEditType: Result := 'ComboBox'; - ctEditInfo: Result := '"' + wbPERKFunctionParams[ParamType] + '"'; - else - if (aInt < Ord(Low(wbPERKFunctionParams))) or (aInt > Ord(High(wbPERKFunctionParams))) then - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end - else - case aType of - ctToStr, ctToEditValue: begin - Result := wbPERKFunctionParams[TPERKEntryPointFunctionParamType(aInt)]; - if (aType = ctToStr) and (TPERKEntryPointFunctionParamType(aInt) <> ParamType) then - Result := Result + ' '; - end; - ctCheck: - if TPERKEntryPointFunctionParamType(aInt) <> ParamType then - Result := Result + ' ' - else - Result := ''; - end; - end; - end; -end; - -function wbPerkEPFTToInt(const aString: string; const aElement: IwbElement): Int64; -var - Container : IwbContainerElementRef; - FunctionTypeVar : Variant; - FunctionType : Integer; - s : string; -// i : Integer; - j : TPERKEntryPointFunctionParamType; -begin - s := Trim(aString); - - Result := StrToInt64Def(s, Low(Integer)); - if Result <> Low(Integer) then - Exit; - if s = '' then - raise Exception.Create('"" is not a valid value for this field'); - - if not Supports(aElement, IwbContainerElementRef, Container) then - raise Exception.Create('Could not resolve Function'); - FunctionTypeVar := Container.ElementNativeValues['..\..\DATA\Entry Point\Function']; - if VarIsNull(FunctionTypeVar) or VarIsClear(FunctionTypeVar) then - raise Exception.Create('Could not resolve Function'); - - FunctionType := FunctionTypeVar; - if (FunctionType < Low(wbPERKFunctions)) or (FunctionType > High(wbPERKFunctions)) then - raise Exception.Create('Unknown Function #'+IntToStr(FunctionType)); - - with wbPERKFunctions[FunctionType] do begin - for j := Low(wbPERKFunctionParams) to High(wbPERKFunctionParams) do - if SameText(s, wbPERKFunctionParams[j]) then begin - if j <> ParamType then - raise Exception.Create('"'+s+'" is not a valid Parameter Type for Function "'+Name+'"'); - Result := Ord(j); - Exit; - end; - end; - - raise Exception.Create('"'+s+'" is not a valid Parameter Type'); -end; - -procedure wbPerkEPFTAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - i: Integer; - Container: IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - i := aNewValue; - if (i < Ord(Low(wbPERKFunctionParams))) or (i> Ord(High(wbPERKFunctionParams))) then - Exit; - if not Supports(aElement.Container, IwbContainerElementRef, Container) then - Exit; - Container.RemoveElement('EPFD'); - Container.RemoveElement('EPF2'); - Container.RemoveElement('EPF3'); - Container.RemoveElement('Embedded Script'); - case TPERKEntryPointFunctionParamType(i) of - epfpFloat, epfpFloatFloat, epfpLeveledItem: - Container.Add('EPFD', True); - epfpScript: begin - Container.Add('EPF2', True); - Container.Add('EPF3', True); - Container.Add('SCHR', True); - end; - end; -end; - -procedure wbRemoveOFST(const aElement: IwbElement); -var - Container: IwbContainer; - rOFST: IwbRecord; -begin - if not wbRemoveOffsetData then - Exit; - - if Supports(aElement, IwbContainer, Container) then begin - if wbBeginInternalEdit then try - Container.RemoveElement(OFST); - finally - wbEndInternalEdit; - end else begin - rOFST := Container.RecordBySignature[OFST]; - if Assigned(rOFST) then - Container.RemoveElement(rOFST); - end; - end; -end; - -function wbActorTemplateUseTraits(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000001) <> 0; - end; -end; - -function wbActorTemplateUseStats(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000002) <> 0; - end; -end; - -function wbActorAutoCalcDontShow(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Flags']; - Result := (i and $00000010) <> 0; - end; -end; - -function wbActorTemplateUseStatsAutoCalc(const aElement: IwbElement): Boolean; -begin - if not wbActorTemplateHide then - Result := False - else - Result := wbActorTemplateUseStats(aElement) or wbActorAutoCalcDontShow(aElement); -end; - -function wbActorTemplateUseFactions(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000004) <> 0; - end; -end; - -function wbActorTemplateUseActorEffectList(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000008) <> 0; - end; -end; - -function wbActorTemplateUseAIData(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000010) <> 0; - end; -end; - -function wbActorTemplateUseAIPackages(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000020) <> 0; - end; -end; - -function wbActorTemplateUseModelAnimation(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000040) <> 0; - end; -end; - -function wbActorTemplateUseBaseData(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000080) <> 0; - end; -end; - -function wbActorTemplateUseInventory(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000100) <> 0; - end; -end; - -function wbActorTemplateUseScript(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - if not wbActorTemplateHide then Exit; - Element := GetElementFromUnion(aElement); - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000200) <> 0; - end; -end; - -procedure wbCTDAAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - //Size : Cardinal; - TypeFlags : Cardinal; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - TypeFlags := Container.ElementNativeValues['Type']; - if (TypeFlags and $02) <> 0 then begin - if Container.DataSize = 20 then - Container.DataSize := 28; - Container.ElementNativeValues['Type'] := TypeFlags and not $02; - Container.ElementEditValues['Run On'] := 'Target'; - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbMGEFAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - OldActorValue : Integer; - NewActorValue : Integer; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - OldActorValue := Container.ElementNativeValues['DATA - Data\Actor Value']; - NewActorValue := OldActorValue; - case Integer(Container.ElementNativeValues['DATA - Data\Archtype']) of - 01, //Script - 02, //Dispel - 03, //Cure Disease - 13, //Light - 16, //Lock - 17, //Open - 18, //Bound Item - 19, //Summon Creature - 30, //Cure Paralysis - 31, //Cure Addiction - 32, //Cure Poison - 33: //Concussion - NewActorValue := -1; - 11: //Invisibility - NewActorValue := 48; //Invisibility - 12: //Chameleon - NewActorValue := 49; //Chameleon - 24: //Paralysis - NewActorValue := 47; //Paralysis - end; - if OldActorValue <> NewActorValue then - Container.ElementNativeValues['DATA - Data\Actor Value'] := NewActorValue; - finally - wbEndInternalEdit; - end; -end; - -procedure wbPACKAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - NewContainer : IwbContainerElementRef; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - case Integer(Container.ElementNativeValues['PKDT - General\Type']) of - 0: begin {Find} - Container.Add('PTDT'); - end; - 1: begin {Follow} - Container.Add('PKFD'); - end; - 2: begin {Escort} - end; - 3: begin {Eat} - Container.Add('PTDT'); - Container.Add('PKED'); - end; - 4: begin {Sleep} - if not Container.ElementExists['Locations'] then - if Supports(Container.Add('Locations'), IwbContainerElementRef, NewContainer) then - NewContainer.ElementEditValues['PLDT - Location 1\Type'] := 'Near editor location'; - end; - 5: begin {Wander} - end; - 6: begin {Travel} - end; - 7: begin {Accompany} - end; - 8: begin {Use Item At} - end; - 9: begin {Ambush} - end; - 10: begin {Flee Not Combat} - end; - 12: begin {Sandbox} - end; - 13: begin {Patrol} - if not Container.ElementExists['Locations'] then - if Supports(Container.Add('Locations'), IwbContainerElementRef, NewContainer) then - NewContainer.ElementEditValues['PLDT - Location 1\Type'] := 'Near linked reference'; - Container.Add('PKPT'); - end; - 14: begin {Guard} - end; - 15: begin {Dialogue} - end; - 16: begin {Use Weapon} - end; - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbNPCAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -// BaseRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if Container.ElementNativeValues['NAM5'] > 255 then - Container.ElementNativeValues['NAM5'] := 255; - finally - wbEndInternalEdit; - end; -end; - -procedure wbREFRAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - BaseRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - Container.RemoveElement('RCLR'); - - if Container.ElementExists['Ammo'] then begin - BaseRecord := MainRecord.BaseRecord; - if Assigned(BaseRecord) and (BaseRecord.Signature <> 'WEAP') then - Container.RemoveElement('Ammo'); - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbINFOAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if (Integer(Container.ElementNativeValues['DATA\Flags 1']) and $80) = 0 then - Container.RemoveElement('DNAM'); - - Container.RemoveElement('SNDD'); - - if Container.ElementNativeValues['DATA\Type'] = 3 {Persuasion} then - Container.ElementNativeValues['DATA\Type'] := 0 {Topic}; - finally - wbEndInternalEdit; - end; -end; - -procedure wbCELLAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; -// Container2 : IwbContainerElementRef; - MainRecord : IwbMainRecord; -// i : Integer; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if (not Container.ElementExists['XCLW']) and ((Integer(Container.ElementNativeValues['DATA']) and $02) <> 0) then begin - Container.Add('XCLW', True); - Container.ElementEditValues['XCLW'] := 'Default'; - end; - - if (not Container.ElementExists['XNAM']) and ((Integer(Container.ElementNativeValues['DATA']) and $02) <> 0) then - Container.Add('XNAM', True); - -// if Supports(Container.ElementBySignature[XCLR], IwbContainerElementRef, Container2) then begin -// for i:= Pred(Container2.ElementCount) downto 0 do -// if not Supports(Container2.Elements[i].LinksTo, IwbMainRecord, MainRecord) or (MainRecord.Signature <> 'REGN') then -// Container2.RemoveElement(i); -// if Container2.ElementCount < 1 then -// Container2.Remove; -// end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbEmbeddedScriptAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if Container.ElementEditValues['SCHR\Type'] = 'Quest' then - Container.ElementEditValues['SCHR\Type'] := 'Object'; - finally - wbEndInternalEdit; - end; -end; - - -procedure wbSOUNAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; - OldCntr: IwbContainerElementRef; - NewCntr: IwbContainerElementRef; - NewCntr2: IwbContainerElementRef; - i: Integer; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if Container.ElementExists['SNDD'] then - Exit; - - if not Supports(Container.RemoveElement('SNDX - Sound Data'), IwbContainerElementRef, OldCntr) then - Exit; - if not Supports(Container.Add('SNDD', True), IwbContainerElementRef, NewCntr) then - Exit; - for i := 0 to Pred(Min(OldCntr.ElementCount, NewCntr.ElementCount)) do - NewCntr.Elements[i].Assign(Low(Integer), OldCntr.Elements[i], False); - - if not Supports(NewCntr.ElementByName['Attenuation Curve'], IwbContainerElementRef, NewCntr2) then - Assert(False); - Assert(NewCntr2.ElementCount = 5); - - if Supports(Container.RemoveElement('ANAM'), IwbContainerElementRef, OldCntr) then begin - Assert(OldCntr.ElementCount = 5); - for i := 0 to Pred(Min(OldCntr.ElementCount, NewCntr2.ElementCount)) do - NewCntr2.Elements[i].Assign(Low(Integer), OldCntr.Elements[i], False); - end else begin - NewCntr2.Elements[0].NativeValue := 100; - NewCntr2.Elements[1].NativeValue := 50; - NewCntr2.Elements[2].NativeValue := 20; - NewCntr2.Elements[3].NativeValue := 5; - NewCntr2.Elements[4].NativeValue := 0; - end; - - if not Supports(NewCntr.ElementByName['Reverb Attenuation Control'], IwbContainerElementRef, NewCntr2) then - Assert(False); - - if Supports(Container.RemoveElement('GNAM'), IwbContainerElementRef, OldCntr) then - NewCntr2.Assign(Low(Integer), OldCntr, False) - else - NewCntr2.NativeValue := 80; - - if not Supports(NewCntr.ElementByName['Priority'], IwbContainerElementRef, NewCntr2) then - Assert(False); - - if Supports(Container.RemoveElement('HNAM'), IwbContainerElementRef, OldCntr) then - NewCntr2.Assign(Low(Integer), OldCntr, False) - else - NewCntr2.NativeValue := 128; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbWATRAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; -// AnimationMultiplier : Extended; -// AnimationAttackMultiplier : Extended; - OldCntr: IwbContainerElementRef; - NewCntr: IwbContainerElementRef; - i: Integer; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if Container.ElementExists['DNAM'] then - Exit; - - if not Supports(Container.RemoveElement('DATA - Visual Data'), IwbContainerElementRef, OldCntr) then - Exit; - if not Supports(Container.Add('DNAM', True), IwbContainerElementRef, NewCntr) then - Exit; - for i := 0 to Pred(Min(OldCntr.ElementCount, NewCntr.ElementCount)) do - if OldCntr.Elements[i].Name = 'Damage (Old Format)' then - Container.ElementNativeValues['DATA - Damage'] := OldCntr.Elements[i].NativeValue - else - NewCntr.Elements[i].Assign(Low(Integer), OldCntr.Elements[i], False); - - NewCntr.ElementNativeValues['Noise Properties - Noise Layer One - Amplitude Scale'] := 1.0; - NewCntr.ElementNativeValues['Noise Properties - Noise Layer Two - Amplitude Scale'] := 0.5; - NewCntr.ElementNativeValues['Noise Properties - Noise Layer Three - Amplitude Scale'] := 0.25; - finally - wbEndInternalEdit; - end; -end; - - -procedure wbWEAPAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Container.ElementExists['DNAM'] then - Exit; - - if Container.ElementNativeValues['DNAM\Animation Multiplier'] = 0.0 then - Container.ElementNativeValues['DNAM\Animation Multiplier'] := 1.0; - if Container.ElementNativeValues['DNAM\Animation Attack Multiplier'] = 0.0 then - Container.ElementNativeValues['DNAM\Animation Attack Multiplier'] := 1.0; - finally - wbEndInternalEdit; - end; -end; - -procedure wbMESGAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - IsMessageBox : Boolean; - HasTimeDelay : Boolean; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - IsMessageBox := (Integer(Container.ElementNativeValues['DNAM']) and 1) = 1; - HasTimeDelay := Container.ElementExists['TNAM']; - - if IsMessageBox = HasTimeDelay then - if IsMessageBox then - Container.RemoveElement('TNAM') - else begin - if not Container.ElementExists['DNAM'] then - Container.Add('DNAM', True); - Container.ElementNativeValues['DNAM'] := Integer(Container.ElementNativeValues['DNAM']) or 1; - end; - - finally - wbEndInternalEdit; - end; -end; - - -procedure wbEFSHAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; - FullParticleBirthRatio : Extended; - PersistantParticleBirthRatio : Extended; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Container.ElementExists['DATA'] then - Exit; - - FullParticleBirthRatio := Container.ElementNativeValues['DATA\Particle Shader - Full Particle Birth Ratio']; - PersistantParticleBirthRatio := Container.ElementNativeValues['DATA\Particle Shader - Persistant Particle Birth Ratio']; - - if ((FullParticleBirthRatio <> 0) and (FullParticleBirthRatio <= 1)) then begin - FullParticleBirthRatio := FullParticleBirthRatio * 78.0; - Container.ElementNativeValues['DATA\Particle Shader - Full Particle Birth Ratio'] := FullParticleBirthRatio; - end; - - if ((PersistantParticleBirthRatio <> 0) and (PersistantParticleBirthRatio <= 1)) then begin - PersistantParticleBirthRatio := PersistantParticleBirthRatio * 78.0; - Container.ElementNativeValues['DATA\Particle Shader - Persistant Particle Birth Ratio'] := PersistantParticleBirthRatio; - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbFACTAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Container.ElementExists['CNAM'] then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - Container.RemoveElement('CNAM'); - finally - wbEndInternalEdit; - end; -end; - -procedure wbLIGHAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Container.ElementExists['FNAM'] then begin - Container.Add('FNAM', True); - Container.ElementNativeValues['FNAM'] := 1.0; - end; - - if Container.ElementExists['DATA'] then begin - if SameValue(Container.ElementNativeValues['DATA\Falloff Exponent'], 0.0) then - Container.ElementNativeValues['DATA\Falloff Exponent'] := 1.0; - if SameValue(Container.ElementNativeValues['DATA\FOV'], 0.0) then - Container.ElementNativeValues['DATA\FOV'] := 90.0; - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbEFITAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - Element : IwbElement; - ActorValue: Variant; - MainRecord: IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - MainRecord := Container.ContainingMainRecord; - if not Assigned(MainRecord) or MainRecord.IsDeleted then - Exit; - - Element := Container.ElementByPath['..\EFID']; - if not Assigned(Element) then - Exit; - if not Supports(Element.LinksTo, IwbMainRecord, MainRecord) then - Exit; - if MainRecord.Signature <> 'MGEF' then - Exit; - ActorValue := MainRecord.ElementNativeValues['DATA - Data\Actor Value']; - if VarIsNull(ActorValue) or VarIsClear(ActorValue) then - Exit; - if VarCompareValue(ActorValue, Container.ElementNativeValues['Actor Value']) <> vrEqual then - Container.ElementNativeValues['Actor Value'] := ActorValue; - finally - wbEndInternalEdit; - end; -end; - -procedure wbRPLDAfterLoad(const aElement: IwbElement); -var - Container: IwbContainer; - a, b: Single; - NeedsFlip: Boolean; -begin - if wbBeginInternalEdit then try - if Supports(aElement, IwbContainer, Container) then begin - NeedsFlip := False; - if Container.ElementCount > 1 then begin - a := StrToFloat((Container.Elements[0] as IwbContainer).Elements[0].Value); - b := StrToFloat((Container.Elements[Pred(Container.ElementCount)] as IwbContainer).Elements[0].Value); - case CompareValue(a, b) of - EqualsValue: begin - a := StrToFloat((Container.Elements[0] as IwbContainer).Elements[1].Value); - b := StrToFloat((Container.Elements[Pred(Container.ElementCount)] as IwbContainer).Elements[1].Value); - NeedsFlip := CompareValue(a, b) = GreaterThanValue; - end; - GreaterThanValue: - NeedsFlip := True; - end; - end; - if NeedsFlip then - Container.ReverseElements; - end; - finally - wbEndInternalEdit; - end; -end; - -function wbPxDTLocationDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Result := Container.ElementByName['Type'].NativeValue; -end; - -function wbPKDTFalloutBehaviorFlagsDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbSubRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Supports(Container, IwbSubRecord, SubRecord) then - if SubRecord.SubRecordHeaderSize = 8 then - Result := 1; -end; - -function wbPKDTSpecificFlagsDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbSubRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Supports(Container, IwbSubRecord, SubRecord) then - if SubRecord.SubRecordHeaderSize = 8 then - Exit; - Result := Container.ElementByName['Type'].NativeValue + 1; -end; - -procedure wbIDLAsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Element : IwbElement; - Container : IwbContainer; - SelfAsContainer : IwbContainer; -begin - if wbBeginInternalEdit then try -// if not wbCounterAfterSet('IDLC - Animation Count', aElement) then - if Supports(aElement.Container, IwbContainer, Container) then begin - Element := Container.ElementByPath['IDLC\Animation Count']; - if Assigned(Element) and Supports(aElement, IwbContainer, SelfAsContainer) and - (Element.GetNativeValue<>SelfAsContainer.GetElementCount) then - Element.SetNativeValue(SelfAsContainer.GetElementCount); - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbAnimationsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Element : IwbElement; - Elems : IwbElement; - Container : IwbContainer; -begin - if wbBeginInternalEdit then try -// if not wbCounterContainerAfterSet('IDLC - Animation Count', 'IDLA - Animations', aElement) then - if Supports(aElement, IwbContainer, Container) then begin - Element := Container.ElementByPath['IDLC\Animation Count']; - Elems := Container.ElementByName['IDLA - Animations']; - if Assigned(Element) and not Assigned(Elems) then - if Element.GetNativeValue<>0 then - Element.SetNativeValue(0); - end; - finally - wbEndInternalEdit; - end; -end; - -function wbOffsetDataColsCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbDataContainer; - Element : IwbElement; - fResult : Extended; -begin - Result := 0; - - if Supports(aElement.Container, IwbDataContainer, Container) and (Container.Name = 'OFST - Offset Data') and - Supports(Container.Container, IwbDataContainer, Container) then begin - Element := Container.ElementByPath['Object Bounds\NAM0 - Min\X']; - if Assigned(Element) then begin - fResult := Element.NativeValue; - if fResult >= MaxInt then - Result := 0 - else - Result := Trunc(fResult); - Element := Container.ElementByPath['Object Bounds\NAM9 - Max\X']; - if Assigned(Element) then begin - fResult := Element.NativeValue; - if fResult >= MaxInt then - Result := 1 - else - Result := Trunc(fResult) - Result + 1; - end; - end; - end; -end; - -procedure DefineFO3a; -begin - wbRecordFlags := wbInteger('Record Flags', itU32, wbFlags([ - {0x00000001}'ESM', - {0x00000002}'', - {0x00000004}'', // Plugin selected (Editor) - {0x00000008}'', // Form cannot be saved (Runtime)/Plugin active (Editor) - {0x00000010}'Form initialized (Runtime only)', // Plugin cannot be active or selected (Editor) - {0x00000020}'Deleted', - {0x00000040}'Border Region / Has Tree LOD / Constant / Hidden From Local Map', - {0x00000080}'Turn Off Fire', - {0x00000100}'Inaccessible', - {0x00000200}'Casts shadows / On Local Map / Motion Blur', - {0x00000400}'Quest item / Persistent reference', - {0x00000800}'Initially disabled', - {0x00001000}'Ignored', - {0x00002000}'No Voice Filter', - {0x00004000}'Cannot Save (Runtime only)', - {0x00008000}'Visible when distant', - {0x00010000}'Random Anim Start / High Priority LOD', - {0x00020000}'Dangerous / Off limits (Interior cell) / Radio Station (Talking Activator)', - {0x00040000}'Compressed', - {0x00080000}'Can''t wait / Platform Specific Texture / Dead', - {0x00100000}'Unknown 21', - {0x00200000}'Load Started', // set when beginning to load the form from save - {0x00400000}'Unknown 23', - {0x00800000}'Unknown 24', - {0x01000000}'Destructible (Runtime only)', - {0x02000000}'Obstacle / No AI Acquire', - {0x03000000}'NavMesh Generation - Filter', - {0x08000000}'NavMesh Generation - Bounding Box', - {0x10000000}'Non-Pipboy / Reflected by Auto Water', - {0x20000000}'Child Can Use / Refracted by Auto Water', - {0x40000000}'NavMesh Generation - Ground', - {0x80000000}'Multibound' - ])); - -(* wbInteger('Record Flags 2', itU32, wbFlags([ - {0x00000001}'Unknown 1', - {0x00000002}'Unknown 2', - {0x00000004}'Unknown 3', - {0x00000008}'Unknown 4', - {0x00000010}'Unknown 5', - {0x00000020}'Unknown 6', - {0x00000040}'Unknown 7', - {0x00000080}'Unknown 8', - {0x00000100}'Unknown 9', - {0x00000200}'Unknown 10', - {0x00000400}'Unknown 11', - {0x00000800}'Unknown 12', - {0x00001000}'Unknown 13', - {0x00002000}'Unknown 14', - {0x00004000}'Unknown 15', - {0x00008000}'Unknown 16', - {0x00010000}'Unknown 17', - {0x00020000}'Unknown 18', - {0x00040000}'Unknown 19', - {0x00080000}'Unknown 20', - {0x00100000}'Unknown 21', - {0x00200000}'Unknown 22', - {0x00400000}'Unknown 23', - {0x00800000}'Unknown 24', - {0x01000000}'Unknown 25', - {0x02000000}'Unknown 26', - {0x03000000}'Unknown 27', - {0x08000000}'Unknown 28', - {0x10000000}'Unknown 29', - {0x20000000}'Unknown 30', - {0x40000000}'Unknown 31', - {0x80000000}'Unknown 32' - ])); (**) - - wbMainRecordHeader := wbStruct('Record Header', [ - wbString('Signature', 4, cpCritical), - wbInteger('Data Size', itU32, nil, cpIgnore), - wbRecordFlags, - wbFormID('FormID', cpFormID), - wbByteArray('Version Control Info 1', 4, cpIgnore), - wbInteger('Form Version', itU16, nil, cpIgnore), - wbByteArray('Version Control Info 2', 2, cpIgnore) - ]); - - wbSizeOfMainRecordStruct := 24; - - wbIgnoreRecords.Add(XXXX); - - wbXRGD := wbByteArray(XRGD, 'Ragdoll Data'); - wbXRGB := wbByteArray(XRGB, 'Ragdoll Biped Data'); - - wbMusicEnum := wbEnum(['Default', 'Public', 'Dungeon']); - wbSoundLevelEnum := wbEnum([ - 'Loud', - 'Normal', - 'Silent' - ]); - - wbWeaponAnimTypeEnum := wbEnum([ - {00} 'Hand to Hand', - {01} 'Melee (1 Hand)', - {02} 'Melee (2 Hand)', - {03} 'Pistol - Balistic (1 Hand)', - {04} 'Pistol - Energy (1 Hand)', - {05} 'Rifle - Balistic (2 Hand)', - {06} 'Rifle - Automatic (2 Hand)', - {07} 'Rifle - Energy (2 Hand)', - {08} 'Handle (2 Hand)', - {09} 'Launcher (2 Hand)', - {10} 'Grenade Throw (1 Hand)', - {11} 'Land Mine (1 Hand)', - {12} 'Mine Drop (1 Hand)' - ]); - - wbReloadAnimEnum := wbEnum([ - 'ReloadA', - 'ReloadB', - 'ReloadC', - 'ReloadD', - 'ReloadE', - 'ReloadF', - 'ReloadG', - 'ReloadH', - 'ReloadI', - 'ReloadJ', - 'ReloadK' - ],[255, 'None']); - - wbEDID := wbString(EDID, 'Editor ID', 0, cpNormal); // not cpBenign according to Arthmoor - wbEDIDReq := wbString(EDID, 'Editor ID', 0, cpNormal, True); // not cpBenign according to Arthmoor - wbFULL := wbString(FULL, 'Name', 0, cpTranslate); - wbFULLActor := wbString(FULL, 'Name', 0, cpTranslate, False, wbActorTemplateUseBaseData); - wbFULLReq := wbString(FULL, 'Name', 0, cpNormal, True); - wbDESC := wbString(DESC, 'Description', 0, cpTranslate); - wbDESCReq := wbString(DESC, 'Description', 0, cpTranslate, True); - wbXSCL := wbFloat(XSCL, 'Scale'); - wbOBND := wbStruct(OBND, 'Object Bounds', [ - wbInteger('X1', itS16), - wbInteger('Y1', itS16), - wbInteger('Z1', itS16), - wbInteger('X2', itS16), - wbInteger('Y2', itS16), - wbInteger('Z2', itS16) - ]); - wbOBNDReq := wbStruct(OBND, 'Object Bounds', [ - wbInteger('X1', itS16), - wbInteger('Y1', itS16), - wbInteger('Z1', itS16), - wbInteger('X2', itS16), - wbInteger('Y2', itS16), - wbInteger('Z2', itS16) - ], cpNormal, True); - wbREPL := wbFormIDCkNoReach(REPL, 'Repair List', [FLST]); - wbEITM := wbFormIDCk(EITM, 'Object Effect', [ENCH, SPEL]); - wbBIPL := wbFormIDCk(BIPL, 'Biped Model List', [FLST]); - wbCOED := wbStructExSK(COED, [2], [0, 1], 'Extra Data', [ - {00} wbFormIDCkNoReach('Owner', [NPC_, FACT, NULL]), - {04} wbUnion('Global Variable / Required Rank', wbCOEDOwnerDecider, [ - wbByteArray('Unused', 4, cpIgnore), - wbFormIDCk('Global Variable', [GLOB, NULL]), - wbInteger('Required Rank', itU32) - ]), - {08} wbFloat('Item Condition') - ]); - - wbYNAM := wbFormIDCk(YNAM, 'Sound - Pick Up', [SOUN]); - wbZNAM := wbFormIDCk(ZNAM, 'Sound - Drop', [SOUN]); - - wbPosRot := - wbStruct('Position/Rotation', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ]); - - wbDATAPosRot := - wbStruct(DATA, 'Position/Rotation', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ], cpNormal, True); - - wbMODS := - wbArrayS(MODS, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - wbMO2S := - wbArrayS(MO2S, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - wbMO3S := - wbArrayS(MO3S, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - wbMO4S := - wbArrayS(MO4S, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - - wbMODD := - wbInteger(MODD, 'FaceGen Model Flags', itU8, wbFlags([ - 'Head', - 'Torso', - 'Right Hand', - 'Left Hand' - ])); - wbMOSD := - wbInteger(MOSD, 'FaceGen Model Flags', itU8, wbFlags([ - 'Head', - 'Torso', - 'Right Hand', - 'Left Hand' - ])); - - wbMODL := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbByteArray(MODB, 'Unknown', 4, cpIgnore), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore), -// wbArray(MODT, 'Texture Files Hashes', -// wbByteArray('Unknown', 24, cpBenign), -// wbArray('Hashes', wbInteger('Hash', itU64, wbMODTCallback), 3), -// 0, nil, nil, cpBenign), - wbMODS, - wbMODD - ], [], cpNormal, False, nil, True); - - wbMODLActor := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbByteArray(MODB, 'Unknown', 4, cpIgnore), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore), -// wbArray(MODT, 'Texture Files Hashes', -// wbByteArray('Unknown', 24, cpBenign), -// wbArray('Hashes', wbInteger('Hash', itU64, wbMODTCallback), 3), -// 0, nil, nil, cpBenign), - wbMODS, - wbMODD - ], [], cpNormal, False, wbActorTemplateUseModelAnimation, True); - - wbMODLReq := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbByteArray(MODB, 'Unknown', 4, cpIgnore), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore), -// wbArray(MODT, 'Texture Files', -// wbByteArray('Unknown', 24, cpBenign), -// wbArray('Hashes', wbInteger('Hash', itU64, wbMODTCallback), 3), -// 0, nil, nil, cpBenign), - wbMODS, - wbMODD - ], [], cpNormal, True, nil, True); - - - wbDEST := wbRStruct('Destructable', [ - wbStruct(DEST, 'Header', [ - wbInteger('Health', itS32), - wbInteger('Count', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'VATS Targetable' - ], True)), - wbByteArray('Unused', 2) - ]), - wbRArray('Stages', - wbRStruct('Stage', [ - wbStruct(DSTD, 'Destruction Stage Data', [ - wbInteger('Health %', itU8), - wbInteger('Index', itU8), - wbInteger('Damage Stage', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'Cap Damage', - 'Disable', - 'Destroy' - ])), - wbInteger('Self Damage per Second', itS32), - wbFormIDCk('Explosion', [EXPL, NULL]), - wbFormIDCk('Debris', [DEBR, NULL]), - wbInteger('Debris Count', itS32) - ], cpNormal, True), - wbRStructSK([0], 'Model', [ - wbString(DMDL, 'Model Filename'), - wbByteArray(DMDT, 'Texture Files Hashes', 0, cpIgnore) -// wbArray(DMDT, 'Unknown', -// wbByteArray('Unknown', 24, cpBenign), -// 0, nil, nil, cpBenign) - ], []), - wbEmpty(DSTF, 'End Marker', cpNormal, True) - ], []) - ) - ], []); - - wbDESTActor := wbRStruct('Destructable', [ - wbStruct(DEST, 'Header', [ - wbInteger('Health', itS32), - wbInteger('Count', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'VATS Targetable' - ])), - wbByteArray('Unused', 2) - ]), - wbRArray('Stages', - wbRStruct('Stage', [ - wbStruct(DSTD, 'Destruction Stage Data', [ - wbInteger('Health %', itU8), - wbInteger('Index', itU8), - wbInteger('Damage Stage', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'Cap Damage', - 'Disable', - 'Destroy' - ])), - wbInteger('Self Damage per Second', itS32), - wbFormIDCk('Explosion', [EXPL, NULL]), - wbFormIDCk('Debris', [DEBR, NULL]), - wbInteger('Debris Count', itS32) - ], cpNormal, True), - wbRStructSK([0], 'Model', [ - wbString(DMDL, 'Model Filename'), - wbByteArray(DMDT, 'Texture Files Hashes', 0, cpIgnore) -// wbArray(DMDT, 'Unknown', -// wbByteArray('Unknown', 24, cpBenign), -// 0, nil, nil, cpBenign) - ], []), - wbEmpty(DSTF, 'End Marker', cpNormal, True) - ], []) - ) - ], [], cpNormal, False, wbActorTemplateUseModelAnimation); - - wbSCRI := wbFormIDCk(SCRI, 'Script', [SCPT]); - wbSCRIActor := wbFormIDCk(SCRI, 'Script', [SCPT], False, cpNormal, False, wbActorTemplateUseScript); - wbENAM := wbFormIDCk(ENAM, 'Object Effect', [ENCH]); - - wbXLOD := wbArray(XLOD, 'Distant LOD Data', wbFloat('Unknown'), 3); - - wbXESP := wbStruct(XESP, 'Enable Parent', [ - wbFormIDCk('Reference', [PLYR, REFR, ACRE, ACHR, PGRE, PMIS, PBEA]), - wbInteger('Flags', itU8, wbFlags([ - 'Set Enable State to Opposite of Parent', - 'Pop In' - ])), - wbByteArray('Unused', 3) - ]); - - wbSCHRReq := wbStruct(SCHR, 'Basic Script Data', [ - wbByteArray('Unused', 4), - wbInteger('RefCount', itU32), - wbInteger('CompiledSize', itU32), - wbInteger('VariableCount', itU32), - wbInteger('Type', itU16, wbEnum([ - 'Object', - 'Quest' - ], [ - $100, 'Effect' - ])), - wbInteger('Flags', itU16, wbFlags([ - 'Enabled' - ]), cpNormal, False, nil, nil, 1) - ], cpNormal, True); - - wbSCROs := - wbRArray('References', - wbRUnion('', [ - wbFormID(SCRO, 'Global Reference'), -// wbFormIDCk(SCRO, 'Global Reference', -// [ACTI, DOOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, IMAD, -// BOOK, KEYM, ALCH, LIGH, QUST, PLYR, PACK, LVLI, ECZN, EXPL, FLST, IDLM, PMIS, -// FACT, ACHR, REFR, ACRE, GLOB, DIAL, CELL, SOUN, MGEF, WTHR, CLAS, EFSH, RACE, -// LVLC, CSTY, WRLD, SCPT, IMGS, MESG, MSTT, MUSC, NOTE, PERK, PGRE, PROJ, LVLN, -// WATR, ENCH, TREE, TERM, HAIR, EYES, ADDN, NULL]), - wbInteger(SCRV, 'Local Variable', itU32) - ], []) - ); - - wbSLSD := wbStructSK(SLSD, [0], 'Local Variable Data', [ - wbInteger('Index', itU32), - wbByteArray('Unused', 12), - wbInteger('Flags', itU8, wbFlags(['IsLongOrShort']), cpCritical), - wbByteArray('Unused', 7) - ]); - - wbEmbeddedScript := wbRStruct('Embedded Script', [ - wbSCHRReq, - wbByteArray(SCDA, 'Compiled Embedded Script', 0, cpNormal{, True}), - wbStringScript(SCTX, 'Embedded Script Source', 0, cpNormal{, True}), - wbRArrayS('Local Variables', wbRStructSK([0], 'Local Variable', [ - wbSLSD, - wbString(SCVR, 'Name', 0, cpCritical, True) - ], [])), - wbSCROs - ], [], cpNormal, False, nil, False, wbEmbeddedScriptAfterLoad); - - wbEmbeddedScriptPerk := wbRStruct('Embedded Script', [ - wbSCHRReq, - wbByteArray(SCDA, 'Compiled Embedded Script', 0, cpNormal, True), - wbStringScript(SCTX, 'Embedded Script Source', 0, cpNormal, True), - wbRArrayS('Local Variables', wbRStructSK([0], 'Local Variable', [ - wbSLSD, - wbString(SCVR, 'Name', 0, cpCritical, True) - ], [])), - wbSCROs - ], [], cpNormal, False, wbEPF2DontShow, False, wbEmbeddedScriptAfterLoad); - - wbEmbeddedScriptReq := wbRStruct('Embedded Script', [ - wbSCHRReq, - wbByteArray(SCDA, 'Compiled Embedded Script', 0, cpNormal{, True}), - wbStringScript(SCTX, 'Embedded Script Source', 0, cpNormal{, True}), - wbRArrayS('Local Variables', wbRStructSK([0], 'Local Variable', [ - wbSLSD, - wbString(SCVR, 'Name', 0, cpCritical, True) - ], [])), - wbSCROs - ], [], cpNormal, True, nil, False, wbEmbeddedScriptAfterLoad); - - - wbXLCM := wbInteger(XLCM, 'Level Modifier', itS32); - - wbRecord(ACHR, 'Placed NPC', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [NPC_], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - {--- Ragdoll ---} - wbXRGD, - wbXRGB, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], []), - - {--- Leveled Actor ----} - wbXLCM, - - {--- Merchant Container ----} - wbFormIDCk(XMRC, 'Merchant Container', [REFR], True), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - - {--- Decals ---} - wbRArrayS('Linked Decals', - wbStructSK(XDCR, [0], 'Decal', [ - wbFormIDCk('Reference', [REFR]), - wbUnknown - ]) - ), - - {--- Linked Ref ---} - wbFormIDCk(XLKR, 'Linked Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbStruct(XCLP, 'Linked Reference Color', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbFloat('Delay') - ]) - ) - ], []), - - {--- Enable Parent ---} - wbXESP, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Flags ---} - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbXOWN := wbFormIDCkNoReach(XOWN, 'Owner', [FACT, ACHR, CREA, NPC_]); // Ghouls can own too aparently ! - wbXGLB := wbFormIDCk(XGLB, 'Global variable', [GLOB]); - - wbRecord(ACRE, 'Placed Creature', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [CREA], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - wbXRGD, - wbXRGB, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], []), - - {--- Leveled Actor ----} - wbXLCM, - - {--- Ownership ---} - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32) - ], [XCMT, XCMO]), - - {--- Merchant Container ----} - wbFormIDCk(XMRC, 'Merchant Container', [REFR], True), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - - {--- Decals ---} - wbRArrayS('Linked Decals', - wbStructSK(XDCR, [0], 'Decal', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA]), - wbUnknown - ]) - ), - - {--- Linked Ref ---} - wbFormIDCk(XLKR, 'Linked Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbStruct(XCLP, 'Linked Reference Color', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbFloat('Delay') - ]) - ) - ], []), - - {--- Enable Parent ---} - wbXESP, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Flags ---} - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbRecord(ACTI, 'Activator', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbSCRI, - wbDEST, - wbFormIDCk(SNAM, 'Sound - Looping', [SOUN]), - wbFormIDCk(VNAM, 'Sound - Activation', [SOUN]), - wbFormIDCk(RNAM, 'Radio Station', [TACT]), - wbFormIDCk(WNAM, 'Water Type', [WATR]) - ]); - - wbICON := wbRStruct('Icon', [ - wbString(ICON, 'Large Icon filename'), - wbString(MICO, 'Small Icon filename') - ], []); - - wbICONReq := wbRStruct('Icon', [ - wbString(ICON, 'Large Icon filename'), - wbString(MICO, 'Small Icon filename') - ], [], cpNormal, True); - - wbVatsValueFunctionEnum := - wbEnum([ - 'Weapon Is', - 'Weapon In List', - 'Target Is', - 'Target In List', - 'Target Distance', - 'Target Part', - 'VATS Action', - 'Is Success', - 'Is Critical', - 'Critical Effect Is', - 'Critical Effect In List', - 'Is Fatal', - 'Explode Part', - 'Dismember Part', - 'Cripple Part', - 'Weapon Type Is', - 'Is Stranger', - 'Is Paralyzing Palm' - ]); - - wbActorValueEnum := - wbEnum([ - {00} 'Aggresion', - {01} 'Confidence', - {02} 'Energy', - {03} 'Responsibility', - {04} 'Mood', - {05} 'Strength', - {06} 'Perception', - {07} 'Endurance', - {08} 'Charisma', - {09} 'Intelligence', - {10} 'Agility', - {11} 'Luck', - {12} 'Action Points', - {13} 'Carry Weight', - {14} 'Critical Chance', - {15} 'Heal Rate', - {16} 'Health', - {17} 'Melee Damage', - {18} 'Damage Resistance', - {19} 'Poison Resistance', - {20} 'Rad Resistance', - {21} 'Speed Multiplier', - {22} 'Fatigue', - {23} 'Karma', - {24} 'XP', - {25} 'Perception Condition', - {26} 'Endurance Condition', - {27} 'Left Attack Condition', - {28} 'Right Attack Condition', - {29} 'Left Mobility Condition', - {30} 'Right Mobility Condition', - {31} 'Brain Condition', - {32} 'Barter', - {33} 'Big Guns', - {34} 'Energy Weapons', - {35} 'Explosives', - {36} 'Lockpick', - {37} 'Medicine', - {38} 'Melee Weapons', - {39} 'Repair', - {40} 'Science', - {41} 'Small Guns', - {42} 'Sneak', - {43} 'Speech', - {44} 'Throwing (unused)', - {45} 'Unarmed', - {46} 'Inventory Weight', - {47} 'Paralysis', - {48} 'Invisibility', - {49} 'Chameleon', - {50} 'Night Eye', - {51} 'Detect Life Range', - {52} 'Fire Resistance', - {53} 'Water Breathing', - {54} 'Rad Level', - {55} 'Bloody Mess', - {56} 'Unarmed Damage', - {57} 'Assistance', - {58} 'Electric Resistance', - {59} 'Frost Resistance', - {60} 'Energy Resistance', - {61} 'EMP Resistance', - {62} 'Variable01', - {63} 'Variable02', - {64} 'Variable03', - {65} 'Variable04', - {66} 'Variable05', - {67} 'Variable06', - {68} 'Variable07', - {79} 'Variable08', - {70} 'Variable09', - {71} 'Variable10', - {72} 'Ignore Negative Effects' - ], [ - -1, 'None' - ]); - - wbSkillEnum := - wbEnum([ - 'Barter', - 'Big Guns', - 'Energy Weapons', - 'Explosives', - 'Lockpick', - 'Medicine', - 'Melee Weapons', - 'Repair', - 'Science', - 'Small Guns', - 'Sneak', - 'Speech', - 'Throwing (unused)', - 'Unarmed' - ], [ - -1, 'None' - ]); - - wbCrimeTypeEnum := - wbEnum([ - 'Steal', - 'Pickpocket', - 'Trespass', - 'Attack', - 'Murder' - ], [ - -1, 'None' - ]); - - wbActorValue := wbInteger('Actor Value', itS32, wbActorValueEnum); - - wbEquipTypeEnum := - wbEnum([ - {00} 'Big Guns', - {01} 'Energy Weapons', - {02} 'Small Guns', - {03} 'Melee Weapons', - {04} 'Unarmed Weapon', - {05} 'Thrown Weapons', - {06} 'Mine', - {07} 'Body Wear', - {08} 'Head Wear', - {09} 'Hand Wear', - {10} 'Chems', - {11} 'Stimpack', - {12} 'Food', - {13} 'Alcohol' - ], [ - -1, 'None' - ]); - - wbETYP := wbInteger(ETYP, 'Equiptment Type', itS32, wbEquipTypeEnum); - wbETYPReq := wbInteger(ETYP, 'Equiptment Type', itS32, wbEquipTypeEnum, cpNormal, True); - - wbFormTypeEnum := - wbEnum([], [ - $04, 'Texture Set', - $05, 'Menu Icon', - $06, 'Global', - $07, 'Class', - $08, 'Faction', - $09, 'Head Part', - $0A, 'Hair', - $0B, 'Eyes', - $0C, 'Race', - $0D, 'Sound', - $0E, 'Acoustic Space', - $0F, 'Skill', - $10, 'Base Effect', - $11, 'Script', - $12, 'Landscape Texture', - $13, 'Object Effect', - $14, 'Actor Effect', - $15, 'Activator', - $16, 'Talking Activator', - $17, 'Terminal', - $18, 'Armor', - $19, 'Book', - $1A, 'Clothing', - $1B, 'Container', - $1C, 'Door', - $1D, 'Ingredient', - $1E, 'Light', - $1F, 'Misc', - $20, 'Static', - $21, 'Static Collection', - $22, 'Movable Static', - $23, 'Placeable Water', - $24, 'Grass', - $25, 'Tree', - $26, 'Flora', - $27, 'Furniture', - $28, 'Weapon', - $29, 'Ammo', - $2A, 'NPC', - $2B, 'Creature', - $2C, 'Leveled Creature', - $2D, 'Leveled NPC', - $2E, 'Key', - $2F, 'Ingestible', - $30, 'Idle Marker', - $31, 'Note', - $32, 'Constructible Object', - $33, 'Projectile', - $34, 'Leveled Item', - $35, 'Weather', - $36, 'Climate', - $37, 'Region', - $39, 'Cell', - $3A, 'Placed Object', - $3B, 'Placed Character', - $3C, 'Placed Creature', - $3E, 'Placed Grenade', - $41, 'Worldspace', - $42, 'Landscape', - $43, 'Navigation Mesh', - $45, 'Dialog Topic', - $46, 'Dialog Response', - $47, 'Quest', - $48, 'Idle Animation', - $49, 'Package', - $4A, 'Combat Style', - $4B, 'Load Screen', - $4C, 'Leveled Spell', - $4D, 'Animated Object', - $4E, 'Water', - $4F, 'Effect Shader', - $51, 'Explosion', - $52, 'Debris', - $53, 'Image Space', - $54, 'Image Space Modifier', - $55, 'FormID List', - $56, 'Perk', - $57, 'Body Part Data', - $58, 'Addon Node', - $59, 'Actor Value Info', - $5A, 'Radiation Stage', - $5B, 'Camera Shot', - $5C, 'Camera Path', - $5D, 'Voice Type', - $5E, 'Impact Data', - $5F, 'Impact DataSet', - $60, 'Armor Addon', - $61, 'Encounter Zone', - $62, 'Message', - $63, 'Ragdoll', - $64, 'Default Object Manager', - $65, 'Lighting Template', - $66, 'Music Type' - ]); - - wbMenuModeEnum := - wbEnum([],[ - 1, 'Type: Character Interface', - 2, 'Type: Other', - 3, 'Type: Console', - 1001, 'Specific: Message', - 1002, 'Specific: Inventory', - 1003, 'Specific: Stats', - 1004, 'Specific: HUDMainMenu', - 1007, 'Specific: Loading', - 1008, 'Specific: Container', - 1009, 'Specific: Dialog', - 1012, 'Specific: Sleep/Wait', - 1013, 'Specific: Pause', - 1014, 'Specific: LockPick', - 1016, 'Specific: Quantity', - 1027, 'Specific: Level Up', - 1035, 'Specific: Pipboy Repair', - 1036, 'Specific: Race / Sex', - 1047, 'Specific: Credits', - 1048, 'Specific: CharGen', - 1051, 'Specific: TextEdit', - 1053, 'Specific: Barter', - 1054, 'Specific: Surgery', - 1055, 'Specific: Hacking', - 1056, 'Specific: VATS', - 1057, 'Specific: Computers', - 1058, 'Specific: Vendor Repair', - 1059, 'Specific: Tutorial', - 1060, 'Specific: You''re SPECIAL book' - ]); -end; - -procedure DefineFO3b; -begin - wbMiscStatEnum := - wbEnum([ - 'Quests Completed', - 'Locations Discovered', - 'People Killed', - 'Creatures Killed', - 'Locks Picked', - 'Computers Hacked', - 'Stimpaks Taken', - 'Rad-X Taken', - 'RadAway Taken', - 'Chems Taken', - 'Times Addicted', - 'Mines Disarmed', - 'Speech Successes', - 'Pockets Picked', - 'Pants Exploded', - 'Books Read', - 'Bobbleheads Found', - 'Weapons Created', - 'People Mezzed', - 'Captives Rescued', - 'Sandman Kills', - 'Paralyzing Punches', - 'Robots Disabled', - 'Contracts Completed', - 'Corpses Eaten', - 'Mysterious Stranger Visits' - ]); - - wbAlignmentEnum := - wbEnum([ - 'Good', - 'Neutral', - 'Evil', - 'Very Good', - 'Very Evil' - ]); - - wbAxisEnum := - wbEnum([], [ - 88, 'X', - 89, 'Y', - 90, 'Z' - ]); - - wbCriticalStageEnum := - wbEnum([ - 'None', - 'Goo Start', - 'Goo End', - 'Disintegrate Start', - 'Disintegrate End' - ]); - - wbSexEnum := - wbEnum(['Male','Female']); - - wbCreatureTypeEnum := - wbEnum([ - 'Animal', - 'Mutated Animal', - 'Mutated Insect', - 'Abomination', - 'Super Mutant', - 'Feral Ghoul', - 'Robot', - 'Giant' - ]); - - wbPlayerActionEnum := - wbEnum([ - '', - 'Swinging Melee Weapon', - 'Throwing Grenade', - 'Fire Weapon', - 'Lay Mine', - 'Z Key Object', - 'Jumping', - 'Knocking over Objects', - 'Stand on Table/Chair', - 'Iron Sites', - 'Destroying Object' - ]); - - wbBodyLocationEnum := - wbEnum([ - 'Torso', - 'Head 1', - 'Head 2', - 'Left Arm 1', - 'Left Arm 2', - 'Right Arm 1', - 'Right Arm 2', - 'Left Leg 1', - 'Left Leg 2', - 'Left Leg 3', - 'Right Leg 1', - 'Right Leg 2', - 'Right Leg 3', - 'Brain' - ], [ - -1, 'None' - ]); - - - wbEFID := wbFormIDCk(EFID, 'Base Effect', [MGEF]); - - wbEFIT := - wbStructSK(EFIT, [3, 4], '', [ - wbInteger('Magnitude', itU32), - wbInteger('Area', itU32), - wbInteger('Duration', itU32), - wbInteger('Type', itU32, wbEnum(['Self', 'Touch', 'Target'])), - wbActorValue - ], cpNormal, True, nil, -1, wbEFITAfterLoad); - - wbCTDA := - wbStruct(CTDA, 'Condition', [ - wbInteger('Type', itU8, wbCtdaTypeToStr, wbCtdaTypeToInt, cpNormal, False, nil, wbCtdaTypeAfterSet), - wbByteArray('Unused', 3), - wbUnion('Comparison Value', wbCTDACompValueDecider, [ - wbFloat('Comparison Value - Float'), - wbFormIDCk('Comparison Value - Global', [GLOB]) - ]), - wbInteger('Function', itU32, wbCTDAFunctionToStr, wbCTDAFunctionToInt), // Limited to itu16 - wbUnion('Parameter #1', wbCTDAParam1Decider, [ - {00} wbByteArray('Unknown', 4), - {01} wbByteArray('None', 4, cpIgnore), - {02} wbInteger('Integer', itS32), - {03} wbInteger('Variable Name (INVALID)', itS32), - {04} wbInteger('Sex', itU32, wbSexEnum), - {05} wbInteger('Actor Value', itS32, wbActorValueEnum), - {06} wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {07} wbInteger('Axis', itU32, wbAxisEnum), - {08} wbInteger('Quest Stage (INVALID)', itS32), - {09} wbInteger('Misc Stat', itU32, wbMiscStatEnum), - {10} wbInteger('Alignment', itU32, wbAlignmentEnum), - {11} wbInteger('Equip Type', itU32, wbEquipTypeEnum), - {12} wbInteger('Form Type', itU32, wbFormTypeEnum), - {13} wbInteger('Critical Stage', itU32, wbCriticalStageEnum), - {14} wbFormIDCkNoReach('Object Reference', [PLYR, REFR, ACHR, ACRE, PGRE, PMIS, PBEA, TRGT], True), - {16} wbFormIDCkNoReach('Inventory Object', [ARMO, BOOK, MISC, WEAP, AMMO, KEYM, ALCH, NOTE, FLST]), - {17} wbFormIDCkNoReach('Actor', [PLYR, ACHR, ACRE, TRGT], True), - {18} wbFormIDCkNoReach('Voice Type', [VTYP]), - {19} wbFormIDCkNoReach('Idle', [IDLE]), - {20} wbFormIDCkNoReach('Form List', [FLST]), - {21} wbFormIDCkNoReach('Note', [NOTE]), - {22} wbFormIDCkNoReach('Quest', [QUST]), - {23} wbFormIDCkNoReach('Faction', [FACT]), - {24} wbFormIDCkNoReach('Weapon', [WEAP]), - {25} wbFormIDCkNoReach('Cell', [CELL]), - {26} wbFormIDCkNoReach('Class', [CLAS]), - {27} wbFormIDCkNoReach('Race', [RACE]), - {28} wbFormIDCkNoReach('Actor Base', [NPC_, CREA, ACTI, TACT]), - {29} wbFormIDCkNoReach('Global', [GLOB]), - {30} wbFormIDCkNoReach('Weather', [WTHR]), - {31} wbFormIDCkNoReach('Package', [PACK]), - {32} wbFormIDCkNoReach('Encounter Zone', [ECZN]), - {33} wbFormIDCkNoReach('Perk', [PERK]), - {34} wbFormIDCkNoReach('Owner', [FACT, NPC_]), - {35} wbFormIDCkNoReach('Furniture', [FURN, FLST]), - {36} wbFormIDCkNoReach('Effect Item', [SPEL, ENCH, ALCH, INGR]), - {37} wbFormIDCkNoReach('Base Effect', [MGEF]), - {38} wbFormIDCkNoReach('Worldspace', [WRLD]), - {39} wbInteger('VATS Value Function', itU32, wbVATSValueFunctionEnum), - {40} wbInteger('VATS Value Param (INVALID)', itU32), - {41} wbInteger('Creature Type', itU32, wbCreatureTypeEnum), - {42} wbInteger('Menu Mode', itU32, wbMenuModeEnum), - {43} wbInteger('Player Action', itU32, wbPlayerActionEnum), - {44} wbInteger('Body Location', itS32, wbBodyLocationEnum), - {45} wbFormIDCkNoReach('Referenceable Object', [CREA, NPC_, PROJ, TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, NOTE, PWAT, SCOL, TACT, TERM, FLST, LVLC, LVLN], - [CREA, NPC_, PROJ, TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, NOTE, PWAT, SCOL, TACT, TERM, LVLC, LVLN]) - ]), - wbUnion('Parameter #2', wbCTDAParam2Decider, [ - {00} wbByteArray('Unknown', 4), - {01} wbByteArray('None', 4, cpIgnore), - {02} wbInteger('Integer', itS32), - {03} wbInteger('Variable Name', itS32, wbCTDAParam2VariableNameToStr, wbCTDAParam2VariableNameToInt), - {04} wbInteger('Sex', itU32, wbSexEnum), - {05} wbInteger('Actor Value', itS32, wbActorValueEnum), - {06} wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {07} wbInteger('Axis', itU32, wbAxisEnum), - {08} wbInteger('Quest Stage', itS32, wbCTDAParam2QuestStageToStr, wbCTDAParam2QuestStageToInt), - {09} wbInteger('Misc Stat', itU32, wbMiscStatEnum), - {10} wbInteger('Alignment', itU32, wbAlignmentEnum), - {11} wbInteger('Equip Type', itU32, wbEquipTypeEnum), - {12} wbInteger('Form Type', itU32, wbFormTypeEnum), - {13} wbInteger('Critical Stage', itU32, wbCriticalStageEnum), - {14} wbFormIDCkNoReach('Object Reference', [PLYR, REFR, PMIS, PBEA, ACHR, ACRE, PGRE, TRGT], True), - {16} wbFormIDCkNoReach('Inventory Object', [ARMO, BOOK, MISC, WEAP, AMMO, KEYM, ALCH, NOTE, FLST]), - {17} wbFormIDCkNoReach('Actor', [PLYR, ACHR, ACRE, TRGT], True), - {18} wbFormIDCkNoReach('Voice Type', [VTYP]), - {19} wbFormIDCkNoReach('Idle', [IDLE]), - {20} wbFormIDCkNoReach('Form List', [FLST]), - {21} wbFormIDCkNoReach('Note', [NOTE]), - {22} wbFormIDCkNoReach('Quest', [QUST]), - {23} wbFormIDCkNoReach('Faction', [FACT]), - {24} wbFormIDCkNoReach('Weapon', [WEAP]), - {25} wbFormIDCkNoReach('Cell', [CELL]), - {26} wbFormIDCkNoReach('Class', [CLAS]), - {27} wbFormIDCkNoReach('Race', [RACE]), - {28} wbFormIDCkNoReach('Actor Base', [NPC_, CREA, ACTI, TACT]), - {29} wbFormIDCkNoReach('Global', [GLOB]), - {30} wbFormIDCkNoReach('Weather', [WTHR]), - {31} wbFormIDCkNoReach('Package', [PACK]), - {32} wbFormIDCkNoReach('Encounter Zone', [ECZN]), - {33} wbFormIDCkNoReach('Perk', [PERK]), - {34} wbFormIDCkNoReach('Owner', [FACT, NPC_]), - {35} wbFormIDCkNoReach('Furniture', [FURN, FLST]), - {36} wbFormIDCkNoReach('Effect Item', [SPEL, ENCH, ALCH, INGR]), - {37} wbFormIDCkNoReach('Base Effect', [MGEF]), - {38} wbFormIDCkNoReach('Worldspace', [WRLD]), - {39} wbInteger('VATS Value Function (INVALID)', itU32), - {40} wbUnion('VATS Value Param', wbCTDAParam2VATSValueParam, [ - wbFormIDCkNoReach('Weapon', [WEAP]), - wbFormIDCkNoReach('Weapon List', [FLST], [WEAP]), - wbFormIDCkNoReach('Target', [NPC_, CREA]), - wbFormIDCkNoReach('Target List', [FLST], [NPC_, CREA]), - wbByteArray('Unused', 4, cpIgnore), - wbInteger('Target Part', itS32, wbActorValueEnum), - wbInteger('VATS Action', itU32, wbEnum([ - 'Unarmed Attack', - 'One Hand Melee Attack', - 'Two Hand Melee Attack', - 'Fire Pistol', - 'Fire Rifle', - 'Fire Handle Weapon', - 'Fire Launcher', - 'Throw Grenade', - 'Place Mine', - 'Reload', - 'Crouch', - 'Stand', - 'Switch Weapon', - 'Toggle Weapon Drawn', - 'Heal', - 'Player Death' - ])), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbFormIDCkNoReach('Critical Effect', [SPEL]), - wbFormIDCkNoReach('Critical Effect List', [FLST], [SPEL]), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbInteger('Weapon Type', itU32, wbWeaponAnimTypeEnum), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore) - ]), - {41} wbInteger('Creature Type', itU32, wbCreatureTypeEnum), - {42} wbInteger('Menu Mode', itU32, wbMenuModeEnum), - {43} wbInteger('Player Action', itU32, wbPlayerActionEnum), - {44} wbInteger('Body Location', itS32, wbBodyLocationEnum), - {45} wbFormIDCkNoReach('Referenceable Object', [CREA, NPC_, PROJ, TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, NOTE, PWAT, SCOL, TACT, TERM, FLST, LVLC, LVLN], - [CREA, NPC_, PROJ, TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, NOTE, PWAT, SCOL, TACT, TERM, LVLC, LVLN]) - ]), - wbInteger('Run On', itU32, wbEnum([ - 'Subject', - 'Target', - 'Reference', - 'Combat Target', - 'Linked Reference' - ]), cpNormal, False, nil, wbCTDARunOnAfterSet), - wbUnion('Reference', wbCTDAReferenceDecider, [ - wbInteger('Unused', itU32, nil, cpIgnore), - wbFormIDCkNoReach('Reference', [PLYR, ACHR, ACRE, REFR, PMIS, PBEA, PGRE], True) - ]) - ], cpNormal, False, nil, 6, wbCTDAAfterLoad); - wbCTDAs := wbRArray('Conditions', wbCTDA); - wbCTDAsReq := wbRArray('Conditions', wbCTDA, cpNormal, True); - - wbEffects := - wbRStructs('Effects','Effect', [ - wbEFID, - wbEFIT, - wbCTDAs - ], []); - - wbEffectsReq := - wbRStructs('Effects','Effect', [ - wbEFID, - wbEFIT, - wbCTDAs - ], [], cpNormal, True); - - - wbRecord(ALCH, 'Ingestible', [ - wbEDIDReq, - wbOBNDReq, - wbFULLReq, - wbMODL, - wbICON, - wbSCRI, - wbDEST, - wbYNAM, - wbZNAM, - wbETYPReq, - wbFloat(DATA, 'Weight', cpNormal, True), - wbStruct(ENIT, 'Effect Data', [ - wbInteger('Value', itS32), - wbInteger('Flags?', itU8, wbFlags([ - 'No Auto-Calc (Unused)', - 'Food Item', - 'Medicine' - ])), - wbByteArray('Unused', 3), - wbFormIDCk('Withdrawal Effect', [SPEL, NULL]), - wbFloat('Addiction Chance'), - wbFormIDCk('Sound - Consume', [SOUN]) - ], cpNormal, True), - wbEffectsReq - ]); - - wbRecord(AMMO, 'Ammunition', [ - wbEDIDReq, - wbOBNDReq, - wbFULLReq, - wbMODL, - wbICON, - wbDEST, - wbYNAM, - wbZNAM, - wbStruct(DATA, 'Data', [ - wbFloat('Speed'), - wbInteger('Flags', itU8, wbFlags([ - 'Ignores Normal Weapon Resistance', - 'Non-Playable' - ])), - wbByteArray('Unused', 3), - wbInteger('Value', itS32), - wbInteger('Clip Rounds', itU8) - ], cpNormal, True), - wbString(ONAM, 'Short Name') - ]); - - wbRecord(ANIO, 'Animated Object', [ - wbEDIDReq, - wbMODLReq, - wbFormIDCk(DATA, 'Animation', [IDLE], False, cpNormal, True) - ]); - - wbBMDT := wbStruct(BMDT, 'Biped Data', [ - wbInteger('Biped Flags', itU32, wbFlags([ - {0x00000001} 'Head', - {0x00000002} 'Hair', - {0x00000004} 'Upper Body', - {0x00000008} 'Left Hand', - {0x00000010} 'Right Hand', - {0x00000020} 'Weapon', - {0x00000040} 'PipBoy', - {0x00000080} 'Backpack', - {0x00000100} 'Necklace', - {0x00000200} 'Headband', - {0x00000400} 'Hat', - {0x00000800} 'Eye Glasses', - {0x00001000} 'Nose Ring', - {0x00002000} 'Earrings', - {0x00004000} 'Mask', - {0x00008000} 'Choker', - {0x00010000} 'Mouth Object', - {0x00020000} 'Body AddOn 1', - {0x00040000} 'Body AddOn 2', - {0x00080000} 'Body AddOn 3' - ])), - wbInteger('General Flags', itU8, wbFlags([ - {0x0001} '', - {0x0002} '', - {0x0004} '', - {0x0008} '', - {0x0010} '', - {0x0020} 'Power Armor', - {0x0040} 'Non-Playable', - {0x0080} 'Heavy' - ], True)), - wbByteArray('Unused', 3) - ], cpNormal, True); - - wbRecord(ARMO, 'Armor', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbSCRI, - wbEITM, - wbBMDT, - wbRStruct('Male biped model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore), - wbMODS, - wbMODD - ], [], cpNormal, False, nil, True), - wbRStruct('Male world model', [ - wbString(MOD2, 'Model Filename'), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore), - wbMO2S - ], []), - wbString(ICON, 'Male icon filename'), - wbString(MICO, 'Male mico filename'), - wbRStruct('Female biped model', [ - wbString(MOD3, 'Model Filename', 0, cpNormal, True), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore), - wbMO3S, - wbMOSD - ], [], cpNormal, False, nil, True), - wbRStruct('Female world model', [ - wbString(MOD4, 'Model Filename'), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore), - wbMO4S - ], []), - wbString(ICO2, 'Female icon filename'), - wbString(MIC2, 'Female mico filename'), - wbString(BMCT, 'Ragdoll Constraint Template'), - wbDEST, - wbREPL, - wbBIPL, - wbETYPReq, - wbYNAM, - wbZNAM, - wbStruct(DATA, 'Data', [ - wbInteger('Value', itS32), - wbInteger('Max Condition', itS32), - wbFloat('Weight') - ], cpNormal, True), - wbStruct(DNAM, '', [ - wbInteger('AR', itS16, wbDiv(100)), - wbInteger('Flags', itU16, wbFlags([ - 'Modulates Voice' - ])) - ], cpNormal, True) - ]); - - wbRecord(ARMA, 'Armor Addon', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbBMDT, - wbRStruct('Male biped model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore), - wbMODS, - wbMODD - ], [], cpNormal, False, nil, True), - wbRStruct('Male world model', [ - wbString(MOD2, 'Model Filename'), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore), - wbMO2S - ], []), - wbString(ICON, 'Male icon filename'), - wbString(MICO, 'Male mico filename'), - wbRStruct('Female biped model', [ - wbString(MOD3, 'Model Filename', 0, cpNormal, True), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore), - wbMO3S, - wbMOSD - ], [], cpNormal, False, nil, True), - wbRStruct('Female world model', [ - wbString(MOD4, 'Model Filename'), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore), - wbMO4S - ], []), - wbString(ICO2, 'Female icon filename'), - wbString(MIC2, 'Female mico filename'), - wbETYPReq, - wbStruct(DATA, 'Data', [ - wbInteger('Value', itS32), - wbInteger('Max Condition', itS32), - wbFloat('Weight') - ], cpNormal, True), - wbStruct(DNAM, '', [ - wbInteger('AR', itS16, wbDiv(100)), - wbInteger('Flags', itU16, wbFlags([ - 'Modulates Voice' - ])) - ], cpNormal, True) - ]); - - wbRecord(BOOK, 'Book', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbDESCReq, - wbDEST, - wbYNAM, - wbZNAM, - wbStruct(DATA, 'Data', [ - wbInteger('Flags', itU8, wbFlags([ - '', - 'Can''t be Taken' - ])), - wbInteger('Skill', itS8, wbSkillEnum), - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbSPLO := wbFormIDCk(SPLO, 'Actor Effect', [SPEL]); - wbSPLOs := wbRArrayS('Actor Effects', wbSPLO, cpNormal, False, nil, nil, wbActorTemplateUseActorEffectList); - - wbRecord(CELL, 'Cell', [ - wbEDID, - wbFULL, - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Is Interior Cell', - {0x02} 'Has water', - {0x04} 'Invert Fast Travel behavior', - {0x08} 'No LOD Water', - {0x10} '', - {0x20} 'Public place', - {0x40} 'Hand changed', - {0x80} 'Behave like exterior' - ]), cpNormal, True), - wbStruct(XCLC, 'Grid', [ - wbInteger('X', itS32), - wbInteger('Y', itS32), - wbInteger('Force Hide Land', itU32, wbFlags([ - 'Quad 1', - 'Quad 2', - 'Quad 3', - 'Quad 4' - ], True)) - ], cpNormal, False, nil, 2), - wbStruct(XCLL, 'Lighting', [ - wbStruct('Ambient Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Directional Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Fog Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Fog Near'), - wbFloat('Fog Far'), - wbInteger('Directional Rotation XY', itS32), - wbInteger('Directional Rotation Z', itS32), - wbFloat('Directional Fade'), - wbFloat('Fog Clip Dist'), - wbFloat('Fog Power') - ], cpNormal, False, nil, 7), - wbArray(IMPF, 'Footstep Materials', wbString('Unknown', 30), [ - 'ConcSolid', - 'ConcBroken', - 'MetalSolid', - 'MetalHollow', - 'MetalSheet', - 'Wood', - 'Sand', - 'Dirt', - 'Grass', - 'Water' - ]), - wbRStruct('Light Template', [ - wbFormIDCk(LTMP, 'Template', [LGTM, NULL]), - wbInteger(LNAM, 'Inherit', itU32, wbFlags([ - {0x00000001}'Ambient Color', - {0x00000002}'Directional Color', - {0x00000004}'Fog Color', - {0x00000008}'Fog Near', - {0x00000010}'Fog Far', - {0x00000020}'Directional Rotation', - {0x00000040}'Directional Fade', - {0x00000080}'Clip Distance', - {0x00000100}'Fog Power' - ]), cpNormal, True) - ], [], cpNormal, True ), - wbFloat(XCLW, 'Water Height'), - wbString(XNAM, 'Water Noise Texture'), - wbArrayS(XCLR, 'Regions', wbFormIDCk('Region', [REGN])), - wbFormIDCk(XCIM, 'Image Space', [IMGS]), - wbByteArray(XCET, 'Unknown', 1, cpIgnore), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - wbFormIDCk(XCCM, 'Climate', [CLMT]), - wbFormIDCk(XCWT, 'Water', [WATR]), - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32) - ], [XCMT, XCMO]), - wbFormIDCk(XCAS, 'Acoustic Space', [ASPC]), - wbByteArray(XCMT, 'Unused', 1, cpIgnore), - wbFormIDCk(XCMO, 'Music Type', [MUSC]) - ], True, wbCellAddInfo, cpNormal, False, wbCELLAfterLoad); - - wbServiceFlags := - wbFlags([ - {0x00000001} 'Weapons', - {0x00000002} 'Armor', - {0x00000004} 'Alcohol', - {0x00000008} 'Books', - {0x00000010} 'Food', - {0x00000020} 'Chems', - {0x00000040} 'Stimpacks', - {0x00000080} 'Lights?', - {0x00000100} '', - {0x00000200} '', - {0x00000400} 'Miscellaneous', - {0x00000800} '', - {0x00001000} '', - {0x00002000} 'Potions?', - {0x00004000} 'Training', - {0x00008000} '', - {0x00010000} 'Recharge', - {0x00020000} 'Repair' - ]); - - wbSpecializationEnum := wbEnum(['Combat', 'Magic', 'Stealth']); - - wbRecord(CLAS, 'Class', [ - wbEDIDReq, - wbFULLReq, - wbDESCReq, - wbICON, - wbStruct(DATA, '', [ - wbArray('Tag Skills', wbInteger('Tag Skill', itS32, wbActorValueEnum), 4), - wbInteger('Flags', itU32, wbFlags(['Playable', 'Guard'], True)), - wbInteger('Buys/Sells and Services', itU32, wbServiceFlags), - wbInteger('Teaches', itS8, wbSkillEnum), - wbInteger('Maximum training level', itU8), - wbByteArray('Unused', 2) - ], cpNormal, True), - wbArray(ATTR, 'Attributes', wbInteger('Attribute', itU8), [ - 'Strength', - 'Perception', - 'Endurance', - 'Charisma', - 'Intelligence', - 'Agility', - 'Luck' - ], cpNormal, True) - ]); -end; - -procedure DefineFO3c; -begin - wbRecord(CLMT, 'Climate', [ - wbEDIDReq, - wbArrayS(WLST, 'Weather Types', wbStructSK([0], 'Weather Type', [ - wbFormIDCk('Weather', [WTHR, NULL]), - wbInteger('Chance', itS32), - wbFormIDCk('Global', [GLOB, NULL]) - ])), - wbString(FNAM, 'Sun Texture'), - wbString(GNAM, 'Sun Glare Texture'), - wbMODL, - wbStruct(TNAM, 'Timing', [ - wbStruct('Sunrise', [ - wbInteger('Begin', itU8, wbClmtTime), - wbInteger('End', itU8, wbClmtTime) - ]), - wbStruct('Sunset', [ - wbInteger('Begin', itU8, wbClmtTime), - wbInteger('End', itU8, wbClmtTime) - ]), - wbInteger('Volatility', itU8), - wbInteger('Moons / Phase Length', itU8, wbClmtMoonsPhaseLength) - ], cpNormal, True) - ]); - - wbCNTO := - wbRStructExSK([0], [1], 'Item', [ - wbStructExSK(CNTO, [0], [1], 'Item', [ - wbFormIDCk('Item', [ARMO, AMMO, MISC, WEAP, BOOK, LVLI, KEYM, ALCH, NOTE, MSTT{?}, STAT{?}]), - wbInteger('Count', itS32) - ]), - wbCOED - ], []); - - wbCNTOs := wbRArrayS('Items', wbCNTO); - - wbRecord(CONT, 'Container', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbSCRI, - wbCNTOs, - wbDEST, - wbStruct(DATA, '', [ - wbInteger('Flags', itU8, wbFlags(['', 'Respawns'])), - wbFloat('Weight') - ], cpNormal, True), - wbFormIDCk(SNAM, 'Sound - Open', [SOUN]), - wbFormIDCk(QNAM, 'Sound - Close', [SOUN]) - ], True); - - wbCSDT := wbRStructSK([0], 'Sound Type', [ - wbInteger(CSDT, 'Type', itU32,wbEnum([ - {0x00} 'Left Foot', - {0x01} 'Right Foot', - {0x02} 'Left Back Foot', - {0x03} 'Right Back Foot', - {0x04} 'Idle', - {0x05} 'Aware', - {0x06} 'Attack', - {0x07} 'Hit', - {0x08} 'Death', - {0x09} 'Weapon', - {0x0A} 'Movement', - {0x0B} 'Conscious' - ])), - wbRArrayS('Sounds', wbRStructSK([0], 'Sound', [ - wbFormIDCk(CSDI, 'Sound', [SOUN], False, cpNormal, True), - wbInteger(CSDC, 'Sound Chance', itU8, nil, cpNormal, True) - ], []), cpNormal, True) - ], []); - - wbCSDTs := wbRArrayS('Sound Types', wbCSDT, cpNormal, False, nil, nil, wbActorTemplateUseModelAnimation); - - wbAgressionEnum := wbEnum([ - 'Unaggressive', - 'Aggressive', - 'Very Aggressive', - 'Frenzied' - ]); - - wbConfidenceEnum := wbEnum([ - 'Cowardly', - 'Cautious', - 'Average', - 'Brave', - 'Foolhardy' - ]); - - wbMoodEnum := wbEnum([ - 'Neutral', - 'Afraid', - 'Annoyed', - 'Cocky', - 'Drugged', - 'Pleasant', - 'Angry', - 'Sad' - ]); - - wbAssistanceEnum := wbEnum([ - 'Helps Nobody', - 'Helps Allies', - 'Helps Friends and Allies' - ]); - - wbAggroRadiusFlags := wbFlags([ - 'Aggro Radius Behavior' - ]); - - wbAIDT := - wbStruct(AIDT, 'AI Data', [ - {00} wbInteger('Aggression', itU8, wbAgressionEnum), - {01} wbInteger('Confidence', itU8, wbConfidenceEnum), - {02} wbInteger('Energy Level', itU8), - {03} wbInteger('Responsibility', itU8), - {04} wbInteger('Mood', itU8, wbMoodEnum), - wbByteArray('Unused', 3), - {08} wbInteger('Buys/Sells and Services', itU32, wbServiceFlags), - {0C} wbInteger('Teaches', itS8, wbSkillEnum), - {0D} wbInteger('Maximum training level', itU8), - {0E} wbInteger('Assistance', itS8, wbAssistanceEnum), - {0F} wbInteger('Aggro Radius Behavior', itU8, wbAggroRadiusFlags), - {10} wbInteger('Aggro Radius', itS32) - ], cpNormal, True, wbActorTemplateUseAIData); - - wbAttackAnimationEnum := - wbEnum([ - ], [ - 26, 'AttackLeft', - 27, 'AttackLeftUp', - 28, 'AttackLeftDown', - 29, 'AttackLeftIS', - 30, 'AttackLeftISUp', - 31, 'AttackLeftISDown', - 32, 'AttackRight', - 33, 'AttackRightUp', - 34, 'AttackRightDown', - 35, 'AttackRightIS', - 36, 'AttackRightISUp', - 37, 'AttackRightISDown', - 38, 'Attack3', - 39, 'Attack3Up', - 40, 'Attack3Down', - 41, 'Attack3IS', - 42, 'Attack3ISUp', - 43, 'Attack3ISDown', - 44, 'Attack4', - 45, 'Attack4Up', - 46, 'Attack4Down', - 47, 'Attack4IS', - 48, 'Attack4ISUp', - 49, 'Attack4ISDown', - 50, 'Attack5', - 51, 'Attack5Up', - 52, 'Attack5Down', - 53, 'Attack5IS', - 54, 'Attack5ISUp', - 55, 'Attack5ISDown', - 56, 'Attack6', - 57, 'Attack6Up', - 58, 'Attack6Down', - 59, 'Attack6IS', - 60, 'Attack6ISUp', - 61, 'Attack6ISDown', - 62, 'Attack7', - 63, 'Attack7Up', - 64, 'Attack7Down', - 65, 'Attack7IS', - 66, 'Attack7ISUp', - 67, 'Attack7ISDown', - 68, 'Attack8', - 69, 'Attack8Up', - 70, 'Attack8Down', - 71, 'Attack8IS', - 72, 'Attack8ISUp', - 73, 'Attack8ISDown', - 74, 'AttackLoop', - 75, 'AttackLoopUp', - 76, 'AttackLoopDown', - 77, 'AttackLoopIS', - 78, 'AttackLoopISUp', - 79, 'AttackLoopISDown', - 80, 'AttackSpin', - 81, 'AttackSpinUp', - 82, 'AttackSpinDown', - 83, 'AttackSpinIS', - 84, 'AttackSpinISUp', - 85, 'AttackSpinISDown', - 86, 'AttackSpin2', - 87, 'AttackSpin2Up', - 88, 'AttackSpin2Down', - 89, 'AttackSpin2IS', - 90, 'AttackSpin2ISUp', - 91, 'AttackSpin2ISDown', - 92, 'AttackPower', - 93, 'AttackForwardPower', - 94, 'AttackBackPower', - 95, 'AttackLeftPower', - 96, 'AttackRightPower', - 97, 'PlaceMine', - 98, 'PlaceMineUp', - 99, 'PlaceMineDown', - 100, 'PlaceMineIS', - 101, 'PlaceMineISUp', - 102, 'PlaceMineISDown', - 103, 'PlaceMine2', - 104, 'PlaceMine2Up', - 105, 'PlaceMine2Down', - 106, 'PlaceMine2IS', - 107, 'PlaceMine2ISUp', - 108, 'PlaceMine2ISDown', - 109, 'AttackThrow', - 110, 'AttackThrowUp', - 111, 'AttackThrowDown', - 112, 'AttackThrowIS', - 113, 'AttackThrowISUp', - 114, 'AttackThrowISDown', - 115, 'AttackThrow2', - 116, 'AttackThrow2Up', - 117, 'AttackThrow2Down', - 118, 'AttackThrow2IS', - 119, 'AttackThrow2ISUp', - 120, 'AttackThrow2ISDown', - 121, 'AttackThrow3', - 122, 'AttackThrow3Up', - 123, 'AttackThrow3Down', - 124, 'AttackThrow3IS', - 125, 'AttackThrow3ISUp', - 126, 'AttackThrow3ISDown', - 127, 'AttackThrow4', - 128, 'AttackThrow4Up', - 129, 'AttackThrow4Down', - 130, 'AttackThrow4IS', - 131, 'AttackThrow4ISUp', - 132, 'AttackThrow4ISDown', - 133, 'AttackThrow5', - 134, 'AttackThrow5Up', - 135, 'AttackThrow5Down', - 136, 'AttackThrow5IS', - 137, 'AttackThrow5ISUp', - 138, 'AttackThrow5ISDown', - - 167, 'PipBoy', - 178, 'PipBoyChild', - - 255, ' ANY' - ]); - - wbImpactMaterialTypeEnum := - wbEnum([ - 'Stone', - 'Dirt', - 'Grass', - 'Glass', - 'Metal', - 'Wood', - 'Organic', - 'Cloth', - 'Water', - 'Hollow Metal', - 'Organic Bug', - 'Organic Glow' - ]); - - wbTemplateFlags := wbFlags([ - 'Use Traits', - 'Use Stats', - 'Use Factions', - 'Use Actor Effect List', - 'Use AI Data', - 'Use AI Packages', - 'Use Model/Animation', - 'Use Base Data', - 'Use Inventory', - 'Use Script' - ]); - - wbRecord(CREA, 'Creature', [ - wbEDIDReq, - wbOBNDReq, - wbFULLActor, - wbMODLActor, - wbSPLOs, - wbFormIDCk(EITM, 'Unarmed Attack Effect', [ENCH, SPEL], False, cpNormal, False, wbActorTemplateUseActorEffectList), - wbInteger(EAMT, 'Unarmed Attack Animation', itU16, wbAttackAnimationEnum, cpNormal, True, False, wbActorTemplateUseActorEffectList), - wbArrayS(NIFZ, 'Model List', wbStringLC('Model'), 0, cpNormal, False, nil, nil, wbActorTemplateUseModelAnimation), - wbByteArray(NIFT, 'Texture Files Hashes', 0, cpIgnore, False, False, wbActorTemplateUseModelAnimation), - wbStruct(ACBS, 'Configuration', [ - {00} wbInteger('Flags', itU32, wbFlags([ - {0x000001} 'Biped', - {0x000002} 'Essential', - {0x000004} 'Weapon & Shield?', - {0x000008} 'Respawn', - {0x000010} 'Swims', - {0x000020} 'Flies', - {0x000040} 'Walks', - {0x000080} 'PC Level Mult', - {0x000100} 'Unknown 8', - {0x000200} 'No Low Level Processing', - {0x000400} '', - {0x000800} 'No Blood Spray', - {0x001000} 'No Blood Decal', - {0x002000} '', - {0x004000} '', - {0x008000} 'No Head', - {0x010000} 'No Right Arm', - {0x020000} 'No Left Arm', - {0x040000} 'No Combat in Water', - {0x080000} 'No Shadow', - {0x100000} 'No VATS Melee', - {0x00200000} 'Allow PC Dialogue', - {0x00400000} 'Can''t Open Doors', - {0x00800000} 'Immobile', - {0x01000000} 'Tilt Front/Back', - {0x02000000} 'Tilt Left/Right', - {0x03000000} 'No Knockdowns', - {0x08000000} 'Not Pushable', - {0x10000000} 'Allow Pickpocket', - {0x20000000} 'Is Ghost', - {0x40000000} 'No Rotating To Head-track', - {0x80000000} 'Invulnerable' - ], [ - {0x000001 Biped} wbActorTemplateUseModelAnimation, - {0x000002 Essential} wbActorTemplateUseBaseData, - {0x000004 Weapon & Shield} nil, - {0x000008 Respawn} wbActorTemplateUseBaseData, - {0x000010 Swims} wbActorTemplateUseModelAnimation, - {0x000020 Flies} wbActorTemplateUseModelAnimation, - {0x000040 Walks} wbActorTemplateUseModelAnimation, - {0x000080 PC Level Mult} wbActorTemplateUseStats, - {0x000100 Unknown 8} nil, - {0x000200 No Low Level Processing} wbActorTemplateUseBaseData, - {0x000400 } nil, - {0x000800 No Blood Spray} wbActorTemplateUseModelAnimation, - {0x001000 No Blood Decal} wbActorTemplateUseModelAnimation, - {0x002000 } nil, - {0x004000 } nil, - {0x008000 No Head} wbActorTemplateUseModelAnimation, - {0x010000 No Right Arm} wbActorTemplateUseModelAnimation, - {0x020000 No Left Arm} wbActorTemplateUseModelAnimation, - {0x040000 No Combat in Water} wbActorTemplateUseModelAnimation, - {0x080000 No Shadow} wbActorTemplateUseModelAnimation, - {0x100000 No VATS Melee} nil, - {0x00200000 Allow PC Dialogue} wbActorTemplateUseBaseData, - {0x00400000 Can''t Open Doors} wbActorTemplateUseBaseData, - {0x00800000 Immobile} wbActorTemplateUseModelAnimation, - {0x01000000 Tilt Front/Back} wbActorTemplateUseModelAnimation, - {0x02000000 Tilt Left/Right} wbActorTemplateUseModelAnimation, - {0x03000000 No Knockdowns} nil, - {0x08000000 Not Pushable} wbActorTemplateUseModelAnimation, - {0x10000000 Allow Pickpocket} wbActorTemplateUseBaseData, - {0x20000000 Is Ghost} nil, - {0x40000000 No Rotating To Head-track} wbActorTemplateUseModelAnimation, - {0x80000000 Invulnerable} nil - ])), - {04} wbInteger('Fatigue', itU16, nil, cpNormal, False, wbActorTemplateUseStats), - {06} wbInteger('Barter gold', itU16, nil, cpNormal, False, wbActorTemplateUseAIData), - {08} wbUnion('Level', wbCreaLevelDecider, [ - wbInteger('Level', itS16, nil, cpNormal, False, wbActorTemplateUseStats), - wbInteger('Level Mult', itS16, wbDiv(1000), cpNormal, False, wbActorTemplateUseStats) - ], cpNormal, False, wbActorTemplateUseStats), - {10} wbInteger('Calc min', itU16, nil, cpNormal, False, wbActorTemplateUseStats), - {12} wbInteger('Calc max', itU16, nil, cpNormal, False, wbActorTemplateUseStats), - {14} wbInteger('Speed Multiplier', itU16, nil, cpNormal, False, wbActorTemplateUseStats), - {16} wbFloat('Karma (Alignment)', cpNormal, False, 1, -1, wbActorTemplateUseTraits), - {20} wbInteger('Disposition Base', itS16, nil, cpNormal, False, wbActorTemplateUseTraits), - {22} wbInteger('Template Flags', itU16, wbTemplateFlags) - ], cpNormal, True), - wbRArrayS('Factions', - wbStructSK(SNAM, [0], 'Faction', [ - wbFormIDCk('Faction', [FACT]), - wbInteger('Rank', itU8), - wbByteArray('Unused', 3) - ]), - cpNormal, False, nil, nil, wbActorTemplateUseFactions), - wbFormIDCk(INAM, 'Death item', [LVLI], False, cpNormal, False, wbActorTemplateUseTraits), - wbFormIDCk(VTCK, 'Voice', [VTYP], False, cpNormal, False, wbActorTemplateUseTraits), - wbFormIDCk(TPLT, 'Template', [CREA, LVLC]), - wbDESTActor, - wbSCRIActor, - wbRArrayS('Items', wbCNTO, cpNormal, False, nil, nil, wbActorTemplateUseInventory), - wbAIDT, - wbRArray('Packages', wbFormIDCk(PKID, 'Package', [PACK]), cpNormal, False, nil, nil, wbActorTemplateUseAIPackages), - wbArrayS(KFFZ, 'Animations', wbStringLC('Animation'), 0, cpNormal, False, nil, nil, wbActorTemplateUseModelAnimation), - wbStruct(DATA, '', [ - {00} wbInteger('Type', itU8, wbCreatureTypeEnum, cpNormal, False, wbActorTemplateUseTraits), - {01} wbInteger('Combat Skill', itU8, nil, cpNormal, False, wbActorTemplateUseStats), - {02} wbInteger('Magic Skill', itU8, nil, cpNormal, False, wbActorTemplateUseStats), - {03} wbInteger('Stealth Skill', itU8, nil, cpNormal, False, wbActorTemplateUseStats), - {04} wbInteger('Health', itS16, nil, cpNormal, False, wbActorTemplateUseStats), - {06} wbByteArray('Unused', 2), - {08} wbInteger('Damage', itS16, nil, cpNormal, False, wbActorTemplateUseStats), - {10} wbArray('Attributes', wbInteger('Attribute', itU8), [ - 'Strength', - 'Perception', - 'Endurance', - 'Charisma', - 'Intelligence', - 'Agility', - 'Luck' - ], cpNormal, False, wbActorTemplateUseStats) - ], cpNormal, True), - wbInteger(RNAM, 'Attack reach', itU8, nil, cpNormal, True, False, wbActorTemplateUseTraits), - wbFormIDCk(ZNAM, 'Combat Style', [CSTY], False, cpNormal, False, wbActorTemplateUseTraits), - wbFormIDCk(PNAM, 'Body Part Data', [BPTD], False, cpNormal, True, wbActorTemplateUseModelAnimation), - wbFloat(TNAM, 'Turning Speed', cpNormal, True, 1, -1, wbActorTemplateUseStats), - wbFloat(BNAM, 'Base Scale', cpNormal, True, 1, -1, wbActorTemplateUseStats), - wbFloat(WNAM, 'Foot Weight', cpNormal, True, 1, -1, wbActorTemplateUseStats), - wbInteger(NAM4, 'Impact Material Type', itU32, wbImpactMaterialTypeEnum, cpNormal, True, False, wbActorTemplateUseModelAnimation), - wbInteger(NAM5, 'Sound Level', itU32, wbSoundLevelEnum, cpNormal, True, False, wbActorTemplateUseModelAnimation), - wbFormIDCk(CSCR, 'Inherits Sounds from', [CREA], False, cpNormal, False, wbActorTemplateUseModelAnimation), - wbCSDTs, - wbFormIDCk(CNAM, 'Impact Dataset', [IPDS], False, cpNormal, False, wbActorTemplateUseModelAnimation), - wbFormIDCk(LNAM, 'Melee Weapon List', [FLST], False, cpNormal, False, wbActorTemplateUseTraits) - ], True); - -end; - -procedure DefineFO3d; -begin - wbRecord(CSTY, 'Combat Style', [ - wbEDIDReq, - wbStruct(CSTD, 'Advanced - Standard', [ - {000}wbInteger('Maneuver Decision - Dodge % Chance', itU8), - {001}wbInteger('Maneuver Decision - Left/Right % Chance', itU8), - {002}wbByteArray('Unused', 2), - {004}wbFloat('Maneuver Decision - Dodge L/R Timer (min)'), - {008}wbFloat('Maneuver Decision - Dodge L/R Timer (max)'), - {012}wbFloat('Maneuver Decision - Dodge Forward Timer (min)'), - {016}wbFloat('Maneuver Decision - Dodge Forward Timer (max)'), - {020}wbFloat('Maneuver Decision - Dodge Back Timer Min'), - {024}wbFloat('Maneuver Decision - Dodge Back Timer Max'), - {028}wbFloat('Maneuver Decision - Idle Timer min'), - {032}wbFloat('Maneuver Decision - Idle Timer max'), - {036}wbInteger('Melee Decision - Block % Chance', itU8), - {037}wbInteger('Melee Decision - Attack % Chance', itU8), - {038}wbByteArray('Unused', 2), - {040}wbFloat('Melee Decision - Recoil/Stagger Bonus to Attack'), - {044}wbFloat('Melee Decision - Unconscious Bonus to Attack'), - {048}wbFloat('Melee Decision - Hand-To-Hand Bonus to Attack'), - {052}wbInteger('Melee Decision - Power Attacks - Power Attack % Chance', itU8), - {053}wbByteArray('Unused', 3), - {056}wbFloat('Melee Decision - Power Attacks - Recoil/Stagger Bonus to Power'), - {060}wbFloat('Melee Decision - Power Attacks - Unconscious Bonus to Power Attack'), - {064}wbInteger('Melee Decision - Power Attacks - Normal', itU8), - {065}wbInteger('Melee Decision - Power Attacks - Forward', itU8), - {066}wbInteger('Melee Decision - Power Attacks - Back', itU8), - {067}wbInteger('Melee Decision - Power Attacks - Left', itU8), - {068}wbInteger('Melee Decision - Power Attacks - Right', itU8), - {069}wbByteArray('Unused', 3), - {072}wbFloat('Melee Decision - Hold Timer (min)'), - {076}wbFloat('Melee Decision - Hold Timer (max)'), - {080}wbInteger('Flags', itU16, wbFlags([ - 'Choose Attack using % Chance', - 'Melee Alert OK', - 'Flee Based on Personal Survival', - '', - 'Ignore Threats', - 'Ignore Damaging Self', - 'Ignore Damaging Group', - 'Ignore Damaging Spectators', - 'Cannot Use Stealthboy' - ])), - {082}wbByteArray('Unused', 2), - {085}wbInteger('Maneuver Decision - Acrobatic Dodge % Chance', itU8), - {085}wbInteger('Melee Decision - Power Attacks - Rushing Attack % Chance', itU8), - {086}wbByteArray('Unused', 2), - {088}wbFloat('Melee Decision - Power Attacks - Rushing Attack Distance Mult') - ], cpNormal, True), - wbStruct(CSAD, 'Advanced - Advanced', [ - wbFloat('Dodge Fatigue Mod Mult'), - wbFloat('Dodge Fatigue Mod Base'), - wbFloat('Encumb. Speed Mod Base'), - wbFloat('Encumb. Speed Mod Mult'), - wbFloat('Dodge While Under Attack Mult'), - wbFloat('Dodge Not Under Attack Mult'), - wbFloat('Dodge Back While Under Attack Mult'), - wbFloat('Dodge Back Not Under Attack Mult'), - wbFloat('Dodge Forward While Attacking Mult'), - wbFloat('Dodge Forward Not Attacking Mult'), - wbFloat('Block Skill Modifier Mult'), - wbFloat('Block Skill Modifier Base'), - wbFloat('Block While Under Attack Mult'), - wbFloat('Block Not Under Attack Mult'), - wbFloat('Attack Skill Modifier Mult'), - wbFloat('Attack Skill Modifier Base'), - wbFloat('Attack While Under Attack Mult'), - wbFloat('Attack Not Under Attack Mult'), - wbFloat('Attack During Block Mult'), - wbFloat('Power Att. Fatigue Mod Base'), - wbFloat('Power Att. Fatigue Mod Mult') - ], cpNormal, True), - wbStruct(CSSD, 'Simple', [ - {00} wbFloat('Cover Search Radius'), - {04} wbFloat('Take Cover Chance'), - {08} wbFloat('Wait Timer (min)'), - {12} wbFloat('Wait Timer (max)'), - {16} wbFloat('Wait to Fire Timer (min)'), - {20} wbFloat('Wait to Fire Timer (max)'), - {24} wbFloat('Fire Timer (min)'), - {28} wbFloat('Fire Timer (max)'), - {32} wbFloat('Ranged Weapon Range Mult (min)'), - {36} wbByteArray('Unused', 4), - {40} wbInteger('Weapon Restrictions', itU32, wbEnum([ - 'None', - 'Melee Only', - 'Ranged Only' - ])), - {44} wbFloat('Ranged Weapon Range Mult (max)'), - {48} wbFloat('Max Targeting FOV'), - {52} wbFloat('Combat Radius'), - {56} wbFloat('Semi-Auto Firing Delay Mult (min)'), - {60} wbFloat('Semi-Auto Firing Delay Mult (max)') - ], cpNormal, True) - ]); - - wbRecord(DIAL, 'Dialog Topic', [ - wbEDIDReq, - wbRArrayS('Quests', wbFormIDCkNoReach(QSTI, 'Quest', [QUST], False, cpBenign)), - wbRArrayS('Quests?', wbFormIDCkNoReach(QSTR, 'Quest?', [QUST], False, cpBenign)), - wbFULL, - wbFloat(PNAM, 'Priority', cpNormal, True, 1, -1, nil, nil, 50.0), - wbStruct(DATA, '', [ - wbInteger('Type', itU8, wbEnum([ - {0} 'Topic', - {1} 'Conversation', - {2} 'Combat', - {3} 'Persuasion', - {4} 'Detection', - {5} 'Service', - {6} 'Miscellaneous', - {7} 'Radio' - ])), - wbInteger('Flags', itU8, wbFlags([ - 'Rumors', - 'Top-level' - ])) - ], cpNormal, True, nil, 1) - ], True); - - wbRecord(DOOR, 'Door', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODLReq, - wbSCRI, - wbDEST, - wbFormIDCk(SNAM, 'Sound - Open', [SOUN]), - wbFormIDCk(ANAM, 'Sound - Close', [SOUN]), - wbFormIDCk(BNAM, 'Sound - Looping', [SOUN]), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - '', - 'Automatic Door', - 'Hidden', - 'Minimal Use', - 'Sliding Door' - ]), cpNormal, True) - ]); - - wbBlendModeEnum := wbEnum([ - '', - 'Zero', - 'One', - 'Source Color', - 'Source Inverse Color', - 'Source Alpha', - 'Source Inverted Alpha', - 'Dest Alpha', - 'Dest Inverted Alpha', - 'Dest Color', - 'Dest Inverse Color', - 'Source Alpha SAT' - ]); - - wbBlendOpEnum := wbEnum([ - '', - 'Add', - 'Subtract', - 'Reverse Subtract', - 'Minimum', - 'Maximum' - ]); - wbZTestFuncEnum := wbEnum([ - '', - '', - '', - 'Equal To', - 'Normal', - 'Greater Than', - '', - 'Greater Than or Equal Than', - 'Always Show' - ]); - - wbRecord(EFSH, 'Effect Shader', [ - wbEDID, - wbString(ICON, 'Fill Texture'), - wbString(ICO2, 'Particle Shader Texture'), - wbString(NAM7, 'Holes Texture'), - wbStruct(DATA, '', [ - wbInteger('Flags', itU8, wbFlags([ - {0} 'No Membrane Shader', - {1} '', - {2} '', - {3} 'No Particle Shader', - {4} 'Edge Effect - Inverse', - {5} 'Membrane Shader - Affect Skin Only' - ])), - wbByteArray('Unused', 3), - wbInteger('Membrane Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Membrane Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Membrane Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbStruct('Fill/Texture Effect - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Fill/Texture Effect - Alpha Fade In Time'), - wbFloat('Fill/Texture Effect - Full Alpha Time'), - wbFloat('Fill/Texture Effect - Alpha Fade Out Time'), - wbFloat('Fill/Texture Effect - Presistent Alpha Ratio'), - wbFloat('Fill/Texture Effect - Alpha Pulse Amplitude'), - wbFloat('Fill/Texture Effect - Alpha Pulse Frequency'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (U)'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (V)'), - wbFloat('Edge Effect - Fall Off'), - wbStruct('Edge Effect - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Edge Effect - Alpha Fade In Time'), - wbFloat('Edge Effect - Full Alpha Time'), - wbFloat('Edge Effect - Alpha Fade Out Time'), - wbFloat('Edge Effect - Persistent Alpha Ratio'), - wbFloat('Edge Effect - Alpha Pulse Amplitude'), - wbFloat('Edge Effect - Alpha Pusle Frequence'), - wbFloat('Fill/Texture Effect - Full Alpha Ratio'), - wbFloat('Edge Effect - Full Alpha Ratio'), - wbInteger('Membrane Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Particle Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Particle Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Particle Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbInteger('Particle Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbFloat('Particle Shader - Particle Birth Ramp Up Time'), - wbFloat('Particle Shader - Full Particle Birth Time'), - wbFloat('Particle Shader - Particle Birth Ramp Down Time'), - wbFloat('Particle Shader - Full Particle Birth Ratio'), - wbFloat('Particle Shader - Persistant Particle Birth Ratio'), - wbFloat('Particle Shader - Particle Lifetime'), - wbFloat('Particle Shader - Particle Lifetime +/-'), - wbFloat('Particle Shader - Initial Speed Along Normal'), - wbFloat('Particle Shader - Acceleration Along Normal'), - wbFloat('Particle Shader - Initial Velocity #1'), - wbFloat('Particle Shader - Initial Velocity #2'), - wbFloat('Particle Shader - Initial Velocity #3'), - wbFloat('Particle Shader - Acceleration #1'), - wbFloat('Particle Shader - Acceleration #2'), - wbFloat('Particle Shader - Acceleration #3'), - wbFloat('Particle Shader - Scale Key 1'), - wbFloat('Particle Shader - Scale Key 2'), - wbFloat('Particle Shader - Scale Key 1 Time'), - wbFloat('Particle Shader - Scale Key 2 Time'), - wbStruct('Color Key 1 - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Color Key 2 - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Color Key 3 - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Color Key 1 - Color Alpha'), - wbFloat('Color Key 2 - Color Alpha'), - wbFloat('Color Key 3 - Color Alpha'), - wbFloat('Color Key 1 - Color Key Time'), - wbFloat('Color Key 2 - Color Key Time'), - wbFloat('Color Key 3 - Color Key Time'), - wbFloat('Particle Shader - Initial Speed Along Normal +/-'), - wbFloat('Particle Shader - Initial Rotation (deg)'), - wbFloat('Particle Shader - Initial Rotation (deg) +/-'), - wbFloat('Particle Shader - Rotation Speed (deg/sec)'), - wbFloat('Particle Shader - Rotation Speed (deg/sec) +/-'), - wbFormIDCk('Addon Models', [DEBR, NULL]), - wbFloat('Holes - Start Time'), - wbFloat('Holes - End Time'), - wbFloat('Holes - Start Val'), - wbFloat('Holes - End Val'), - wbFloat('Edge Width (alpha units)'), - wbStruct('Edge Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Explosion Wind Speed'), - wbInteger('Texture Count U', itU32), - wbInteger('Texture Count V', itU32), - wbFloat('Addon Models - Fade In Time'), - wbFloat('Addon Models - Fade Out Time'), - wbFloat('Addon Models - Scale Start'), - wbFloat('Addon Models - Scale End'), - wbFloat('Addon Models - Scale In Time'), - wbFloat('Addon Models - Scale Out Time') - ], cpNormal, True, nil, 57) - ], False, nil, cpNormal, False, wbEFSHAfterLoad); - - wbRecord(ENCH, 'Object Effect', [ - wbEDIDReq, - wbFULL, - wbStruct(ENIT, 'Effect Data', [ - wbInteger('Type', itU32, wbEnum([ - {0} '', - {1} '', - {2} 'Weapon', - {3} 'Apparel' - ])), - wbByteArray('Unused', 4), - wbByteArray('Unused', 4), - wbInteger('Flags', itU8, wbFlags([ - 'No Auto-Calc', - '', - 'Hide Effect' - ])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffectsReq - ]); - - wbRecord(EYES, 'Eyes', [ - wbEDIDReq, - wbFULLReq, - wbString(ICON, 'Texture', 0{, cpNormal, True??}), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - 'Playable', - 'Not Male', - 'Not Female' - ]), cpNormal, True) - ]); - - wbXNAM := - wbStructSK(XNAM, [0], 'Relation', [ - wbFormIDCkNoReach('Faction', [FACT, RACE]), - wbInteger('Modifier', itS32), - wbInteger('Group Combat Reaction', itU32, wbEnum([ - 'Neutral', - 'Enemy', - 'Ally', - 'Friend' - ])) - ]); - - wbXNAMs := wbRArrayS('Relations', wbXNAM); - - wbRecord(FACT, 'Faction', [ - wbEDIDReq, - wbFULL, - wbXNAMs, - wbStruct(DATA, '', [ - wbInteger('Flags 1', itU8, wbFlags([ - 'Hidden from PC', - 'Evil', - 'Special Combat' - ])), - wbInteger('Flags 2', itU8, wbFlags([ - 'Track Crime', - 'Allow Sell' - ])), - wbByteArray('Unused', 2) - ], cpNormal, True, nil, 1), - wbFloat(CNAM, 'Unused'), - wbRStructsSK('Ranks', 'Rank', [0], [ - wbInteger(RNAM, 'Rank#', itS32), - wbString(MNAM, 'Male', 0, cpTranslate), - wbString(FNAM, 'Female', 0, cpTranslate), - wbString(INAM, 'Insignia (Unused)') - ], []) - ], False, nil, cpNormal, False, wbFACTAfterLoad); - - wbRecord(FURN, 'Furniture', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODLReq, - wbSCRI, - wbDEST, - wbByteArray(MNAM, 'Marker Flags', 0, cpNormal, True) - ]); - - wbRecord(GLOB, 'Global', [ - wbEDIDReq, - wbInteger(FNAM, 'Type', itU8, wbGLOBFNAM, nil, cpNormal, True), - wbFloat(FLTV, 'Value', cpNormal, True) - ]); - - - wbRecord(GMST, 'Game Setting', [ - wbString(EDID, 'Editor ID', 0, cpCritical, True, nil, wbGMSTEDIDAfterSet), - wbUnion(DATA, 'Value', wbGMSTUnionDecider, [ - wbString('', 0, cpTranslate), - wbInteger('', itS32), - wbFloat('') - ], cpNormal, True) - ]); - - wbDODT := wbStruct(DODT, 'Decal Data', [ - wbFloat('Min Width'), - wbFloat('Max Width'), - wbFloat('Min Height'), - wbFloat('Max Height'), - wbFloat('Depth'), - wbFloat('Shininess'), - wbStruct('Parallax', [ - wbFloat('Scale'), - wbInteger('Passes', itU8) - ]), - wbInteger('Flags', itU8, wbFlags([ - 'Parallax', - 'Alpha - Blending', - 'Alpha - Testing' - ], True)), - wbByteArray('Unused', 2), - wbStruct('Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]); - - wbRecord(TXST, 'Texture Set', [ - wbEDIDReq, - wbOBNDReq, - wbRStruct('Textures (RGB/A)', [ - wbString(TX00,'Base Image / Transparency'), - wbString(TX01,'Normal Map / Specular'), - wbString(TX02,'Environment Map Mask / ?'), - wbString(TX03,'Glow Map / Unused'), - wbString(TX04,'Parallax Map / Unused'), - wbString(TX05,'Environment Map / Unused') - ], []), - wbDODT, - wbInteger(DNAM, 'Flags', itU16, wbFlags([ - 'No Specular Map' - ]), cpNormal, True) - ]); - - wbRecord(MICN, 'Menu Icon', [ - wbEDIDReq, - wbICONReq - ]); - - wbRecord(HDPT, 'Head Part', [ - wbEDIDReq, - wbFULLReq, - wbMODL, - wbInteger(DATA, 'Flags', itU8, wbFlags([ - 'Playable' - ]), cpNormal, True), - wbRArrayS('Extra Parts', - wbFormIDCk(HNAM, 'Part', [HDPT]) - ) - ]); - - wbRecord(ASPC, 'Acoustic Space', [ - wbEDIDReq, - wbOBNDReq, - wbFormIDCk(SNAM, 'Sound - Looping', [SOUN]), - wbFormIDCk(RDAT, 'Use Sound from Region (Interiors Only)', [REGN]), - wbInteger(ANAM, 'Environment Type', itU32, wbEnum([ - 'None', - 'Default', - 'Generic', - 'Padded Cell', - 'Room', - 'Bathroom', - 'Livingroom', - 'Stone Room', - 'Auditorium', - 'Concerthall', - 'Cave', - 'Arena', - 'Hangar', - 'Carpeted Hallway', - 'Hallway', - 'Stone Corridor', - 'Alley', - 'Forest', - 'City', - 'Mountains', - 'Quarry', - 'Plain', - 'Parkinglot', - 'Sewerpipe', - 'Underwater', - 'Small Room', - 'Medium Room', - 'Large Room', - 'Medium Hall', - 'Large Hall', - 'Plate' - ]), cpNormal, True) - ]); - - wbRecord(TACT, 'Talking Activator', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODLReq, - wbSCRI, - wbDEST, - wbFormIDCk(SNAM, 'Sound', [SOUN]), - wbFormIDCk(VNAM, 'Voice Type', [VTYP]) - ]); - - wbRecord(SCPT, 'Script', [ - wbEDIDReq, - wbSCHRReq, - wbByteArray(SCDA, 'Compiled Script'), - wbStringScript(SCTX, 'Script Source', 0, cpNormal{, True}), - wbRArrayS('Local Variables', wbRStructSK([0], 'Local Variable', [ - wbSLSD, - wbString(SCVR, 'Name', 0, cpCritical, True) - ], [])), - wbSCROs - ]); - - wbRecord(TERM, 'Terminal', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbSCRI, - wbDEST, - wbDESCReq, - wbFormIDCk(SNAM, 'Sound - Looping', [SOUN]), - wbFormIDCk(PNAM, 'Password Note', [NOTE]), - wbStruct(DNAM, '', [ - wbInteger('Base Hacking Difficulty', itU8, wbEnum([ - 'Very Easy', - 'Easy', - 'Average', - 'Hard', - 'Very Hard', - 'Requires Key' - ])), - wbInteger('Flags', itU8, wbFlags([ - 'Leveled', - 'Unlocked', - 'Alternate Colors', - 'Hide Welcome Text when displaying Image' - ])), - wbInteger('ServerType', itU8, wbEnum([ - '-Server 1-', - '-Server 2-', - '-Server 3-', - '-Server 4-', - '-Server 5-', - '-Server 6-', - '-Server 7-', - '-Server 8-', - '-Server 9-', - '-Server 10-' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbRArray('Menu Items', - wbRStruct('Menu Item', [ - wbString(ITXT, 'Item Text'), - wbString(RNAM, 'Result Text', 0, cpNormal, True), - wbInteger(ANAM, 'Flags', itU8, wbFlags([ - 'Add Note', - 'Force Redraw' - ]), cpNormal, True), - wbFormIDCk(INAM, 'Display Note', [NOTE]), - wbFormIDCk(TNAM, 'Sub Menu', [TERM]), - wbEmbeddedScriptReq, - wbCTDAs - ], []) - ) - ]); - - wbRecord(SCOL, 'Static Collection', [ - wbEDIDReq, - wbOBNDReq, - wbMODLReq, - wbRStructsSK('Parts', 'Part', [0], [ - wbFormIDCk(ONAM, 'Static', [STAT]), - wbArrayS(DATA, 'Placements', wbStruct('Placement', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]), - wbFloat('Scale') - ]), 0, cpNormal, True) - ], [], cpNormal, True) - ]); - - wbRecord(MSTT, 'Moveable Static', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODLReq, - wbDEST, - wbByteArray(DATA, 'Unknown', 1, cpNormal, True), - wbFormIDCk(SNAM, 'Sound', [SOUN]) - ]); - - wbRecord(PWAT, 'Placeable Water', [ - wbEDIDReq, - wbOBNDReq, - wbMODLReq, - wbStruct(DNAM, '', [ - wbInteger('Flags', itU32, wbFlags([ - {0x00000001}'Reflects', - {0x00000002}'Reflects - Actors', - {0x00000004}'Reflects - Land', - {0x00000008}'Reflects - LOD Land', - {0x00000010}'Reflects - LOD Buildings', - {0x00000020}'Reflects - Trees', - {0x00000040}'Reflects - Sky', - {0x00000080}'Reflects - Dynamic Objects', - {0x00000100}'Reflects - Dead Bodies', - {0x00000200}'Refracts', - {0x00000400}'Refracts - Actors', - {0x00000800}'Refracts - Land', - {0x00001000}'', - {0x00002000}'', - {0x00004000}'', - {0x00008000}'', - {0x00010000}'Refracts - Dynamic Objects', - {0x00020000}'Refracts - Dead Bodies', - {0x00040000}'Silhouette Reflections', - {0x00080000}'', - {0x00100000}'', - {0x00200000}'', - {0x00400000}'', - {0x00800000}'', - {0x01000000}'', - {0x02000000}'', - {0x03000000}'', - {0x08000000}'', - {0x10000000}'Depth', - {0x20000000}'Object Texture Coordinates', - {0x40000000}'', - {0x80000000}'No Underwater Fog' - ])), - wbFormIDCk('Water', [WATR]) - ], cpNormal, True) - ]); - - wbRecord(IDLM, 'Idle Marker', [ - wbEDIDReq, - wbOBNDReq, - wbInteger(IDLF, 'Flags', itU8, wbFlags([ - 'Run in Sequence', - '', - 'Do Once' - ]), cpNormal, True), - wbStruct(IDLC, '', [ - wbInteger('Animation Count', itU8), - wbByteArray('Unused', 3) - ], cpNormal, True, nil, 1), - wbFloat(IDLT, 'Idle Timer Setting', cpNormal, True), - wbArray(IDLA, 'Animations', wbFormIDCk('Animation', [IDLE, NULL]), 0, nil, wbIDLAsAfterSet, cpNormal, True) // NULL looks valid if IDLS\Animation Count is 0 - ], False, nil, cpNormal, False, nil, wbAnimationsAfterSet); - - wbRecord(NOTE, 'Note', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbYNAM, - wbZNAM, - wbInteger(DATA, 'Type', itU8, wbEnum([ - 'Sound', - 'Text', - 'Image', - 'Voice' - ]), cpNormal, True), - wbRArrayS('Quests', - wbFormIDCkNoReach(ONAM, 'Quest', [QUST]) - ), - wbString(XNAM, 'Texture'), - wbUnion(TNAM, 'Text / Topic', wbNOTETNAMDecide, [ - wbString('Text'), - wbFormIDCk('Topic', [DIAL]) - ]), - wbUnion(SNAM, 'Sound / NPC', wbNOTESNAMDecide, [ - wbFormIDCk('Sound', [SOUN]), - wbFormIDCk('NPC', [NPC_]) - ]) - ]); - -end; - -procedure DefineFO3e; -begin - wbRecord(PROJ, 'Projectile', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODLReq, - wbDEST, - wbStruct(DATA, 'Data', [ - {00} wbInteger('Flags', itU16, wbFlags([ - 'Hitscan', - 'Explosion', - 'Alt. Trigger', - 'Muzzle Flash', - '', - 'Can Be Disabled', - 'Can Be Picked Up', - 'Supersonic', - 'Pins Limbs', - 'Pass Through Small Transparent' - ])), - {00} wbInteger('Type', itU16, wbEnum([ - {00} '', - {01} 'Missile', - {02} 'Lobber', - {03} '', - {04} 'Beam', - {05} '', - {06} '', - {07} '', - {08} 'Flame' - ])), - {04} wbFloat('Gravity'), - {08} wbFloat('Speed'), - {12} wbFloat('Range'), - {16} wbFormIDCk('Light', [LIGH, NULL]), - {20} wbFormIDCk('Muzzle Flash - Light', [LIGH, NULL]), - {24} wbFloat('Tracer Chance'), - {28} wbFloat('Explosion - Alt. Trigger - Proximity'), - {32} wbFloat('Explosion - Alt. Trigger - Timer'), - {36} wbFormIDCk('Explosion', [EXPL, NULL]), - {40} wbFormIDCk('Sound', [SOUN, NULL]), - {44} wbFloat('Muzzle Flash - Duration'), - {48} wbFloat('Fade Duration'), - {52} wbFloat('Impact Force'), - {56} wbFormIDCk('Sound - Countdown', [SOUN, NULL]), - {60} wbFormIDCk('Sound - Disable', [SOUN, NULL]), - {64} wbFormIDCk('Default Weapon Source', [WEAP, NULL]) - ], cpNormal, True), - wbRStructSK([0], 'Muzzle Flash Model', [ - wbString(NAM1, 'Model Filename'), - wbByteArray(NAM2, 'Texture Files Hashes', 0, cpIgnore) - ], [], cpNormal, True), - wbInteger(VNAM, 'Sound Level', itU32, wbSoundLevelEnum, cpNormal, True) - ]); - - wbRecord(NAVI, 'Navigation Mesh Info Map', [ - wbEDID, - wbInteger(NVER, 'Version', itU32), - wbRArray('Navigation Map Infos', - wbStruct(NVMI, 'Navigation Map Info', [ - wbByteArray('Unknown', 4), - wbFormIDCk('Navigation Mesh', [NAVM]), - wbFormIDCk('Location', [CELL, WRLD]), - wbStruct('Grid', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbUnknown -{ wbUnion('Data', wbNAVINVMIDecider, [ - wbStruct('Data', [ - wbUnknown - ]), - wbStruct('Data', [ - wbArray('Unknown', wbFloat('Unknown'), 3), - wbByteArray('Unknown', 4) - ]), - wbStruct('Data', [ - wbArray('Unknown', wbArray('Unknown', wbFloat('Unknown'), 3), 3), - wbInteger('Count 1', itU16), - wbInteger('Count 2', itU16), - wbArray('Unknown', wbArray('Unknown', wbFloat('Unknown'), 3), [], wbNAVINAVMGetCount1), - wbUnknown - ]), - wbStruct('Data', [ - wbUnknown - ]) - ])} - ]) - ), - wbRArray('Unknown', - wbStruct(NVCI, 'Unknown', [ - wbFormIDCk('Unknown', [NAVM]), - wbArray('Unknown', wbFormIDCk('Unknown', [NAVM]), -1), - wbArray('Unknown', wbFormIDCk('Unknown', [NAVM]), -1), - wbArray('Doors', wbFormIDCk('Door', [REFR]), -1) - ]) - ) - ]); - - if wbSimpleRecords then begin - - wbRecord(NAVM, 'Navigation Mesh', [ - wbEDID, - wbInteger(NVER, 'Version', itU32), - wbStruct(DATA, '', [ - wbFormIDCk('Cell', [CELL]), - wbInteger('Vertex Count', itU32), - wbInteger('Triangle Count', itU32), - wbInteger('External Connections Count', itU32), - wbInteger('NVCA Count', itU32), - wbInteger('Doors Count', itU32) - ]), - wbByteArray(NVVX, 'Vertices'), - wbByteArray(NVTR, 'Triangles'), - wbByteArray(NVCA, 'Unknown'), - wbArray(NVDP, 'Doors', wbStruct('Door', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Triangle', itU16), - wbByteArray('Unused', 2) - ])), - wbByteArray(NVGD, 'Unknown'), - wbArray(NVEX, 'External Connections', wbStruct('Connection', [ - wbByteArray('Unknown', 4), - wbFormIDCk('Navigation Mesh', [NAVM], False, cpNormal), - wbInteger('Triangle', itU16, nil, cpNormal) - ])) - ], False, wbNAVMAddInfo); - - end else begin - - wbRecord(NAVM, 'Navigation Mesh', [ - wbEDID, - wbInteger(NVER, 'Version', itU32), - wbStruct(DATA, '', [ - wbFormIDCk('Cell', [CELL]), - wbInteger('Vertex Count', itU32), - wbInteger('Triangle Count', itU32), - wbInteger('External Connections Count', itU32), - wbInteger('NVCA Count', itU32), - wbInteger('Doors Count', itU32) // as of version = 5 (earliest NavMesh version I saw (Fallout3 1.7) is already 11) - ]), - wbArray(NVVX, 'Vertices', wbStruct('Vertex', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ])), - wbArray(NVTR, 'Triangles', wbStruct('Triangle', [ - wbArray('Vertices', wbInteger('Vertex', itS16), 3), - wbArray('Edges', wbInteger('Triangle', itS16, wbNVTREdgeToStr, wbNVTREdgeToInt), [ - '0 <-> 1', - '1 <-> 2', - '2 <-> 0' - ]), - wbInteger('Flags', itU32, wbFlags([ - 'Triangle #0 Is External', - 'Triangle #1 Is External', - 'Triangle #2 Is External', - 'Unknown 4', - 'Unknown 5', - 'Unknown 6', - 'Unknown 7', - 'Unknown 8', - 'Unknown 9', - 'Unknown 10', - 'Unknown 11', - 'Unknown 12', - 'Unknown 13', - 'Unknown 14', - 'Unknown 15', - 'Unknown 16', - 'Unknown 17', - 'Unknown 18', - 'Unknown 19', - 'Unknown 20', - 'Unknown 21', - 'Unknown 22', - 'Unknown 23', - 'Unknown 24', - 'Unknown 25', - 'Unknown 26', - 'Unknown 27', - 'Unknown 28', - 'Unknown 29', - 'Unknown 30', - 'Unknown 31', - 'Unknown 32' - ])) - ])), - wbArray(NVCA, 'Unknown', wbInteger('Unknown', itS16)), - wbArray(NVDP, 'Doors', wbStruct('Door', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Triangle', itU16), - wbByteArray('Unused', 2) - ])), - wbStruct(NVGD, 'Unknown', [ - wbByteArray('Unknown', 4), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbArray('Unknown', wbArray('Unknown', wbInteger('Unknown', itU16), -2)) - ]), - wbArray(NVEX, 'External Connections', wbStruct('Connection', [ - wbByteArray('Unknown', 4), - wbFormIDCk('Navigation Mesh', [NAVM], False, cpNormal), - wbInteger('Triangle', itU16, nil, cpNormal) - ])) - ], False, wbNAVMAddInfo); - - end; - - wbRecord(PGRE, 'Placed Grenade', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [PROJ], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - wbXRGD, - wbXRGB, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], []), - - {--- Ownership ---} - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32) - ], [XCMT, XCMO]), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - - {--- Reflected By / Refracted By ---} - wbRArrayS('Reflected/Refracted By', - wbStructSK(XPWR, [0], 'Water', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Type', itU32, wbFlags([ - 'Reflection', - 'Refraction' - ])) - ]) - ), - - {--- Decals ---} - wbRArrayS('Linked Decals', - wbStructSK(XDCR, [0], 'Decal', [ - wbFormIDCk('Reference', [REFR]), - wbUnknown - ]) - ), - - {--- Linked Ref ---} - wbFormIDCk(XLKR, 'Linked Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbStruct(XCLP, 'Linked Reference Color', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbFloat('Delay') - ]) - ) - ], []), - - {--- Enable Parent ---} - wbXESP, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Flags ---} - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbRecord(PMIS, 'Placed Missile', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [PROJ], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - wbXRGD, - wbXRGB, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], []), - - {--- Ownership ---} - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32) - ], [XCMT, XCMO]), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - - {--- Reflected By / Refracted By ---} - wbRArrayS('Reflected/Refracted By', - wbStructSK(XPWR, [0], 'Water', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Type', itU32, wbFlags([ - 'Reflection', - 'Refraction' - ])) - ]) - ), - - {--- Decals ---} - wbRArrayS('Linked Decals', - wbStructSK(XDCR, [0], 'Decal', [ - wbFormIDCk('Reference', [REFR]), - wbUnknown - ]) - ), - - {--- Linked Ref ---} - wbFormIDCk(XLKR, 'Linked Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbStruct(XCLP, 'Linked Reference Color', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbFloat('Delay') - ]) - ) - ], []), - - {--- Enable Parent ---} - wbXESP, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Flags ---} - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbRecord(PBEA, 'Placed Beam', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [PROJ], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - wbXRGD, - wbXRGB, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], []), - - {--- Ownership ---} - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32) - ], [XCMT, XCMO]), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - - {--- Reflected By / Refracted By ---} - wbRArrayS('Reflected/Refracted By', - wbStructSK(XPWR, [0], 'Water', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Type', itU32, wbFlags([ - 'Reflection', - 'Refraction' - ])) - ]) - ), - - {--- Decals ---} - wbRArrayS('Linked Decals', - wbStructSK(XDCR, [0], 'Decal', [ - wbFormIDCk('Reference', [REFR]), - wbUnknown - ]) - ), - - {--- Linked Ref ---} - wbFormIDCk(XLKR, 'Linked Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbStruct(XCLP, 'Linked Reference Color', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbFloat('Delay') - ]) - ) - ], []), - - {--- Enable Parent ---} - wbXESP, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Flags ---} - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbRecord(EXPL, 'Explosion', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbEITM, - wbFormIDCk(MNAM, 'Image Space Modifier', [IMAD]), - wbStruct(DATA, 'Data', [ - {00} wbFloat('Force'), - {04} wbFloat('Damage'), - {08} wbFloat('Radius'), - {12} wbFormIDCk('Light', [LIGH, NULL]), - {16} wbFormIDCk('Sound 1', [SOUN, NULL]), - {20} wbInteger('Flags', itU32, wbFlags([ - {0x00000001}'Unknown 1', - {0x00000002}'Always Uses World Orientation', - {0x00000004}'Knock Down - Always', - {0x00000008}'Knock Down - By Formula', - {0x00000010}'Ignore LOS Check', - {0x00000020}'Push Explosion Source Ref Only', - {0x00000040}'Ignore Image Space Swap' - ])), - {24} wbFloat('IS Radius'), - {28} wbFormIDCk('Impact DataSet', [IPDS, NULL]), - {32} wbFormIDCk('Sound 2', [SOUN, NULL]), - wbStruct('Radiation', [ - {36} wbFloat('Level'), - {40} wbFloat('Dissipation Time'), - {44} wbFloat('Radius') - ]), - {48} wbInteger('Sound Level', itU32, wbSoundLevelEnum, cpNormal, True) - ], cpNormal, True), - wbFormIDCk(INAM, 'Placed Impact Object', [TREE, SOUN, ACTI, DOOR, STAT, FURN, - CONT, ARMO, AMMO, LVLN, LVLC, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, - ASPC, IDLM, ARMA, MSTT, NOTE, PWAT, SCOL, TACT, TERM, TXST]) - ]); - - wbRecord(DEBR, 'Debris', [ - wbEDIDReq, - wbRStructs('Models', 'Model', [ - wbStruct(DATA, 'Data', [ - wbInteger('Percentage', itU8), - wbString('Model Filename'), - wbInteger('Flags', itU8, wbFlags([ - 'Has Collission Data' - ])) - ], cpNormal, True), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore) - ], [], cpNormal, True) - ]); - - wbRecord(IMGS, 'Image Space', [ - wbEDIDReq, - wbStruct(DNAM, '', [ - wbStruct('HDR', [ - {00} wbFloat('Eye Adapt Speed'), - {04} wbFloat('Blur Radius'), - {08} wbFloat('Blur Passes'), - {12} wbFloat('Emissive Mult'), - {16} wbFloat('Target LUM'), - {20} wbFloat('Upper LUM Clamp'), - {24} wbFloat('Bright Scale'), - {28} wbFloat('Bright Clamp'), - {32} wbFloat('LUM Ramp No Tex'), - {36} wbFloat('LUM Ramp Min'), - {40} wbFloat('LUM Ramp Max'), - {44} wbFloat('Sunlight Dimmer'), - {48} wbFloat('Grass Dimmer'), - {52} wbFloat('Tree Dimmer'), - {56} wbUnion('Skin Dimmer', wbIMGSSkinDimmerDecider, [ - wbFloat('Skin Dimmer'), - wbEmpty('Skin Dimmer', cpIgnore) - ]) - ], cpNormal, False, nil, 14), - wbStruct('Bloom', [ - {60} wbFloat('Blur Radius'), - {64} wbFloat('Alpha Mult Interior'), - {68} wbFloat('Alpha Mult Exterior') - ]), - wbStruct('Get Hit', [ - {72} wbFloat('Blur Radius'), - {76} wbFloat('Blur Damping Constant'), - {80} wbFloat('Damping Constant') - ]), - wbStruct('Night Eye', [ - wbStruct('Tint Color', [ - {84} wbFloat('Red', cpNormal, False, 255, 0), - {88} wbFloat('Green', cpNormal, False, 255, 0), - {92} wbFloat('Blue', cpNormal, False, 255, 0) - ]), - {96} wbFloat('Brightness') - ]), - wbStruct('Cinematic', [ - {100} wbFloat('Saturation'), - wbStruct('Contrast', [ - {104} wbFloat('Avg Lum Value'), - {108} wbFloat('Value') - ]), - {112} wbFloat('Cinematic - Brightness - Value'), - wbStruct('Tint', [ - wbStruct('Color', [ - {116} wbFloat('Red', cpNormal, False, 255, 0), - {120} wbFloat('Green', cpNormal, False, 255, 0), - {124} wbFloat('Blue', cpNormal, False, 255, 0) - ]), - {128} wbFloat('Value') - ]) - ]), - wbByteArray('Unused', 4), - wbByteArray('Unused', 4), - wbByteArray('Unused', 4), - wbByteArray('Unused', 4), - wbInteger('Flags', itU8, wbFlags([ - 'Saturation', - 'Contrast', - 'Tint', - 'Brightness' - ], True)), - wbByteArray('Unused', 3) - ], cpNormal, True, nil, 5) - ]); - - wbTimeInterpolator := wbStruct('Data', [ - wbFloat('Time'), - wbFloat('Value') - ]); - - wbColorInterpolator := wbStruct('Data', [ - wbFloat('Time'), - wbFloat('Red', cpNormal, False, 255, 0), - wbFloat('Green', cpNormal, False, 255, 0), - wbFloat('Blue', cpNormal, False, 255, 0), - wbFloat('Alpha', cpNormal, False, 255, 0) - ]); - - wbRecord(IMAD, 'Image Space Adapter', [ - wbEDID, - wbStruct(DNAM, 'Data Count', [ - wbInteger('Flags', itU32, wbFlags(['Animatable'])), - wbFloat('Duration'), - wbStruct('HDR', [ - wbInteger('Eye Adapt Speed Mult', itU32), - wbInteger('Eye Adapt Speed Add', itU32), - wbInteger('Bloom Blur Radius Mult', itU32), - wbInteger('Bloom Blur Radius Add', itU32), - wbInteger('Bloom Threshold Mult', itU32), - wbInteger('Bloom Threshold Add', itU32), - wbInteger('Bloom Scale Mult', itU32), - wbInteger('Bloom Scale Add', itU32), - wbInteger('Target Lum Min Mult', itU32), - wbInteger('Target Lum Min Add', itU32), - wbInteger('Target Lum Max Mult', itU32), - wbInteger('Target Lum Max Add', itU32), - wbInteger('Sunlight Scale Mult', itU32), - wbInteger('Sunlight Scale Add', itU32), - wbInteger('Sky Scale Mult', itU32), - wbInteger('Sky Scale Add', itU32) - ]), - wbInteger('Unknown08 Mult', itU32), - wbInteger('Unknown48 Add', itU32), - wbInteger('Unknown09 Mult', itU32), - wbInteger('Unknown49 Add', itU32), - wbInteger('Unknown0A Mult', itU32), - wbInteger('Unknown4A Add', itU32), - wbInteger('Unknown0B Mult', itU32), - wbInteger('Unknown4B Add', itU32), - wbInteger('Unknown0C Mult', itU32), - wbInteger('Unknown4C Add', itU32), - wbInteger('Unknown0D Mult', itU32), - wbInteger('Unknown4D Add', itU32), - wbInteger('Unknown0E Mult', itU32), - wbInteger('Unknown4E Add', itU32), - wbInteger('Unknown0F Mult', itU32), - wbInteger('Unknown4F Add', itU32), - wbInteger('Unknown10 Mult', itU32), - wbInteger('Unknown50 Add', itU32), - wbStruct('Cinematic', [ - wbInteger('Saturation Mult', itU32), - wbInteger('Saturation Add', itU32), - wbInteger('Brightness Mult', itU32), - wbInteger('Brightness Add', itU32), - wbInteger('Contrast Mult', itU32), - wbInteger('Contrast Add', itU32) - ]), - wbInteger('Unknown14 Mult', itU32), - wbInteger('Unknown54 Add', itU32), - wbInteger('Tint Color', itU32), - wbInteger('Blur Radius', itU32), - wbInteger('Double Vision Strength', itU32), - wbInteger('Radial Blur Strength', itU32), - wbInteger('Radial Blur Ramp Up', itU32), - wbInteger('Radial Blur Start', itU32), - wbInteger('Radial Blur Flags', itU32, wbFlags(['Use Target'])), - wbFloat('Radial Blur Center X'), - wbFloat('Radial Blur Center Y'), - wbInteger('DoF Strength', itU32), - wbInteger('DoF Distance', itU32), - wbInteger('DoF Range', itU32), - wbInteger('DoF Flags', itU32, wbFlags(['Use Target'])), - wbInteger('Radial Blur Ramp Down', itU32), - wbInteger('Radial Blur Down Start', itU32), - wbInteger('Fade Color', itU32), - wbInteger('Motion Blur Strength', itU32) - ], cpNormal, True, nil, 26), - wbArray(BNAM, 'Blur Radius', wbTimeInterpolator), - wbArray(VNAM, 'Double Vision Strength', wbTimeInterpolator), - wbArray(TNAM, 'Tint Color', wbColorInterpolator), - wbArray(NAM3, 'Fade Color', wbColorInterpolator), - wbArray(RNAM, 'Radial Blur Strength', wbTimeInterpolator), - wbArray(SNAM, 'Radial Blur Ramp Up', wbTimeInterpolator), - wbArray(UNAM, 'Radial Blur Start', wbTimeInterpolator), - wbArray(NAM1, 'Radial Blur Ramp Down', wbTimeInterpolator), - wbArray(NAM2, 'Radial Blur Down Start', wbTimeInterpolator), - wbArray(WNAM, 'DoF Strength', wbTimeInterpolator), - wbArray(XNAM, 'DoF Distance', wbTimeInterpolator), - wbArray(YNAM, 'DoF Range', wbTimeInterpolator), - wbArray(NAM4, 'Motion Blur Strength', wbTimeInterpolator), - wbRStruct('HDR', [ - wbArray(_00_IAD, 'Eye Adapt Speed Mult', wbTimeInterpolator), - wbArray(_40_IAD, 'Eye Adapt Speed Add', wbTimeInterpolator), - wbArray(_01_IAD, 'Bloom Blur Radius Mult', wbTimeInterpolator), - wbArray(_41_IAD, 'Bloom Blur Radius Add', wbTimeInterpolator), - wbArray(_02_IAD, 'Bloom Threshold Mult', wbTimeInterpolator), - wbArray(_42_IAD, 'Bloom Threshold Add', wbTimeInterpolator), - wbArray(_03_IAD, 'Bloom Scale Mult', wbTimeInterpolator), - wbArray(_43_IAD, 'Bloom Scale Add', wbTimeInterpolator), - wbArray(_04_IAD, 'Target Lum Min Mult', wbTimeInterpolator), - wbArray(_44_IAD, 'Target Lum Min Add', wbTimeInterpolator), - wbArray(_05_IAD, 'Target Lum Max Mult', wbTimeInterpolator), - wbArray(_45_IAD, 'Target Lum Max Add', wbTimeInterpolator), - wbArray(_06_IAD, 'Sunlight Scale Mult', wbTimeInterpolator), - wbArray(_46_IAD, 'Sunlight Scale Add', wbTimeInterpolator), - wbArray(_07_IAD, 'Sky Scale Mult', wbTimeInterpolator), - wbArray(_47_IAD, 'Sky Scale Add', wbTimeInterpolator) - ], []), - wbUnknown(_08_IAD), - wbUnknown(_48_IAD), - wbUnknown(_09_IAD), - wbUnknown(_49_IAD), - wbUnknown(_0A_IAD), - wbUnknown(_4A_IAD), - wbUnknown(_0B_IAD), - wbUnknown(_4B_IAD), - wbUnknown(_0C_IAD), - wbUnknown(_4C_IAD), - wbUnknown(_0D_IAD), - wbUnknown(_4D_IAD), - wbUnknown(_0E_IAD), - wbUnknown(_4E_IAD), - wbUnknown(_0F_IAD), - wbUnknown(_4F_IAD), - wbUnknown(_10_IAD), - wbUnknown(_50_IAD), - wbRStruct('Cinematic', [ - wbArray(_11_IAD, 'Saturation Mult', wbTimeInterpolator), - wbArray(_51_IAD, 'Saturation Add', wbTimeInterpolator), - wbArray(_12_IAD, 'Brightness Mult', wbTimeInterpolator), - wbArray(_52_IAD, 'Brightness Add', wbTimeInterpolator), - wbArray(_13_IAD, 'Contrast Mult', wbTimeInterpolator), - wbArray(_53_IAD, 'Contrast Add', wbTimeInterpolator) - ], []), - wbUnknown(_14_IAD), - wbUnknown(_54_IAD) - ]); - - wbRecord(FLST, 'FormID List', [ - wbString(EDID, 'Editor ID', 0, cpBenign, True, nil, wbFLSTEDIDAfterSet), - wbRArrayS('FormIDs', wbFormID(LNAM, 'FormID'), cpNormal, False, nil, nil, nil, wbFLSTLNAMIsSorted) - ]); - - wbRecord(PERK, 'Perk', [ - wbEDIDReq, - wbFULL, - wbDESCReq, - wbICON, - wbCTDAs, - wbStruct(DATA, 'Data', [ - wbInteger('Trait', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Min Level', itU8), - wbInteger('Ranks', itU8), - wbInteger('Playable', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Hidden', itU8, wbEnum(['No', 'Yes'])) - ], cpNormal, True, nil, 4), - wbRStructsSK('Effects', 'Effect', [0, 1], [ - wbStructSK(PRKE, [1, 2, 0], 'Header', [ - wbInteger('Type', itU8, wbEnum([ - 'Quest + Stage', - 'Ability', - 'Entry Point' - ]), cpNormal, False, nil, wbPERKPRKETypeAfterSet), - wbInteger('Rank', itU8), - wbInteger('Priority', itU8) - ]), - wbUnion(DATA, 'Effect Data', wbPerkDATADecider, [ - wbStructSK([0, 1], 'Quest + Stage', [ - wbFormIDCk('Quest', [QUST]), - wbInteger('Quest Stage', itU8, wbPerkDATAQuestStageToStr, wbCTDAParam2QuestStageToInt), - wbByteArray('Unused', 3) - ]), - wbFormIDCk('Ability', [SPEL]), - wbStructSK([0, 1], 'Entry Point', [ - wbInteger('Entry Point', itU8, wbEnum([ - {00} 'Calculate Weapon Damage', - {01} 'Calculate My Critical Hit Chance', - {02} 'Calculate My Critical Hit Damage', - {03} 'Calculate Weapon Attack AP Cost', - {04} 'Calculate Mine Explode Chance', - {05} 'Adjust Range Penalty', - {06} 'Adjust Limb Damage', - {07} 'Calculate Weapon Range', - {08} 'Calculate To Hit Chance', - {09} 'Adjust Experience Points', - {10} 'Adjust Gained Skill Points', - {11} 'Adjust Book Skill Points', - {12} 'Modify Recovered Health', - {13} 'Calculate Inventory AP Cost', - {14} 'Get Disposition', - {15} 'Get Should Attack', - {16} 'Get Should Assist', - {17} 'Calculate Buy Price', - {18} 'Get Bad Karma', - {19} 'Get Good Karma', - {20} 'Ignore Locked Terminal', - {21} 'Add Leveled List On Death', - {22} 'Get Max Carry Weight', - {23} 'Modify Addiction Chance', - {24} 'Modify Addiction Duration', - {25} 'Modify Positive Chem Duration', - {26} 'Adjust Drinking Radiation', - {27} 'Activate', - {28} 'Mysterious Stranger', - {29} 'Has Paralyzing Palm', - {30} 'Hacking Science Bonus', - {31} 'Ignore Running During Detection', - {32} 'Ignore Broken Lock', - {33} 'Has Concentrated Fire', - {34} 'Calculate Gun Spread', - {35} 'Player Kill AP Reward', - {36} 'Modify Enemy Critical Hit Chance' - ]), cpNormal, True, nil, wbPERKEntryPointAfterSet), - wbInteger('Function', itU8, wbPerkDATAFunctionToStr, wbPerkDATAFunctionToInt, cpNormal, False, nil, wbPerkDATAFunctionAfterSet), - wbInteger('Perk Condition Tab Count', itU8, nil, cpIgnore) - ]) - ], cpNormal, True), - wbRStructsSK('Perk Conditions', 'Perk Condition', [0], [ - wbInteger(PRKC, 'Run On', itS8, wbPRKCToStr, wbPRKCToInt), - wbCTDAsReq - ], [], cpNormal, False, nil, nil, wbPERKPRKCDontShow), - wbRStruct('Entry Point Function Parameters', [ - wbInteger(EPFT, 'Type', itU8, wbPerkEPFTToStr, wbPerkEPFTToInt, cpIgnore, False, nil, wbPerkEPFTAfterSet), - wbUnion(EPFD, 'Data', wbEPFDDecider, [ - wbByteArray('Unknown'), - wbFloat('Float'), - wbStruct('Float, Float', [ - wbFloat('Float 1'), - wbFloat('Float 2') - ]), - wbFormIDCk('Leveled Item', [LVLI]), - wbEmpty('None (Script)'), - wbStruct('Actor Value, Float', [ - wbInteger('Actor Value', itU32, wbEPFDActorValueToStr, wbEPFDActorValueToInt), - wbFloat('Float') - ]) - ], cpNormal, False, wbEPFDDontShow), - wbString(EPF2, 'Button Label', 0, cpNormal, False, wbEPF2DontShow), - wbInteger(EPF3, 'Script Flags', itU16, wbFlags([ - 'Run Immediately' - ]), cpNormal, False, False, wbEPF2DontShow), - wbEmbeddedScriptPerk - ], [], cpNormal, False, wbPERKPRKCDontShow), - wbEmpty(PRKF, 'End Marker', cpIgnore, True) - ], []) - ]); - - wbBPNDStruct := wbStruct(BPND, '', [ - {00} wbFloat('Damage Mult'), - {04} wbInteger('Flags', itU8, wbFlags([ - 'Severable', - 'IK Data', - 'IK Data - Biped Data', - 'Explodable', - 'IK Data - Is Head', - 'IK Data - Headtracking', - 'To Hit Chance - Absolute' - ])), - {05} wbInteger('Part Type', itU8, wbEnum([ - 'Torso', - 'Head 1', - 'Head 2', - 'Left Arm 1', - 'Left Arm 2', - 'Right Arm 1', - 'Right Arm 2', - 'Left Leg 1', - 'Left Leg 2', - 'Left Leg 3', - 'Right Leg 1', - 'Right Leg 2', - 'Right Leg 3', - 'Brain', - 'Weapon' - ])), - {06} wbInteger('Health Percent', itU8), - {07} wbInteger('Actor Value', itS8, wbActorValueEnum), - {08} wbInteger('To Hit Chance', itU8), - {09} wbInteger('Explodable - Explosion Chance %', itU8), - {10} wbInteger('Explodable - Debris Count', itU16), - {12} wbFormIDCk('Explodable - Debris', [DEBR, NULL]), - {16} wbFormIDCk('Explodable - Explosion', [EXPL, NULL]), - {20} wbFloat('Tracking Max Angle'), - {24} wbFloat('Explodable - Debris Scale'), - {28} wbInteger('Severable - Debris Count', itS32), - {32} wbFormIDCk('Severable - Debris', [DEBR, NULL]), - {36} wbFormIDCk('Severable - Explosion', [EXPL, NULL]), - {40} wbFloat('Severable - Debris Scale'), - wbStruct('Gore Effects Positioning', [ - wbStruct('Translate', [ - {44} wbFloat('X'), - {48} wbFloat('Y'), - {52} wbFloat('Z') - ]), - wbStruct('Rotation', [ - {56} wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - {60} wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - {64} wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ]), - {68} wbFormIDCk('Severable - Impact DataSet', [IPDS, NULL]), - {72} wbFormIDCk('Explodable - Impact DataSet', [IPDS, NULL]), - {28} wbInteger('Severable - Decal Count', itU8), - {28} wbInteger('Explodable - Decal Count', itU8), - {76} wbByteArray('Unused', 2), - {80} wbFloat('Limb Replacement Scale') - ], cpNormal, True); - - wbRecord(BPTD, 'Body Part Data', [ - wbEDIDReq, - wbMODLReq, - wbRStructS('Body Parts', 'Body Part', [ - wbString(BPTN, 'Part Name', 0, cpNormal, True), - wbString(BPNN, 'Part Node', 0, cpNormal, True), - wbString(BPNT, 'VATS Target', 0, cpNormal, True), - wbString(BPNI, 'IK Data - Start Node', 0, cpNormal, True), - wbBPNDStruct, - wbString(NAM1, 'Limb Replacement Model', 0, cpNormal, True), - wbString(NAM4, 'Gore Effects - Target Bone', 0, cpNormal, True), - wbByteArray(NAM5, 'Texture Files Hashes', 0, cpIgnore) - ], [], cpNormal, True), - wbFormIDCk(RAGA, 'Ragdoll', [RGDL]) - ]); - - wbRecord(ADDN, 'Addon Node', [ - wbEDIDReq, - wbOBNDReq, - wbMODLReq, - wbInteger(DATA, 'Node Index', itS32, nil, cpNormal, True), - wbFormIDCk(SNAM, 'Sound', [SOUN]), - wbStruct(DNAM, 'Data', [ - wbInteger('Master Particle System Cap', itU16), - wbByteArray('Unknown', 2) - ], cpNormal, True) - ]); - - wbRecord(AVIF, 'ActorValue Information', [ - wbEDIDReq, - wbFULL, - wbDESCReq, - wbICON, - wbString(ANAM, 'Short Name') - ]); - - wbRecord(RADS, 'Radiation Stage', [ - wbEDIDReq, - wbStruct(DATA, '', [ - wbInteger('Trigger Threshold', itU32), - wbFormIDCk('Actor Effect', [SPEL]) - ], cpNormal, True) - ]); - - wbRecord(CAMS, 'Camera Shot', [ - wbEDIDReq, - wbMODL, - wbStruct(DATA, 'Data', [ - {00} wbInteger('Action', itU32, wbEnum([ - 'Shoot', - 'Fly', - 'Hit', - 'Zoom' - ])), - {04} wbInteger('Location', itU32, wbEnum([ - 'Attacker', - 'Projectile', - 'Target' - ])), - {08} wbInteger('Target', itU32, wbEnum([ - 'Attacker', - 'Projectile', - 'Target' - ])), - {12} wbInteger('Flags', itU32, wbFlags([ - 'Position Follows Location', - 'Rotation Follows Target', - 'Don''t Follow Bone', - 'First Person Camera', - 'No Tracer', - 'Start At Time Zero' - ])), - wbStruct('Time Multipliers', [ - {16} wbFloat('Player'), - {20} wbFloat('Target'), - {24} wbFloat('Global') - ]), - {28} wbFloat('Max Time'), - {32} wbFloat('Min Time'), - {36} wbFloat('Target % Between Actors') - ], cpNormal, True, nil, 7), - wbFormIDCk(MNAM, 'Image Space Modifier', [IMAD]) - ]); - - wbRecord(CPTH, 'Camera Path', [ - wbEDIDReq, - wbCTDAs, - wbArray(ANAM, 'Related Camera Paths', wbFormIDCk('Related Camera Path', [CPTH, NULL]), ['Parent', 'Previous Sibling'], cpNormal, True), - wbInteger(DATA, 'Camera Zoom', itU8, wbEnum([ - 'Default', - 'Disable', - 'Shot List' - ]), cpNormal, True), - wbRArray('Camera Shots', wbFormIDCk(SNAM, 'Camera Shot', [CAMS])) - ]); - - wbRecord(VTYP, 'Voice Type', [ - wbEDIDReq, - wbInteger(DNAM, 'Flags', itU8, wbFlags([ - 'Allow Default Dialog', - 'Female' - ]), cpNormal, True) - ]); - - wbRecord(IPCT, 'Impact', [ - wbEDIDReq, - wbMODL, - wbStruct(DATA, '', [ - wbFloat('Effect - Duration'), - wbInteger('Effect - Orientation', itU32, wbEnum([ - 'Surface Normal', - 'Projectile Vector', - 'Projectile Reflection' - ])), - wbFloat('Angle Threshold'), - wbFloat('Placement Radius'), - wbInteger('Sound Level', itU32, wbSoundLevelEnum), - wbInteger('Flags', itU32, wbFlags([ - 'No Decal Data' - ])) - ], cpNormal, True), - wbDODT, - wbFormIDCk(DNAM, 'Texture Set', [TXST]), - wbFormIDCk(SNAM, 'Sound 1', [SOUN]), - wbFormIDCk(NAM1, 'Sound 2', [SOUN]) - ]); - - wbRecord(IPDS, 'Impact DataSet', [ - wbEDIDReq, - wbStruct(DATA, 'Impacts', [ - wbFormIDCk('Stone', [IPCT, NULL]), - wbFormIDCk('Dirt', [IPCT, NULL]), - wbFormIDCk('Grass', [IPCT, NULL]), - wbFormIDCk('Glass', [IPCT, NULL]), - wbFormIDCk('Metal', [IPCT, NULL]), - wbFormIDCk('Wood', [IPCT, NULL]), - wbFormIDCk('Organic', [IPCT, NULL]), - wbFormIDCk('Cloth', [IPCT, NULL]), - wbFormIDCk('Water', [IPCT, NULL]), - wbFormIDCk('Hollow Metal', [IPCT, NULL]), - wbFormIDCk('Organic Bug', [IPCT, NULL]), - wbFormIDCk('Organic Glow', [IPCT, NULL]) - ], cpNormal, True, nil, 9) - ]); - - wbRecord(ECZN, 'Encounter Zone', [ - wbEDIDReq, - wbStruct(DATA, '', [ - wbFormIDCkNoReach('Owner', [NPC_, FACT, NULL]), - wbInteger('Rank', itS8), - wbInteger('Minimum Level', itS8), - wbInteger('Flags', itU8, wbFlags([ - 'Never Resets', - 'Match PC Below Minimum Level' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True) - ]); - - wbRecord(MESG, 'Message', [ - wbEDIDReq, - wbDESCReq, - wbFULL, - wbFormIDCk(INAM, 'Icon', [MICN, NULL], False, cpNormal, True), - wbByteArray(NAM0, 'Unused', 0, cpIgnore), - wbByteArray(NAM1, 'Unused', 0, cpIgnore), - wbByteArray(NAM2, 'Unused', 0, cpIgnore), - wbByteArray(NAM3, 'Unused', 0, cpIgnore), - wbByteArray(NAM4, 'Unused', 0, cpIgnore), - wbByteArray(NAM5, 'Unused', 0, cpIgnore), - wbByteArray(NAM6, 'Unused', 0, cpIgnore), - wbByteArray(NAM7, 'Unused', 0, cpIgnore), - wbByteArray(NAM8, 'Unused', 0, cpIgnore), - wbByteArray(NAM9, 'Unused', 0, cpIgnore), - wbInteger(DNAM, 'Flags', itU32, wbFlags([ - 'Message Box', - 'Auto Display' - ]), cpNormal, True, False, nil, wbMESGDNAMAfterSet), - wbInteger(TNAM, 'Display Time', itU32, nil, cpNormal, False, False, wbMESGTNAMDontShow), - wbRStructs('Menu Buttons', 'Menu Button', [ - wbString(ITXT, 'Button Text'), - wbCTDAs - ], []) - ], False, nil, cpNormal, False, wbMESGAfterLoad); - - wbRecord(RGDL, 'Ragdoll', [ - wbEDIDReq, - wbInteger(NVER, 'Version', itU32, nil, cpNormal, True), - wbStruct(DATA, 'General Data', [ - wbInteger('Dynamic Bone Count', itU32), - wbByteArray('Unused', 4), - wbStruct('Enabled', [ - wbInteger('Feedback', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Foot IK (broken, don''t use)', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Look IK (broken, don''t use)', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Grab IK (broken, don''t use)', itU8, wbEnum(['No', 'Yes'])), - wbInteger('Pose Matching', itU8, wbEnum(['No', 'Yes'])) - ]), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbFormIDCk(XNAM, 'Actor Base', [CREA, NPC_], False, cpNormal, True), - wbFormIDCk(TNAM, 'Body Part Data', [BPTD], False, cpNormal, True), - wbStruct(RAFD, 'Feedback Data', [ - {00} wbFloat('Dynamic/Keyframe Blend Amount'), - {04} wbFloat('Hierarchy Gain'), - {08} wbFloat('Position Gain'), - {12} wbFloat('Velocity Gain'), - {16} wbFloat('Acceleration Gain'), - {20} wbFloat('Snap Gain'), - {24} wbFloat('Velocity Damping'), - wbStruct('Snap Max Settings', [ - {28} wbFloat('Linear Velocity'), - {32} wbFloat('Angular Velocity'), - {36} wbFloat('Linear Distance'), - {40} wbFloat('Angular Distance') - ]), - wbStruct('Position Max Velocity', [ - {44} wbFloat('Linear'), - {48} wbFloat('Angular') - ]), - wbStruct('Position Max Velocity', [ - {52} wbInteger('Projectile', itS32, wbDiv(1000)), - {56} wbInteger('Melee', itS32, wbDiv(1000)) - ]) - ], cpNormal, False), - wbArray(RAFB, 'Feedback Dynamic Bones', wbInteger('Bone', itU16), 0, nil, nil, cpNormal, False), - wbStruct(RAPS, 'Pose Matching Data', [ - {00} wbArray('Match Bones', wbInteger('Bone', itU16, wbHideFFFF), 3), - {06} wbInteger('Flags', itU8, wbFlags([ - 'Disable On Move' - ])), - {07} wbByteArray('Unused', 1), - {08} wbFloat('Motors Strength'), - {12} wbFloat('Pose Activation Delay Time'), - {16} wbFloat('Match Error Allowance'), - {20} wbFloat('Displacement To Disable') - ], cpNormal, True), - wbString(ANAM, 'Death Pose') - ]); - - wbRecord(DOBJ, 'Default Object Manager', [ - wbEDIDReq, - wbArray(DATA, 'Default Objects', wbFormID('Default Object'), [ - 'Stimpack', - 'SuperStimpack', - 'RadX', - 'RadAway', - 'Morphine', - 'Perk Paralysis', - 'Player Faction', - 'Mysterious Stranger NPC', - 'Mysterious Stranger Faction', - 'Default Music', - 'Battle Music', - 'Death Music', - 'Success Music', - 'Level Up Music', - 'Player Voice (Male)', - 'Player Voice (Male Child)', - 'Player Voice (Female)', - 'Player Voice (Female Child)', - 'Eat Package Default Food', - 'Every Actor Ability', - 'Drug Wears Off Image Space' - ], cpNormal, True) - ]); - - wbRecord(LGTM, 'Lighting Template', [ - wbEDIDReq, - wbStruct(DATA, 'Lighting', [ - wbStruct('Ambient Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Directional Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Fog Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Fog Near'), - wbFloat('Fog Far'), - wbInteger('Directional Rotation XY', itS32), - wbInteger('Directional Rotation Z', itS32), - wbFloat('Directional Fade'), - wbFloat('Fog Clip Dist'), - wbFloat('Fog Power') - ], cpNormal, True) - ]); - - wbRecord(MUSC, 'Music Type', [ - wbEDIDReq, - wbString(FNAM, 'Filename') - ]); - - wbRecord(GRAS, 'Grass', [ - wbEDIDReq, - wbOBNDReq, - wbMODLReq, - wbStruct(DATA, '', [ - wbInteger('Density', itU8), - wbInteger('Min Slope', itU8), - wbInteger('Max Slope', itU8), - wbByteArray('Unused', 1), - wbInteger('Unit from water amount', itU16), - wbByteArray('Unused', 2), - wbInteger('Unit from water type', itU32, wbEnum([ - 'Above - At Least', - 'Above - At Most', - 'Below - At Least', - 'Below - At Most', - 'Either - At Least', - 'Either - At Most', - 'Either - At Most Above', - 'Either - At Most Below' - ])), - wbFloat('Position Range'), - wbFloat('Height Range'), - wbFloat('Color Range'), - wbFloat('Wave Period'), - wbInteger('Flags', itU8, wbFlags([ - 'Vertex Lighting', - 'Uniform Scaling', - 'Fit to Slope' - ])), - wbByteArray('Unused', 3) - ], cpNormal, True) - ]); - - wbRecord(HAIR, 'Hair', [ - wbEDIDReq, - wbFULLReq, - wbMODLReq, - wbString(ICON, 'Texture', 0, cpNormal, True), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - 'Playable', - 'Not Male', - 'Not Female', - 'Fixed' - ]), cpNormal, True) - ]); - - wbRecord(IDLE, 'Idle Animation', [ - wbEDID, - wbMODLReq, - wbCTDAs, - wbArray(ANAM, 'Related Idle Animations', wbFormIDCk('Related Idle Animation', [IDLE, NULL]), ['Parent', 'Previous Sibling'], cpNormal, True), - wbStruct(DATA, '', [ - wbInteger('Animation Group Section', itU8, wbIdleAnam), - wbStruct('Looping', [ - wbInteger('Min', itU8), - wbInteger('Max', itU8) - ]), - wbByteArray('Unused', 1), - wbInteger('Replay Delay', itS16), - wbInteger('Flags', itU8, wbFlags([ - 'No attacking' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True, nil, 4) - ]); - - wbRecord(INFO, 'Dialog response', [ - wbStruct(DATA, '', [ - wbInteger('Type', itU8, wbEnum([ - {0} 'Topic', - {1} 'Conversation', - {2} 'Combat', - {3} 'Persuasion', - {4} 'Detection', - {5} 'Service', - {6} 'Miscellaneous', - {7} 'Radio' - ])), - wbInteger('Next Speaker', itU8, wbEnum([ - {0} 'Target', - {1} 'Self', - {2} 'Either' - ])), - wbInteger('Flags 1', itU8, wbFlags([ - {0x01} 'Goodbye', - {0x02} 'Random', - {0x04} 'Say Once', - {0x08} 'Run Immediately', - {0x10} 'Info Refusal', - {0x20} 'Random End', - {0x40} 'Run for Rumors', - {0x80} 'Speech Challenge' - ])), - wbInteger('Flags 2', itU8, wbFlags([ - {0x01} 'Say Once a Day', - {0x02} 'Always Darken' - ])) - ], cpNormal, True, nil, 3), - wbFormIDCkNoReach(QSTI, 'Quest', [QUST], False, cpNormal, True), - wbFormIDCk(TPIC, 'Topic', [DIAL]), - wbFormIDCkNoReach(PNAM, 'Previous INFO', [INFO, NULL]), - wbRArray('Add Topics', wbFormIDCk(NAME, 'Topic', [DIAL])), - wbRArray('Responses', - wbRStruct('Response', [ - wbStruct(TRDT, 'Response Data', [ - wbInteger('Emotion Type', itU32, wbEnum([ - {0} 'Neutral', - {1} 'Anger', - {2} 'Disgust', - {3} 'Fear', - {4} 'Sad', - {5} 'Happy', - {6} 'Surprise', - {7} 'Pained' - ])), - wbInteger('Emotion Value', itS32), - wbByteArray('Unused', 4), - wbInteger('Response number', itU8), - wbByteArray('Unused', 3), - wbFormIDCk('Sound', [SOUN, NULL]), - wbInteger('Flags', itU8, wbFlags([ - 'Use Emotion Animation' - ])), - wbByteArray('Unused', 3) - ], cpNormal, False, nil, 5), - wbStringKC(NAM1, 'Response Text', 0, cpTranslate, True), - wbString(NAM2, 'Script Notes', 0, cpTranslate, True), - wbString(NAM3, 'Edits'), - wbFormIDCk(SNAM, 'Speaker Animation', [IDLE]), - wbFormIDCk(LNAM, 'Listener Animation', [IDLE]) - ], []) - ), - wbCTDAs, - wbRArray('Choices', wbFormIDCk(TCLT, 'Choice', [DIAL])), - wbRArray('Link From', wbFormIDCk(TCLF, 'Topic', [DIAL])), - wbRStruct('Script (Begin)', [ - wbEmbeddedScriptReq - ], [], cpNormal, True), - wbRStruct('Script (End)', [ - wbEmpty(NEXT, 'Marker'), - wbEmbeddedScriptReq - ], [], cpNormal, True), - wbFormIDCk(SNDD, 'Unused', [SOUN]), - wbString(RNAM, 'Prompt'), - wbFormIDCk(ANAM, 'Speaker', [CREA, NPC_]), - wbFormIDCk(KNAM, 'ActorValue/Perk', [AVIF, PERK]), - wbInteger(DNAM, 'Speech Challenge', itU32, wbEnum([ - '---', - 'Very Easy', - 'Easy', - 'Average', - 'Hard', - 'Very Hard' - ])) - ], False, wbINFOAddInfo, cpNormal, False, wbINFOAfterLoad); - - wbRecord(INGR, 'Ingredient', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbETYPReq, - wbFloat(DATA, 'Weight', cpNormal, True), - wbStruct(ENIT, 'Effect Data', [ - wbInteger('Value', itS32), - wbInteger('Flags', itU8, wbFlags(['No auto-calculation', 'Food item'])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffectsReq - ]); - - wbRecord(KEYM, 'Key', [ - wbEDIDReq, - wbOBNDReq, - wbFULLReq, - wbMODL, - wbICONReq, - wbSCRI, - wbDEST, - wbYNAM, - wbZNAM, - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbQuadrantEnum := wbEnum([ - {0} 'Bottom Left', - {1} 'Bottom Right', - {2} 'Top Left', - {3} 'Top Right' - ]); - - if wbSimpleRecords then begin - - wbRecord(LAND, 'Landscape', [ - wbByteArray(DATA, 'Unknown'), - wbByteArray(VNML, 'Vertex Normals'), - wbByteArray(VHGT, 'Vertext Height Map'), - wbByteArray(VCLR, 'Vertex Colours'), - - wbRArrayS('Layers', wbRUnion('Layer', [ - wbRStructSK([0],'Base Layer', [ - wbStructSK(BTXT, [1, 3], 'Base Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]) - ], []), - wbRStructSK([0],'Alpha Layer', [ - wbStructSK(ATXT, [1, 3], 'Alpha Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]), - wbByteArray(VTXT, 'Alpha Layer Data') - ], []) - ], [])), - - wbArray(VTEX, 'Textures', wbFormIDCk('Texture', [LTEX, NULL])) - ]); - - end else begin - - wbRecord(LAND, 'Landscape', [ - wbByteArray(DATA, 'Unknown'), - wbArray(VNML, 'Vertex Normals', wbStruct('Row', [ - wbArray('Columns', wbStruct('Column', [ - wbInteger('X', itU8), - wbInteger('Y', itU8), - wbInteger('Z', itU8) - ]), 33) - ]), 33), - wbStruct(VHGT, 'Vertext Height Map', [ - wbFloat('Offset'), - wbArray('Rows', wbStruct('Row', [ - wbArray('Columns', wbInteger('Column', itU8), 33) - ]), 33), - wbByteArray('Unused', 3) - ]), - wbArray(VCLR, 'Vertex Colours', wbStruct('Row', [ - wbArray('Columns', wbStruct('Column', [ - wbInteger('X', itU8), - wbInteger('Y', itU8), - wbInteger('Z', itU8) - ]), 33) - ]), 33), - - wbRArrayS('Layers', wbRUnion('Layer', [ - wbRStructSK([0],'Base Layer', [ - wbStructSK(BTXT, [1, 3], 'Base Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]) - ], []), - wbRStructSK([0],'Alpha Layer', [ - wbStructSK(ATXT, [1, 3], 'Alpha Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]), - wbArrayS(VTXT, 'Alpha Layer Data', wbStructSK([0], 'Cell', [ - wbInteger('Position', itU16, wbAtxtPosition), - wbByteArray('Unused', 2), - wbFloat('Opacity') - ])) - ], []) - ], [])), - - wbArray(VTEX, 'Textures', wbFormIDCk('Texture', [LTEX, NULL])) - ]); - - end; - - wbRecord(LIGH, 'Light', [ - wbEDIDReq, - wbOBNDReq, - wbMODL, - wbSCRI, - wbDEST, - wbFULL, - wbICON, - wbStruct(DATA, '', [ - wbInteger('Time', itS32), - wbInteger('Radius', itU32), - wbStruct('Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbInteger('Unused', itU8) - ]), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Dynamic', - {0x00000002} 'Can be Carried', - {0x00000004} 'Negative', - {0x00000008} 'Flicker', - {0x00000010} 'Unused', - {0x00000020} 'Off By Default', - {0x00000040} 'Flicker Slow', - {0x00000080} 'Pulse', - {0x00000100} 'Pulse Slow', - {0x00000200} 'Spot Light', - {0x00000400} 'Spot Shadow' - ])), - wbFloat('Falloff Exponent'), - wbFloat('FOV'), - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True), - wbFloat(FNAM, 'Fade value', cpNormal, True), - wbFormIDCk(SNAM, 'Sound', [SOUN]) - ], False, nil, cpNormal, False, wbLIGHAfterLoad); - - wbRecord(LSCR, 'Load Screen', [ - wbEDIDReq, - wbICONReq, - wbDESCReq, - wbRArrayS('Locations', wbStructSK(LNAM, [0, 1], 'Location', [ - wbFormIDCkNoReach('Cell', [CELL, WRLD]), - wbByteArray('Unused', 8) - ])) - ]); - - wbRecord(LTEX, 'Landscape Texture', [ - wbEDIDReq, - wbICON, - wbFormIDCk(TNAM, 'Texture', [TXST], False, cpNormal, True), - wbStruct(HNAM, 'Havok Data', [ - wbInteger('Material Type', itU8, wbEnum([ - {00} 'STONE', - {01} 'CLOTH', - {02} 'DIRT', - {03} 'GLASS', - {04} 'GRASS', - {05} 'METAL', - {06} 'ORGANIC', - {07} 'SKIN', - {08} 'WATER', - {09} 'WOOD', - {10} 'HEAVY STONE', - {11} 'HEAVY METAL', - {12} 'HEAVY WOOD', - {13} 'CHAIN', - {14} 'SNOW', - {15} 'ELEVATOR', - {16} 'HOLLOW METAL', - {17} 'SHEET METAL', - {18} 'SAND', - {19} 'BRIKEN CONCRETE', - {20} 'VEHILCE BODY', - {21} 'VEHILCE PART SOLID', - {22} 'VEHILCE PART HOLLOW', - {23} 'BARREL', - {24} 'BOTTLE', - {25} 'SODA CAN', - {26} 'PISTOL', - {27} 'RIFLE', - {28} 'SHOPPING CART', - {29} 'LUNCHBOX', - {30} 'BABY RATTLE', - {31} 'RUBER BALL' - ])), - wbInteger('Friction', itU8), - wbInteger('Restitution', itU8) - ], cpNormal, True), - wbInteger(SNAM, 'Texture Specular Exponent', itU8, nil, cpNormal, True), - wbRArrayS('Grasses', wbFormIDCk(GNAM, 'Grass', [GRAS])) - ]); - - wbRecord(LVLC, 'Leveled Creature', [ - wbEDIDReq, - wbOBNDReq, - wbInteger(LVLD, 'Chance none', itU8, nil, cpNormal, True), - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count' - ]), cpNormal, True), - wbRArrayS('Leveled List Entries', - wbRStructExSK([0], [1], 'Leveled List Entry', [ - wbStructExSK(LVLO , [0, 2], [3], 'Base Data', [ - wbInteger('Level', itS16), - wbByteArray('Unused', 2), - wbFormIDCk('Reference', [CREA, LVLC]), - wbInteger('Count', itS16), - wbByteArray('Unused', 2) - ]), - wbCOED - ], []), - cpNormal, True), - wbMODL - ]); - - wbRecord(LVLN, 'Leveled NPC', [ - wbEDIDReq, - wbOBNDReq, - wbInteger(LVLD, 'Chance none', itU8, nil, cpNormal, True), - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count' - ]), cpNormal, True), - wbRArrayS('Leveled List Entries', - wbRStructExSK([0], [1], 'Leveled List Entry', [ - wbStructExSK(LVLO , [0, 2], [3], 'Base Data', [ - wbInteger('Level', itS16), - wbByteArray('Unused', 2), - wbFormIDCk('Reference', [NPC_, LVLN]), - wbInteger('Count', itS16), - wbByteArray('Unused', 2) - ]), - wbCOED - ], []), - cpNormal, True), - wbMODL - ]); - - wbRecord(LVLI, 'Leveled Item', [ - wbEDIDReq, - wbOBNDReq, - wbInteger(LVLD, 'Chance none', itU8, nil, cpNormal, True), - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count', - {0x04} 'Use All' - ]), cpNormal, True), - wbFormIDCk(LVLG, 'Global', [GLOB]), - wbRArrayS('Leveled List Entries', - wbRStructExSK([0], [1], 'Leveled List Entry', [ - wbStructExSK(LVLO , [0, 2], [3], 'Base Data', [ - wbInteger('Level', itS16), - wbByteArray('Unused', 2), - wbFormIDCk('Reference', [ARMO, AMMO, MISC, WEAP, BOOK, LVLI, KEYM, ALCH, NOTE]), - wbInteger('Count', itS16), - wbByteArray('Unused', 2) - ]), - wbCOED - ], []) - ) - ]); - - wbArchtypeEnum := wbEnum([ - {00} 'Value Modifier', - {01} 'Script', - {02} 'Dispel', - {03} 'Cure Disease', - {04} '', - {05} '', - {06} '', - {07} '', - {08} '', - {09} '', - {10} '', - {11} 'Invisibility', - {12} 'Chameleon', - {13} 'Light', - {14} '', - {15} '', - {16} 'Lock', - {17} 'Open', - {18} 'Bound Item', - {19} 'Summon Creature', - {20} '', - {21} '', - {22} '', - {23} '', - {24} 'Paralysis', - {25} '', - {26} '', - {27} '', - {28} '', - {29} '', - {30} 'Cure Paralysis', - {31} 'Cure Addiction', - {32} 'Cure Poison', - {33} 'Concussion', - {34} 'Value And Parts' - ]); - - wbRecord(MGEF, 'Base Effect', [ - wbEDIDReq, - wbFULL, - wbDESCReq, - wbICON, - wbMODL, - wbStruct(DATA, 'Data', [ - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Hostile', - {0x00000002} 'Recover', - {0x00000004} 'Detrimental', - {0x00000008} '', - {0x00000010} 'Self', - {0x00000020} 'Touch', - {0x00000040} 'Target', - {0x00000080} 'No Duration', - {0x00000100} 'No Magnitude', - {0x00000200} 'No Area', - {0x00000400} 'FX Persist', - {0x00000800} '', - {0x00001000} 'Gory Visuals', - {0x00002000} 'Display Name Only', - {0x00004000} '', - {0x00008000} 'Radio Broadcast ??', - {0x00010000} '', - {0x00020000} '', - {0x00040000} '', - {0x00080000} 'Use skill', - {0x00100000} 'Use attribute', - {0x00200000} '', - {0x00400000} '', - {0x00800000} '', - {0x01000000} 'Painless', - {0x02000000} 'Spray projectile type (or Fog if Bolt is specified as well)', - {0x04000000} 'Bolt projectile type (or Fog if Spray is specified as well)', - {0x08000000} 'No Hit Effect', - {0x10000000} 'No Death Dispel', - {0x20000000} '????' - ])), - {04} wbFloat('Base cost (Unused)'), - {08} wbUnion('Assoc. Item', wbMGEFFAssocItemDecider, [ - wbFormID('Unused', cpIgnore), - wbFormID('Assoc. Item'), - wbFormIDCk('Assoc. Script', [SCPT, NULL]), //Script - wbFormIDCk('Assoc. Item', [WEAP, ARMO, NULL]), //Bound Item - wbFormIDCk('Assoc. Creature', [CREA]) //Summon Creature - ], cpNormal, false, nil, wbMGEFFAssocItemAfterSet), - {12} wbInteger('Magic School (Unused)', itS32, wbEnum([ - ], [ - -1, 'None' - ])), - {16} wbInteger('Resistance Type', itS32, wbActorValueEnum), - {20} wbInteger('Counter effect count', itU16), - {22} wbByteArray('Unused', 2), - {24} wbFormIDCk('Light', [LIGH, NULL]), - {28} wbFloat('Projectile speed'), - {32} wbFormIDCk('Effect Shader', [EFSH, NULL]), - {36} wbFormIDCk('Object Display Shader', [EFSH, NULL]), - {40} wbFormIDCk('Effect sound', [NULL, SOUN]), - {44} wbFormIDCk('Bolt sound', [NULL, SOUN]), - {48} wbFormIDCk('Hit sound', [NULL, SOUN]), - {52} wbFormIDCk('Area sound', [NULL, SOUN]), - {56} wbFloat('Constant Effect enchantment factor (Unused)'), - {60} wbFloat('Constant Effect barter factor (Unused)'), - {64} wbInteger('Archtype', itU32, wbArchtypeEnum, cpNormal, False, nil, wbMGEFArchtypeAfterSet), - {68} wbActorValue - ], cpNormal, True), - wbRArrayS('Counter Effects', wbFormIDCk(ESCE, 'Effect', [MGEF]), cpNormal, False, nil, wbCounterEffectsAfterSet) - ], False, nil, cpNormal, False, wbMGEFAfterLoad, wbMGEFAfterSet); - - wbRecord(MISC, 'Misc. Item', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbDEST, - wbYNAM, - wbZNAM, - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbRecord(COBJ, 'Constructible Object', [ - wbEDID, - wbOBND, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbYNAM, - wbZNAM, - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbFaceGen := wbRStruct('FaceGen Data', [ - wbByteArray(FGGS, 'FaceGen Geometry-Symmetric', 0, cpNormal, True), - wbByteArray(FGGA, 'FaceGen Geometry-Asymmetric', 0, cpNormal, True), - wbByteArray(FGTS, 'FaceGen Texture-Symmetric', 0, cpNormal, True) - ], [], cpNormal, True); - - wbFaceGenNPC := wbRStruct('FaceGen Data', [ - wbByteArray(FGGS, 'FaceGen Geometry-Symmetric', 0, cpNormal, True), - wbByteArray(FGGA, 'FaceGen Geometry-Asymmetric', 0, cpNormal, True), - wbByteArray(FGTS, 'FaceGen Texture-Symmetric', 0, cpNormal, True) - ], [], cpNormal, True, wbActorTemplateUseModelAnimation); - - - wbRecord(NPC_, 'Non-Player Character', [ - wbEDIDReq, - wbOBNDReq, - wbFULLActor, - wbMODLActor, - wbStruct(ACBS, 'Configuration', [ - {00} wbInteger('Flags', itU32, wbFlags([ - {0x000001} 'Female', - {0x000002} 'Essential', - {0x000004} 'Is CharGen Face Preset', - {0x000008} 'Respawn', - {0x000010} 'Auto-calc stats', - {0x000020} '', - {0x000040} '', - {0x000080} 'PC Level Mult', - {0x000100} 'Use Template', - {0x000200} 'No Low Level Processing', - {0x000400} '', - {0x000800} 'No Blood Spray', - {0x001000} 'No Blood Decal', - {0x002000} '', - {0x004000} '', - {0x008000} '', - {0x010000} '', - {0x020000} '', - {0x040000} '', - {0x080000} '', - {0x100000} 'No VATS Melee', - {0x00200000} '', - {0x00400000} 'Can be all races', - {0x00800000} '', - {0x01000000} '', - {0x02000000} '', - {0x03000000} 'No Knockdowns', - {0x08000000} 'Not Pushable', - {0x10000000} '', {28} - {0x20000000} '', - {0x40000000} 'No Rotating To Head-track', - {0x80000000} '' - ], [ - {0x000001 Female} wbActorTemplateUseTraits, - {0x000002 Essential} wbActorTemplateUseBaseData, - {0x000004 Is CharGen Face Preset} nil, - {0x000008 Respawn} wbActorTemplateUseBaseData, - {0x000010 Auto-calc stats} wbActorTemplateUseStats, - {0x000020 } nil, - {0x000040 } nil, - {0x000080 PC Level Mult} wbActorTemplateUseStats, - {0x000100 Use Template} nil, - {0x000200 No Low Level Processing} wbActorTemplateUseBaseData, - {0x000400 } nil, - {0x000800 No Blood Spray} wbActorTemplateUseModelAnimation, - {0x001000 No Blood Decal} wbActorTemplateUseModelAnimation, - {0x002000 } nil, - {0x004000 } nil, - {0x008000 } nil, - {0x010000 } nil, - {0x020000 } nil, - {0x040000 } nil, - {0x080000 } nil, - {0x100000 No VATS Melee} nil, - {0x00200000 } nil, - {0x00400000 Can be all races} nil, - {0x00800000 } nil, - {0x01000000 } nil, - {0x02000000 } nil, - {0x03000000 No Knockdowns} nil, - {0x08000000 Not Pushable} wbActorTemplateUseModelAnimation, - {0x10000000 } nil, - {0x20000000 } nil, - {0x40000000 No Rotating To Head-track} wbActorTemplateUseModelAnimation, - {0x80000000 } nil - ])), - {04} wbInteger('Fatigue', itU16, nil, cpNormal, True, wbActorTemplateUseStats), - {06} wbInteger('Barter gold', itU16, nil, cpNormal, False, wbActorTemplateUseAIData), - {08} wbUnion('Level', wbCreaLevelDecider, [ - wbInteger('Level', itS16, nil, cpNormal, True, wbActorTemplateUseStats), - wbInteger('Level Mult', itS16, wbDiv(1000), cpNormal, True, wbActorTemplateUseStats) - ], cpNormal, True, wbActorTemplateUseStats), - {10} wbInteger('Calc min', itU16, nil, cpNormal, True, wbActorTemplateUseStats), - {12} wbInteger('Calc max', itU16, nil, cpNormal, True, wbActorTemplateUseStats), - {14} wbInteger('Speed Multiplier', itU16, nil, cpNormal, True, wbActorTemplateUseStats), - {16} wbFloat('Karma (Alignment)', cpNormal, False, 1, -1, wbActorTemplateUseTraits), - {20} wbInteger('Disposition Base', itS16, nil, cpNormal, False, wbActorTemplateUseTraits), - {22} wbInteger('Template Flags', itU16, wbTemplateFlags) - ], cpNormal, True), - wbRArrayS('Factions', - wbStructSK(SNAM, [0], 'Faction', [ - wbFormIDCk('Faction', [FACT]), - wbInteger('Rank', itU8), - wbByteArray('Unused', 3) - ]), - cpNormal, False, nil, nil, wbActorTemplateUseFactions), - wbFormIDCk(INAM, 'Death item', [LVLI], False, cpNormal, False, wbActorTemplateUseTraits), - wbFormIDCk(VTCK, 'Voice', [VTYP], False, cpNormal, True, wbActorTemplateUseTraits), - wbFormIDCk(TPLT, 'Template', [LVLN, NPC_]), - wbFormIDCk(RNAM, 'Race', [RACE], False, cpNormal, True, wbActorTemplateUseTraits), - wbSPLOs, - wbFormIDCk(EITM, 'Unarmed Attack Effect', [ENCH, SPEL], False, cpNormal, False, wbActorTemplateUseActorEffectList), - wbInteger(EAMT, 'Unarmed Attack Animation', itU16, wbAttackAnimationEnum, cpNormal, True, False, wbActorTemplateUseActorEffectList), - wbDESTActor, - wbSCRIActor, - wbRArrayS('Items', wbCNTO, cpNormal, False, nil, nil, wbActorTemplateUseInventory), - wbAIDT, - wbRArray('Packages', wbFormIDCk(PKID, 'Package', [PACK]), cpNormal, False, nil, nil, wbActorTemplateUseAIPackages), - wbArrayS(KFFZ, 'Animations', wbStringLC('Animation'), 0, cpNormal, False, nil, nil, wbActorTemplateUseModelAnimation), - wbFormIDCk(CNAM, 'Class', [CLAS], False, cpNormal, True, wbActorTemplateUseTraits), - wbStruct(DATA, '', [ - {00} wbInteger('Base Health', itS32), - {04} wbArray('Attributes', wbInteger('Attribute', itU8), [ - 'Strength', - 'Perception', - 'Endurance', - 'Charisma', - 'Intelligence', - 'Agility', - 'Luck' - ], cpNormal, False, wbActorAutoCalcDontShow), - wbByteArray('Unused'{, 14 - only present in old record versions}) - ], cpNormal, True, wbActorTemplateUseStats), - wbStruct(DNAM, '', [ - {00} wbArray('Skill Values', wbInteger('Skill', itU8), [ - 'Barter', - 'Big Guns', - 'Energy Weapons', - 'Explosives', - 'Lockpick', - 'Medicine', - 'Melee Weapons', - 'Repair', - 'Science', - 'Small Guns', - 'Sneak', - 'Speech', - 'Throwing (unused)', - 'Unarmed' - ]), - {14} wbArray('Skill Offsets', wbInteger('Skill', itU8), [ - 'Barter', - 'Big Guns', - 'Energy Weapons', - 'Explosives', - 'Lockpick', - 'Medicine', - 'Melee Weapons', - 'Repair', - 'Science', - 'Small Guns', - 'Sneak', - 'Speech', - 'Throwing (unused)', - 'Unarmed' - ]) - ], cpNormal, False, wbActorTemplateUseStatsAutoCalc), - wbRArrayS('Head Parts', - wbFormIDCk(PNAM, 'Head Part', [HDPT]), - cpNormal, False, nil, nil, wbActorTemplateUseModelAnimation), - wbFormIDCk(HNAM, 'Hair', [HAIR], False, cpNormal, False, wbActorTemplateUseModelAnimation), - wbFloat(LNAM, 'Hair length', cpNormal, False, 1, -1, wbActorTemplateUseModelAnimation), - wbFormIDCk(ENAM, 'Eyes', [EYES], False, cpNormal, False, wbActorTemplateUseModelAnimation), - wbStruct(HCLR, 'Hair color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ], cpNormal, True, wbActorTemplateUseModelAnimation), - wbFormIDCk(ZNAM, 'Combat Style', [CSTY], False, cpNormal, False, wbActorTemplateUseTraits), - wbInteger(NAM4, 'Impact Material Type', itU32, wbImpactMaterialTypeEnum, cpNormal, True, False, wbActorTemplateUseModelAnimation), - wbFaceGenNPC, - wbInteger(NAM5, 'Unknown', itU16, nil, cpNormal, True, False, nil, nil, 255), - wbFloat(NAM6, 'Height', cpNormal, True, 1, -1, wbActorTemplateUseTraits), - wbFloat(NAM7, 'Weight', cpNormal, True, 1, -1, wbActorTemplateUseTraits) - ], True, nil, cpNormal, False, wbNPCAfterLoad); - - wbPKDTFlags := wbFlags([ - {0x00000001} 'Offers Services', - {0x00000002} 'Must reach location', - {0x00000004} 'Must complete', - {0x00000008} 'Lock doors at package start', - {0x00000010} 'Lock doors at package end', - {0x00000020} 'Lock doors at location', - {0x00000040} 'Unlock doors at package start', - {0x00000080} 'Unlock doors at package end', - {0x00000100} 'Unlock doors at location', - {0x00000200} 'Continue if PC near', - {0x00000400} 'Once per day', - {0x00000800} '', - {0x00001000} 'Skip fallout behavior', - {0x00002000} 'Always run', - {0x00004000} '', - {0x00008000} '', - {0x00010000} '', - {0x00020000} 'Always sneak', - {0x00040000} 'Allow swimming', - {0x00080000} 'Allow falls', - {0x00100000} 'Head-Tracking off', - {0x00200000} 'Weapons unequipped', - {0x00400000} 'Defensive combat', - {0x00800000} 'Weapon Drawn', - {0x01000000} 'No idle anims', - {0x02000000} 'Pretend In Combat', - {0x04000000} 'Continue During Combat', - {0x08000000} 'No Combat Alert', - {0x10000000} 'No Warn/Attack Behaviour', - {0x20000000} '', - {0x40000000} '', - {0x80000000} '' - ]); - - wbPKDTType := wbEnum([ - {0} 'Find', - {1} 'Follow', - {2} 'Escort', - {3} 'Eat', - {4} 'Sleep', - {5} 'Wander', - {6} 'Travel', - {7} 'Accompany', - {8} 'Use Item At', - {9} 'Ambush', - {10} 'Flee Not Combat', - {11} '', - {12} 'Sandbox', - {13} 'Patrol', - {14} 'Guard', - {15} 'Dialogue', - {16} 'Use Weapon' - ]); - - wbObjectTypeEnum := wbEnum([ - ' NONE', - 'Activators', - 'Armor', - 'Books', - 'Clothing', - 'Containers', - 'Doors', - 'Ingredients', - 'Lights', - 'Misc', - 'Flora', - 'Furniture', - 'Weapons: Any', - 'Ammo', - 'NPCs', - 'Creatures', - 'Keys', - 'Alchemy', - 'Food', - ' All: Combat Wearable', - ' All: Wearable', - 'Weapons: Ranged', - 'Weapons: Melee', - 'Weapons: NONE', - 'Actor Effects: Any', - 'Actor Effects: Range Target', - 'Actor Effects: Range Touch', - 'Actor Effects: Range Self', - '', - 'Actors: Any' - ]); - - - wbPKDTSpecificFlagsUnused := True; - - wbRecord(PACK, 'Package', [ - wbEDIDReq, - wbStruct(PKDT, 'General', [ - wbInteger('General Flags', itU32, wbPKDTFlags), - wbInteger('Type', itU8, wbPKDTType), - wbByteArray('Unused', 1), - wbInteger('Fallout Behavior Flags', itU16, wbFlags([ - {0x00000001}'Hellos To Player', - {0x00000002}'Random Conversations', - {0x00000004}'Observe Combat Behavior', - {0x00000008}'Unknown 4', - {0x00000010}'Reaction To Player Actions', - {0x00000020}'Friendly Fire Comments', - {0x00000040}'Aggro Radius Behavior', - {0x00000080}'Allow Idle Chatter', - {0x00000100}'Avoid Radiation' - ], True)), - wbUnion('Type Specific Flags', wbPKDTSpecificFlagsDecider, [ - wbEmpty('Type Specific Flags (missing)', cpIgnore, False, nil, True), - wbInteger('Type Specific Flags - Find', itU16, wbFlags([ - {0x00000001}'', - {0x00000002}'', - {0x00000004}'', - {0x00000008}'', - {0x00000010}'', - {0x00000020}'', - {0x00000040}'', - {0x00000080}'', - {0x00000100}'Find - Allow Buying', - {0x00000200}'Find - Allow Killing', - {0x00000400}'Find - Allow Stealing' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Follow', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Escort', itU16, wbFlags([ - {0x00000001}'', - {0x00000002}'', - {0x00000004}'', - {0x00000008}'', - {0x00000010}'', - {0x00000020}'', - {0x00000040}'', - {0x00000080}'', - {0x00000100}'Escort - Allow Buying', - {0x00000200}'Escort - Allow Killing', - {0x00000400}'Escort - Allow Stealing' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Eat', itU16, wbFlags([ - {0x00000001}'', - {0x00000002}'', - {0x00000004}'', - {0x00000008}'', - {0x00000010}'', - {0x00000020}'', - {0x00000040}'', - {0x00000080}'', - {0x00000100}'Eat - Allow Buying', - {0x00000200}'Eat - Allow Killing', - {0x00000400}'Eat - Allow Stealing' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Sleep', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Wander', itU16, wbFlags([ - {0x00000001}'Wander - No Eating', - {0x00000002}'Wander - No Sleeping', - {0x00000004}'Wander - No Conversation', - {0x00000008}'Wander - No Idle Markers', - {0x00000010}'Wander - No Furniture', - {0x00000020}'Wander - No Wandering' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Travel', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Accompany', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Use Item At', itU16, wbFlags([ - {0x00000001}'', - {0x00000002}'Use Item At - Sit Down', - {0x00000004}'', - {0x00000008}'', - {0x00000010}'', - {0x00000020}'', - {0x00000040}'', - {0x00000080}'', - {0x00000100}'Use Item At - Allow Buying', - {0x00000200}'Use Item At - Allow Killing', - {0x00000400}'Use Item At - Allow Stealing' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Ambush', itU16, wbFlags([ - {0x00000001}'Ambush - Hide While Ambushing' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Flee Not Combat', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - ?', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Sandbox', itU16, wbFlags([ - {0x00000001}'Sandbox - No Eating', - {0x00000002}'Sandbox - No Sleeping', - {0x00000004}'Sandbox - No Conversation', - {0x00000008}'Sandbox - No Idle Markers', - {0x00000010}'Sandbox - No Furniture', - {0x00000020}'Sandbox - No Wandering' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Patrol', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Guard', itU16, wbFlags([ - {0x00000001}'', - {0x00000002}'', - {0x00000004}'Guard - Remain Near Reference to Guard' - ], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Dialogue', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)), - wbInteger('Type Specific Flags - Use Weapon', itU16, wbFlags([], wbPKDTSpecificFlagsUnused)) - ]), - wbByteArray('Unused', 2) - ], cpNormal, True, nil, 2), - wbRStruct('Locations', [ - wbStruct(PLDT, 'Location 1', [ - wbInteger('Type', itS32, wbEnum([ // Byte + filler - {0} 'Near reference', - {1} 'In cell', - {2} 'Near current location', - {3} 'Near editor location', - {4} 'Object ID', - {5} 'Object Type', - {6} 'Near linked reference', - {7} 'At package location' - ])), - wbUnion('Location', wbPxDTLocationDecider, [ - wbFormIDCkNoReach('Reference', [REFR, PGRE, PMIS, PBEA, ACHR, ACRE, PLYR], True), - wbFormIDCkNoReach('Cell', [CELL]), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbFormIDCkNoReach('Object ID', [ACTI, DOOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH]), - wbInteger('Object Type', itU32, wbObjectTypeEnum), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore) - ]), - wbInteger('Radius', itS32) - ]), - wbStruct(PLD2, 'Location 2', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Near reference', - {1} 'In cell', - {2} 'Near current location', - {3} 'Near editor location', - {4} 'Object ID', - {5} 'Object Type', - {6} 'Near linked reference', - {7} 'At package location' - ])), - wbUnion('Location', wbPxDTLocationDecider, [ - wbFormIDCkNoReach('Reference', [REFR, PGRE, PMIS, PBEA, ACHR, ACRE, PLYR], True), - wbFormIDCkNoReach('Cell', [CELL]), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbFormIDCkNoReach('Object ID', [ACTI, DOOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH]), - wbInteger('Object Type', itU32, wbObjectTypeEnum), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore) - ]), - wbInteger('Radius', itS32) - ]) - ], []), - wbStruct(PSDT, 'Schedule', [ - wbInteger('Month', itS8), - wbInteger('Day of week', itS8, wbEnum([ - 'Sunday', - 'Monday', - 'Tuesday', - 'Wednesday', - 'Thursday', - 'Friday', - 'Saturday', - 'Weekdays', - 'Weekends', - 'Monday, Wednesday, Friday', - 'Tuesday, Thursday' - ], [ - -1, 'Any' - ])), - wbInteger('Date', itU8), - wbInteger('Time', itS8), - wbInteger('Duration', itS32) - ], cpNormal, True), - wbStruct(PTDT, 'Target 1', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Specific Reference', - {1} 'Object ID', - {2} 'Object Type', - {3} 'Linked Reference' - ]), cpNormal, False, nil, nil, 2), - wbUnion('Target', wbPxDTLocationDecider, [ - wbFormIDCkNoReach('Reference', [ACHR, ACRE, REFR, PGRE, PMIS, PBEA, PLYR], True), - wbFormIDCkNoReach('Object ID', [ACTI, DOOR, STAT, FURN, CREA, SPEL, NPC_, LVLN, LVLC, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, FACT, FLST]), - wbInteger('Object Type', itU32, wbObjectTypeEnum), - wbByteArray('Unused', 4, cpIgnore) - ]), - wbInteger('Count / Distance', itS32), - wbFloat('Unknown') - ], cpNormal, False, nil, 3), - wbCTDAs, - wbRStruct('Idle Animations', [ - wbInteger(IDLF, 'Flags', itU8, wbFlags([ - 'Run in Sequence', - '', - 'Do Once' - ]), cpNormal, True), - wbStruct(IDLC, '', [ - wbInteger( 'Animation Count', itU8), - wbByteArray('Unused', 3) - ], cpNormal, True, nil, 1), - wbFloat(IDLT, 'Idle Timer Setting', cpNormal, True), - wbArray(IDLA, 'Animations', wbFormIDCk('Animation', [IDLE]), 0, nil, wbIDLAsAfterSet, cpNormal, True), - wbByteArray(IDLB, 'Unused', 4, cpIgnore) - ], [], cpNormal, False, nil, False, nil {cannot be totally removed , wbAnimationsAfterSet}), - wbFormIDCk(CNAM, 'Combat Style', [CSTY]), - wbEmpty(PKED, 'Eat Marker'), - wbInteger(PKE2, 'Escort Distance', itU32), - wbFloat(PKFD, 'Follow - Start Location - Trigger Radius'), - wbStruct(PKPT, 'Patrol Flags', [ - wbInteger('Repeatable', itU8, wbEnum(['No', 'Yes']), cpNormal, False, nil, nil, 1), - wbByteArray('Unused', 1) - ], cpNormal, False, nil, 1), - wbStruct(PKW3, 'Use Weapon Data', [ - wbInteger('Flags', itU32, wbFlags([ - 'Always Hit', - '', - '', - '', - '', - '', - '', - '', - 'Do No Damage', - '', - '', - '', - '', - '', - '', - '', - 'Crouch To Reload', - '', - '', - '', - '', - '', - '', - '', - 'Hold Fire When Blocked' - ])), - wbInteger('Fire Rate', itU8, wbEnum([ - 'Auto Fire', - 'Volley Fire' - ])), - wbInteger('Fire Count', itU8, wbEnum([ - 'Number of Bursts', - 'Repeat Fire' - ])), - wbInteger('Number of Bursts', itU16), - wbStruct('Shoots Per Volleys', [ - wbInteger('Min', itU16), - wbInteger('Max', itU16) - ]), - wbStruct('Pause Between Volleys', [ - wbFloat('Min'), - wbFloat('Max') - ]), - wbByteArray('Unused', 4) - ]), - wbStruct(PTD2, 'Target 2', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Specific reference', - {1} 'Object ID', - {2} 'Object Type', - {3} 'Linked Reference' - ])), - wbUnion('Target', wbPxDTLocationDecider, [ - wbFormIDCkNoReach('Reference', [ACHR, ACRE, REFR, PGRE, PMIS, PBEA, PLYR], True), - wbFormIDCkNoReach('Object ID', [ACTI, DOOR, STAT, FURN, CREA, SPEL, NPC_, LVLN, LVLC, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, FACT, FLST]), - wbInteger('Object Type', itU32, wbObjectTypeEnum), - wbByteArray('Unused', 4, cpIgnore) - ]), - wbInteger('Count / Distance', itS32), - wbFloat('Unknown') - ], cpNormal, False, nil, 3), - wbEmpty(PUID, 'Use Item Marker'), - wbEmpty(PKAM, 'Ambush Marker'), - wbStruct(PKDD, 'Dialogue Data', [ - wbFloat('FOV'), - wbFormIDCk('Topic', [DIAL, NULL]), - wbInteger('Flags', itU32, wbFlags([ - 'No Headtracking', - '', - '', - '', - '', - '', - '', - '', - 'Don''t Control Target Movement' - ])), - wbByteArray('Unused', 4), - wbInteger('Dialogue Type', itU32, wbEnum([ - 'Conversation', - 'Say To' - ])), - wbByteArray('Unknown', 4) - ], cpNormal, False, nil, 3), - wbStruct(PLD2, 'Location 2 (again??)', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Near reference', - {1} 'In cell', - {2} 'Near current location', - {3} 'Near editor location', - {4} 'Object ID', - {5} 'Object Type', - {6} 'Near linked reference', - {7} 'At package location' - ])), - wbUnion('Location', wbPxDTLocationDecider, [ - wbFormIDCkNoReach('Reference', [REFR, PGRE, PMIS, PBEA, ACHR, ACRE, PLYR], True), - wbFormIDCkNoReach('Cell', [CELL]), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore), - wbFormIDCkNoReach('Object ID', [ACTI, DOOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH]), - wbInteger('Object Type', itU32, wbObjectTypeEnum), - wbByteArray('Unused', 4, cpIgnore), - wbByteArray('Unused', 4, cpIgnore) - ]), - wbInteger('Radius', itS32) - ]), - wbRStruct('OnBegin', [ - wbEmpty(POBA, 'OnBegin Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], [], cpNormal, True), - wbRStruct('OnEnd', [ - wbEmpty(POEA, 'OnEnd Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], [], cpNormal, True), - wbRStruct('OnChange', [ - wbEmpty(POCA, 'OnChange Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], [], cpNormal, True) - ], False, nil, cpNormal, False, wbPACKAfterLoad); - - wbRecord(QUST, 'Quest', [ - wbEDIDReq, - wbSCRI, - wbFULL, - wbICON, - wbStruct(DATA, 'General', [ - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Start game enabled', - {0x02} '', - {0x04} 'Allow repeated conversation topics', - {0x08} 'Allow repeated stages', - {0x10} 'Unknown 4' - ])), - wbInteger('Priority', itU8), - wbByteArray('Unused', 2), - wbFloat('Quest Delay') - ], cpNormal, True, nil, 3), - wbCTDAs, - wbRArrayS('Stages', wbRStructSK([0], 'Stage', [ - wbInteger(INDX, 'Stage Index', itS16), - wbRArray('Log Entries', wbRStruct('Log Entry', [ - wbInteger(QSDT, 'Stage Flags', itU8, wbFlags([ - {0x01} 'Complete Quest', - {0x02} 'Fail Quest' - ])), - wbCTDAs, - wbString(CNAM, 'Log Entry', 0, cpTranslate), - wbEmbeddedScriptReq, - wbFormIDCk(NAM0, 'Next Quest', [QUST]) - ], [])) - ], [])), - wbRArray('Objectives', wbRStruct('Objective', [ - wbInteger(QOBJ, 'Objective Index', itS32), - wbString(NNAM, 'Description', 0, cpNormal, True), - wbRArray('Targets', wbRStruct('Target', [ - wbStruct(QSTA, 'Target', [ - wbFormIDCkNoReach('Target', [REFR, PGRE, PMIS, PBEA, ACRE, ACHR], True), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Compass Marker Ignores Locks' - ])), - wbByteArray('Unused', 3) - ]), - wbCTDAs - ], [])) - ], [])) - ]); - - wbHeadPartIndexEnum := wbEnum([ - 'Head', - 'Ears', - 'Mouth', - 'Teeth Lower', - 'Teeth Upper', - 'Tongue', - 'Left Eye', - 'Right Eye' - ]); - - wbBodyPartIndexEnum := wbEnum([ - 'Upper Body', - 'Left Hand', - 'Right Hand', - 'Upper Body Texture' - ]); - - wbRecord(RACE, 'Race', [ - wbEDIDReq, - wbFULLReq, - wbDESCReq, - wbXNAMs, - wbStruct(DATA, '', [ - wbArrayS('Skill Boosts', wbStructSK([0], 'Skill Boost', [ - wbInteger('Skill', itS8, wbActorValueEnum), - wbInteger('Boost', itS8) - ]), 7), - wbByteArray('Unused', 2), - wbFloat('Male Height'), - wbFloat('Female Height'), - wbFloat('Male Weight'), - wbFloat('Female Weight'), - wbInteger('Flags', itU32, wbFlags([ - 'Playable', - '', - 'Child' - ])) - ], cpNormal, True), - wbFormIDCk(ONAM, 'Older', [RACE]), - wbFormIDCk(YNAM, 'Younger', [RACE]), - wbEmpty(NAM2, 'Unknown Marker', cpNormal, True), - wbArray(VTCK, 'Voices', wbFormIDCk('Voice', [VTYP]), ['Male', 'Female'], cpNormal, True), - wbArray(DNAM, 'Default Hair Styles', wbFormIDCk('Default Hair Style', [HAIR, NULL]), ['Male', 'Female'], cpNormal, True), - wbArray(CNAM, 'Default Hair Colors', wbInteger('Default Hair Color', itU8, wbEnum([ - 'Bleached', - 'Brown', - 'Chocolate', - 'Platinum', - 'Cornsilk', - 'Suede', - 'Pecan', - 'Auburn', - 'Ginger', - 'Honey', - 'Gold', - 'Rosewood', - 'Black', - 'Chestnut', - 'Steel', - 'Champagne' - ])), ['Male', 'Female'], cpNormal, True), - wbFloat(PNAM, 'FaceGen - Main clamp', cpNormal, True), - wbFloat(UNAM, 'FaceGen - Face clamp', cpNormal, True), - wbByteArray(ATTR, 'Unused', 0, cpNormal, True), - wbRStruct('Head Data', [ - wbEmpty(NAM0, 'Head Data Marker', cpNormal, True), - wbRStruct('Male Head Data', [ - wbEmpty(MNAM, 'Male Data Marker', cpNormal, True), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbHeadPartIndexEnum), - wbMODLReq, - wbICON - ], [], cpNormal, False, nil, False, nil, wbHeadPartsAfterSet), cpNormal, True) - ], [], cpNormal, True), - wbRStruct('Female Head Data', [ - wbEmpty(FNAM, 'Female Data Marker', cpNormal, True), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbHeadPartIndexEnum), - wbMODLReq, - wbICON - ], [], cpNormal, False, nil, False, nil, wbHeadPartsAfterSet), cpNormal, True) - ], [], cpNormal, True) - ], [], cpNormal, True), - wbRStruct('Body Data', [ - wbEmpty(NAM1, 'Body Data Marker', cpNormal, True), - wbRStruct('Male Body Data', [ - wbEmpty(MNAM, 'Male Data Marker'), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbBodyPartIndexEnum), - wbICON, - wbMODLReq - ], []), cpNormal, True) - ], [], cpNormal, True), - wbRStruct('Female Body Data', [ - wbEmpty(FNAM, 'Female Data Marker', cpNormal, True), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbBodyPartIndexEnum), - wbICON, - wbMODLReq - ], []), cpNormal, True) - ], [], cpNormal, True) - ], [], cpNormal, True), - wbArrayS(HNAM, 'Hairs', wbFormIDCk('Hair', [HAIR]), 0, cpNormal, True), - wbArrayS(ENAM, 'Eyes', wbFormIDCk('Eye', [EYES]), 0, cpNormal, True), - wbRStruct('FaceGen Data', [ - wbRStruct('Male FaceGen Data', [ - wbEmpty(MNAM, 'Male Data Marker', cpNormal, True), - wbFaceGen, - wbUnknown(SNAM, cpNormal, True) - ], [], cpNormal, True), - wbRStruct('Female FaceGen Data', [ - wbEmpty(FNAM, 'Female Data Marker', cpNormal, True), - wbFaceGen, - wbUnknown(SNAM, cpNormal, True) - ], [], cpNormal, True) - ], [], cpNormal, True) - ]); - - wbRecord(REFR, 'Placed Object', [ - wbEDID, - { - wbStruct(RCLR, 'Linked Reference Color (Old Format?)', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ], cpIgnore),} - wbByteArray(RCLR, 'Unused', 0, cpIgnore), - wbFormIDCk(NAME, 'Base', [TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, LVLN, LVLC, - MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, - MSTT, NOTE, PWAT, SCOL, TACT, TERM, TXST], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - {--- ?? ---} - wbXRGD, - wbXRGB, - - {--- Primitive ---} - wbStruct(XPRM, 'Primitive', [ - wbStruct('Bounds', [ - wbFloat('X', cpNormal, True, 2, 4), - wbFloat('Y', cpNormal, True, 2, 4), - wbFloat('Z', cpNormal, True, 2, 4) - ]), - wbStruct('Color', [ - {84} wbFloat('Red', cpNormal, False, 255, 0), - {88} wbFloat('Green', cpNormal, False, 255, 0), - {92} wbFloat('Blue', cpNormal, False, 255, 0) - ]), - wbFloat('Unknown'), - wbInteger('Type', itU32, wbEnum([ - 'None', - 'Box', - 'Sphere', - 'Portal Box' - ])) - ]), - wbInteger(XTRI, 'Collision Layer', itU32, wbEnum([ - 'Unidentified', - 'Static', - 'AnimStatic', - 'Transparent', - 'Clutter', - 'Weapon', - 'Projectile', - 'Spell', - 'Biped', - 'Trees', - 'Props', - 'Water', - 'Trigger', - 'Terrain', - 'Trap', - 'Non Collidable', - 'Cloud Trap', - 'Ground', - 'Portal', - 'Debris Small', - 'Debris Large', - 'Acustic Space', - 'Actor Zone', - 'Projectile Zone', - 'Gas Trap', - 'Shell Casing', - 'Transparent Small', - 'Invisible Wall', - 'Transparent Small Anim', - 'Dead Bip', - 'Char Controller', - 'Avoid Box', - 'Collision Box', - 'Camera Sphere', - 'Door Detection', - 'Camera Pick', - 'Item Pick', - 'Line Of Sight', - 'Path Pick', - 'Custom Pick 1', - 'Custom Pick 2', - 'Spell Explosion', - 'Dropping Pick' - ])), - wbEmpty(XMBP, 'MultiBound Primitive Marker'), - - {--- Bound Contents ---} - - {--- Bound Data ---} - wbStruct(XMBO, 'Bound Half Extents', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - - {--- Teleport ---} - wbStruct(XTEL, 'Teleport Destination', [ - wbFormIDCk('Door', [REFR], True), - wbPosRot, - wbInteger('Flags', itU32, wbFlags([ - 'No Alarm' - ])) - ]), - - {--- Map Data ---} - wbRStruct('Map Marker', [ - wbEmpty(XMRK, 'Map Marker Data'), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - {0x01} 'Visible', - {0x02} 'Can Travel To', - {0x04} '"Show All" Hidden' - ]), cpNormal, True), - wbFULLReq, - wbStruct(TNAM, '', [ - wbInteger('Type', itU8, wbEnum([ - 'None', - 'City', - 'Settlement', - 'Encampment', - 'Natural Landmark', - 'Cave', - 'Factory', - 'Monument', - 'Military', - 'Office', - 'Town Ruins', - 'Urban Ruins', - 'Sewer Ruins', - 'Metro', - 'Vault' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True) - ], []), - - wbInteger(XSRF, 'Special Rendering Flags', itU32, wbFlags([ - 'Unknown 0', - 'Imposter', - 'Use Full Shader in LOD' - ])), - wbByteArray(XSRD, 'Special Rendering Data', 4), - - {--- X Target Data ---} - wbFormIDCk(XTRG, 'Target', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA], True), - - {--- Leveled Actor ----} - wbXLCM, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbEmbeddedScriptReq, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal, True) - ], []), - - {--- Radio ---} - wbStruct(XRDO, 'Radio Data', [ - wbFloat('Range Radius'), - wbInteger('Broadcast Range Type', itU32, wbEnum([ - 'Radius', - 'Everywhere', - 'Worldspace and Linked Interiors', - 'Linked Interiors', - 'Current Cell Only' - ])), - wbFloat('Static Percentage'), - wbFormIDCkNoReach('Position Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, NULL]) - ]), - - {--- Ownership ---} - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32) - ], [XCMT, XCMO]), - - {--- Lock ---} - wbStruct(XLOC, 'Lock Data', [ - wbInteger('Level', itU8), - wbByteArray('Unused', 3), - wbFormIDCkNoReach('Key', [KEYM, NULL]), - wbInteger('Flags', itU8, wbFlags(['', '', 'Leveled Lock'])), - wbByteArray('Unused', 3), - wbByteArray('Unknown', 8) - ], cpNormal, False, nil, 5), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - wbFloat(XRAD, 'Radiation'), - wbFloat(XCHG, 'Charge'), - wbRStruct('Ammo', [ - wbFormIDCk(XAMT, 'Type', [AMMO], False, cpNormal, True), - wbInteger(XAMC, 'Count', itS32, nil, cpNormal, True) - ], []), - - {--- Reflected By / Refracted By ---} - wbRArrayS('Reflected/Refracted By', - wbStructSK(XPWR, [0], 'Water', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Type', itU32, wbFlags([ - 'Reflection', - 'Refraction' - ])) - ]) - ), - - {--- Lit Water ---} - wbRArrayS('Lit Water', - wbFormIDCk(XLTW, 'Water', [REFR]) - ), - - {--- Decals ---} - wbRArrayS('Linked Decals', - wbStructSK(XDCR, [0], 'Decal', [ - wbFormIDCk('Reference', [REFR]), - wbUnknown - ]) - ), - - {--- Linked Ref ---} - wbFormIDCk(XLKR, 'Linked Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbStruct(XCLP, 'Linked Reference Color', [ - wbStruct('Link Start Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Link End Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]) - ]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [REFR, ACRE, ACHR, PGRE, PMIS, PBEA, PLYR]), - wbFloat('Delay') - ]) - ) - ], []), - - {--- Enable Parent ---} - wbXESP, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Flags ---} - wbInteger(XACT, 'Action Flag', itU32, wbFlags([ - 'Use Default', - 'Activate', - 'Open', - 'Open by Default' - ])), - wbEmpty(ONAM, 'Open by Default'), - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- Generated Data ---} - wbStruct(XNDP, 'Navigation Door Link', [ - wbFormIDCk('Navigation Mesh', [NAVM]), - wbInteger('Teleport Marker Triangle', itS16, wbREFRNavmeshTriangleToStr, wbStringToInt), - wbByteArray('Unused', 2) - ]), - - wbArray(XPOD, 'Portal Data', wbFormIDCk('Room', [REFR, NULL]), 2), - wbStruct(XPTL, 'Portal Data', [ - wbStruct('Size', [ - wbFloat('Width', cpNormal, False, 2), - wbFloat('Height', cpNormal, False, 2) - ]), - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation (Quaternion?)', [ - wbFloat('q1'), - wbFloat('q2'), - wbFloat('q3'), - wbFloat('q4') - ]) - ]), - - wbInteger(XSED, 'SpeedTree Seed', itU8), - - wbRStruct('Room Data', [ - wbStruct(XRMR, 'Header', [ - wbInteger('Linked Rooms Count', itU16), - wbByteArray('Unknown', 2) - ]), - wbRArrayS('Linked Rooms', - wbFormIDCk(XLRM, 'Linked Room', [REFR]) - ) - ], []), - - wbStruct(XOCP, 'Occlusion Plane Data', [ - wbStruct('Size', [ - wbFloat('Width', cpNormal, False, 2), - wbFloat('Height', cpNormal, False, 2) - ]), - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation (Quaternion?)', [ - wbFloat('q1'), - wbFloat('q2'), - wbFloat('q3'), - wbFloat('q4') - ]) - ]), - wbArray(XORD, 'Linked Occlusion Planes', wbFormIDCk('Plane', [REFR, NULL]), [ - 'Right', - 'Left', - 'Bottom', - 'Top' - ]), - - wbXLOD, - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo, cpNormal, False, wbREFRAfterLoad); - - - wbRecord(REGN, 'Region', [ - wbEDID, - wbICON, - wbStruct(RCLR, 'Map Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbFormIDCkNoReach(WNAM, 'Worldspace', [WRLD]), - - wbRArray('Region Areas', wbRStruct('Region Area', [ - wbInteger(RPLI, 'Edge Fall-off', itU32), - wbArray(RPLD, 'Region Point List Data', wbStruct('Point', [ - wbFloat('X'), - wbFloat('Y') - ]), 0, wbRPLDAfterLoad) - ], [])), - - wbRArrayS('Region Data Entries', wbRStructSK([0], 'Region Data Entry', [ - {always starts with an RDAT} - wbStructSK(RDAT, [0], 'Data Header', [ - wbInteger('Type', itU32, wbEnum([ - {0}'', - {1}'', - {2}'Objects', - {3}'Weather', - {4}'Map', - {5}'Land', - {6}'Grass', - {7}'Sound', - {8}'', - {9}'' - ])), - wbInteger('Flags', itU8, wbFlags([ - 'Override' - ])), - wbInteger('Priority', itU8), - wbByteArray('Unused') - ], cpNormal, True), - - {followed by one of these: } - - {--- Objects ---} - wbArray(RDOT, 'Objects', wbStruct('Object', [ - wbFormIDCk('Object', [TREE, STAT, LTEX]), - wbInteger('Parent Index', itU16, wbHideFFFF), - wbByteArray('Unused', 2), - wbFloat('Density'), - wbInteger('Clustering', itU8), - wbInteger('Min Slope', itU8), - wbInteger('Max Slope', itU8), - wbInteger('Flags', itU8, wbFlags([ - {0}'Conform to slope', - {1}'Paint Vertices', - {2}'Size Variance +/-', - {3}'X +/-', - {4}'Y +/-', - {5}'Z +/-', - {6}'Tree', - {7}'Huge Rock' - ])), - wbInteger('Radius wrt Parent', itU16), - wbInteger('Radius', itU16), - wbFloat('Min Height'), - wbFloat('Max Height'), - wbFloat('Sink'), - wbFloat('Sink Variance'), - wbFloat('Size Variance'), - wbStruct('Angle Variance', [ - wbInteger('X', itU16), - wbInteger('Y', itU16), - wbInteger('Z', itU16) - ]), - wbByteArray('Unused', 2), - wbByteArray('Unknown', 4) - ]), 0, nil, nil, cpNormal, False, wbREGNObjectsDontShow), - - {--- Map ---} - wbString(RDMP, 'Map Name', 0, cpTranslate, False, wbREGNMapDontShow), - - {--- Grass ---} - wbArrayS(RDGS, 'Grasses', wbStructSK([0], 'Grass', [ - wbFormIDCk('Grass', [GRAS]), - wbByteArray('Unknown',4) - ]), 0, cpNormal, False, nil, nil, wbREGNGrassDontShow), - - {--- Sound ---} - wbInteger(RDMD, 'Music Type', itU32, wbMusicEnum, cpIgnore, False, False, wbNeverShow), - wbFormIDCk(RDMO, 'Music', [MUSC], False, cpNormal, False, wbREGNSoundDontShow), - wbArrayS(RDSD, 'Sounds', wbStructSK([0], 'Sound', [ - wbFormIDCk('Sound', [SOUN]), - wbInteger('Flags', itU32, wbFlags([ - 'Pleasant', - 'Cloudy', - 'Rainy', - 'Snowy' - ])), - wbInteger('Chance', itU32, wbScaledInt4ToStr, wbScaledInt4ToInt) - ]), 0, cpNormal, False, nil, nil, wbREGNSoundDontShow), - - {--- Weather ---} - wbArrayS(RDWT, 'Weather Types', wbStructSK([0], 'Weather Type', [ - wbFormIDCk('Weather', [WTHR]), - wbInteger('Chance', itU32), - wbFormIDCk('Global', [GLOB, NULL]) - ]), 0, cpNormal, False, nil, nil, wbREGNWeatherDontShow) - ], [])) - ], True); - - wbRecord(SOUN, 'Sound', [ - wbEDIDReq, - wbOBNDReq, - wbString(FNAM, 'Sound Filename'), - wbRUnion('Sound Data', [ - wbStruct(SNDD, 'Sound Data', [ - wbInteger('Minimum Attentuation Distance', itU8, wbMul(5)), - wbInteger('Maximum Attentuation Distance', itU8, wbMul(100)), - wbInteger('Frequency Adjustment %', itS8), - wbByteArray('Unused', 1), - wbInteger('Flags', itU32, wbFlags([ - {0x0001} 'Random Frequency Shift', - {0x0002} 'Play At Random', - {0x0004} 'Environment Ignored', - {0x0008} 'Random Location', - {0x0010} 'Loop', - {0x0020} 'Menu Sound', - {0x0040} '2D', - {0x0080} '360 LFE', - {0x0100} 'Dialogue Sound', - {0x0200} 'Envelope Fast', - {0x0400} 'Envelope Slow', - {0x0800} '2D Radius', - {0x1000} 'Mute When Submerged' - ])), - wbInteger('Static attentuation cdB', itS16), - wbInteger('Stop time ', itU8), - wbInteger('Start time ', itU8), - wbArray('Attenuation Curve', wbInteger('Point', itS16), 5), - wbInteger('Reverb Attenuation Control', itS16), - wbInteger('Priority', itS32), - wbByteArray('Unknown', 8) - ], cpNormal, True), - wbStruct(SNDX, 'Sound Data', [ - wbInteger('Minimum attentuation distance', itU8, wbMul(5)), - wbInteger('Maximum attentuation distance', itU8, wbMul(100)), - wbInteger('Frequency adjustment %', itS8), - wbByteArray('Unused', 1), - wbInteger('Flags', itU32, wbFlags([ - {0x0001} 'Random Frequency Shift', - {0x0002} 'Play At Random', - {0x0004} 'Environment Ignored', - {0x0008} 'Random Location', - {0x0010} 'Loop', - {0x0020} 'Menu Sound', - {0x0040} '2D', - {0x0080} '360 LFE', - {0x0100} 'Dialogue Sound', - {0x0200} 'Envelope Fast', - {0x0400} 'Envelope Slow', - {0x0800} '2D Radius', - {0x1000} 'Mute When Submerged' - ])), - wbInteger('Static attentuation cdB', itS16), - wbInteger('Stop time ', itU8), - wbInteger('Start time ', itU8) - ], cpNormal, True) - ], [], cpNormal, True), - wbArray(ANAM, 'Attenuation Curve', wbInteger('Point', itS16), 5, nil, nil, cpNormal, False, wbNeverShow), - wbInteger(GNAM, 'Reverb Attenuation Control', itS16, nil, cpNormal, False, False, wbNeverShow), - wbInteger(HNAM, 'Priority', itS32, nil, cpNormal, False, False, wbNeverShow) - ], False, nil, cpNormal, False, wbSOUNAfterLoad); - - wbRecord(SPEL, 'Actor Effect', [ - wbEDIDReq, - wbFULL, - wbStruct(SPIT, '', [ - wbInteger('Type', itU32, wbEnum([ - {0} 'Actor Effect', - {1} 'Disease', - {2} 'Power', - {3} 'Lesser Power', - {4} 'Ability', - {5} 'Poison', - {6} '', - {7} '', - {8} '', - {9} '', - {10} 'Addiction' - ])), - wbInteger('Cost (Unused)', itU32), - wbInteger('Level (Unused)', itU32, wbEnum([ - {0} 'Unused' - ])), - wbInteger('Flags', itU8, wbFlags([ - {0x00000001} 'No Auto-Calc', - {0x00000002} 'Immune to Silence 1?', - {0x00000004} 'PC Start Effect', - {0x00000008} 'Immune to Silence 2?', - {0x00000010} 'Area Effect Ignores LOS', - {0x00000020} 'Script Effect Always Applies', - {0x00000040} 'Disable Absorb/Reflect', - {0x00000080} 'Force Touch Explode' - ])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffectsReq - ]); - - wbRecord(STAT, 'Static', [ - wbEDIDReq, - wbOBNDReq, - wbMODL - ]); - - wbRecord(TES4, 'Main File Header', [ - wbStruct(HEDR, 'Header', [ - wbFloat('Version'), - wbInteger('Number of Records', itU32), - wbInteger('Next Object ID', itU32) - ], cpNormal, True), - wbByteArray(OFST, 'Unknown', 0, cpIgnore), - wbByteArray(DELE, 'Unknown', 0, cpIgnore), - wbString(CNAM, 'Author', 0, cpTranslate, True), - wbString(SNAM, 'Description', 0, cpTranslate), - wbRArray('Master Files', wbRStruct('Master File', [ - wbString(MAST, 'Filename', 0, cpNormal, True), - wbByteArray(DATA, 'Unused', 8, cpIgnore, True) - ], [ONAM])), - wbArray(ONAM, 'Overriden Forms', wbFormIDCk('Form', [REFR, ACHR, ACRE, PMIS, PBEA, PGRE, LAND, NAVM]), 0, nil, nil, cpNormal, False, wbTES4ONAMDontShow), - wbByteArray(SCRN, 'Screenshot') - ], True, nil, cpNormal, True, wbRemoveOFST); - - wbRecord(TREE, 'Tree', [ - wbEDIDReq, - wbOBNDReq, - wbMODLReq, - wbICONReq, - wbArrayS(SNAM, 'SpeedTree Seeds', wbInteger('SpeedTree Seed', itU32), 0, cpNormal, True), - wbStruct(CNAM, 'Tree Data', [ - wbFloat('Leaf Curvature'), - wbFloat('Minimum Leaf Angle'), - wbFloat('Maximum Leaf Angle'), - wbFloat('Branch Dimming Value'), - wbFloat('Leaf Dimming Value'), - wbInteger('Shadow Radius', itS32), - wbFloat('Rock Speed'), - wbFloat('Rustle Speed') - ], cpNormal, True), - wbStruct(BNAM, 'Billboard Dimensions', [ - wbFloat('Width'), - wbFloat('Height') - ], cpNormal, True) - ]); -end; - -procedure DefineFO3f; -begin - wbRecord(WATR, 'Water', [ - wbEDIDReq, - wbFULL, - wbString(NNAM, 'Noise Map', 0, cpNormal, True), - wbInteger(ANAM, 'Opacity', itU8, nil, cpNormal, True), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - {0}'Causes Damage', - {1}'Reflective' - ]), cpNormal, True), - wbString(MNAM, 'Material ID', 0, cpNormal, True), - wbFormIDCk(SNAM, 'Sound', [SOUN]), - wbFormIDCk(XNAM, 'Actor Effect', [SPEL]), - wbInteger(DATA, 'Damage', itU16, nil, cpNormal, True, True), - wbRUnion('Visual Data', [ - wbStruct(DNAM, 'Visual Data', [ - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Water Properties - Sun Power'), - wbFloat('Water Properties - Reflectivity Amount'), - wbFloat('Water Properties - Fresnel Amount'), - wbByteArray('Unused', 4), - wbFloat('Fog Properties - Above Water - Fog Distance - Near Plane'), - wbFloat('Fog Properties - Above Water - Fog Distance - Far Plane'), - wbStruct('Shallow Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Deep Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Reflection Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbByteArray('Unused', 4), - wbFloat('Rain Simulator - Force'), - wbFloat('Rain Simulator - Velocity'), - wbFloat('Rain Simulator - Falloff'), - wbFloat('Rain Simulator - Dampner'), - wbFloat('Displacement Simulator - Starting Size'), - wbFloat('Displacement Simulator - Force'), - wbFloat('Displacement Simulator - Velocity'), - wbFloat('Displacement Simulator - Falloff'), - wbFloat('Displacement Simulator - Dampner'), - wbFloat('Rain Simulator - Starting Size'), - wbFloat('Noise Properties - Normals - Noise Scale'), - wbFloat('Noise Properties - Noise Layer One - Wind Direction'), - wbFloat('Noise Properties - Noise Layer Two - Wind Direction'), - wbFloat('Noise Properties - Noise Layer Three - Wind Direction'), - wbFloat('Noise Properties - Noise Layer One - Wind Speed'), - wbFloat('Noise Properties - Noise Layer Two - Wind Speed'), - wbFloat('Noise Properties - Noise Layer Three - Wind Speed'), - wbFloat('Noise Properties - Normals - Depth Falloff Start'), - wbFloat('Noise Properties - Normals - Depth Falloff End'), - wbFloat('Fog Properties - Above Water - Fog Amount'), - wbFloat('Noise Properties - Normals - UV Scale'), - wbFloat('Fog Properties - Under Water - Fog Amount'), - wbFloat('Fog Properties - Under Water - Fog Distance - Near Plane'), - wbFloat('Fog Properties - Under Water - Fog Distance - Far Plane'), - wbFloat('Water Properties - Distortion Amount'), - wbFloat('Water Properties - Shininess'), - wbFloat('Water Properties - Reflection HDR Multiplier'), - wbFloat('Water Properties - Light Radius'), - wbFloat('Water Properties - Light Brightness'), - wbFloat('Noise Properties - Noise Layer One - UV Scale'), - wbFloat('Noise Properties - Noise Layer Two - UV Scale'), - wbFloat('Noise Properties - Noise Layer Three - UV Scale'), - wbFloat('Noise Properties - Noise Layer One - Amplitude Scale'), - wbFloat('Noise Properties - Noise Layer Two - Amplitude Scale'), - wbFloat('Noise Properties - Noise Layer Three - Amplitude Scale') - ], cpNormal, True, nil, 46), - wbStruct(DATA, 'Visual Data', [ - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Water Properties - Sun Power'), - wbFloat('Water Properties - Reflectivity Amount'), - wbFloat('Water Properties - Fresnel Amount'), - wbByteArray('Unused', 4), - wbFloat('Fog Properties - Above Water - Fog Distance - Near Plane'), - wbFloat('Fog Properties - Above Water - Fog Distance - Far Plane'), - wbStruct('Shallow Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Deep Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Reflection Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbByteArray('Unused', 4), - wbFloat('Rain Simulator - Force'), - wbFloat('Rain Simulator - Velocity'), - wbFloat('Rain Simulator - Falloff'), - wbFloat('Rain Simulator - Dampner'), - wbFloat('Displacement Simulator - Starting Size'), - wbFloat('Displacement Simulator - Force'), - wbFloat('Displacement Simulator - Velocity'), - wbFloat('Displacement Simulator - Falloff'), - wbFloat('Displacement Simulator - Dampner'), - wbFloat('Rain Simulator - Starting Size'), - wbFloat('Noise Properties - Normals - Noise Scale'), - wbFloat('Noise Properties - Noise Layer One - Wind Direction'), - wbFloat('Noise Properties - Noise Layer Two - Wind Direction'), - wbFloat('Noise Properties - Noise Layer Three - Wind Direction'), - wbFloat('Noise Properties - Noise Layer One - Wind Speed'), - wbFloat('Noise Properties - Noise Layer Two - Wind Speed'), - wbFloat('Noise Properties - Noise Layer Three - Wind Speed'), - wbFloat('Noise Properties - Normals - Depth Falloff Start'), - wbFloat('Noise Properties - Normals - Depth Falloff End'), - wbFloat('Fog Properties - Above Water - Fog Amount'), - wbFloat('Noise Properties - Normals - UV Scale'), - wbFloat('Fog Properties - Under Water - Fog Amount'), - wbFloat('Fog Properties - Under Water - Fog Distance - Near Plane'), - wbFloat('Fog Properties - Under Water - Fog Distance - Far Plane'), - wbFloat('Water Properties - Distortion Amount'), - wbFloat('Water Properties - Shininess'), - wbFloat('Water Properties - Reflection HDR Multiplier'), - wbFloat('Water Properties - Light Radius'), - wbFloat('Water Properties - Light Brightness'), - wbFloat('Noise Properties - Noise Layer One - UV Scale'), - wbFloat('Noise Properties - Noise Layer Two - UV Scale'), - wbFloat('Noise Properties - Noise Layer Three - UV Scale'), - wbEmpty('Noise Properties - Noise Layer One - Amplitude Scale'), - wbEmpty('Noise Properties - Noise Layer Two - Amplitude Scale'), - wbEmpty('Noise Properties - Noise Layer Three - Amplitude Scale'), - wbInteger('Damage (Old Format)', itU16) - ], cpNormal, True) - ], [], cpNormal, True), - wbStruct(GNAM, 'Related Waters (Unused)', [ - wbFormIDCk('Daytime', [WATR, NULL]), - wbFormIDCk('Nighttime', [WATR, NULL]), - wbFormIDCk('Underwater', [WATR, NULL]) - ], cpNormal, True) - ], False, nil, cpNormal, False, wbWATRAfterLoad); - - wbRecord(WEAP, 'Weapon', [ - wbEDIDReq, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbEITM, - wbInteger(EAMT, 'Enchantment Charge Amount', itS16), - wbFormIDCkNoReach(NAM0, 'Ammo', [AMMO, FLST]), - wbDEST, - wbREPL, - wbETYPReq, - wbBIPL, - wbYNAM, - wbZNAM, - wbRStruct('Shell Casing Model', [ - wbString(MOD2, 'Model Filename'), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore), - wbMO2S - ], []), - wbRStruct('Scope Model', [ - wbString(MOD3, 'Model Filename'), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore), - wbMO3S - ], []), - wbFormIDCK(EFSD, 'Scope Effect', [EFSH]), - wbRStruct('World Model', [ - wbString(MOD4, 'Model Filename'), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore), - wbMO4S - ], []), - wbString(NNAM, 'Embedded Weapon Node'), - wbFormIDCk(INAM, 'Impact DataSet', [IPDS]), - wbFormIDCk(WNAM, '1st Person Model', [STAT]), - wbFormIDCk(SNAM, 'Sound - Gun - Shoot 3D', [SOUN]), - wbFormIDCk(XNAM, 'Sound - Gun - Shoot 2D', [SOUN]), - wbFormIDCk(NAM7, 'Sound - Gun - Shoot 3D Looping', [SOUN]), - wbFormIDCk(TNAM, 'Sound - Melee - Swing / Gun - No Ammo', [SOUN]), - wbFormIDCk(NAM6, 'Sound - Block', [SOUN]), - wbFormIDCk(UNAM, 'Sound - Idle', [SOUN]), - wbFormIDCk(NAM9, 'Sound - Equip', [SOUN]), - wbFormIDCk(NAM8, 'Sound - Unequip', [SOUN]), - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbInteger('Health', itS32), - wbFloat('Weight'), - wbInteger('Base Damage', itS16), - wbInteger('Clip Size', itU8) - ], cpNormal, True), - wbStruct(DNAM, '', [ - {00} wbInteger('Animation Type', itU32, wbWeaponAnimTypeEnum), - {04} wbFloat('Animation Multiplier'), - {08} wbFloat('Reach'), - {12} wbInteger('Flags 1', itU8, wbFlags([ - 'Ignores Normal Weapon Resistance', - 'Is Automatic', - 'Has Scope', - 'Can''t Drop', - 'Hide Backpack', - 'Embedded Weapon', - 'Don''t Use 1st Person IS Animations', - 'Non-Playable' - ])), - {13} wbInteger('Grip Animation', itU8, wbEnum([ - ], [ - 171, 'HandGrip1', - 172, 'HandGrip2', - 173, 'HandGrip3', - 255, 'DEFAULT' - ])), - {14} wbInteger('Ammo Use', itU8), - {15} wbInteger('Reload Animation', itU8, wbReloadAnimEnum), - {16} wbFloat('Min Spread'), - {20} wbFloat('Spread'), - {24} wbFloat('Unknown'), - {28} wbFloat('Sight FOV'), - {32} wbByteArray('Unused', 4), - {36} wbFormIDCk('Projectile', [PROJ, NULL]), - {40} wbInteger('Base VATS To-Hit Chance', itU8), - {41} wbInteger('Attack Animation', itU8, wbEnum([ - ], [ - 26, 'AttackLeft', - 32, 'AttackRight', - 38, 'Attack3', - 44, 'Attack4', - 50, 'Attack5', - 56, 'Attack6', - 62, 'Attack7', - 68, 'Attack8', - 74, 'AttackLoop', - 80, 'AttackSpin', - 86, 'AttackSpin2', - 97, 'PlaceMine', - 103, 'PlaceMine2', - 109, 'AttackThrow', - 115, 'AttackThrow2', - 121, 'AttackThrow3', - 127, 'AttackThrow4', - 133, 'AttackThrow5', - 255, 'DEFAULT' - ])), - {42} wbInteger('Projectile Count', itU8), - {43} wbInteger('Embedded Weapon - Actor Value', itU8, wbEnum([ - {00} 'Perception', - {01} 'Endurance', - {02} 'Left Attack', - {03} 'Right Attack', - {04} 'Left Mobility', - {05} 'Right Mobilty', - {06} 'Brain' - ])), - {44} wbFloat('Min Range'), - {48} wbFloat('Max Range'), - {52} wbInteger('On Hit', itU32, wbEnum([ - 'Normal formula behavior', - 'Dismember Only', - 'Explode Only', - 'No Dismember/Explode' - ])), - {56} wbInteger('Flags 2', itU32, wbFlags([ - {0x00000001}'Player Only', - {0x00000002}'NPCs Use Ammo', - {0x00000004}'No Jam After Reload', - {0x00000008}'Override - Action Points', - {0x00000010}'Minor Crime', - {0x00000020}'Range - Fixed', - {0x00000040}'Not Used In Normal Combat', - {0x00000080}'Override - Damage to Weapon Mult', - {0x00000100}'Don''t Use 3rd Person IS Animations', - {0x00000200}'Short Burst', - {0x00000400}'Rumble Alternate', - {0x00000800}'Long Burst' - ])), - {60} wbFloat('Animation Attack Multiplier'), - {64} wbFloat('Fire Rate'), - {68} wbFloat('Override - Action Points'), - {72} wbFloat('Rumble - Left Motor Strength'), - {76} wbFloat('Rumble - Right Motor Strength'), - {80} wbFloat('Rumble - Duration'), - {84} wbFloat('Override - Damage to Weapon Mult'), - {88} wbFloat('Attack Shots/Sec'), - {92} wbFloat('Reload Time'), - {96} wbFloat('Jam Time'), - {100} wbFloat('Aim Arc'), - {104} wbInteger('Skill', itS32, wbActorValueEnum), - {108} wbInteger('Rumble - Pattern', itU32, wbEnum([ - 'Constant', - 'Square', - 'Triangle', - 'Sawtooth' - ])), - {112} wbFloat('Rumble - Wavelength'), - {116} wbFloat('Limb Dmg Mult'), - {120} wbInteger('Resist Type', itS32, wbActorValueEnum), - {124} wbFloat('Sight Usage'), - {128} wbFloat('Semi-Automatic Fire Delay Min'), - {132} wbFloat('Semi-Automatic Fire Delay Max') - ], cpNormal, True, nil, 36), - - wbStruct(CRDT, 'Critical Data', [ - {00} wbInteger('Critical Damage', itU16), - {09} wbByteArray('Unused', 2), - {04} wbFloat('Crit % Mult'), - {08} wbInteger('Flags', itU8, wbFlags([ - 'On Death' - ])), - {09} wbByteArray('Unused', 3), - {12} wbFormIDCk('Effect', [SPEL, NULL]) - ], cpNormal, True), - wbInteger(VNAM, 'Sound Level', itU32, wbSoundLevelEnum, cpNormal, True) - ], False, nil, cpNormal, False, wbWEAPAfterLoad); - - if wbSimpleRecords then - wbRecord(WRLD, 'Worldspace', [ - wbEDIDReq, - wbFULL, - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - wbRStruct('Parent', [ - wbFormIDCk(WNAM, 'Worldspace', [WRLD]), - wbStruct(PNAM, '', [ - wbInteger('Flags', itU8, wbFlags([ - {0x00000001}'Use Land Data', - {0x00000002}'Use LOD Data', - {0x00000004}'Use Map Data', - {0x00000008}'Use Water Data', - {0x00000010}'Use Climate Data', - {0x00000020}'Use Image Space Data', - {0x00000040}'', - {0x00000080}'Needs Water Adjustment' - ], True)), - wbByteArray('Unknown', 1) - ], cpNormal, True) - ], []), - wbFormIDCk(CNAM, 'Climate', [CLMT]), - wbFormIDCk(NAM2, 'Water', [WATR]), - wbFormIDCk(NAM3, 'LOD Water Type', [WATR]), - wbFloat(NAM4, 'LOD Water Height'), - wbStruct(DNAM, 'Land Data', [ - wbFloat('Default Land Height'), - wbFloat('Default Water Height') - ]), - wbICON, - wbStruct(MNAM, 'Map Data', [ - wbStruct('Usable Dimensions', [ - wbInteger('X', itS32), - wbInteger('Y', itS32) - ]), - wbStruct('Cell Coordinates', [ - wbStruct('NW Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbStruct('SE Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]) - ]) - ]), - wbStruct(ONAM, 'World Map Offset Data', [ - wbFloat('World Map Scale'), - wbFloat('Cell X Offset'), - wbFloat('Cell Y Offset') - ], cpNormal, True), - wbFormIDCk(INAM, 'Image Space', [IMGS]), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Small World', - {0x02} 'Can''t Fast Travel', - {0x04} '', - {0x08} '', - {0x10} 'No LOD Water', - {0x20} 'No LOD Noise', - {0x40} 'Don''t Allow NPC Fall Damage', - {0x80} 'Needs Water Adjustment' - ]), cpNormal, True), - wbRStruct('Object Bounds', [ - wbStruct(NAM0, 'Min', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True), - wbStruct(NAM9, 'Max', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True) - ], []), - wbFormIDCk(ZNAM, 'Music', [MUSC]), - wbString(NNAM, 'Canopy Shadow', 0, cpNormal, True), - wbString(XNAM, 'Water Noise Texture', 0, cpNormal, True), - wbRArrayS('Swapped Impacts', wbStructExSK(IMPS, [0, 1], [2], 'Swapped Impact', [ - wbInteger('Material Type', itU32, wbImpactMaterialTypeEnum), - wbFormIDCkNoReach('Old', [IPCT]), - wbFormIDCk('New', [IPCT, NULL]) - ])), - wbArray(IMPF, 'Footstep Materials', wbString('Unknown', 30), [ - 'ConcSolid', - 'ConcBroken', - 'MetalSolid', - 'MetalHollow', - 'MetalSheet', - 'Wood', - 'Sand', - 'Dirt', - 'Grass', - 'Water' - ]), - wbByteArray(OFST, 'Offset Data') - ], False, nil, cpNormal, False, wbRemoveOFST) - else - wbRecord(WRLD, 'Worldspace', [ - wbEDIDReq, - wbFULL, - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - wbRStruct('Parent', [ - wbFormIDCk(WNAM, 'Worldspace', [WRLD]), - wbStruct(PNAM, '', [ - wbInteger('Flags', itU8, wbFlags([ - {0x00000001}'Use Land Data', - {0x00000002}'Use LOD Data', - {0x00000004}'Use Map Data', - {0x00000008}'Use Water Data', - {0x00000010}'Use Climate Data', - {0x00000020}'Use Image Space Data', - {0x00000040}'', - {0x00000080}'Needs Water Adjustment' - ], True)), - wbByteArray('Unknown', 1) - ], cpNormal, True) - ], []), - wbFormIDCk(CNAM, 'Climate', [CLMT]), - wbFormIDCk(NAM2, 'Water', [WATR]), - wbFormIDCk(NAM3, 'LOD Water Type', [WATR]), - wbFloat(NAM4, 'LOD Water Height'), - wbStruct(DNAM, 'Land Data', [ - wbFloat('Default Land Height'), - wbFloat('Default Water Height') - ]), - wbICON, - wbStruct(MNAM, 'Map Data', [ - wbStruct('Usable Dimensions', [ - wbInteger('X', itS32), - wbInteger('Y', itS32) - ]), - wbStruct('Cell Coordinates', [ - wbStruct('NW Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbStruct('SE Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]) - ]) - ]), - wbStruct(ONAM, 'World Map Offset Data', [ - wbFloat('World Map Scale'), - wbFloat('Cell X Offset'), - wbFloat('Cell Y Offset') - ], cpNormal, True), - wbFormIDCk(INAM, 'Image Space', [IMGS]), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Small World', - {0x02} 'Can''t Fast Travel', - {0x04} '', - {0x08} '', - {0x10} 'No LOD Water', - {0x20} 'No LOD Noise', - {0x40} 'Don''t Allow NPC Fall Damage', - {0x80} 'Needs Water Adjustment' - ]), cpNormal, True), - wbRStruct('Object Bounds', [ - wbStruct(NAM0, 'Min', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True), - wbStruct(NAM9, 'Max', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True) - ], []), - wbFormIDCk(ZNAM, 'Music', [MUSC]), - wbString(NNAM, 'Canopy Shadow', 0, cpNormal, True), - wbString(XNAM, 'Water Noise Texture', 0, cpNormal, True), - wbRArrayS('Swapped Impacts', wbStructExSK(IMPS, [0, 1], [2], 'Swapped Impact', [ - wbInteger('Material Type', itU32, wbImpactMaterialTypeEnum), - wbFormIDCkNoReach('Old', [IPCT]), - wbFormIDCk('New', [IPCT, NULL]) - ])), - wbArray(IMPF, 'Footstep Materials', wbString('Unknown', 30), [ - 'ConcSolid', - 'ConcBroken', - 'MetalSolid', - 'MetalHollow', - 'MetalSheet', - 'Wood', - 'Sand', - 'Dirt', - 'Grass', - 'Water' - ]), - wbArray(OFST, 'Offset Data', wbArray('Rows', wbInteger('Offset', itU32), wbOffsetDataColsCounter), 0) - ], False, nil, cpNormal, False, wbRemoveOFST); - - wbRecord(WTHR, 'Weather', [ - wbEDIDReq, - wbFormIDCk(_0_IAD, 'Sunrise Image Space Modifier', [IMAD]), - wbFormIDCk(_1_IAD, 'Day Image Space Modifier', [IMAD]), - wbFormIDCk(_2_IAD, 'Sunset Image Space Modifier', [IMAD]), - wbFormIDCk(_3_IAD, 'Night Image Space Modifier', [IMAD]), - wbString(DNAM, 'Cloud Textures - Layer 0', 0, cpNormal, True), - wbString(CNAM, 'Cloud Textures - Layer 1', 0, cpNormal, True), - wbString(ANAM, 'Cloud Textures - Layer 2', 0, cpNormal, True), - wbString(BNAM, 'Cloud Textures - Layer 3', 0, cpNormal, True), - wbMODL, - wbByteArray(LNAM, 'Unknown', 4, cpNormal, True), - wbArray(ONAM, 'Cloud Speed', wbInteger('Layer', itU8{, wbDiv(2550)}), 4, nil, nil, cpNormal, True), - wbArray(PNAM, 'Cloud Layer Colors', - wbArray('Layer', - wbStruct('Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - ['Sunrise', 'Day', 'Sunset', 'Night'] - ), - 4), - wbArray(NAM0, 'Colors by Types/Times', - wbArray('Type', - wbStruct('Time', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - ['Sunrise', 'Day', 'Sunset', 'Night'] - ), - ['Sky-Upper','Fog','Unused','Ambient','Sunlight','Sun','Stars','Sky-Lower','Horizon','Unused'] - , cpNormal, True), - wbStruct(FNAM, 'Fog Distance', [ - wbFloat('Day - Near'), - wbFloat('Day - Far'), - wbFloat('Night - Near'), - wbFloat('Night - Far'), - wbFloat('Day - Power'), - wbFloat('Night - Fower') - ], cpNormal, True), - wbByteArray(INAM, 'Unused', 304, cpIgnore, True), - wbStruct(DATA, '', [ - wbInteger('Wind Speed', itU8), - wbInteger('Cloud Speed (Lower)', itU8), - wbInteger('Cloud Speed (Upper)', itU8), - wbInteger('Trans Delta', itU8), - wbInteger('Sun Glare', itU8), - wbInteger('Sun Damage', itU8), - wbInteger('Precipitation - Begin Fade In', itU8), - wbInteger('Precipitation - End Fade Out', itU8), - wbInteger('Thunder/Lightning - Begin Fade In', itU8), - wbInteger('Thunder/Lightning - End Fade Out', itU8), - wbInteger('Thunder/Lightning - Frequency', itU8), - wbInteger('Weather Classification', itU8, wbWthrDataClassification), - wbStruct('Lightning Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8) - ]) - ], cpNormal, True), - wbRArray('Sounds', wbStruct(SNAM, 'Sound', [ - wbFormIDCk('Sound', [SOUN]), - wbInteger('Type', itU32, wbEnum([ - {0}'Default', - {1}'Precip', - {2}'Wind', - {3}'Thunder' - ])) - ])) - ]); - - wbAddGroupOrder(GMST); - wbAddGroupOrder(TXST); - wbAddGroupOrder(MICN); - wbAddGroupOrder(GLOB); - wbAddGroupOrder(CLAS); - wbAddGroupOrder(FACT); - wbAddGroupOrder(HDPT); - wbAddGroupOrder(HAIR); - wbAddGroupOrder(EYES); - wbAddGroupOrder(RACE); - wbAddGroupOrder(SOUN); - wbAddGroupOrder(ASPC); - wbAddGroupOrder(MGEF); - wbAddGroupOrder(SCPT); - wbAddGroupOrder(LTEX); - wbAddGroupOrder(ENCH); - wbAddGroupOrder(SPEL); - wbAddGroupOrder(ACTI); - wbAddGroupOrder(TACT); - wbAddGroupOrder(TERM); - wbAddGroupOrder(ARMO); - wbAddGroupOrder(BOOK); - wbAddGroupOrder(CONT); - wbAddGroupOrder(DOOR); - wbAddGroupOrder(INGR); - wbAddGroupOrder(LIGH); - wbAddGroupOrder(MISC); - wbAddGroupOrder(STAT); - wbAddGroupOrder(SCOL); - wbAddGroupOrder(MSTT); - wbAddGroupOrder(PWAT); - wbAddGroupOrder(GRAS); - wbAddGroupOrder(TREE); - wbAddGroupOrder(FURN); - wbAddGroupOrder(WEAP); - wbAddGroupOrder(AMMO); - wbAddGroupOrder(NPC_); - wbAddGroupOrder(CREA); - wbAddGroupOrder(LVLC); - wbAddGroupOrder(LVLN); - wbAddGroupOrder(KEYM); - wbAddGroupOrder(ALCH); - wbAddGroupOrder(IDLM); - wbAddGroupOrder(NOTE); - wbAddGroupOrder(PROJ); - wbAddGroupOrder(LVLI); - wbAddGroupOrder(WTHR); - wbAddGroupOrder(CLMT); - wbAddGroupOrder(COBJ); - wbAddGroupOrder(REGN); - wbAddGroupOrder(NAVI); - wbAddGroupOrder(CELL); - wbAddGroupOrder(WRLD); - wbAddGroupOrder(DIAL); - wbAddGroupOrder(QUST); - wbAddGroupOrder(IDLE); - wbAddGroupOrder(PACK); - wbAddGroupOrder(CSTY); - wbAddGroupOrder(LSCR); - wbAddGroupOrder(ANIO); - wbAddGroupOrder(WATR); - wbAddGroupOrder(EFSH); - wbAddGroupOrder(EXPL); - wbAddGroupOrder(DEBR); - wbAddGroupOrder(IMGS); - wbAddGroupOrder(IMAD); - wbAddGroupOrder(FLST); - wbAddGroupOrder(PERK); - wbAddGroupOrder(BPTD); - wbAddGroupOrder(ADDN); - wbAddGroupOrder(AVIF); - wbAddGroupOrder(RADS); - wbAddGroupOrder(CAMS); - wbAddGroupOrder(CPTH); - wbAddGroupOrder(VTYP); - wbAddGroupOrder(IPCT); - wbAddGroupOrder(IPDS); - wbAddGroupOrder(ARMA); - wbAddGroupOrder(ECZN); - wbAddGroupOrder(MESG); - wbAddGroupOrder(RGDL); - wbAddGroupOrder(DOBJ); - wbAddGroupOrder(LGTM); - wbAddGroupOrder(MUSC); -end; - -procedure DefineFO3; -begin - DefineFO3a; - DefineFO3b; - DefineFO3c; - DefineFO3d; - DefineFO3e; - DefineFO3f; -end; - -end. diff --git a/lib/xedit/wbDefinitionsFO4.pas b/lib/xedit/wbDefinitionsFO4.pas deleted file mode 100644 index 20aa7fa..0000000 --- a/lib/xedit/wbDefinitionsFO4.pas +++ /dev/null @@ -1,16450 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} - -unit wbDefinitionsFO4; - -{$I wbDefines.inc} - -interface - -uses - wbInterface; - -var - wbBipedObjectFlags: IwbFlagsDef; - wbEquipType: IwbFlagsDef; - wbFurnitureEntryTypeFlags: IwbFlagsDef; - wbPKDTFlags: IwbFlagsDef; - wbPKDTInterruptFlags: IwbFlagsDef; - wbSMNodeFlags: IwbFlagsDef; - - wbActorPropertyEnum: IwbEnumDef; - wbAdvanceActionEnum: IwbEnumDef; - wbStaggerEnum: IwbEnumDef; - wbAlignmentEnum: IwbEnumDef; - wbArmorPropertyEnum: IwbEnumDef; - wbAxisEnum: IwbEnumDef; - wbBipedObjectEnum: IwbEnumDef; - wbBlendModeEnum: IwbEnumDef; - wbBlendOpEnum: IwbEnumDef; - wbBodyPartIndexEnum: IwbEnumDef; - wbCastEnum: IwbEnumDef; - wbCastingSourceEnum: IwbEnumDef; - wbCrimeTypeEnum: IwbEnumDef; - wbCriticalStageEnum: IwbEnumDef; - wbEmotionTypeEnum: IwbEnumDef; - wbEntryPointsEnum: IwbEnumDef; - wbEventFunctionEnum: IwbEnumDef; - wbEventMemberEnum: IwbEnumDef; - wbFormTypeEnum: IwbEnumDef; - wbFurnitureAnimTypeEnum: IwbEnumDef; - wbLocationEnum: IwbEnumDef; - wbMiscStatEnum: IwbEnumDef; - wbMusicEnum: IwbEnumDef; - wbObjectModProperties: IwbArrayDef; - wbObjectTypeEnum: IwbEnumDef; - wbPropTypeEnum: IwbEnumDef; - wbQuadrantEnum: IwbEnumDef; - wbSexEnum: IwbEnumDef; - wbSkillEnum: IwbEnumDef; - wbSoulGemEnum: IwbEnumDef; - wbSoundLevelEnum: IwbEnumDef; - wbTargetEnum: IwbEnumDef; - wbVatsValueFunctionEnum: IwbEnumDef; - wbWardStateEnum: IwbEnumDef; - wbWeaponAnimTypeEnum: IwbEnumDef; - wbWeaponPropertyEnum: IwbEnumDef; - wbZTestFuncEnum: IwbEnumDef; - wbKeywordTypeEnum: IwbEnumDef; - wbReverbClassEnum: IwbEnumDef; - wbHitBehaviourEnum: IwbEnumDef; - wbBoolEnum: IwbEnumDef; - -procedure DefineFO4; - -implementation - -uses - Types, - Classes, - SysUtils, - Math, - Variants, - wbHelpers; - -const - _00_IAD: TwbSignature = #$00'IAD'; - _01_IAD: TwbSignature = #$01'IAD'; - _02_IAD: TwbSignature = #$02'IAD'; - _03_IAD: TwbSignature = #$03'IAD'; - _04_IAD: TwbSignature = #$04'IAD'; - _05_IAD: TwbSignature = #$05'IAD'; - _06_IAD: TwbSignature = #$06'IAD'; - _07_IAD: TwbSignature = #$07'IAD'; - _08_IAD: TwbSignature = #$08'IAD'; - _09_IAD: TwbSignature = #$09'IAD'; - _0A_IAD: TwbSignature = #$0A'IAD'; - _0B_IAD: TwbSignature = #$0B'IAD'; - _0C_IAD: TwbSignature = #$0C'IAD'; - _0D_IAD: TwbSignature = #$0D'IAD'; - _0E_IAD: TwbSignature = #$0E'IAD'; - _0F_IAD: TwbSignature = #$0F'IAD'; - _10_IAD: TwbSignature = #$10'IAD'; - _11_IAD: TwbSignature = #$11'IAD'; - _12_IAD: TwbSignature = #$12'IAD'; - _13_IAD: TwbSignature = #$13'IAD'; - _14_IAD: TwbSignature = #$14'IAD'; - _40_IAD: TwbSignature = #$40'IAD'; - _41_IAD: TwbSignature = #$41'IAD'; - _42_IAD: TwbSignature = #$42'IAD'; - _43_IAD: TwbSignature = #$43'IAD'; - _44_IAD: TwbSignature = #$44'IAD'; - _45_IAD: TwbSignature = #$45'IAD'; - _46_IAD: TwbSignature = #$46'IAD'; - _47_IAD: TwbSignature = #$47'IAD'; - _48_IAD: TwbSignature = #$48'IAD'; - _49_IAD: TwbSignature = #$49'IAD'; - _4A_IAD: TwbSignature = #$4A'IAD'; - _4B_IAD: TwbSignature = #$4B'IAD'; - _4C_IAD: TwbSignature = #$4C'IAD'; - _4D_IAD: TwbSignature = #$4D'IAD'; - _4E_IAD: TwbSignature = #$4E'IAD'; - _4F_IAD: TwbSignature = #$4F'IAD'; - _50_IAD: TwbSignature = #$50'IAD'; - _51_IAD: TwbSignature = #$51'IAD'; - _52_IAD: TwbSignature = #$52'IAD'; - _53_IAD: TwbSignature = #$53'IAD'; - _54_IAD: TwbSignature = #$54'IAD'; - -{00TX} _00_0TX: TwbSignature = #$30'0TX'; -{10TX} _10_0TX: TwbSignature = #$31'0TX'; -{20TX} _20_0TX: TwbSignature = #$32'0TX'; -{30TX} _30_0TX: TwbSignature = #$33'0TX'; -{40TX} _40_0TX: TwbSignature = #$34'0TX'; -{50TX} _50_0TX: TwbSignature = #$35'0TX'; -{60TX} _60_0TX: TwbSignature = #$36'0TX'; -{70TX} _70_0TX: TwbSignature = #$37'0TX'; -{80TX} _80_0TX: TwbSignature = #$38'0TX'; -{90TX} _90_0TX: TwbSignature = #$39'0TX'; -{:0TX} _3A_0TX: TwbSignature = #$3A'0TX'; -{;0TX} _3B_0TX: TwbSignature = #$3B'0TX'; -{<0TX} _3C_0TX: TwbSignature = #$3C'0TX'; -{=0TX} _3D_0TX: TwbSignature = #$3D'0TX'; -{>0TX} _3E_0TX: TwbSignature = #$3E'0TX'; -{?0TX} _3F_0TX: TwbSignature = #$3F'0TX'; -{@0TX} _40h_0TX: TwbSignature = #$40'0TX'; -{A0TX} A0TX: TwbSignature = 'A0TX'; -{B0TX} B0TX: TwbSignature = 'B0TX'; -{C0TX} C0TX: TwbSignature = 'C0TX'; -{D0TX} D0TX: TwbSignature = 'D0TX'; -{E0TX} E0TX: TwbSignature = 'E0TX'; -{F0TX} F0TX: TwbSignature = 'F0TX'; -{G0TX} G0TX: TwbSignature = 'G0TX'; -{H0TX} H0TX: TwbSignature = 'H0TX'; -{I0TX} I0TX: TwbSignature = 'I0TX'; -{J0TX} J0TX: TwbSignature = 'J0TX'; -{K0TX} K0TX: TwbSignature = 'K0TX'; -{L0TX} L0TX: TwbSignature = 'L0TX'; - - AACT : TwbSignature = 'AACT'; - ACBS : TwbSignature = 'ACBS'; - ACEC : TwbSignature = 'ACEC'; { New To Dawnguard } - ACEP : TwbSignature = 'ACEP'; { New To Dawnguard } - ACHR : TwbSignature = 'ACHR'; - ACID : TwbSignature = 'ACID'; { New To Dawnguard } - ACPR : TwbSignature = 'ACPR'; { New To Skyrim } - ACSR : TwbSignature = 'ACSR'; { New To Dawnguard } - ACTI : TwbSignature = 'ACTI'; - ACTV : TwbSignature = 'ACTV'; { New To Fallout 4 } - ACUN : TwbSignature = 'ACUN'; { New To Dawnguard } - ADDN : TwbSignature = 'ADDN'; - AECH : TwbSignature = 'AECH'; { New To Fallout 4 } - AHCF : TwbSignature = 'AHCF'; { New To Skyrim } - AHCM : TwbSignature = 'AHCM'; { New To Skyrim } - AIDT : TwbSignature = 'AIDT'; - ALCA : TwbSignature = 'ALCA'; { New To Skyrim } - ALCC : TwbSignature = 'ALCC'; { New To Fallout 4 } - ALCH : TwbSignature = 'ALCH'; - ALCL : TwbSignature = 'ALCL'; { New To Skyrim } - ALCO : TwbSignature = 'ALCO'; { New To Skyrim } - ALCS : TwbSignature = 'ALCS'; { New To Fallout 4 } - ALDI : TwbSignature = 'ALDI'; { New To Fallout 4 } - ALDN : TwbSignature = 'ALDN'; { New To Skyrim } - ALEA : TwbSignature = 'ALEA'; { New To Skyrim } - ALED : TwbSignature = 'ALED'; { New To Skyrim } - ALEQ : TwbSignature = 'ALEQ'; { New To Skyrim } - ALFA : TwbSignature = 'ALFA'; { New To Skyrim } - ALFC : TwbSignature = 'ALFC'; { New To Skyrim } - ALFD : TwbSignature = 'ALFD'; { New To Skyrim } - ALFE : TwbSignature = 'ALFE'; { New To Skyrim } - ALFI : TwbSignature = 'ALFI'; { New To Skyrim } - ALFL : TwbSignature = 'ALFL'; { New To Skyrim } - ALFR : TwbSignature = 'ALFR'; { New To Skyrim } - ALFV : TwbSignature = 'ALFV'; { New To Fallout 4 } - ALID : TwbSignature = 'ALID'; { New To Skyrim } - ALLA : TwbSignature = 'ALLA'; { New To Fallout 4 } - ALLS : TwbSignature = 'ALLS'; { New To Skyrim } - ALMI : TwbSignature = 'ALMI'; { New To Fallout 4 } - ALNA : TwbSignature = 'ALNA'; { New To Skyrim } - ALNT : TwbSignature = 'ALNT'; { New To Skyrim } - ALPC : TwbSignature = 'ALPC'; { New To Skyrim } - ALRT : TwbSignature = 'ALRT'; { New To Skyrim } - ALSP : TwbSignature = 'ALSP'; { New To Skyrim } - ALST : TwbSignature = 'ALST'; { New To Skyrim } - ALUA : TwbSignature = 'ALUA'; { New To Skyrim } - AMDL : TwbSignature = 'AMDL'; { New To Fallout 4 } - AMMO : TwbSignature = 'AMMO'; - ANAM : TwbSignature = 'ANAM'; - ANIO : TwbSignature = 'ANIO'; - AOR2 : TwbSignature = 'AOR2'; { New To Fallout 4 } - AORU : TwbSignature = 'AORU'; { New To Fallout 4 } - APPR : TwbSignature = 'APPR'; { New To Fallout 4 } - ARMA : TwbSignature = 'ARMA'; - ARMO : TwbSignature = 'ARMO'; - ARTO : TwbSignature = 'ARTO'; - ASPC : TwbSignature = 'ASPC'; - ASTP : TwbSignature = 'ASTP'; - ATKD : TwbSignature = 'ATKD'; { New to Skyrim } - ATKE : TwbSignature = 'ATKE'; { New to Skyrim } - ATKR : TwbSignature = 'ATKR'; { New to Skyrim } - ATKT : TwbSignature = 'ATKT'; { New To Fallout 4 } - ATKS : TwbSignature = 'ATKS'; { New To Fallout 4 } - ATKW : TwbSignature = 'ATKW'; { New To Fallout 4 } - ATTN : TwbSignature = 'ATTN'; { New To Fallout 4 } - ATTX : TwbSignature = 'ATTX'; { New To Fallout 4 } - ATXT : TwbSignature = 'ATXT'; - AVFL : TwbSignature = 'AVFL'; { New To Fallout 4 } - AVIF : TwbSignature = 'AVIF'; - AVSK : TwbSignature = 'AVSK'; { New to Skyrim } - BAMT : TwbSignature = 'BAMT'; { New to Skyrim } - BCLF : TwbSignature = 'BCLF'; { New to Fallout 4 } - BIDS : TwbSignature = 'BIDS'; { New to Skyrim } - BIPL : TwbSignature = 'BIPL'; - BMCT : TwbSignature = 'BMCT'; - BMMP : TwbSignature = 'BMMP'; { New to Fallout 4 } - BNAM : TwbSignature = 'BNAM'; - BNDS : TwbSignature = 'BNDS'; { New to Fallout 4 } - BOD2 : TwbSignature = 'BOD2'; { New to Skyrim 1.6.91 CK} - BODT : TwbSignature = 'BODT'; { New to Skyrim } - BOOK : TwbSignature = 'BOOK'; - BPND : TwbSignature = 'BPND'; - BPNI : TwbSignature = 'BPNI'; - BPNN : TwbSignature = 'BPNN'; - BPNT : TwbSignature = 'BPNT'; - BPTD : TwbSignature = 'BPTD'; - BPTN : TwbSignature = 'BPTN'; - BSIZ : TwbSignature = 'BSIZ'; { New to Fallout 4 } - BSMB : TwbSignature = 'BSMB'; { New to Fallout 4 } - BSMP : TwbSignature = 'BSMP'; { New to Fallout 4 } - BSMS : TwbSignature = 'BSMS'; { New to Fallout 4 } - BTXT : TwbSignature = 'BTXT'; - CAMS : TwbSignature = 'CAMS'; - CDIX : TwbSignature = 'CDIX'; { New to Fallout 4 } - CELL : TwbSignature = 'CELL'; - CIS1 : TwbSignature = 'CIS1'; { New to Skyrim } - CIS2 : TwbSignature = 'CIS2'; { New to Skyrim } - CITC : TwbSignature = 'CITC'; { New to Skyrim } - CLAS : TwbSignature = 'CLAS'; - CLFM : TwbSignature = 'CLFM'; - CLMT : TwbSignature = 'CLMT'; - CLSZ : TwbSignature = 'CLSZ'; { New to Fallout 4 } - CMPO : TwbSignature = 'CMPO'; { New to Fallout 4 } - CNAM : TwbSignature = 'CNAM'; - CNTO : TwbSignature = 'CNTO'; - COBJ : TwbSignature = 'COBJ'; - COCT : TwbSignature = 'COCT'; { New to Skyrim 'Count'} - COED : TwbSignature = 'COED'; - COLL : TwbSignature = 'COLL'; - CONT : TwbSignature = 'CONT'; - CPTH : TwbSignature = 'CPTH'; - CRDT : TwbSignature = 'CRDT'; - CRGR : TwbSignature = 'CRGR'; { New to Skyrim } - CRIF : TwbSignature = 'CRIF'; { New to Skyrim } - CRIS : TwbSignature = 'CRIS'; { New to Fallout 4 } - CRVA : TwbSignature = 'CRVA'; { New to Skyrim } - CS2H : TwbSignature = 'CS2H'; { New To Fallout 4 } - CS2D : TwbSignature = 'CS2D'; { New To Fallout 4 } - CS2E : TwbSignature = 'CS2E'; { New To Fallout 4 } - CS2F : TwbSignature = 'CS2F'; { New To Fallout 4 } - CS2K : TwbSignature = 'CS2K'; { New To Fallout 4 } - CSCR : TwbSignature = 'CSCR'; - CSCV : TwbSignature = 'CSCV'; { New To Fallout 4 } - CSDC : TwbSignature = 'CSDC'; - CSDI : TwbSignature = 'CSDI'; - CSDT : TwbSignature = 'CSDT'; - CSFL : TwbSignature = 'CSFL'; { New to Skyrim } - CSGD : TwbSignature = 'CSGD'; { New to Skyrim } - CSLR : TwbSignature = 'CSLR'; { New to Skyrim } - CSMD : TwbSignature = 'CSMD'; { New to Skyrim } - CSME : TwbSignature = 'CSME'; { New to Skyrim } - CSRA : TwbSignature = 'CSRA'; { New To Fallout 4 } - CSTY : TwbSignature = 'CSTY'; - CTDA : TwbSignature = 'CTDA'; - CUSD : TwbSignature = 'CUSD'; { New to Fallout 4 } - CVPA : TwbSignature = 'CVPA'; { New to Fallout 4 } - DALC : TwbSignature = 'DALC'; { New to Skyrim } - DAMA : TwbSignature = 'DAMA'; { New to Fallout 4 } - DAMC : TwbSignature = 'DAMC'; { New to Fallout 4 } - DATA : TwbSignature = 'DATA'; - DEBR : TwbSignature = 'DEBR'; - DELE : TwbSignature = 'DELE'; - DEMO : TwbSignature = 'DEMO'; { New to Skyrim } - DESC : TwbSignature = 'DESC'; - DEST : TwbSignature = 'DEST'; - DEVA : TwbSignature = 'DEVA'; { New to Skyrim } - DFOB : TwbSignature = 'DFOB'; { New to Fallout 4 } - DFTF : TwbSignature = 'DFTF'; { New To Skyrim } - DFTM : TwbSignature = 'DFTM'; { New To Skyrim } - DIAL : TwbSignature = 'DIAL'; - DLBR : TwbSignature = 'DLBR'; - DLVW : TwbSignature = 'DLVW'; - DMAX : TwbSignature = 'DMAX'; { New to Skyrim } - DMDC : TwbSignature = 'DMDC'; { New to Fallout 4 } - DMDL : TwbSignature = 'DMDL'; - DMDS : TwbSignature = 'DMDS'; { New to Skyrim } - DMDT : TwbSignature = 'DMDT'; - DMGT : TwbSignature = 'DMGT'; { New to Fallout 4 } - DMIN : TwbSignature = 'DMIN'; { New to Skyrim } - DNAM : TwbSignature = 'DNAM'; - DOBJ : TwbSignature = 'DOBJ'; - DODT : TwbSignature = 'DODT'; - DOFT : TwbSignature = 'DOFT'; { New to Skyrim } - DOOR : TwbSignature = 'DOOR'; - DPLT : TwbSignature = 'DPLT'; { New to Skyrim } - DSTA : TwbSignature = 'DSTA'; { New To Fallout 4 } - DSTD : TwbSignature = 'DSTD'; - DSTF : TwbSignature = 'DSTF'; - DTGT : TwbSignature = 'DTGT'; { New To Fallout 4 } - DTID : TwbSignature = 'DTID'; { New To Fallout 4 } - DUAL : TwbSignature = 'DUAL'; - EAMT : TwbSignature = 'EAMT'; - ECOR : TwbSignature = 'ECOR'; { New to Skyrim } - ECZN : TwbSignature = 'ECZN'; - EDID : TwbSignature = 'EDID'; - EFID : TwbSignature = 'EFID'; - EFIT : TwbSignature = 'EFIT'; - EFSH : TwbSignature = 'EFSH'; - EITM : TwbSignature = 'EITM'; - ENAM : TwbSignature = 'ENAM'; - ENCH : TwbSignature = 'ENCH'; - ENIT : TwbSignature = 'ENIT'; - EPF2 : TwbSignature = 'EPF2'; - EPF3 : TwbSignature = 'EPF3'; - EPFB : TwbSignature = 'EPFB'; { New To Fallout 4 } - EPFD : TwbSignature = 'EPFD'; - EPFT : TwbSignature = 'EPFT'; - EQUP : TwbSignature = 'EQUP'; - ESCE : TwbSignature = 'ESCE'; - ETYP : TwbSignature = 'ETYP'; - EXPL : TwbSignature = 'EXPL'; - EYES : TwbSignature = 'EYES'; - FACT : TwbSignature = 'FACT'; - FCHT : TwbSignature = 'FCHT'; { New to Skyrim } - FCPL : TwbSignature = 'FCPL'; { New To Fallout 4 } - FFFF : TwbSignature = 'FFFF'; - FIMD : TwbSignature = 'FIMD'; { New To Fallout 4 } - FLMV : TwbSignature = 'FLMV'; { New to Skyrim } - FLOR : TwbSignature = 'FLOR'; - FLST : TwbSignature = 'FLST'; - FLTR : TwbSignature = 'FLTR'; { New to Skyrim } - FLTV : TwbSignature = 'FLTV'; - FMIN : TwbSignature = 'FMIN'; { New To Fallout 4 } - FMRI : TwbSignature = 'FMRI'; { New To Fallout 4 } - FMRN : TwbSignature = 'FMRN'; { New To Fallout 4 } - FMRS : TwbSignature = 'FMRS'; { New To Fallout 4 } - FNAM : TwbSignature = 'FNAM'; - FNMK : TwbSignature = 'FNMK'; { New to Skyrim } - FNPR : TwbSignature = 'FNPR'; { New to Skyrim } - FPRT : TwbSignature = 'FPRT'; { New to Skyrim } - FSTP : TwbSignature = 'FSTP'; - FSTS : TwbSignature = 'FSTS'; - FTSF : TwbSignature = 'FTSF'; { New to Skyrim } - FTSM : TwbSignature = 'FTSM'; { New to Skyrim } - FTST : TwbSignature = 'FTST'; { New to Skyrim } - FTYP : TwbSignature = 'FTYP'; { New To Fallout 4 } - FULL : TwbSignature = 'FULL'; - FURN : TwbSignature = 'FURN'; - FVPA : TwbSignature = 'FVPA'; { New To Fallout 4 } - GDRY : TwbSignature = 'GDRY'; { New to Fallout 4 } - GLOB : TwbSignature = 'GLOB'; - GMST : TwbSignature = 'GMST'; - GNAM : TwbSignature = 'GNAM'; - GRAS : TwbSignature = 'GRAS'; - GREE : TwbSignature = 'GREE'; { New to Fallout 4 } - GWOR : TwbSignature = 'GWOR'; { New to Skyrim } - HAZD : TwbSignature = 'HAZD'; - HCLF : TwbSignature = 'HCLF'; { New to Skyrim } - HDPT : TwbSignature = 'HDPT'; - HEAD : TwbSignature = 'HEAD'; { New to Skyrim } - HEDR : TwbSignature = 'HEDR'; - HLTX : TwbSignature = 'HLTX'; { New to Fallout 4 } - HNAM : TwbSignature = 'HNAM'; - HTID : TwbSignature = 'HTID'; { New to Skyrim } - ICO2 : TwbSignature = 'ICO2'; - ICON : TwbSignature = 'ICON'; - IDLA : TwbSignature = 'IDLA'; - IDLB : TwbSignature = 'IDLB'; - IDLC : TwbSignature = 'IDLC'; - IDLE : TwbSignature = 'IDLE'; - IDLF : TwbSignature = 'IDLF'; - IDLM : TwbSignature = 'IDLM'; - IDLT : TwbSignature = 'IDLT'; - IMAD : TwbSignature = 'IMAD'; - IMGS : TwbSignature = 'IMGS'; - IMSP : TwbSignature = 'IMSP'; { New to Skyrim } - INAM : TwbSignature = 'INAM'; - INCC : TwbSignature = 'INCC'; { New to Skyrim } - INDX : TwbSignature = 'INDX'; - INFO : TwbSignature = 'INFO'; - INGR : TwbSignature = 'INGR'; - INNR : TwbSignature = 'INNR'; { New To Fallout 4 } - INRD : TwbSignature = 'INRD'; { New To Fallout 4 } - INTT : TwbSignature = 'INTT'; { New To Fallout 4 } - INTV : TwbSignature = 'INTV'; - IOVR : TwbSignature = 'IOVR'; { New To Fallout 4 } - IPCT : TwbSignature = 'IPCT'; - IPDS : TwbSignature = 'IPDS'; - ISIZ : TwbSignature = 'ISIZ'; { New To Fallout 4 } - ITID : TwbSignature = 'ITID'; { New To Fallout 4 } - ITMC : TwbSignature = 'ITMC'; { New To Fallout 4 } - ITME : TwbSignature = 'ITME'; { New To Fallout 4 } - ITMS : TwbSignature = 'ITMS'; { New To Fallout 4 } - ITXT : TwbSignature = 'ITXT'; - JAIL : TwbSignature = 'JAIL'; { New To Skyrim } - JNAM : TwbSignature = 'JNAM'; - JOUT : TwbSignature = 'JOUT'; { New To Skyrim } - KEYM : TwbSignature = 'KEYM'; - KNAM : TwbSignature = 'KNAM'; - KSIZ : TwbSignature = 'KSIZ'; - KSSM : TwbSignature = 'KSSM'; { New To Fallout 4 } - KWDA : TwbSignature = 'KWDA'; - KYWD : TwbSignature = 'KYWD'; - LAND : TwbSignature = 'LAND'; - LAYR : TwbSignature = 'LAYR'; { New to Fallout 4 } - LCEC : TwbSignature = 'LCEC'; { New to Skyrim } - LCEP : TwbSignature = 'LCEP'; { New to Skyrim } - LCID : TwbSignature = 'LCID'; { New to Skyrim } - LCPR : TwbSignature = 'LCPR'; { New to Skyrim } - LCRT : TwbSignature = 'LCRT'; - LCSR : TwbSignature = 'LCSR'; { New to Skyrim } - LCTN : TwbSignature = 'LCTN'; - LCUN : TwbSignature = 'LCUN'; { New to Skyrim } - LENS : TwbSignature = 'LENS'; { New to Fallout 4 } - LFSD : TwbSignature = 'LFSD'; { New to Fallout 4 } - LFSP : TwbSignature = 'LFSP'; { New to Fallout 4 } - LGTM : TwbSignature = 'LGTM'; - LIGH : TwbSignature = 'LIGH'; - LLCT : TwbSignature = 'LLCT'; {New to Skyrim, part of LVLI 'Count'} - LLKC : TwbSignature = 'LLKC'; { New to Fallout 4 } - LNAM : TwbSignature = 'LNAM'; - LSCR : TwbSignature = 'LSCR'; - LSPR : TwbSignature = 'LSPR'; { New to Fallout 4 } - LTEX : TwbSignature = 'LTEX'; - LTMP : TwbSignature = 'LTMP'; - LTPT : TwbSignature = 'LTPT'; { New to Fallout 4 } - LTPC : TwbSignature = 'LTPC'; { New to Fallout 4 } - LVLC : TwbSignature = 'LVLC'; - LVLD : TwbSignature = 'LVLD'; - LVLF : TwbSignature = 'LVLF'; - LVLG : TwbSignature = 'LVLG'; - LVLI : TwbSignature = 'LVLI'; - LVLM : TwbSignature = 'LVLM'; { New to Fallout 4 } - LVLN : TwbSignature = 'LVLN'; - LVLO : TwbSignature = 'LVLO'; - LVSG : TwbSignature = 'LVSG'; { New to Fallout 4 } - LVSP : TwbSignature = 'LVSP'; - MASE : TwbSignature = 'MASE'; { New To Fallout 4 } - MAST : TwbSignature = 'MAST'; - MATO : TwbSignature = 'MATO'; - MATT : TwbSignature = 'MATT'; - MCHT : TwbSignature = 'MCHT'; { New to Skyrim } - MDOB : TwbSignature = 'MDOB'; - MESG : TwbSignature = 'MESG'; - MGEF : TwbSignature = 'MGEF'; - MHDT : TwbSignature = 'MHDT'; { New to Skyrim } - MIC2 : TwbSignature = 'MIC2'; - MICN : TwbSignature = 'MICN'; { New to Fallout 4 } - MICO : TwbSignature = 'MICO'; - MISC : TwbSignature = 'MISC'; - MLSI : TwbSignature = 'MLSI'; { New to Fallout 4 } - MNAM : TwbSignature = 'MNAM'; - MO2C : TwbSignature = 'MO2C'; { New to Fallout 4 } - MO2F : TwbSignature = 'MO2F'; { New to Fallout 4 } - MO2S : TwbSignature = 'MO2S'; - MO2T : TwbSignature = 'MO2T'; - MO3C : TwbSignature = 'MO3C'; { New to Fallout 4 } - MO3F : TwbSignature = 'MO3F'; { New to Fallout 4 } - MO3S : TwbSignature = 'MO3S'; - MO3T : TwbSignature = 'MO3T'; - MO4C : TwbSignature = 'MO4C'; { New to Fallout 4 } - MO4F : TwbSignature = 'MO4F'; { New to Fallout 4 } - MO4S : TwbSignature = 'MO4S'; - MO4T : TwbSignature = 'MO4T'; - MO5C : TwbSignature = 'MO5C'; { New to Fallout 4 } - MO5F : TwbSignature = 'MO5F'; { New to Fallout 4 } - MO5S : TwbSignature = 'MO5S'; { New to Skyrim } - MO5T : TwbSignature = 'MO5T'; { New to Skyrim } - MOD2 : TwbSignature = 'MOD2'; - MOD3 : TwbSignature = 'MOD3'; - MOD4 : TwbSignature = 'MOD4'; - MOD5 : TwbSignature = 'MOD5'; { New to Skyrim } - MODC : TwbSignature = 'MODC'; { New to Fallout 4 } - MODF : TwbSignature = 'MODF'; { New to Fallout 4 } - MODL : TwbSignature = 'MODL'; - MODS : TwbSignature = 'MODS'; - MODT : TwbSignature = 'MODT'; - MODQ : TwbSignature = 'MODQ'; { New to Fallout 4 } - MOVT : TwbSignature = 'MOVT'; - MPAI : TwbSignature = 'MPAI'; { New To Skyrim } - MPAV : TwbSignature = 'MPAV'; { New To Skyrim } - MPCD : TwbSignature = 'MPCD'; { New to Fallout 4 } - MPGN : TwbSignature = 'MPGN'; { New to Fallout 4 } - MPGS : TwbSignature = 'MPGS'; { New to Fallout 4 } - MPPC : TwbSignature = 'MPPC'; { New to Fallout 4 } - MPPF : TwbSignature = 'MPPF'; { New to Fallout 4 } - MPPI : TwbSignature = 'MPPI'; { New to Fallout 4 } - MPPK : TwbSignature = 'MPPK'; { New to Fallout 4 } - MPPM : TwbSignature = 'MPPM'; { New to Fallout 4 } - MPPN : TwbSignature = 'MPPN'; { New to Fallout 4 } - MPPT : TwbSignature = 'MPPT'; { New to Fallout 4 } - MPRT : TwbSignature = 'MPRT'; { New to Skyrim } - MRSV : TwbSignature = 'MRSV'; { New to Fallout 4 } - MSDK : TwbSignature = 'MSDK'; { New to Fallout 4 } - MSDV : TwbSignature = 'MSDV'; { New to Fallout 4 } - MSID : TwbSignature = 'MSID'; { New to Fallout 4 } - MSM0 : TwbSignature = 'MSM0'; { New to Fallout 4 } - MSM1 : TwbSignature = 'MSM1'; { New to Fallout 4 } - MSTT : TwbSignature = 'MSTT'; - MSWP : TwbSignature = 'MSWP'; { New to Fallout 4 } - MTNM : TwbSignature = 'MTNM'; { New to Skyrim } - MTYP : TwbSignature = 'MTYP'; { New To Skyrim } - MUSC : TwbSignature = 'MUSC'; - MUST : TwbSignature = 'MUST'; - MWGT : TwbSignature = 'MWGT'; { New to Fallout 4 } - NAM0 : TwbSignature = 'NAM0'; - NAM1 : TwbSignature = 'NAM1'; - NAM2 : TwbSignature = 'NAM2'; - NAM3 : TwbSignature = 'NAM3'; - NAM4 : TwbSignature = 'NAM4'; - NAM5 : TwbSignature = 'NAM5'; - NAM6 : TwbSignature = 'NAM6'; - NAM7 : TwbSignature = 'NAM7'; - NAM8 : TwbSignature = 'NAM8'; - NAM9 : TwbSignature = 'NAM9'; - NAMA : TwbSignature = 'NAMA'; { New to Skyrim } - NAME : TwbSignature = 'NAME'; - NAVI : TwbSignature = 'NAVI'; - NAVM : TwbSignature = 'NAVM'; - NETO : TwbSignature = 'NETO'; { New to Fallout 4 } - NEXT : TwbSignature = 'NEXT'; - NNAM : TwbSignature = 'NNAM'; - NNGT : TwbSignature = 'NNGT'; { New to Fallout 4 } - NNGS : TwbSignature = 'NNGS'; { New to Fallout 4 } - NNUS : TwbSignature = 'NNUS'; { New to Fallout 4 } - NNUT : TwbSignature = 'NNUT'; { New to Fallout 4 } - NOCM : TwbSignature = 'NOCM'; { New to Fallout 4 } - NONE : TwbSignature = 'NONE'; { New to Fallout 4, used in OMOD Form Type } - NOTE : TwbSignature = 'NOTE'; { New to Fallout 4 } - NPC_ : TwbSignature = 'NPC_'; - NPOS : TwbSignature = 'NPOS'; { New to Fallout 4 } - NPOT : TwbSignature = 'NPOT'; { New to Fallout 4 } - NQUS : TwbSignature = 'NQUS'; { New to Fallout 4 } - NQUT : TwbSignature = 'NQUT'; { New to Fallout 4 } - NTOP : TwbSignature = 'NTOP'; { New to Fallout 4 } - NTRM : TwbSignature = 'NTRM'; { New to Fallout 4 } - NULL : TwbSignature = 'NULL'; - NVER : TwbSignature = 'NVER'; - NVMI : TwbSignature = 'NVMI'; - NVNM : TwbSignature = 'NVNM'; { New to Skyrim } - NVPP : TwbSignature = 'NVPP'; { New to Skyrim } - NVSI : TwbSignature = 'NVSI'; { New to Dawnguard } - OBND : TwbSignature = 'OBND'; - OBTE : TwbSignature = 'OBTE'; { New to Fallout 4 } - OBTF : TwbSignature = 'OBTF'; { New to Fallout 4 } - OBTS : TwbSignature = 'OBTS'; { New to Fallout 4 } - OCOR : TwbSignature = 'OCOR'; { New to Skyrim } - OFST : TwbSignature = 'OFST'; - OMOD : TwbSignature = 'OMOD'; { New to Fallout 4 } - ONAM : TwbSignature = 'ONAM'; - OTFT : TwbSignature = 'OTFT'; - OVIS : TwbSignature = 'OVIS'; { New to Fallout 4 } - PACK : TwbSignature = 'PACK'; - PARW : TwbSignature = 'PARW'; { New to Skyrim } - PBAR : TwbSignature = 'PBAR'; { New to Skyrim } - PBEA : TwbSignature = 'PBEA'; { New to Skyrim } - PCMB : TwbSignature = 'PCMB'; { New to Fallout 4 } - PCON : TwbSignature = 'PCON'; { New to Skyrim } - PDTO : TwbSignature = 'PDTO'; { New to Skyrim } - PERK : TwbSignature = 'PERK'; - PFIG : TwbSignature = 'PFIG'; - PFLA : TwbSignature = 'PFLA'; { New to Skyrim } - PFO2 : TwbSignature = 'PFO2'; { New to Skyrim } - PFOR : TwbSignature = 'PFOR'; { New to Skyrim } - PFPC : TwbSignature = 'PFPC'; - PFRN : TwbSignature = 'PFRN'; { New to Fallout 4 } - PGRE : TwbSignature = 'PGRE'; - PHTN : TwbSignature = 'PHTN'; { New to Skyrim } - PHWT : TwbSignature = 'PHWT'; { New to Skyrim } - PHZD : TwbSignature = 'PHZD'; - PKC2 : TwbSignature = 'PKC2'; { New to Skyrim } - PKCU : TwbSignature = 'PKCU'; { New to Skyrim } - PKDT : TwbSignature = 'PKDT'; - PKID : TwbSignature = 'PKID'; - PKIN : TwbSignature = 'PKIN'; { New to Fallout 4 } - PLCN : TwbSignature = 'PLCN'; { New to Skyrim } - PLDT : TwbSignature = 'PLDT'; - PLVD : TwbSignature = 'PLVD'; { New to Skyrim } - PLYR : TwbSignature = 'PLYR'; - PMIS : TwbSignature = 'PMIS'; - PNAM : TwbSignature = 'PNAM'; - POBA : TwbSignature = 'POBA'; - POCA : TwbSignature = 'POCA'; - POEA : TwbSignature = 'POEA'; - PRCB : TwbSignature = 'PRCB'; { New to Skyrim } - PRKC : TwbSignature = 'PRKC'; - PRKE : TwbSignature = 'PRKE'; - PRKF : TwbSignature = 'PRKF'; - PRKR : TwbSignature = 'PRKR'; { New to Skyrim } - PRKZ : TwbSignature = 'PRKZ'; { New to Skyrim } - PROJ : TwbSignature = 'PROJ'; - PRPS : TwbSignature = 'PRPS'; { New to Fallout 4 } - PSDT : TwbSignature = 'PSDT'; - PTDA : TwbSignature = 'PTDA'; { New to Skyrim } - PTOP : TwbSignature = 'PTOP'; { New to Fallout 4 } - PTRN : TwbSignature = 'PTRN'; { New to Fallout 4 } - QNAM : TwbSignature = 'QNAM'; - QOBJ : TwbSignature = 'QOBJ'; - QSDT : TwbSignature = 'QSDT'; - QSTA : TwbSignature = 'QSTA'; - QSTI : TwbSignature = 'QSTI'; { New to Fallout 4 } - QTGL : TwbSignature = 'QTGL'; { New To Skyrim } - QTOP : TwbSignature = 'QTOP'; { New to Fallout 4 } - QUAL : TwbSignature = 'QUAL'; { New To Skyrim } - QUST : TwbSignature = 'QUST'; - RACE : TwbSignature = 'RACE'; - RADR : TwbSignature = 'RADR'; { New To Fallout 4 } - RBPC : TwbSignature = 'RBPC'; { New To Fallout 4 } - RCEC : TwbSignature = 'RCEC'; { New To Skyrim } - RCLR : TwbSignature = 'RCLR'; - RCPR : TwbSignature = 'RCPR'; { New to Dawnguard } - RCSR : TwbSignature = 'RCSR'; { New To Skyrim } - RCUN : TwbSignature = 'RCUN'; { New To Skyrim } - RDAT : TwbSignature = 'RDAT'; - RDGS : TwbSignature = 'RDGS'; - RDMO : TwbSignature = 'RDMO'; - RDMP : TwbSignature = 'RDMP'; - RDOT : TwbSignature = 'RDOT'; - RDSA : TwbSignature = 'RDSA'; { New to Skyrim } - RDWT : TwbSignature = 'RDWT'; - REFR : TwbSignature = 'REFR'; - REGN : TwbSignature = 'REGN'; - RELA : TwbSignature = 'RELA'; - REPL : TwbSignature = 'REPL'; - REPT : TwbSignature = 'REPT'; { New To Fallout 4 } - REVB : TwbSignature = 'REVB'; - RFCT : TwbSignature = 'RFCT'; - RFGP : TwbSignature = 'RFGP'; { New to Fallout 4 } - RGDL : TwbSignature = 'RGDL'; { Unused in Skyrim, but contained in Skyrim.esm } - RLDM : TwbSignature = 'RLDM'; { New to Fallout 4 } - RNAM : TwbSignature = 'RNAM'; - RNMV : TwbSignature = 'RNMV'; { New to Skyrim } - RPLD : TwbSignature = 'RPLD'; - RPLI : TwbSignature = 'RPLI'; - RPRF : TwbSignature = 'RPRF'; { New To Skyrim } - RPRM : TwbSignature = 'RPRM'; { New To Skyrim } - RVIS : TwbSignature = 'RVIS'; { New to Fallout 4 } - SADD : TwbSignature = 'SADD'; { New To Fallout 4 } - SAKD : TwbSignature = 'SAKD'; { New To Fallout 4 } - SAPT : TwbSignature = 'SAPT'; { New To Fallout 4 } - SCCO : TwbSignature = 'SCCO'; { New To Fallout 4 } - SCDA : TwbSignature = 'SCDA'; - SCEN : TwbSignature = 'SCEN'; - SCHR : TwbSignature = 'SCHR'; - SCOL : TwbSignature = 'SCOL'; { Unused in Skyrim, but contained in Skyrim.esm } - SCPT : TwbSignature = 'SCPT'; { Unused in Skyrim, but contained in Skyrim.esm } - SCQS : TwbSignature = 'SCQS'; { New To Fallout 4 } - SCRL : TwbSignature = 'SCRL'; - SCRN : TwbSignature = 'SCRN'; - SCRO : TwbSignature = 'SCRO'; - SCSN : TwbSignature = 'SCSN'; { New To Fallout 4 } - SCTX : TwbSignature = 'SCTX'; - SDSC : TwbSignature = 'SDSC'; { New to Skyrim } - SGNM : TwbSignature = 'SGNM'; { New to Fallout 4 } - SHOU : TwbSignature = 'SHOU'; - SHRT : TwbSignature = 'SHRT'; { New to Skyrim } - SKIL : TwbSignature = 'SKIL'; { New to Fallout 4 } - SLCP : TwbSignature = 'SLCP'; - SLGM : TwbSignature = 'SLGM'; - SMBN : TwbSignature = 'SMBN'; - SMEN : TwbSignature = 'SMEN'; - SMQN : TwbSignature = 'SMQN'; - SNAM : TwbSignature = 'SNAM'; - SNCT : TwbSignature = 'SNCT'; - SNDD : TwbSignature = 'SNDD'; - SNDR : TwbSignature = 'SNDR'; - SNMV : TwbSignature = 'SNMV'; { New to Skyrim } - SOFT : TwbSignature = 'SOFT'; { New to Skyrim } - SOPM : TwbSignature = 'SOPM'; - SOUL : TwbSignature = 'SOUL'; - SOUN : TwbSignature = 'SOUN'; - SPCT : TwbSignature = 'SPCT'; { New to Skyrim } - SPED : TwbSignature = 'SPED'; { New To Skyrim } - SPEL : TwbSignature = 'SPEL'; - SPGD : TwbSignature = 'SPGD'; - SPIT : TwbSignature = 'SPIT'; - SPLO : TwbSignature = 'SPLO'; - SPMV : TwbSignature = 'SPMV'; { New To Skyrim } - SPOR : TwbSignature = 'SPOR'; { New to Skyrim } - SRAC : TwbSignature = 'SRAC'; { New to Fallout 4 } - SRAF : TwbSignature = 'SRAF'; { New to Fallout 4 } - SSPN : TwbSignature = 'SSPN'; { New to Fallout 4 } - STAG : TwbSignature = 'STAG'; { New to Fallout 4 } - STAT : TwbSignature = 'STAT'; - STCP : TwbSignature = 'STCP'; { New to Fallout 4 } - STKD : TwbSignature = 'STKD'; { New to Fallout 4 } - STOL : TwbSignature = 'STOL'; { New to Skyrim } - STOP : TwbSignature = 'STOP'; { New to Fallout 4 } - STSC : TwbSignature = 'STSC'; { New to Fallout 4 } - SWMV : TwbSignature = 'SWMV'; { New to Skyrim } - TACT : TwbSignature = 'TACT'; - TCLT : TwbSignature = 'TCLT'; - TERM : TwbSignature = 'TERM'; { New to Fallout 4 } - TES4 : TwbSignature = 'TES4'; - TETI : TwbSignature = 'TETI'; { New to Fallout 4 } - TEND : TwbSignature = 'TEND'; { New to Fallout 4 } - TIAS : TwbSignature = 'TIAS'; { New to Skyrim } - TIFC : TwbSignature = 'TIFC'; { New To Skyrim } - TINC : TwbSignature = 'TINC'; { New to Skyrim } - TIND : TwbSignature = 'TIND'; { New to Skyrim } - TINI : TwbSignature = 'TINI'; { New to Skyrim } - TINL : TwbSignature = 'TINL'; { New to Skyrim } - TINP : TwbSignature = 'TINP'; { New to Skyrim } - TINT : TwbSignature = 'TINT'; { New to Skyrim } - TINV : TwbSignature = 'TINV'; { New to Skyrim } - TIQS : TwbSignature = 'TIQS'; { New to Fallout 4 } - TIRS : TwbSignature = 'TIRS'; { New to Skyrim } - TLOD : TwbSignature = 'TLOD'; { New to Fallout 4 } - TNAM : TwbSignature = 'TNAM'; - TOFT : TwbSignature = 'TOFT'; { New to Fallout 4 } - TPIC : TwbSignature = 'TPIC'; - TPLT : TwbSignature = 'TPLT'; - TPTA : TwbSignature = 'TPTA'; { New To Fallout 4 } - TRDA : TwbSignature = 'TRDA'; { New To Fallout 4 } - TRDT : TwbSignature = 'TRDT'; - TREE : TwbSignature = 'TREE'; - TRNS : TwbSignature = 'TRNS'; { New To Fallout 4 } - TSCE : TwbSignature = 'TSCE'; { New To Fallout 4 } - TTEB : TwbSignature = 'TTEB'; { New To Fallout 4 } - TTEC : TwbSignature = 'TTEC'; { New To Fallout 4 } - TTED : TwbSignature = 'TTED'; { New To Fallout 4 } - TTEF : TwbSignature = 'TTEF'; { New To Fallout 4 } - TTET : TwbSignature = 'TTET'; { New To Fallout 4 } - TTGE : TwbSignature = 'TTGE'; { New To Fallout 4 } - TTGP : TwbSignature = 'TTGP'; { New To Fallout 4 } - TVDT : TwbSignature = 'TVDT'; { New To Skyrim } - TWAT : TwbSignature = 'TWAT'; { New To Skyrim } - TX00 : TwbSignature = 'TX00'; - TX01 : TwbSignature = 'TX01'; - TX02 : TwbSignature = 'TX02'; - TX03 : TwbSignature = 'TX03'; - TX04 : TwbSignature = 'TX04'; - TX05 : TwbSignature = 'TX05'; - TX06 : TwbSignature = 'TX06'; { New To Skyrim } - TX07 : TwbSignature = 'TX07'; { New To Skyrim } - TXST : TwbSignature = 'TXST'; - UNAM : TwbSignature = 'UNAM'; - UNES : TwbSignature = 'UNES'; { New To Skyrim } - UNWP : TwbSignature = 'UNWP'; { New To Fallout 4 } - VATS : TwbSignature = 'VATS'; - VCLR : TwbSignature = 'VCLR'; - VENC : TwbSignature = 'VENC'; { New To Skyrim } - VEND : TwbSignature = 'VEND'; { New To Skyrim } - VENV : TwbSignature = 'VENV'; { New To Skyrim } - VHGT : TwbSignature = 'VHGT'; - VISI : TwbSignature = 'VISI'; { New To Fallout 4 } - VMAD : TwbSignature = 'VMAD'; - VNAM : TwbSignature = 'VNAM'; - VNML : TwbSignature = 'VNML'; - VTCK : TwbSignature = 'VTCK'; - VTEX : TwbSignature = 'VTEX'; - VTXT : TwbSignature = 'VTXT'; - VTYP : TwbSignature = 'VTYP'; - WAIT : TwbSignature = 'WAIT'; { New To Skyrim } - WAMD : TwbSignature = 'WAMD'; { New To Fallout 4 } - WATR : TwbSignature = 'WATR'; - WBDT : TwbSignature = 'WBDT'; { New to Skyrim } - WCTR : TwbSignature = 'WCTR'; { New To Skyrim } - WEAP : TwbSignature = 'WEAP'; - WGDR : TwbSignature = 'WGDR'; { New To Fallout 4 } - WKMV : TwbSignature = 'WKMV'; { New to Skyrim } - WLEV : TwbSignature = 'WLEV'; { New To Fallout 4 } - WLST : TwbSignature = 'WLST'; - WMAP : TwbSignature = 'WMAP'; { New To Fallout 4 } - WNAM : TwbSignature = 'WNAM'; - WOOP : TwbSignature = 'WOOP'; - WRLD : TwbSignature = 'WRLD'; - WTHR : TwbSignature = 'WTHR'; - WZMD : TwbSignature = 'WZMD'; { New To Fallout 4 } - XACT : TwbSignature = 'XACT'; - XALP : TwbSignature = 'XALP'; { New To Skyrim } - XAMC : TwbSignature = 'XAMC'; { New To Fallout 4 } - XAPD : TwbSignature = 'XAPD'; - XAPR : TwbSignature = 'XAPR'; - XASP : TwbSignature = 'XASP'; { New To Fallout 4 } - XATP : TwbSignature = 'XATP'; { New To Fallout 4 } - XATR : TwbSignature = 'XATR'; { New To Dawnguard } - XBSD : TwbSignature = 'XBSD'; { New To Fallout 4 } - XCAS : TwbSignature = 'XCAS'; - XCCM : TwbSignature = 'XCCM'; - XCHG : TwbSignature = 'XCHG'; - XCIM : TwbSignature = 'XCIM'; - XCLC : TwbSignature = 'XCLC'; - XCLL : TwbSignature = 'XCLL'; - XCLP : TwbSignature = 'XCLP'; - XCLR : TwbSignature = 'XCLR'; - XCLW : TwbSignature = 'XCLW'; - XCMO : TwbSignature = 'XCMO'; - XCNT : TwbSignature = 'XCNT'; - XCRI : TwbSignature = 'XCRI'; { New To Fallout 4 } - XCVL : TwbSignature = 'XCVL'; { New To Skyrim } - XCVR : TwbSignature = 'XCVR'; { New To Fallout 4 } - XCWT : TwbSignature = 'XCWT'; - XCZA : TwbSignature = 'XCZA'; { New To Skyrim } - XCZC : TwbSignature = 'XCZC'; { New To Skyrim } - XCZR : TwbSignature = 'XCZR'; { New To Skyrim } - XDCR : TwbSignature = 'XDCR'; - XEMI : TwbSignature = 'XEMI'; - XESP : TwbSignature = 'XESP'; - XEZN : TwbSignature = 'XEZN'; - XFVC : TwbSignature = 'XFVC'; { New To Skyrim } - XGDR : TwbSignature = 'XGDR'; { New To Fallout 4 } - XGLB : TwbSignature = 'XGLB'; - XHLP : TwbSignature = 'XHLP'; - XHLT : TwbSignature = 'XHLT'; { New To Fallout 4 } - XHOR : TwbSignature = 'XHOR'; { New To Skyrim } - XHTW : TwbSignature = 'XHTW'; { New To Skyrim } - XIBS : TwbSignature = 'XIBS'; - XILL : TwbSignature = 'XILL'; { New To Skyrim } - XILW : TwbSignature = 'XILW'; { New To Fallout 4 } - XIS2 : TwbSignature = 'XIS2'; { New To Skyrim } - XLCM : TwbSignature = 'XLCM'; - XLCN : TwbSignature = 'XLCN'; { New To Skyrim } - XLIB : TwbSignature = 'XLIB'; { New To Skyrim } - XLIG : TwbSignature = 'XLIG'; { New To Skyrim } - XLKR : TwbSignature = 'XLKR'; - XLKT : TwbSignature = 'XLKT'; { New To Fallout 4 } - XLOC : TwbSignature = 'XLOC'; - XLOD : TwbSignature = 'XLOD'; - XLRL : TwbSignature = 'XLRL'; { New To Skyrim } - XLRM : TwbSignature = 'XLRM'; - XLRT : TwbSignature = 'XLRT'; { New To Skyrim } - XLTW : TwbSignature = 'XLTW'; - XLYR : TwbSignature = 'XLYR'; { New To Fallout 4 } - XMBO : TwbSignature = 'XMBO'; - XMBP : TwbSignature = 'XMBP'; - XMBR : TwbSignature = 'XMBR'; - XMRC : TwbSignature = 'XMRC'; - XMRK : TwbSignature = 'XMRK'; - XMSP : TwbSignature = 'XMSP'; { New To Fallout 4 } - XNAM : TwbSignature = 'XNAM'; - XNDP : TwbSignature = 'XNDP'; - XOCP : TwbSignature = 'XOCP'; - XORD : TwbSignature = 'XORD'; - XOWN : TwbSignature = 'XOWN'; - XPDD : TwbSignature = 'XPDD'; { New To Fallout 4 } - XPLK : TwbSignature = 'XPLK'; { New To Fallout 4 } - XPOD : TwbSignature = 'XPOD'; - XPPA : TwbSignature = 'XPPA'; - XPRD : TwbSignature = 'XPRD'; - XPRI : TwbSignature = 'XPRI'; { New To Fallout 4 } - XPRM : TwbSignature = 'XPRM'; - XPTL : TwbSignature = 'XPTL'; - XPWR : TwbSignature = 'XPWR'; - XRDO : TwbSignature = 'XRDO'; { New To Fallout 4 } - XRDS : TwbSignature = 'XRDS'; - XRFG : TwbSignature = 'XRFG'; { New To Fallout 4 } - XRGB : TwbSignature = 'XRGB'; - XRGD : TwbSignature = 'XRGD'; - XRMR : TwbSignature = 'XRMR'; - XRNK : TwbSignature = 'XRNK'; - XSCL : TwbSignature = 'XSCL'; - XSPC : TwbSignature = 'XSPC'; { New To Skyrim } - XTEL : TwbSignature = 'XTEL'; - XTNM : TwbSignature = 'XTNM'; { New To Skyrim } - XTRI : TwbSignature = 'XTRI'; - XWCN : TwbSignature = 'XWCN'; { New To Skyrim } - XWCS : TwbSignature = 'XWCS'; { New To Skyrim } - XWCU : TwbSignature = 'XWCU'; { New To Skyrim } - XWEM : TwbSignature = 'XWEM'; { New To Skyrim } - XWPG : TwbSignature = 'XWPG'; { New To Fallout 4 } - XWPN : TwbSignature = 'XWPN'; { New To Fallout 4 } - XXXX : TwbSignature = 'XXXX'; - YNAM : TwbSignature = 'YNAM'; - ZNAM : TwbSignature = 'ZNAM'; - ZOOM : TwbSignature = 'ZOOM'; { New To Fallout 4 } - - // signatures of reference records - sigReferences : array [0..11] of TwbSignature = ( - 'NULL', 'PLYR', 'ACHR', 'REFR', 'PGRE', 'PHZD', - 'PMIS', 'PARW', 'PBAR', 'PBEA', 'PCON', 'PFLA' - ); - - // signatures of referenceable records (placed by references or constructable) - sigBaseObjects : array [0..43] of TwbSignature = ( - 'NULL', 'ACTI', 'ADDN', 'ALCH', 'AMMO', 'ARMO', - 'ARTO', 'ASPC', 'BNDS', 'BOOK', 'CMPO', 'COBJ', - 'CONT', 'DEBR', 'DOOR', 'EXPL', 'FLST', 'FLOR', - 'FURN', 'HAZD', 'IDLM', 'INGR', 'KEYM', 'LIGH', - 'LVLI', 'LVLN', 'LVSP', 'MISC', 'MSTT', 'NOTE', - 'NPC_', 'OMOD', 'PROJ', 'SCOL', 'SCRL', 'SOUN', - 'SPEL', 'STAT', 'TACT', 'TERM', 'TREE', 'TXST', - 'WATR', 'WEAP' - ); - -var - wbPKDTSpecificFlagsUnused : Boolean; - wbEDID: IwbSubRecordDef; - wbCOED: IwbSubRecordDef; - wbXLCM: IwbSubRecordDef; - wbEITM: IwbSubRecordDef; - wbOBND: IwbSubRecordDef; - wbOBNDReq: IwbSubRecordDef; - wbDEST: IwbSubRecordStructDef; - wbDESTActor: IwbSubRecordStructDef; - wbDODT: IwbSubRecordDef; - wbXRGD: IwbSubRecordDef; - wbXRGB: IwbSubRecordDef; - wbSPLO: IwbSubRecordDef; - wbSPLOs: IwbSubRecordArrayDef; - wbCNTO: IwbSubRecordStructDef; - wbCNTOs: IwbSubRecordArrayDef; - wbAIDT: IwbSubRecordDef; - wbFULL: IwbSubRecordDef; - wbFULLActor: IwbSubRecordDef; - wbFULLReq: IwbSubRecordDef; - wbDESC: IwbSubRecordDef; - wbDESCReq: IwbSubRecordDef; - wbXSCL: IwbSubRecordDef; - wbDATAPosRot: IwbSubRecordDef; - wbPosRot: IwbStructDef; - wbMODC: IwbSubRecordDef; - wbMODF: IwbSubRecordDef; - wbMODL: IwbSubRecordStructDef; - wbMODS: IwbSubRecordDef; - wbMO2S: IwbSubRecordDef; - wbMO3S: IwbSubRecordDef; - wbMO4S: IwbSubRecordDef; - wbMO2F: IwbSubRecordDef; - wbMO3F: IwbSubRecordDef; - wbMO4F: IwbSubRecordDef; - wbMO5F: IwbSubRecordDef; - wbMO2C: IwbSubRecordDef; - wbMO3C: IwbSubRecordDef; - wbMO4C: IwbSubRecordDef; - wbMO5C: IwbSubRecordDef; - wbMODLActor: IwbSubRecordStructDef; - wbMODLReq: IwbSubRecordStructDef; - wbCTDA: IwbSubRecordStructDef; - wbCTDAs: IwbSubRecordArrayDef; - wbCTDAsReq: IwbSubRecordArrayDef; - wbCTDAsCount: IwbSubRecordArrayDef; - wbCTDAsReqCount: IwbSubRecordArrayDef; - wbXLOD: IwbSubRecordDef; - wbXESP: IwbSubRecordDef; - wbICON: IwbSubRecordDef; - wbMICO: IwbSubRecordDef; - wbActorValue: IwbIntegerDef; - wbETYP: IwbSubRecordDef; - wbETYPReq: IwbSubRecordDef; - wbEFID: IwbSubRecordDef; - wbEFIT: IwbSubRecordDef; - wbEffectsReq: IwbSubRecordArrayDef; - wbFirstPersonFlagsU32: IwbIntegerDef; - wbBOD2: IwbSubRecordDef; - wbScriptEntry: IwbStructDef; - wbScriptFlags: IwbIntegerDef; - wbScriptPropertyObject: IwbUnionDef; - wbScriptPropertyStruct: IwbArrayDef; - wbScriptProperties: IwbArrayDef; - wbScriptFragments: IwbStructDef; - wbScriptFragmentsQuest: IwbStructDef; - wbScriptFragmentsInfo: IwbStructDef; - wbScriptFragmentsPack: IwbStructDef; - wbScriptFragmentsScen: IwbStructDef; - wbPLDT: IwbSubRecordDef; - wbPLVD: IwbSubRecordDef; - wbTargetData: IwbStructDef; - wbAttackData: IwbSubRecordStructDef; - wbLLCT: IwbSubRecordDef; - wbLVLD: IwbSubRecordDef; - wbVMAD: IwbSubRecordDef; - wbVMADFragmentedPERK: IwbSubRecordDef; - wbVMADFragmentedPACK: IwbSubRecordDef; - wbVMADFragmentedQUST: IwbSubRecordDef; - wbVMADFragmentedSCEN: IwbSubRecordDef; - wbVMADFragmentedINFO: IwbSubRecordDef; - wbCOCT: IwbSubRecordDef; - wbKSIZ: IwbSubRecordDef; - wbKWDAs: IwbSubRecordDef; - wbReqKWDAs: IwbSubRecordDef; - wbKeywords: IwbSubRecordStructDef; - wbCNAM: IwbSubRecordDef; - wbCITC: IwbSubRecordDef; - wbMGEFData: IwbSubRecordStructDef; - wbMGEFType: IwbIntegerDef; - wbMDOB: IwbSubRecordDef; - wbSPIT: IwbSubRecordDef; - wbDMDC: IwbSubRecordDef; - wbDMDS: IwbSubRecordDef; - wbMO5S: IwbSubRecordDef; - wbSPCT: IwbSubRecordDef; - wbMODT: IwbSubRecordDef; - wbDMDT: IwbSubRecordDef; - wbXOWN: IwbSubRecordDef; - wbXRNK: IwbSubRecordDef; - wbPhonemeTargets: IwbSubRecordDef; - wbPHWT: IwbSubRecordStructDef; - wbHeadPart: IwbSubRecordStructDef; - wbQUSTAliasFlags: IwbSubRecordDef; - wbPDTO: IwbSubRecordDef; - wbPDTOs: IwbSubRecordArrayDef; - wbUNAMs: IwbSubRecordArrayDef; - wbNull: IwbValueDef; - wbTimeInterpolator: IwbStructDef; - wbColorInterpolator: IwbStructDef; - wbYNAM: IwbSubRecordDef; - wbZNAM: IwbSubRecordDef; - wbSPED: IwbSubRecordDef; - wbCUSD: IwbSubRecordDef; - wbINRD: IwbSubRecordDef; - wbPTRN: IwbSubRecordDef; - wbNTRM: IwbSubRecordDef; - wbPRPS: IwbSubRecordDef; - wbFLTR: IwbSubRecordDef; - wbAPPR: IwbSubRecordDef; - wbObjectTemplate: IwbSubRecordStructDef; - wbBSMPSequence: IwbSubRecordArrayDef; - wbFTYP: IwbSubRecordDef; - wbATTX: IwbSubRecordDef; - wbMNAMFurnitureMarker: IwbSubRecordDef; - wbSNAMMarkerParams: IwbSubRecordDef; - wbOBTSReq: IwbSubRecordDef; - //wbTintTemplateGroups: IwbSubrecordArrayDef; - //wbMorphGroups: IwbSubrecordArrayDef; - //wbRaceFRMI: IwbSubrecordArrayDef; - wbRaceRBPC: IwbSubRecordDef; - wbNVNM: IwbSubRecordDef; - wbMaxHeightDataCELL: IwbSubRecordDef; - wbMaxHeightDataWRLD: IwbSubRecordDef; - wbOFST: IwbSubRecordDef; - -function Sig2Int(aSignature: TwbSignature): Cardinal; inline; -begin - Result := PCardinal(@aSignature)^; -end; - -function wbEPFDActorValueToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - AsCardinal : Cardinal; - AsFloat : Single; -begin - AsCardinal := aInt; - AsFloat := PSingle(@AsCardinal)^; - aInt := Round(AsFloat); - case aType of - ctToStr: Result := wbActorValueEnum.ToString(aInt, aElement); - ctToSortKey: Result := wbActorValueEnum.ToSortKey(aInt, aElement); - ctCheck: Result := wbActorValueEnum.Check(aInt, aElement); - ctToEditValue: Result := wbActorValueEnum.ToEditValue(aInt, aElement); - ctEditType: Result := 'ComboBox'; - ctEditInfo: Result := wbActorValueEnum.EditInfo[aInt, aElement]; - end; -end; - -function wbEPFDActorValueToInt(const aString: string; const aElement: IwbElement): Int64; -var - AsCardinal : Cardinal; - AsFloat : Single; -begin - AsFloat := wbActorValueEnum.FromEditValue(aString, aElement); - PSingle(@AsCardinal)^ := AsFloat; - Result := AsCardinal; -end; - -function wbCTDAParam2QuestStageToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Stages : IwbContainerElementRef; - Stage : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - Exit; - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - // get winning quest override except for partial forms - if MainRecord.WinningOverride.Flags._Flags and $00004000 = 0 then - MainRecord := MainRecord.WinningOverride - else if MainRecord.Flags._Flags and $00004000 <> 0 then - MainRecord := MainRecord.MasterOrSelf; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - try - if Supports(MainRecord.ElementByName['Stages'], IwbContainerElementRef, Stages) then begin - for i := 0 to Pred(Stages.ElementCount) do - if Supports(Stages.Elements[i], IwbContainerElementRef, Stage) then begin - j := Stage.ElementNativeValues['INDX\Stage Index']; - s := Trim(Stage.ElementValues['Log Entries\Log Entry\CNAM']); - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.AddObject(t, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbPerkDATAQuestStageToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Stages : IwbContainerElementRef; - Stage : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Quest']; - - if not Assigned(Param1) then - Exit; - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - // get winning quest override except for partial forms - if MainRecord.WinningOverride.Flags._Flags and $00004000 = 0 then - MainRecord := MainRecord.WinningOverride - else if MainRecord.Flags._Flags and $00004000 <> 0 then - MainRecord := MainRecord.MasterOrSelf; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - try - if Supports(MainRecord.ElementByName['Stages'], IwbContainerElementRef, Stages) then begin - for i := 0 to Pred(Stages.ElementCount) do - if Supports(Stages.Elements[i], IwbContainerElementRef, Stage) then begin - j := Stage.ElementNativeValues['INDX\Stage Index']; - s := Trim(Stage.ElementValues['Log Entries\Log Entry\CNAM']); - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.AddObject(t, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbCTDAParam2QuestStageToInt(const aString: string; const aElement: IwbElement): Int64; -var - i : Integer; - s : string; -begin - i := 1; - s := Trim(aString); - while (i <= Length(s)) and (s[i] in ['0'..'9']) do - Inc(i); - s := Copy(s, 1, Pred(i)); - - Result := StrToInt(s); -end; - -function wbREFRNavmeshTriangleToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Navmesh : IwbElement; - MainRecord : IwbMainRecord; - Triangles : IwbContainerElementRef; -begin - case aType of - ctToStr: Result := IntToStr(aInt); - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Navmesh := Container.Elements[0]; - - if not Assigned(Navmesh) then - Exit; - - if not Supports(Navmesh.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> NAVM then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - if Supports(MainRecord.ElementByPath['NVNM\Triangles'], IwbContainerElementRef, Triangles) and (aType = ctCheck) then - if aInt >= Triangles.ElementCount then - Result := ''; -end; - -function wbStringToInt(const aString: string; const aElement: IwbElement): Int64; -begin - Result := StrToIntDef(aString, 0); -end; - -{ Alias to string conversion, requires quest reference or quest record specific to record that references alias } -function wbAliasToStr(aInt: Int64; const aQuestRef: IwbElement; aType: TwbCallbackType): string; -var - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Aliases : IwbContainerElementRef; - Alias : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: if aInt = -1 then - Result := 'None' - else if aInt = -2 then - Result := 'Player' - else - Result := IntToStr(aInt) + ' '; - ctToEditValue: if aInt = -1 then Result := 'None' else - Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: if (aInt = -1) or (aInt = -2) then Result := '' else - Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if ((aInt = -1) or (aInt = -2)) and (aType <> ctEditType) and (aType <> ctEditInfo) then - Exit; - - if not Assigned(aQuestRef) then - Exit; - - // aQuestRef can be a QUST record or reference to QUST record - if not Supports(aQuestRef, IwbMainRecord, MainRecord) then - if not Supports(aQuestRef.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - // get winning quest override except for partial forms - if MainRecord.WinningOverride.Flags._Flags and $00004000 = 0 then - MainRecord := MainRecord.WinningOverride - else if MainRecord.Flags._Flags and $00004000 <> 0 then - MainRecord := MainRecord.MasterOrSelf; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: begin - EditInfos := TStringList.Create; - end; - else - EditInfos := nil; - end; - - try - if Supports(MainRecord.ElementByName['Aliases'], IwbContainerElementRef, Aliases) then begin - for i := 0 to Pred(Aliases.ElementCount) do - if Supports(Aliases.Elements[i], IwbContainerElementRef, Alias) then begin - // skip alias collection - if Assigned(Alias.ElementBySignature['ALCS']) then - Continue; - j := Alias.Elements[0].NativeValue; - s := Alias.ElementEditValues['ALID']; - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.Add(t) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Add('None'); - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbStrToAlias(const aString: string; const aElement: IwbElement): Int64; -var - i : Integer; - s : string; -begin - Result := -1; - - if aString = 'None' then - Exit - else if aString = 'Player' then begin - Result := -2; - Exit; - end; - - i := 1; - s := Trim(aString); - while (i <= Length(s)) and (s[i] in ['-', '0'..'9']) do - Inc(i); - s := Copy(s, 1, Pred(i)); - - Result := StrToIntDef(s, -1); -end; - -function wbScriptObjectAliasToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; -begin - if not wbResolveAlias then begin - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: Result := IntToHex64(aInt, 8); - else - Result := ''; - end; - Exit; - end; - - if not Assigned(aElement) then - Exit; - - Container := GetContainerRefFromUnionOrValue(aElement); - - if not Assigned(Container) then - Exit; - - Result := wbAliasToStr(aInt, Container.ElementByName['FormID'], aType); -end; - -function wbPackageLocationAliasToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainer; -begin - if not wbResolveAlias then begin - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: Result := IntToHex64(aInt, 8); - else - Result := ''; - end; - Exit; - end; - - if not Assigned(aElement) then - Exit; - - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.ElementType <> etMainRecord) do - Container := Container.Container; - - if not Assigned(Container) then - Exit; - - Result := wbAliasToStr(aInt, Container.ElementBySignature['QNAM'], aType); -end; - -function wbQuestAliasToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainer; -begin - if not wbResolveAlias then begin - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: Result := IntToHex64(aInt, 8); - else - Result := ''; - end; - Exit; - end; - - if not Assigned(aElement) then - Exit; - - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.ElementType <> etMainRecord) do - Container := Container.Container; - - if not Assigned(Container) then - Exit; - - Result := wbAliasToStr(aInt, Container, aType); -end; - -function wbQuestExternalAliasToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainer; -begin - if not wbResolveAlias then begin - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: Result := IntToHex64(aInt, 8); - else - Result := ''; - end; - Exit; - end; - - if not Assigned(aElement) then - Exit; - - Container := aElement.Container; - - if not Assigned(Container) then - Exit; - - Result := wbAliasToStr(aInt, Container.ElementBySignature['ALEQ'] , aType); -end; - -function wbConditionAliasToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainer; - MainRecord : IwbMainRecord; - GroupRecord : IwbGroupRecord; -begin - if not wbResolveAlias then begin - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: Result := IntToHex64(aInt, 8); - else - Result := ''; - end; - Exit; - end; - - if not Assigned(aElement) then - Exit; - - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.ElementType <> etMainRecord) do - Container := Container.Container; - - if not Assigned(Container) then - Exit; - - if not Supports(Container, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.Signature = QUST then - Result := wbAliasToStr(aInt, Container, aType) - else if MainRecord.Signature = SCEN then - Result := wbAliasToStr(aInt, Container.ElementBySignature['PNAM'], aType) - else if MainRecord.Signature = PACK then - Result := wbAliasToStr(aInt, Container.ElementBySignature['QNAM'], aType) - else if MainRecord.Signature = INFO then begin - // get DIAL for INFO - if Supports(MainRecord.Container, IwbGroupRecord, GroupRecord) then - if Supports(GroupRecord.ChildrenOf, IwbMainRecord, MainRecord) then - Result := wbAliasToStr(aInt, MainRecord.ElementBySignature['QNAM'], aType); - end else - // this should never be called since aliases in conditions can be in the forms above only - // but just in case - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: Result := IntToHex64(aInt, 8); - else - Result := ''; - end; -end; - -function wbClmtMoonsPhaseLength(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - PhaseLength : Byte; - Masser : Boolean; - Secunda : Boolean; -begin - Result := ''; - if aType = ctToSortKey then begin - Result := IntToHex64(aInt, 2); - end else if aType = ctToStr then begin - PhaseLength := aInt mod 64; - Masser := (aInt and 64) <> 0; - Secunda := (aInt and 128) <> 0; - if Masser then - if Secunda then - Result := 'Masser, Secunda / ' - else - Result := 'Masser / ' - else - if Secunda then - Result := 'Secunda / ' - else - Result := 'No Moon / '; - Result := Result + IntToStr(PhaseLength); - end; -end; - -function wbClmtTime(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - Result := TimeToStr( EncodeTime(aInt div 6, (aInt mod 6) * 10, 0, 0) ) - else - Result := ''; -end; - - -var - wbCtdaTypeFlags : IwbFlagsDef; - -function wbCtdaTypeToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - s: string; -begin - Result := ''; - - if not Assigned(wbCtdaTypeFlags) then - wbCtdaTypeFlags := wbFlags([ - {0x01} 'Or', - {0x02} 'Use aliases', - {0x04} 'Use global', - {0x08} 'Use packdata', - {0x10} 'Swap Subject and Target' - ]); -{ - Compare operator (upper 3 bits) - LGE - 000 0=Equal to - 001 1=Not equal to - 010 2=Greater than - 011 3=Greater than or equal to - 100 4=Less than - 101 5=Less than or equal to - - Flags (lower 5 bits) - 0x01=OR (default is to AND conditions together) - 0x02=Parameters (use aliases) : Force function parameters to use quest alias data (exclusive with "use pack data") - 0x04=Use global - 0x08=Use Pack Data : Force function parameters to use pack data (exclusive with "use aliases") - 0x10=Swap Subject and Target -} - case aType of - ctEditType: - Result := 'CheckComboBox'; - ctEditInfo: - Result := 'Equal,Greater,Lesser,Or,"Use Aliases","Use Global","Use Packdata","Swap Subject and Target"'; - ctToEditValue: begin - Result := '00000000'; - case aInt and $E0 of - $00 : Result[1] := '1'; - $40 : Result[2] := '1'; - $60 : begin - Result[1] := '1'; - Result[2] := '1'; - end; - $80 : Result[3] := '1'; - $A0 : begin - Result[1] := '1'; - Result[3] := '1'; - end; - end; - if (aInt and $01) <> 0 then // Or - Result[4] := '1'; - if (aInt and $02) <> 0 then // Use aliases - Result[5] := '1'; - if (aInt and $04) <> 0 then // Use global - Result[6] := '1'; - if (aInt and $08) <> 0 then // Use packdata - Result[7] := '1'; - if (aInt and $10) <> 0 then // Swap Subject and Target - Result[8] := '1'; - end; - ctToStr: begin - case aInt and $E0 of - $00 : Result := 'Equal to'; - $20 : Result := 'Not equal to'; - $40 : Result := 'Greater than'; - $60 : Result := 'Greater than or equal to'; - $80 : Result := 'Less than'; - $A0 : Result := 'Less than or equal to'; - else - Result := '' - end; - s := wbCtdaTypeFlags.ToString(aInt and $1F, aElement); - if s <> '' then - Result := Result + ' / ' + s; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - Exit; - end; - ctCheck: begin - case aInt and $E0 of - $00, $20, $40, $60, $80, $A0 : Result := ''; - else - Result := '' - end; - s := wbCtdaTypeFlags.Check(aInt and $1F, aElement); - if s <> '' then - Result := Result + ' / ' + s; - end; - end; -end; - -function wbCtdaTypeToInt(const aString: string; const aElement: IwbElement): Int64; -var - s: string; -begin - s := aString + '00000000'; - if s[1] = '1' then begin - if s[2] = '1' then begin - if s[3] = '1' then begin - Result := $00; - end else begin - Result := $60; - end; - end else begin - if s[3] = '1' then begin - Result := $A0; - end else begin - Result := $00; - end; - end; - end else begin - if s[2] = '1' then begin - if s[3] = '1' then begin - Result := $20; - end else begin - Result := $40; - end; - end else begin - if s[3] = '1' then begin - Result := $80; - end else begin - Result := $20; - end; - end; - end; - // Or - if s[4] = '1' then - Result := Result or $01; - // Use aliases - if s[5] = '1' then - Result := Result or $02; - // Use global - if s[6] = '1' then - Result := Result or $04; - // Use packdata - if s[7] = '1' then - Result := Result or $08; - // Swap Subject and Target - if s[8] = '1' then - Result := Result or $10; -end; - -var - wbEventFunctionAndMemberEditInfo: string; - -function wbEventFunctionAndMemberToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - EventFunction, EventMember: Integer; - i, j: Integer; - s1, s2: string; - slMember: TStringList; -begin - Result := ''; - EventFunction := aInt and $FFFF; - EventMember := aInt shr 16; - case aType of - ctToStr, ctToEditValue: begin - Result := wbEventFunctionEnum.ToEditValue(EventFunction, nil); - Result := Result + ':' + wbEventMemberEnum.ToEditValue(EventMember, nil); - end; - ctToSortKey: Result := IntToHex(aInt, 8); - ctCheck: begin - s1 := wbEventFunctionEnum.Check(EventFunction, nil); - if s1 <> '' then - s1 := 'EventFunction' + s1; - s2 := wbEventMemberEnum.Check(EventMember, nil); - if s2 <> '' then - s2 := 'EventMember' + s2; - if (s1 <> '') or (s2 <> '') then - Result := s1 + ':' + s2; - end; - ctEditType: - Result := 'ComboBox'; - ctEditInfo: begin - Result := wbEventFunctionAndMemberEditInfo; - if Result = '' then try - slMember := TStringList.Create; - slMember.CommaText := wbEventMemberEnum.EditInfo[0, nil]; - with TStringList.Create do try - for i := 0 to Pred(wbEventFunctionEnum.NameCount) do - for j := 0 to Pred(slMember.Count) do - Add(wbEventFunctionEnum.Names[i] + ':' + slMember[j]); - Sort; - Result := CommaText; - finally - Free; - end; - wbEventFunctionAndMemberEditInfo := Result; - finally - FreeAndNil(slMember); - end - end; - end; -end; - -function wbEventFunctionAndMemberToInt(const aString: string; const aElement: IwbElement): Int64; -var - EventFunction, EventMember, i: Integer; -begin - i := Pos(':', aString); - if i > 0 then begin - EventFunction := wbEventFunctionEnum.FromEditValue(Copy(aString, 1, i-1), nil); - EventMember := wbEventMemberEnum.FromEditValue(Copy(aString, i+1, Length(aString)), nil); - end - else begin - EventFunction := 0; - EventMember := 0; - end; - Result := EventMember shl 16 + EventFunction; -end; - -procedure wbMESGDNAMAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue : Integer; - Container : IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - OldValue := Integer(aOldValue) and 1; - NewValue := Integer(aNewValue) and 1; - if NewValue = OldValue then - Exit; - if NewValue = 1 then - Container.RemoveElement('TNAM') - else - Container.Add('TNAM', True); - end; -end; - -procedure wbGMSTEDIDAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue : string; - Container : IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - OldValue := aOldValue; - NewValue := aNewValue; - if (Length(OldValue) < 1) or (Length(OldValue) < 1) or (OldValue[1] <> NewValue[1]) then begin - Container.RemoveElement('DATA'); - Container.Add('DATA', True); - end; - end; -end; - -procedure wbFLSTEDIDAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue : string; - OldOrdered, NewOrdered : Boolean; - Container : IwbContainerElementRef; -const - OrderedList = 'OrderedList'; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - OldValue := aOldValue; - NewValue := aNewValue; - - if Length(OldValue) > Length(OrderedList) then - Delete(OldValue, 1, Length(OldValue)-Length(OrderedList)); - if Length(NewValue) > Length(OrderedList) then - Delete(NewValue, 1, Length(NewValue)-Length(OrderedList)); - - OldOrdered := SameText(OldValue, OrderedList); - NewOrdered := SameText(NewValue, OrderedList); - - if OldOrdered <> NewOrdered then - Container.RemoveElement('FormIDs'); - end; -end; - -procedure wbCtdaTypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue: Integer; - Container: IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - // reset value if "use global" has changed - OldValue := aOldValue and $04; - NewValue := aNewValue and $04; - if OldValue <> NewValue then - Container.ElementNativeValues['..\Comparison Value'] := 0; - - {>>> "run on target", no such flag in Skyrim <<<} -// if aNewValue and $02 then begin -// Container.ElementNativeValues['..\Run On'] := 1; -// if Integer(Container.ElementNativeValues['..\Run On']) = 1 then -// aElement.NativeValue := Byte(aNewValue) and not $02; -// end; -end; - -procedure wbAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - Exit; -end; - -function wbMODTCallback(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Strings: TDynStrings; - i: Integer; -begin - Result := ''; - if wbLoaderDone and (aType in [ctToStr, ctToSortKey] ) then begin - Strings := wbContainerHandler.ResolveHash(aInt); - for i := Low(Strings) to High(Strings) do - Result := Result + Strings[i] + ', '; - SetLength(Result, Length(Result) -2 ); - end; -end; - -{>>> Needs revision for Skyrim <<<} -//function wbIdleAnam(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -//begin -// Result := ''; -// case aType of -// ctToStr: begin -// case aInt and not $C0 of -// 0: Result := 'Idle'; -// 1: Result := 'Movement'; -// 2: Result := 'Left Arm'; -// 3: Result := 'Left Hand'; -// 4: Result := 'Weapon'; -// 5: Result := 'Weapon Up'; -// 6: Result := 'Weapon Down'; -// 7: Result := 'Special Idle'; -// 20: Result := 'Whole Body'; -// 21: Result := 'Upper Body'; -// else -// Result := ''; -// end; -// -// if (aInt and $80) = 0 then -// Result := Result + ', Must return a file'; -// if (aInt and $40) = 1 then -// Result := Result + ', Unknown Flag'; -// end; -// ctToSortKey: begin -// Result := IntToHex64(aInt, 2); -// end; -// ctCheck: begin -// case aInt and not $C0 of -// 0..7, 20, 21: Result := ''; -// else -// Result := ''; -// end; -// end; -// end; -//end; - -function wbScaledInt4ToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -const - PlusMinus : array[Boolean] of string = ('+', '-'); -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: Result := FloatToStrF(aInt / 10000, ffFixed, 99, 4); - ctToSortKey: begin - Result := FloatToStrF(aInt / 10000, ffFixed, 99, 4); - if Length(Result) < 22 then - Result := StringOfChar('0', 22 - Length(Result)) + Result; - Result := PlusMinus[aInt < 0] + Result; - end; - ctCheck: Result := ''; - end; -end; - -function wbScaledInt4ToInt(const aString: string; const aElement: IwbElement): Int64; -var - f: Extended; -begin - f := StrToFloat(aString); - f := f * 10000; - Result := Round(f); -end; - -function wbCloudSpeedToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: Result := FloatToStrF((aInt - 127)/127/10, ffFixed, 99, 4); - ctCheck: Result := ''; - end; -end; - -function wbCloudSpeedToInt(const aString: string; const aElement: IwbElement): Int64; -var - f: Extended; -begin - f := StrToFloat(aString); - f := f*10*127 + 127; - Result := Min(Round(f), 254); -end; - -function wbShortXYtoStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - x, y: SmallInt; -begin - y := aInt and $FFFF; - x := aInt shr 16 and $FFFF; - Result := ''; - case aType of - ctToStr, ctToEditValue: Result := Format('%d, %d', [x, y]); - ctCheck: Result := ''; - end; -end; - -function wbStrToShortXY(const aString: string; const aElement: IwbElement): Int64; -var - x, y: SmallInt; - Value: Cardinal; -begin - y := StrToIntDef(Copy(aString, 1, Pred(Pos(', ', aString))), 0); - x := StrToIntDef(Copy(aString, Pos(', ', aString) + 2, Length(aString)), 0); - PWord(@Value)^ := x; - PWord(Cardinal(@Value) + SizeOf(SmallInt))^ := y; - Result := Value; -end; - -function wbHideFFFF(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - if aInt = $FFFF then - Result := 'None' - else - Result := IntToStr(aInt); -end; - -function wbAtxtPosition(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt div 17, 2) + IntToHex64(aInt mod 17, 2) - else if aType = ctCheck then begin - if (aInt < 0) or (aInt > 288) then - Result := '' - else - Result := ''; - end else if aType = ctToStr then - Result := IntToStr(aInt) + ' -> ' + IntToStr(aInt div 17) + ':' + IntToStr(aInt mod 17); -end; - -function wbPlacedAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec: IwbRecord; - Container: IwbContainer; - s: string; - Cell: IwbMainRecord; - Position: TwbVector; - Grid: TwbGridCell; -begin - Result := ''; - - Rec := aMainRecord.RecordBySignature['NAME']; - if Assigned(Rec) then begin - s := Trim(Rec.Value); - if s <> '' then - Result := 'places ' + s; - end; - - Container := aMainRecord.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if Assigned(Container) then begin - s := Trim(Container.Name); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'in ' + s; - - // grid position of persistent reference in exterior persistent cell (interior cells are not persistent) - if Supports(aMainRecord.Container, IwbGroupRecord, Container) then - Cell := IwbGroupRecord(Container).ChildrenOf; - if Assigned(Cell) and Cell.IsPersistent and (Cell.Signature = 'CELL') then - if aMainRecord.GetPosition(Position) then begin - Grid := wbPositionToGridCell(Position); - Result := Result + ' at ' + IntToStr(Grid.x) + ',' + IntToStr(Grid.y); - end; - - // in precombined mesh - if aMainRecord.HasPrecombinedMesh then - Result := Result + ' in ' + aMainRecord.PrecombinedMesh; - end; - end; -end; - -function wbINFOAddInfo(const aMainRecord: IwbMainRecord): string; -var - Container: IwbContainer; - s: string; -begin - Result := Trim(aMainRecord.ElementValues['Responses\Response\NAM1']); - if Result <> '' then - Result := '''' + Result + ''''; - - Container := aMainRecord.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if Assigned(Container) then begin - s := Trim(Container.Name); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'in ' + s; - end; - end; - - s := Trim(aMainRecord.ElementValues['QNAM']); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'for ' + s; - end; -end; - -function wbNAVMAddInfo(const aMainRecord: IwbMainRecord): string; -var - Container: IwbContainer; - s: string; -begin - Result := ''; - - Container := aMainRecord.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if Assigned(Container) then begin - s := Trim(Container.Name); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'in ' + s; - end; - end; -end; - -//function wbNAVMAddInfo(const aMainRecord: IwbMainRecord): string; -//var -// Rec : IwbRecord; -// Element : IwbElement; -// s : string; -//begin -// Result := ''; -// -// Rec := aMainRecord.RecordBySignature['DATA']; -// if Assigned(Rec) then begin -// Element := Rec.ElementByName['Cell']; -// if Assigned(Element) then -// Element := Element.LinksTo; -// if Assigned(Element) then -// s := Trim(Element.Name); -// if s <> '' then -// Result := 'for ' + s; -// end; -//end; - -function wbCellAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec: IwbRecord; - Container: IwbContainer; - GroupRecord : IwbGroupRecord; - s: string; -begin - Result := ''; - - if not aMainRecord.IsPersistent then begin - Rec := aMainRecord.RecordBySignature['XCLC']; - if Assigned(Rec) then - Result := 'at ' + Rec.Elements[0].Value + ',' + Rec.Elements[1].Value; - end; - - Container := aMainRecord.Container; - while Assigned(Container) and not - (Supports(Container, IwbGroupRecord, GroupRecord) and (GroupRecord.GroupType = 1)) do - Container := Container.Container; - - if Assigned(Container) then begin - s := wbFormID.ToString(GroupRecord.GroupLabel, aMainRecord); - if s <> '' then begin - if Result <> '' then - s := s + ' '; - Result := 'in ' + s + Result; - end; - end; -end; - -procedure wbCTDARunOnAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - if aOldValue <> aNewValue then - if aNewValue <> 2 then - aElement.Container.ElementNativeValues['Reference'] := 0; -end; - -{>>> Needs revision for Skyrim <<<} -procedure wbPERKPRKETypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainerElementRef; -// rDATA : IwbRecord; -begin - if aOldValue <> aNewValue then - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - if Supports(Container.Container, IwbContainerElementRef, Container) then begin - Container.RemoveElement('DATA'); - Container.Add('DATA', True); - Container.RemoveElement('Perk Conditions'); - Container.RemoveElement('Entry Point Function Parameters'); - if aNewValue = 2 then begin - Container.Add('EPFT', True); - Container.ElementNativeValues['DATA\Entry Point\Function'] := 2; - end; - end; - end; -end; - -function wbNPCLevelDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; - i: Int64; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - i := Container.ElementByName['Flags'].NativeValue; - if i and $00000080 <> 0 then - Result := 1; -end; - -function wbMGEFAssocItemDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - Archtype : Variant; - DataContainer : IwbDataContainer; - Element : IwbElement; -const - OffsetArchtype = 56; - -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - VarClear(ArchType); - Element := Container.ElementByName['Archetype']; - if Assigned(Element) then - ArchType := Element.NativeValue - else if Supports(Container, IwbDataContainer, DataContainer) and - DataContainer.IsValidOffset(aBasePtr, aEndPtr, OffsetArchtype) then begin // we are part a proper structure - aBasePtr := Pointer(Cardinal(aBasePtr) + OffsetArchtype); - ArchType := PCardinal(aBasePtr)^; - end; - - if not VarIsEmpty(ArchType) then - case Integer(ArchType) of - 12: Result := 1; // Light - 17: Result := 2; // Bound Item - 18: Result := 3; // Summon Creature - 25: Result := 4; // Guide - 34: Result := 8; // Peak Mod - 35: Result := 5; // Cloak - 36: Result := 6; // Werewolf - 39: Result := 7; // Enhance Weapon - 40: Result := 4; // Spawn Hazard - 46: Result := 6; // Vampire Lord - end; -end; - -procedure wbMGEFAssocItemAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainer; - Element : IwbElement; -begin - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - if (aNewValue <> 0) then begin - Element := Container.ElementByName['Archetype']; - if Assigned(Element) and (Element.NativeValue = 0) then - Element.NativeValue := $FF; // Signals ArchType that it should not mess with us on the next change! - // I assume this will alo protect Second AV Weight (The two actor values are after ArchType) - end; -end; - -procedure wbMGEFAV2WeightAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainer; - Element : IwbElement; -begin - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - if (aNewValue <> 0.0) then begin - Element := Container.ElementByName['Archetype']; - if Assigned(Element) and (Element.NativeValue = 0) then - Element.NativeValue := $FF; // Signals ArchType that it should not mess with us on the next change! - end; -end; - -procedure wbMGEFArchtypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container: IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if (aNewValue < $FF) and (aOldValue < $FF) then begin - Container.ElementNativeValues['..\Assoc. Item'] := 0; - case Integer(aNewValue) of - 06: Container.ElementNativeValues['..\Actor Value'] := 00;//Agression - 07: Container.ElementNativeValues['..\Actor Value'] := 01;//Confidence - 08: Container.ElementNativeValues['..\Actor Value'] := 00;//Agression - 11: Container.ElementNativeValues['..\Actor Value'] := 54;//Invisibility - 21: Container.ElementNativeValues['..\Actor Value'] := 53;//Paralysis - 24: Container.ElementNativeValues['..\Actor Value'] := 01;//Confidence - 38: Container.ElementNativeValues['..\Actor Value'] := 01;//Confidence - 42: Container.ElementNativeValues['..\Actor Value'] := 01;//Confidence - else - Container.ElementNativeValues['..\Actor Value'] := -1; - end; - Container.ElementNativeValues['..\Second Actor Value'] := -1; - Container.ElementNativeValues['..\Second AV Weight'] := 0.0; - end; -end; - -function wbCTDAReferenceDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Integer(Container.ElementNativeValues['Run On']) = 2 then - Result := 1; -end; - -function wbNAVIIslandDataDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbMainRecord; - Element : IwbElement; -begin - Result := 0; - - Container := aElement.Container; - while Assigned(Container) and (Container.ElementType <> etSubRecord) do - Container := Container.Container; - - if not Supports(Container, IwbSubRecord, SubRecord) then - Exit; - - Element := SubRecord.ElementByName['Is Island']; - if not Assigned(Element) then - Exit; - - Result := Element.NativeValue; -end; - -function wbNAVIParentDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbMainRecord; - Element : IwbElement; -begin - Result := 0; - - Container := aElement.Container; - while Assigned(Container) and (Container.ElementType <> etsubRecord) do - Container := Container.Container; - - if not Supports(Container, IwbSubRecord, SubRecord) then - Exit; - - Element := SubRecord.ElementByName['Parent Worldspace']; - if not Assigned(Element) then - Exit; - - if (Element.NativeValue = 0) then - Result := 1; -end; - -function wbNVNMParentDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - Parent : IwbElement; - i : integer; -begin // Could be simplified by checking if Parent Worldspace is NULL, that's what the runtime does :) - Result := 0; - - Container := aElement.Container; - - Parent := Container.ElementByName['Parent Worldspace']; - - if not Assigned(Parent) then - Exit; - - i := Parent.NativeValue; - - // is interior cell? - if i = 0 then - Result := 1; -end; - -function wbDoorTriangleDoorTriangleDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - Parent : IwbElement; - i : int64; -begin - Result := 0; - - Container := aElement.Container; - - Parent := Container.ElementByName['DTUnknown']; - - if not Assigned(Parent) then - Exit; - - i := Parent.NativeValue; - - // not sure if it would be an error in the file or if it really possible - if i <> 0 then - Result := 1; -end; - -function wbSubrecordSizeDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - SubRecord : IwbSubRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - - if Supports(aElement, IwbSubRecord, SubRecord) then - if SubRecord.DataSize > 0 then - Result := 1; -end; - -function wbCOEDOwnerDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - LinksTo : IwbElement; - MainRecord : IwbMainRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - LinksTo := Container.ElementByName['Owner'].LinksTo; - - if Supports(LinksTo, IwbMainRecord, MainRecord) then - if MainRecord.Signature = 'NPC_' then - Result := 1 - else if MainRecord.Signature = 'FACT' then - Result := 2; -end; - -function wbGMSTUnionDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rEDID: IwbRecord; - s: string; -begin - Result := 1; - rEDID := aElement.Container.RecordBySignature[EDID]; - if Assigned(rEDID) then begin - s := rEDID.Value; - if Length(s) > 0 then - case s[1] of - 's': Result := 0; {String} {>>> Localization Strings <<<} - 'i': Result := 1; {intS32} - 'f': Result := 2; {Float} - 'b': Result := 3; {Boolean} - end; - end; -end; - -function wbFLSTLNAMIsSorted(const aContainer: IwbContainer): Boolean; -var - rEDID : IwbRecord; - s : string; -const - OrderedList = 'OrderedList'; -begin - Result := False; {>>> Should not be sorted according to Arthmoor and JustinOther <<<} - rEDID := aContainer.RecordBySignature[EDID]; - if Assigned(rEDID) then begin - s := rEDID.Value; - if Length(s) > Length(OrderedList) then - Delete(s, 1, Length(s)-Length(OrderedList)); - if SameText(s, OrderedList) then - Result := False; - end; -end; - -function wbPerkDATADecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rPRKE: IwbRecord; - eType: IwbElement; -begin - Result := 0; - rPRKE := aElement.Container.RecordBySignature[PRKE]; - if Assigned(rPRKE) then begin - eType := rPRKE.ElementByName['Type']; - if Assigned(eType) then begin - Result := eType.NativeValue; - end; - end; -end; - -function wbEPFDDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainerElementRef; -begin - Result := 0; - if not Assigned(aElement) then - Exit; - if not Supports(aElement.Container, IwbContainerElementRef, Container) then - Exit; - Result := Container.ElementNativeValues['EPFT']; - if Result = 2 then - case Integer(Container.ElementNativeValues['..\DATA\Entry Point\Function']) of - 5, 12, 13, 14: Result := 8; - end; -end; - -function wbSceneActionSoundDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainerElementRef; -begin - Result := 0; - if not Assigned(aElement) then - Exit; - if not Supports(aElement.Container, IwbContainerElementRef, Container) then - Exit; - if Container.ElementNativeValues['ANAM'] <> 4 then - Result := 1; -end; - -function wbEFSHFormatDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - MainRecord: IwbMainRecord; -begin - Result := 0; - if not Assigned(aElement) then - Exit; - if not Supports(aElement.Container, IwbMainRecord, MainRecord) then - Exit; - if MainRecord.Version < 102 then - Result := 1; -end; - -function wbDeciderFormVersion99(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - Result := wbFormVerDecider(aBasePtr, aEndPtr, aElement, 99); -end; - -function wbAECHDataDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - rKNAM : IwbElement; - s: string; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Container := Container.Container; - if not Assigned(Container) then Exit; - - rKNAM := Container.ElementBySignature['KNAM']; - if not Assigned(rKNAM) then Exit; - - s := rKNAM.EditValue; - - if s = 'BSOverdrive' then - Result := 0 - else if s = 'BSStateVariableFilter' then - Result := 1 - else if s = 'BSDelayEffect' then - Result := 2; -end; - -function wbCLFMColorDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - rFNAM : IwbElement; - i : Integer; -begin - Result := 0; - - // resolving to a float causes data loss when copying - // since deciding field FNAM comes after a value CNAM - Exit; - - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Container := Container.Container; - if not Assigned(Container) then Exit; - - rFNAM := Container.ElementBySignature['FNAM']; - if not Assigned(rFNAM) then Exit; - - i := rFNAM.NativeValue; - - if i and 2 <> 0 then - Result := 1; -end; - -function wbCLFMColorToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainer; - rFNAM : IwbElement; - i : Integer; - s : string; -begin - i := 0; - Container := aElement.Container; - if Assigned(Container) then begin - rFNAM := Container.ElementBySignature['FNAM']; - if Assigned(rFNAM) then - i := rFNAM.NativeValue; - end; - - if i and 2 <> 0 then - s := FloatToStrF(PSingle(@aInt)^, ffFixed, 99, wbFloatDigits) - else - s := 'rgba(' + IntToStr(aInt and $FF) + ', ' + - IntToStr(aInt shr 8 and $FF) + ', ' + - IntToStr(aInt shr 16 and $FF) + ', ' + - IntToStr(aInt shr 24 and $FF) + ')'; - - case aType of - ctToStr: Result := s; - ctToSortKey: Result := IntToHex(aInt, 8); - ctToEditValue: Result := s; - end; -end; - -function wbCLFMColorToInt(const aString: string; const aElement: IwbElement): Int64; -var - s: string; - value: Single; -begin - if SameText(Copy(aString, 1, 5), 'rgba(') then begin - s := Copy(aString, 6, Pos(')', aString) - 6); - with TStringList.Create do try - Delimiter := ','; - StrictDelimiter := True; - DelimitedText := s; - Result := 0; - if Count = 4 then begin - PByte(@Result)[0] := StrToIntDef(Strings[0], 0); - PByte(@Result)[1] := StrToIntDef(Strings[1], 0); - PByte(@Result)[2] := StrToIntDef(Strings[2], 0); - PByte(@Result)[3] := StrToIntDef(Strings[3], 0); - end; - finally - Free; - end; - end - else begin - try value := StrToFloat(aString) except value := 0.0 end; - Result := PInteger(@value)^; - end; -end; - -function wbNOTEDataDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - rDNAM : IwbElement; - i : Integer; -begin - Result := 0; - - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Container := Container.Container; - if not Assigned(Container) then Exit; - - rDNAM := Container.ElementBySignature['DNAM']; - if not Assigned(rDNAM) then Exit; - - i := rDNAM.NativeValue; - - case i of - 0: Result := 1; - 1: Result := 2; - 3: Result := 3; - end; -end; - -function wbSNDRDataDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - rCNAM : IwbElement; -begin - Result := 0; - - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Container := Container.Container; - if not Assigned(Container) then Exit; - - rCNAM := Container.ElementBySignature['CNAM']; - if not Assigned(rCNAM) then Exit; - - if rCNAM.EditValue = 'AutoWeapon' then - Result := 1; -end; - - -{>>> For VMAD <<<} -function wbScriptObjFormatDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - ObjFormat: Integer; - Container: IwbContainer; -begin - Result := 0; - - Container := aElement.Container; - while Assigned(Container) and (Container.ElementType <> etSubRecord) do - Container := Container.Container; - - if not Assigned(Container) then Exit; - - ObjFormat := Container.ElementNativeValues['Object Format']; - - if ObjFormat = 1 then - Result := 1; -end; - -{>>> For VMAD <<<} -function wbScriptPropertyDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - case Integer(Container.ElementNativeValues['Type']) of - 1: Result := 1; - 2: Result := 2; - 3: Result := 3; - 4: Result := 4; - 5: Result := 5; - 6: Result := 6; - 7: Result := 7; - 11: Result := 8; - 12: Result := 9; - 13: Result := 10; - 14: Result := 11; - 15: Result := 12; - 17: Result := 13; - end; -end; - -function wbScriptPropertyStructMemberDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - case Integer(Container.ElementNativeValues['Type']) of - 1: Result := 1; - 2: Result := 2; - 3: Result := 3; - 4: Result := 4; - 5: Result := 5; - 11: Result := 6; - 12: Result := 7; - 13: Result := 8; - 14: Result := 9; - 15: Result := 10; - end; -end; - -procedure wbScriptPropertyTypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainerElementRef; -begin - if aOldValue <> aNewValue then - if Supports(aElement.Container, IwbContainerElementRef, Container) then - Container.ElementByName['Value'].SetToDefault; -end; - -{>>> For VMAD <<<} -function wbScriptFragmentsDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - MainRecord : IwbMainRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.ElementType <> etMainRecord) do - Container := Container.Container; - if not Assigned(Container) then Exit; - - Supports(Container, IwbMainRecord, MainRecord); - if MainRecord.Signature = PERK then - Result := 1 - else if MainRecord.Signature = TERM then - Result := 1 - else if MainRecord.Signature = INFO then - Result := 2 - else if MainRecord.Signature = PACK then - Result := 3 - else if MainRecord.Signature = QUST then - Result := 4 - else if MainRecord.Signature = SCEN then - Result := 5; -end; - -{>>> For VMAD <<<} -function wbScriptFragmentsQuestCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbContainer; -begin - Result := 0; - if aElement.ElementType = etValue then - Container := aElement.Container - else - Container := aElement as IwbContainer; - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.Name <> 'Script Fragments') do - Container := Container.Container; - if not Assigned(Container) then Exit; - - Result := Cardinal(Container.ElementNativeValues['fragmentCount']); -end; - -{>>> For VMAD <<<} -function wbScriptFragmentsInfoCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbContainer; - F : Integer; - i : Integer; -begin - Result := 0; - if aElement.ElementType = etValue then - Container := aElement.Container - else - Container := aElement as IwbContainer; - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.Name <> 'Script Fragments') do - Container := Container.Container; - if not Assigned(Container) then Exit; - - F := Container.ElementByName['Flags'].NativeValue; - for i := 0 to 2 do begin - if (F and 1) = 1 then - Inc(Result); - F := F shr 1; - end; - for i := 3 to 7 do begin - if (F and 1) = 1 then begin - Inc(Result); - if Assigned(wbProgressCallback) then - wbProgressCallback('==='+aElement.Name+' ['+Container.Name+':'+Container.Path+'] = unknown info VMAD flag bit '+IntToStr(i)); - end; - F := F shr 1; - end; -end; - -{>>> For VMAD <<<} -function wbScriptFragmentsSceneCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbContainer; - F : Integer; - i : Integer; -begin - Result := 0; - if aElement.ElementType = etValue then - Container := aElement.Container - else - Container := aElement as IwbContainer; - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.Name <> 'Script Fragments') do - Container := Container.Container; - if not Assigned(Container) then Exit; - - F := Container.ElementByName['Flags'].NativeValue; - for i := 0 to 2 do begin - if (F and 1) = 1 then - Inc(Result); - F := F shr 1; - end; - for i := 3 to 7 do begin - if (F and 1) = 1 then begin - Inc(Result); - if Assigned(wbProgressCallback) then - wbProgressCallback('==='+aElement.Name+' ['+Container.Name+':'+Container.Path+'] = unknown scene VMAD flag bit '+IntToStr(i)); - end; - F := F shr 1; - end; -end; - -{>>> For VMAD <<<} -function wbScriptFragmentsPackCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbContainer; - F : Integer; - i : Integer; -begin - Result := 0; - if aElement.ElementType = etValue then - Container := aElement.Container - else - Container := aElement as IwbContainer; - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.Name <> 'Script Fragments') do - Container := Container.Container; - if not Assigned(Container) then Exit; - - F := Container.ElementByName['Flags'].NativeValue; - for i := 0 to 7 do begin - if (F and 1) = 1 then - Inc(Result); - F := F shr 1; - end; -end; - -{>>> For VMAD <<<} -function wbScriptFragmentsEmptyScriptDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Container.ElementEditValues['scriptName'] = '' then - Result := 1; -end; - -function wbBOOKTeachesDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; - i: Int64; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - i := Container.ElementByName['Flags'].NativeValue; - if i and $01 <> 0 then - Result := 1 - else if i and $04 <> 0 then - Result := 2 - else if i and $10 <> 0 then - Result := 3 - else - Result := 0; -end; - -type - TCTDAFunctionParamType = ( - { 0} ptNone, - { 1} ptInteger, - { 2} ptFloat, - { 3} ptActor, // ACHR - { 4} ptActorBase, // NPC_ - { 5} ptActorValue, // Enum: wbActorValue - { 6} ptAdvanceAction, // ?? Enum - { 7} ptAlias, // index into QUST quest aliases - { 8} ptAlignment, // ?? Enum - { 9} ptAssociationType, // ASTP - {10} ptAxis, // ?? Char - {11} ptCastingSource, // ?? Enum - {12} ptCell, // CELL - {13} ptClass, // CLAS - {14} ptCrimeType, // ?? Enum - {15} ptCriticalStage, // ?? Enum - {16} ptEncounterZone, // ECZN - {17} ptEquipType, // ?? Enum - {18} ptEvent, // Struct - {19} ptEventData, // LCTN, KYWD or FLST - {20} ptFaction, // FACT - {21} ptFormList, // FLST - {22} ptFormType, // ?? Enum - {23} ptFurniture, // FURN - {24} ptFurnitureAnim, // enum - {25} ptFurnitureEntry, // flags - {26} ptGlobal, // GLOB - {27} ptIdleForm, // IDLE - {28} ptInventoryObject, // ARMO, BOOK, MISC, WEAP, AMMO, KEYM, ALCH, ARMA, LIGH, LVLI, COBJ - {29} ptKeyword, // KYWD - {30} ptLocation, // LCTN - {31} ptMagicEffect, // MGEF - {32} ptMagicItem, // SPEL - {33} ptMiscStat, // ?? Enum - {34} ptObjectReference, // REFR, ACHR - {35} ptOwner, // FACT, NPC_ - {36} ptPackage, // PACK - {37} ptPackdata, // index into PACK package data inputs - {38} ptPerk, // PERK - {39} ptQuest, // QUST - {40} ptQuestStage, // ?? Integer - {41} ptRace, // RACE - {42} ptReferencableObject, - {43} ptRefType, // LCRT - {44} ptRegion, // REGN - {45} ptScene, // SCEN - {46} ptSex, // Enum: Male, Female - {47} ptShout, // SHOU - {48} ptVariableName, // Integer - {49} ptVATSValueFunction, // - {50} ptVATSValueParam, - {51} ptVoiceType, // VTYP - {52} ptWardState, // enum - {53} ptWeather, // WTHR - {54} ptWorldspace, // WRLD - {55} ptDamageType // DMGT - ); - - PCTDAFunction = ^TCTDAFunction; - TCTDAFunction = record - Index: Integer; - Name: string; - ParamType1: TCTDAFunctionParamType; - ParamType2: TCTDAFunctionParamType; - ParamType3: TCTDAFunctionParamType; - end; - -const - wbCTDAFunctions : array[0..514] of TCTDAFunction = ( - (Index: 0; Name: 'GetWantBlocking'), - (Index: 1; Name: 'GetDistance'; ParamType1: ptObjectReference), - (Index: 5; Name: 'GetLocked'), - (Index: 6; Name: 'GetPos'; ParamType1: ptAxis), - (Index: 8; Name: 'GetAngle'; ParamType1: ptAxis), - (Index: 10; Name: 'GetStartingPos'; ParamType1: ptAxis), - (Index: 11; Name: 'GetStartingAngle'; ParamType1: ptAxis), - (Index: 12; Name: 'GetSecondsPassed'), - (Index: 14; Name: 'GetValue'; ParamType1: ptActorValue), - (Index: 18; Name: 'GetCurrentTime'), - (Index: 24; Name: 'GetScale'), - (Index: 25; Name: 'IsMoving'), - (Index: 26; Name: 'IsTurning'), - (Index: 27; Name: 'GetLineOfSight'; ParamType1: ptObjectReference), - (Index: 31; Name: 'GetButtonPressed'), - (Index: 32; Name: 'GetInSameCell'; ParamType1: ptObjectReference), - (Index: 35; Name: 'GetDisabled'), - (Index: 39; Name: 'GetDisease'), - (Index: 41; Name: 'GetClothingValue'), - (Index: 42; Name: 'SameFaction'; ParamType1: ptActor), - (Index: 43; Name: 'SameRace'; ParamType1: ptActor), - (Index: 44; Name: 'SameSex'; ParamType1: ptActor), - (Index: 45; Name: 'GetDetected'; ParamType1: ptActor), - (Index: 46; Name: 'GetDead'), - (Index: 47; Name: 'GetItemCount'; ParamType1: ptReferencableObject), - (Index: 48; Name: 'GetGold'), - (Index: 49; Name: 'GetSleeping'), - (Index: 50; Name: 'GetTalkedToPC'), - (Index: 56; Name: 'GetQuestRunning'; ParamType1: ptQuest), - (Index: 58; Name: 'GetStage'; ParamType1: ptQuest), - (Index: 59; Name: 'GetStageDone'; ParamType1: ptQuest; ParamType2: ptQuestStage), - (Index: 60; Name: 'GetFactionRankDifference'; ParamType1: ptFaction; ParamType2: ptActor), - (Index: 61; Name: 'GetAlarmed'), - (Index: 62; Name: 'IsRaining'), - (Index: 63; Name: 'GetAttacked'), - (Index: 64; Name: 'GetIsCreature'), - (Index: 65; Name: 'GetLockLevel'), - (Index: 66; Name: 'GetShouldAttack'; ParamType1: ptActor), - (Index: 67; Name: 'GetInCell'; ParamType1: ptCell), - (Index: 68; Name: 'GetIsClass'; ParamType1: ptClass), - (Index: 69; Name: 'GetIsRace'; ParamType1: ptRace), - (Index: 70; Name: 'GetIsSex'; ParamType1: ptSex), - (Index: 71; Name: 'GetInFaction'; ParamType1: ptFaction), - (Index: 72; Name: 'GetIsID'; ParamType1: ptReferencableObject), - (Index: 73; Name: 'GetFactionRank'; ParamType1: ptFaction), - (Index: 74; Name: 'GetGlobalValue'; ParamType1: ptGlobal), - (Index: 75; Name: 'IsSnowing'), - (Index: 77; Name: 'GetRandomPercent'), - (Index: 79; Name: 'WouldBeStealing'; ParamType1: ptObjectReference), - (Index: 80; Name: 'GetLevel'), - (Index: 81; Name: 'IsRotating'), - (Index: 83; Name: 'GetLeveledEncounterValue'; ParamType1: ptInteger), - (Index: 84; Name: 'GetDeadCount'; ParamType1: ptActorBase), - (Index: 91; Name: 'GetIsAlerted'), - (Index: 99; Name: 'GetHeadingAngle'; ParamType1: ptObjectReference), - (Index: 101; Name: 'IsWeaponMagicOut'), - (Index: 102; Name: 'IsTorchOut'), - (Index: 103; Name: 'IsShieldOut'), - (Index: 105; Name: 'IsActionRef'; ParamType1: ptObjectReference), - (Index: 106; Name: 'IsFacingUp'), - (Index: 107; Name: 'GetKnockedState'), - (Index: 108; Name: 'GetWeaponAnimType'), - (Index: 109; Name: 'IsWeaponSkillType'; ParamType1: ptActorValue), - (Index: 110; Name: 'GetCurrentAIPackage'), - (Index: 111; Name: 'IsWaiting'), - (Index: 112; Name: 'IsIdlePlaying'), - (Index: 116; Name: 'IsIntimidatedbyPlayer'), - (Index: 117; Name: 'IsPlayerInRegion'; ParamType1: ptRegion), - (Index: 118; Name: 'GetActorAggroRadiusViolated'), - (Index: 119; Name: 'GetCrimeKnown'; ParamType1: ptCrimeType; ParamType2: ptActor; ParamType3: ptActor), - (Index: 122; Name: 'GetCrime'; ParamType1: ptActor; ParamType2: ptCrimeType), - (Index: 123; Name: 'IsGreetingPlayer'), - (Index: 125; Name: 'IsGuard'), - (Index: 127; Name: 'HasBeenEaten'), - (Index: 128; Name: 'GetStaminaPercentage'), - (Index: 129; Name: 'HasBeenRead'), - (Index: 130; Name: 'GetDying'), - (Index: 131; Name: 'GetSceneActionPercent'; ParamType1: ptScene; ParamType2: ptInteger), - (Index: 132; Name: 'WouldRefuseCommand'; ParamType1: ptObjectReference), - (Index: 133; Name: 'SameFactionAsPC'), - (Index: 134; Name: 'SameRaceAsPC'), - (Index: 135; Name: 'SameSexAsPC'), - (Index: 136; Name: 'GetIsReference'; ParamType1: ptObjectReference), - (Index: 141; Name: 'IsTalking'), - (Index: 142; Name: 'GetComponentCount'; ParamType1: ptReferencableObject), - (Index: 143; Name: 'GetCurrentAIProcedure'), - (Index: 144; Name: 'GetTrespassWarningLevel'), - (Index: 145; Name: 'IsTrespassing'), - (Index: 146; Name: 'IsInMyOwnedCell'), - (Index: 147; Name: 'GetWindSpeed'), - (Index: 148; Name: 'GetCurrentWeatherPercent'), - (Index: 149; Name: 'GetIsCurrentWeather'; ParamType1: ptWeather), - (Index: 150; Name: 'IsContinuingPackagePCNear'), - (Index: 152; Name: 'GetIsCrimeFaction'; ParamType1: ptFaction), - (Index: 153; Name: 'CanHaveFlames'), - (Index: 154; Name: 'HasFlames'), - (Index: 157; Name: 'GetOpenState'), - (Index: 159; Name: 'GetSitting'), - (Index: 160; Name: 'GetFurnitureMarkerID'), - (Index: 161; Name: 'GetIsCurrentPackage'; ParamType1: ptPackage), - (Index: 162; Name: 'IsCurrentFurnitureRef'; ParamType1: ptObjectReference), - (Index: 163; Name: 'IsCurrentFurnitureObj'; ParamType1: ptFurniture), - (Index: 167; Name: 'GetFactionReaction'; ParamType1: ptFaction; ParamType2: ptFaction), - (Index: 170; Name: 'GetDayOfWeek'), - (Index: 172; Name: 'GetTalkedToPCParam'; ParamType1: ptActor), - (Index: 175; Name: 'IsPCSleeping'), - (Index: 176; Name: 'IsPCAMurderer'), - (Index: 180; Name: 'HasSameEditorLocationAsRef'; ParamType1: ptObjectReference; ParamType2: ptKeyword), - (Index: 181; Name: 'HasSameEditorLocationAsRefAlias'; ParamType1: ptAlias; ParamType2: ptKeyword), - (Index: 182; Name: 'GetEquipped'; ParamType1: ptReferencableObject), - (Index: 185; Name: 'IsSwimming'), - (Index: 186; Name: 'ScriptEffectElapsedSeconds'), - (Index: 188; Name: 'GetPCSleepHours'), - (Index: 190; Name: 'GetAmountSoldStolen'), - (Index: 192; Name: 'GetIgnoreCrime'), - (Index: 193; Name: 'GetPCExpelled'; ParamType1: ptFaction), - (Index: 195; Name: 'GetPCFactionMurder'; ParamType1: ptFaction), - (Index: 197; Name: 'GetPCEnemyofFaction'; ParamType1: ptFaction), - (Index: 199; Name: 'GetPCFactionAttack'; ParamType1: ptFaction), - (Index: 203; Name: 'GetDestroyed'), - (Index: 205; Name: 'GetActionRef'), - (Index: 206; Name: 'GetSelf'), - (Index: 207; Name: 'GetContainer'), - (Index: 208; Name: 'GetForceRun'), - (Index: 210; Name: 'GetForceSneak'), - (Index: 214; Name: 'HasMagicEffect'; ParamType1: ptMagicEffect), - (Index: 215; Name: 'GetDefaultOpen'), - (Index: 223; Name: 'IsSpellTarget'; ParamType1: ptMagicItem), - (Index: 224; Name: 'GetVATSMode'), - (Index: 225; Name: 'GetPersuasionNumber'), - (Index: 226; Name: 'GetVampireFeed'), - (Index: 227; Name: 'GetCannibal'), - (Index: 228; Name: 'GetIsClassDefault'; ParamType1: ptClass), - (Index: 229; Name: 'GetClassDefaultMatch'), - (Index: 230; Name: 'GetInCellParam'; ParamType1: ptCell; ParamType2: ptObjectReference), - (Index: 231; Name: 'GetPlayerDialogueInput'), - (Index: 232; Name: 'GetCombatTarget'), - (Index: 233; Name: 'GetPackageTarget'), - (Index: 235; Name: 'GetVatsTargetHeight'), - (Index: 237; Name: 'GetIsGhost'), - (Index: 242; Name: 'GetUnconscious'), - (Index: 244; Name: 'GetRestrained'), - (Index: 246; Name: 'GetIsUsedItem'; ParamType1: ptReferencableObject), - (Index: 247; Name: 'GetIsUsedItemType'; ParamType1: ptFormType), - (Index: 248; Name: 'IsScenePlaying'; ParamType1: ptScene), - (Index: 249; Name: 'IsInDialogueWithPlayer'), - (Index: 250; Name: 'GetLocationCleared'; ParamType1: ptLocation), - (Index: 254; Name: 'GetIsPlayableRace'), - (Index: 255; Name: 'GetOffersServicesNow'), - (Index: 256; Name: 'GetGameSetting'; ParamType1: ptNone), - (Index: 258; Name: 'HasAssociationType'; ParamType1: ptActor; ParamType2: ptAssociationType), - (Index: 259; Name: 'HasFamilyRelationship'; ParamType1: ptActor), - (Index: 261; Name: 'HasParentRelationship'; ParamType1: ptActor), - (Index: 262; Name: 'IsWarningAbout'; ParamType1: ptFormList), - (Index: 263; Name: 'IsWeaponOut'), - (Index: 264; Name: 'HasSpell'; ParamType1: ptMagicItem), - (Index: 265; Name: 'IsTimePassing'), - (Index: 266; Name: 'IsPleasant'), - (Index: 267; Name: 'IsCloudy'), - (Index: 274; Name: 'IsSmallBump'), - (Index: 275; Name: 'GetParentRef'), - (Index: 277; Name: 'GetBaseValue'; ParamType1: ptActorValue), - (Index: 278; Name: 'IsOwner'; ParamType1: ptOwner), - (Index: 280; Name: 'IsCellOwner'; ParamType1: ptCell; ParamType2: ptOwner), - (Index: 282; Name: 'IsHorseStolen'), - (Index: 285; Name: 'IsLeftUp'), - (Index: 286; Name: 'IsSneaking'), - (Index: 287; Name: 'IsRunning'), - (Index: 288; Name: 'GetFriendHit'), - (Index: 289; Name: 'IsInCombat'; ParamType1: ptInteger), - (Index: 296; Name: 'IsAnimPlaying'; ParamType1: ptReferencableObject), - (Index: 300; Name: 'IsInInterior'), - (Index: 303; Name: 'IsActorsAIOff'), - (Index: 304; Name: 'IsWaterObject'), - (Index: 305; Name: 'GetPlayerAction'), - (Index: 306; Name: 'IsActorUsingATorch'), - (Index: 309; Name: 'IsXBox'), - (Index: 310; Name: 'GetInWorldspace'; ParamType1: ptWorldspace), - (Index: 312; Name: 'GetPCMiscStat'; ParamType1: ptMiscStat), - (Index: 313; Name: 'GetPairedAnimation'), - (Index: 314; Name: 'IsActorAVictim'), - (Index: 315; Name: 'GetTotalPersuasionNumber'), - (Index: 318; Name: 'GetIdleDoneOnce'), - (Index: 320; Name: 'GetNoRumors'), - (Index: 323; Name: 'GetCombatState'), - (Index: 325; Name: 'GetWithinPackageLocation'; ParamType1: ptPackdata), - (Index: 327; Name: 'IsRidingMount'), - (Index: 329; Name: 'IsFleeing'), - (Index: 332; Name: 'IsInDangerousWater'), - (Index: 338; Name: 'GetIgnoreFriendlyHits'), - (Index: 339; Name: 'IsPlayersLastRiddenMount'), - (Index: 344; Name: 'ReleaseWeatherOverride'), - (Index: 348; Name: 'SendTrespassAlarm'; ParamType1: ptActor), - (Index: 353; Name: 'IsActor'), - (Index: 354; Name: 'IsEssential'), - (Index: 358; Name: 'IsPlayerMovingIntoNewSpace'), - (Index: 359; Name: 'GetInCurrentLocation'; ParamType1: ptLocation), - (Index: 360; Name: 'GetInCurrentLocationAlias'; ParamType1: ptAlias), - (Index: 361; Name: 'GetTimeDead'), - (Index: 362; Name: 'HasLinkedRef'; ParamType1: ptKeyword), - (Index: 363; Name: 'GetLinkedRef'; ParamType1: ptKeyword), - (Index: 365; Name: 'IsChild'), - (Index: 366; Name: 'GetStolenItemValueNoCrime'; ParamType1: ptFaction), - (Index: 367; Name: 'GetLastPlayerAction'), - (Index: 368; Name: 'IsPlayerActionActive'; ParamType1: ptInteger), - (Index: 370; Name: 'IsTalkingActivatorActor'; ParamType1: ptActor), - (Index: 372; Name: 'IsInList'; ParamType1: ptFormList), - (Index: 373; Name: 'GetStolenItemValue'; ParamType1: ptFaction), - (Index: 375; Name: 'GetCrimeGoldViolent'; ParamType1: ptFaction), - (Index: 376; Name: 'GetCrimeGoldNonviolent'; ParamType1: ptFaction), - (Index: 378; Name: 'IsOwnedBy'; ParamType1: ptActor), - (Index: 380; Name: 'GetCommandDistance'), - (Index: 381; Name: 'GetCommandLocationDistance'), - (Index: 387; Name: 'GetObjectiveFailed'; ParamType1: ptQuest; ParamType2: ptInteger), - (Index: 390; Name: 'GetHitLocation'), - (Index: 391; Name: 'IsPC1stPerson'), - (Index: 396; Name: 'GetCauseofDeath'), - (Index: 397; Name: 'IsLimbGone'; ParamType1: ptInteger), - (Index: 398; Name: 'IsWeaponInList'; ParamType1: ptFormList), - (Index: 402; Name: 'IsBribedbyPlayer'), - (Index: 403; Name: 'GetRelationshipRank'; ParamType1: ptActor), - (Index: 407; Name: 'GetVATSValue'; ParamType1: ptInteger; ParamType2: ptInteger), - (Index: 408; Name: 'IsKiller'; ParamType1: ptActor), - (Index: 409; Name: 'IsKillerObject'; ParamType1: ptFormList), - (Index: 410; Name: 'GetFactionCombatReaction'; ParamType1: ptFaction; ParamType2: ptFaction), - (Index: 414; Name: 'Exists'; ParamType1: ptObjectReference), - (Index: 415; Name: 'GetGroupMemberCount'), - (Index: 416; Name: 'GetGroupTargetCount'), - (Index: 419; Name: 'GetObjectiveCompleted'; ParamType1: ptQuest; ParamType2: ptInteger), - (Index: 420; Name: 'GetObjectiveDisplayed'; ParamType1: ptQuest; ParamType2: ptInteger), - (Index: 425; Name: 'GetIsFormType'), - (Index: 426; Name: 'GetIsVoiceType'; ParamType1: ptVoiceType), - (Index: 427; Name: 'GetPlantedExplosive'), - (Index: 429; Name: 'IsScenePackageRunning'), - (Index: 430; Name: 'GetHealthPercentage'), - (Index: 432; Name: 'GetIsObjectType'; ParamType1: ptFormType), - (Index: 437; Name: 'GetIsCreatureType'; ParamType1: ptInteger), - (Index: 438; Name: 'HasKey'; ParamType1: ptObjectReference), - (Index: 439; Name: 'IsFurnitureEntryType'; ParamType1: ptReferencableObject), - (Index: 444; Name: 'GetInCurrentLocationFormList'; ParamType1: ptFormList), - (Index: 445; Name: 'GetInZone'; ParamType1: ptEncounterZone), - (Index: 446; Name: 'GetVelocity'; ParamType1: ptAxis), - (Index: 447; Name: 'GetGraphVariableFloat'), - (Index: 448; Name: 'HasPerk'; ParamType1: ptPerk), - (Index: 449; Name: 'GetFactionRelation'; ParamType1: ptActor), - (Index: 450; Name: 'IsLastIdlePlayed'; ParamType1: ptIdleForm), - (Index: 453; Name: 'GetPlayerTeammate'), - (Index: 454; Name: 'GetPlayerTeammateCount'), - (Index: 458; Name: 'GetActorCrimePlayerEnemy'), - (Index: 459; Name: 'GetCrimeGold'; ParamType1: ptFaction), - (Index: 462; Name: 'GetPlayerGrabbedRef'), - (Index: 463; Name: 'IsPlayerGrabbedRef'; ParamType1: ptObjectReference), - (Index: 465; Name: 'GetKeywordItemCount'; ParamType1: ptKeyword), - (Index: 467; Name: 'GetBroadcastState'), - (Index: 470; Name: 'GetDestructionStage'), - (Index: 473; Name: 'GetIsAlignment'; ParamType1: ptAlignment), - (Index: 476; Name: 'IsProtected'), - (Index: 477; Name: 'GetThreatRatio'; ParamType1: ptActor), - (Index: 479; Name: 'GetIsUsedItemEquipType'; ParamType1: ptEquipType), - (Index: 480; Name: 'GetPlayerName'), - (Index: 483; Name: 'GetPlayerActivated'), - (Index: 485; Name: 'GetFullyEnabledActorsInHigh'), - (Index: 487; Name: 'IsCarryable'), - (Index: 488; Name: 'GetConcussed'), - (Index: 489; Name: 'SetZoneRespawns'; ParamType1: ptEncounterZone; ParamType2: ptInteger), - (Index: 490; Name: 'SetVATSTarget'; ParamType1: ptInteger), - (Index: 491; Name: 'GetMapMarkerVisible'), - (Index: 493; Name: 'PlayerKnows'; ParamType1: ptReferencableObject), - (Index: 494; Name: 'GetPermanentValue'; ParamType1: ptActorValue), - (Index: 495; Name: 'GetKillingBlowLimb'), - (Index: 497; Name: 'CanPayCrimeGold'; ParamType1: ptFaction), - (Index: 499; Name: 'GetDaysInJail'), - (Index: 500; Name: 'EPAlchemyGetMakingPoison'), - (Index: 501; Name: 'EPAlchemyEffectHasKeyword'; ParamType1: ptKeyword), - (Index: 503; Name: 'GetAllowWorldInteractions'), - (Index: 506; Name: 'DialogueGetAv'; ParamType1: ptActorValue), - (Index: 507; Name: 'DialogueHasPerk'; ParamType1: ptPerk), - (Index: 508; Name: 'GetLastHitCritical'), - (Index: 510; Name: 'DialogueGetItemCount'; ParamType1: ptReferencableObject), - (Index: 511; Name: 'LastCrippledCondition'; ParamType1: ptActorValue), - (Index: 512; Name: 'HasSharedPowerGrid'; ParamType1: ptObjectReference), - (Index: 513; Name: 'IsCombatTarget'; ParamType1: ptActor), - (Index: 515; Name: 'GetVATSRightAreaFree'; ParamType1: ptObjectReference), - (Index: 516; Name: 'GetVATSLeftAreaFree'; ParamType1: ptObjectReference), - (Index: 517; Name: 'GetVATSBackAreaFree'; ParamType1: ptObjectReference), - (Index: 518; Name: 'GetVATSFrontAreaFree'; ParamType1: ptObjectReference), - (Index: 519; Name: 'GetIsLockBroken'), - (Index: 520; Name: 'IsPS3'), - (Index: 521; Name: 'IsWindowsPC'), - (Index: 522; Name: 'GetVATSRightTargetVisible'; ParamType1: ptObjectReference), - (Index: 523; Name: 'GetVATSLeftTargetVisible'; ParamType1: ptObjectReference), - (Index: 524; Name: 'GetVATSBackTargetVisible'; ParamType1: ptObjectReference), - (Index: 525; Name: 'GetVATSFrontTargetVisible'; ParamType1: ptObjectReference), - (Index: 528; Name: 'IsInCriticalStage'; ParamType1: ptCriticalStage), - (Index: 530; Name: 'GetXPForNextLevel'), - (Index: 533; Name: 'GetInfamy'; ParamType1: ptFaction), - (Index: 534; Name: 'GetInfamyViolent'; ParamType1: ptFaction), - (Index: 535; Name: 'GetInfamyNonViolent'; ParamType1: ptFaction), - (Index: 536; Name: 'GetTypeCommandPerforming'), - (Index: 543; Name: 'GetQuestCompleted'; ParamType1: ptQuest), - (Index: 544; Name: 'GetSpeechChallengeSuccessLevel'), - (Index: 545; Name: 'PipBoyRadioOff'), - (Index: 547; Name: 'IsGoreDisabled'), - (Index: 550; Name: 'IsSceneActionComplete'; ParamType1: ptScene; ParamType2: ptInteger), - (Index: 552; Name: 'GetSpellUsageNum'; ParamType1: ptMagicItem), - (Index: 554; Name: 'GetActorsInHigh'), - (Index: 555; Name: 'HasLoaded3D'), - (Index: 559; Name: 'IsImageSpaceActive'; ParamType1: ptReferencableObject), - (Index: 560; Name: 'HasKeyword'; ParamType1: ptKeyword), - (Index: 561; Name: 'HasRefType'; ParamType1: ptRefType), - (Index: 562; Name: 'LocationHasKeyword'; ParamType1: ptKeyword), - (Index: 563; Name: 'LocationHasRefType'; ParamType1: ptRefType), - (Index: 565; Name: 'GetIsEditorLocation'; ParamType1: ptLocation), - (Index: 566; Name: 'GetIsAliasRef'; ParamType1: ptAlias), - (Index: 567; Name: 'GetIsEditorLocationAlias'; ParamType1: ptAlias), - (Index: 568; Name: 'IsSprinting'), - (Index: 569; Name: 'IsBlocking'), - (Index: 570; Name: 'HasEquippedSpell'; ParamType1: ptCastingSource), - (Index: 571; Name: 'GetCurrentCastingType'; ParamType1: ptCastingSource), - (Index: 572; Name: 'GetCurrentDeliveryType'; ParamType1: ptCastingSource), - (Index: 574; Name: 'GetAttackState'), - (Index: 575; Name: 'GetAliasedRef'; ParamType1: ptAlias), - (Index: 576; Name: 'GetEventData'; ParamType1: ptEvent; ParamType2: ptEventData; ParamType3: ptNone), // fireundubh: Event Function, Event Member, Data (FO4) - (Index: 577; Name: 'IsCloserToAThanB'; ParamType1: ptObjectReference; ParamType2: ptObjectReference), - (Index: 578; Name: 'LevelMinusPCLevel'), - (Index: 580; Name: 'IsBleedingOut'), - (Index: 584; Name: 'GetRelativeAngle'; ParamType1: ptObjectReference; ParamType2: ptAxis), - (Index: 589; Name: 'GetMovementDirection'), - (Index: 590; Name: 'IsInScene'), - (Index: 591; Name: 'GetRefTypeDeadCount'; ParamType1: ptLocation; ParamType2: ptRefType), - (Index: 592; Name: 'GetRefTypeAliveCount'; ParamType1: ptLocation; ParamType2: ptRefType), - (Index: 594; Name: 'GetIsFlying'), - (Index: 595; Name: 'IsCurrentSpell'; ParamType1: ptMagicItem; ParamType2: ptCastingSource), - (Index: 596; Name: 'SpellHasKeyword'; ParamType1: ptCastingSource; ParamType2: ptKeyword), - (Index: 597; Name: 'GetEquippedItemType'; ParamType1: ptCastingSource), - (Index: 598; Name: 'GetLocationAliasCleared'; ParamType1: ptAlias), - (Index: 600; Name: 'GetLocationAliasRefTypeDeadCount'; ParamType1: ptAlias; ParamType2: ptRefType), - (Index: 601; Name: 'GetLocationAliasRefTypeAliveCount'; ParamType1: ptAlias; ParamType2: ptRefType), - (Index: 602; Name: 'IsWardState'; ParamType1: ptWardState), - (Index: 603; Name: 'IsInSameCurrentLocationAsRef'; ParamType1: ptObjectReference; ParamType2: ptKeyword), - (Index: 604; Name: 'IsInSameCurrentLocationAsRefAlias'; ParamType1: ptAlias; ParamType2: ptKeyword), - (Index: 605; Name: 'LocationAliasIsLocation'; ParamType1: ptAlias; ParamType2: ptLocation), - (Index: 606; Name: 'GetKeywordDataForLocation'; ParamType1: ptLocation; ParamType2: ptKeyword), - (Index: 608; Name: 'GetKeywordDataForAlias'; ParamType1: ptAlias; ParamType2: ptKeyword), - (Index: 610; Name: 'LocationAliasHasKeyword'; ParamType1: ptAlias; ParamType2: ptKeyword), - (Index: 611; Name: 'IsNullPackageData'; ParamType1: ptPackdata), - (Index: 612; Name: 'GetNumericPackageData'; ParamType1: ptPackdata), - (Index: 613; Name: 'IsPlayerRadioOn'), - (Index: 614; Name: 'GetPlayerRadioFrequency'), - (Index: 615; Name: 'GetHighestRelationshipRank'), - (Index: 616; Name: 'GetLowestRelationshipRank'), - (Index: 617; Name: 'HasAssociationTypeAny'; ParamType1: ptAssociationType), - (Index: 618; Name: 'HasFamilyRelationshipAny'), - (Index: 619; Name: 'GetPathingTargetOffset'; ParamType1: ptAxis), - (Index: 620; Name: 'GetPathingTargetAngleOffset'; ParamType1: ptAxis), - (Index: 621; Name: 'GetPathingTargetSpeed'), - (Index: 622; Name: 'GetPathingTargetSpeedAngle'; ParamType1: ptAxis), - (Index: 623; Name: 'GetMovementSpeed'), - (Index: 624; Name: 'GetInContainer'; ParamType1: ptObjectReference), - (Index: 625; Name: 'IsLocationLoaded'; ParamType1: ptLocation), - (Index: 626; Name: 'IsLocationAliasLoaded'; ParamType1: ptAlias), - (Index: 627; Name: 'IsDualCasting'), - (Index: 629; Name: 'GetVMQuestVariable'; ParamType1: ptQuest; ParamType2: ptNone), - (Index: 630; Name: 'GetCombatAudioDetection'), - (Index: 631; Name: 'GetCombatVisualDetection'), - (Index: 632; Name: 'IsCasting'), - (Index: 633; Name: 'GetFlyingState'), - (Index: 635; Name: 'IsInFavorState'), - (Index: 636; Name: 'HasTwoHandedWeaponEquipped'), - (Index: 637; Name: 'IsFurnitureExitType'; ParamType1: ptReferencableObject), - (Index: 638; Name: 'IsInFriendStatewithPlayer'), - (Index: 639; Name: 'GetWithinDistance'; ParamType1: ptObjectReference; ParamType2: ptFloat), - (Index: 640; Name: 'GetValuePercent'; ParamType1: ptActorValue), - (Index: 641; Name: 'IsUnique'), - (Index: 642; Name: 'GetLastBumpDirection'), - (Index: 644; Name: 'GetInfoChallangeSuccess'), - (Index: 645; Name: 'GetIsInjured'), - (Index: 646; Name: 'GetIsCrashLandRequest'), - (Index: 647; Name: 'GetIsHastyLandRequest'), - (Index: 650; Name: 'IsLinkedTo'; ParamType1: ptObjectReference; ParamType2: ptKeyword), - (Index: 651; Name: 'GetKeywordDataForCurrentLocation'; ParamType1: ptKeyword), - (Index: 652; Name: 'GetInSharedCrimeFaction'; ParamType1: ptObjectReference), - (Index: 653; Name: 'GetBribeAmount'), - (Index: 654; Name: 'GetBribeSuccess'), - (Index: 655; Name: 'GetIntimidateSuccess'), - (Index: 656; Name: 'GetArrestedState'), - (Index: 657; Name: 'GetArrestingActor'), - (Index: 659; Name: 'HasVMScript'; ParamType1: ptNone), - (Index: 660; Name: 'GetVMScriptVariable'; ParamType1: ptNone; ParamType2: ptNone), - (Index: 661; Name: 'GetWorkshopResourceDamage'; ParamType1: ptActorValue), - (Index: 664; Name: 'HasValidRumorTopic'; ParamType1: ptQuest), - (Index: 672; Name: 'IsAttacking'), - (Index: 673; Name: 'IsPowerAttacking'), - (Index: 674; Name: 'IsLastHostileActor'), - (Index: 675; Name: 'GetGraphVariableInt'; ParamType1: ptNone), - (Index: 678; Name: 'ShouldAttackKill'; ParamType1: ptActor), - (Index: 680; Name: 'GetActivationHeight'), - (Index: 682; Name: 'WornHasKeyword'; ParamType1: ptKeyword), - (Index: 683; Name: 'GetPathingCurrentSpeed'), - (Index: 684; Name: 'GetPathingCurrentSpeedAngle'; ParamType1: ptAxis), - (Index: 691; Name: 'GetWorkshopObjectCount'; ParamType1: ptReferencableObject), - (Index: 693; Name: 'EPMagic_SpellHasKeyword'; ParamType1: ptKeyword), - (Index: 694; Name: 'GetNoBleedoutRecovery'), - (Index: 696; Name: 'EPMagic_SpellHasSkill'; ParamType1: ptActorValue), - (Index: 697; Name: 'IsAttackType'; ParamType1: ptKeyword), - (Index: 698; Name: 'IsAllowedToFly'), - (Index: 699; Name: 'HasMagicEffectKeyword'; ParamType1: ptKeyword), - (Index: 700; Name: 'IsCommandedActor'), - (Index: 701; Name: 'IsStaggered'), - (Index: 702; Name: 'IsRecoiling'), - (Index: 703; Name: 'HasScopeWeaponEquipped'), - (Index: 704; Name: 'IsPathing'), - (Index: 705; Name: 'GetShouldHelp'; ParamType1: ptActor), - (Index: 706; Name: 'HasBoundWeaponEquipped'; ParamType1: ptCastingSource), - (Index: 707; Name: 'GetCombatTargetHasKeyword'; ParamType1: ptKeyword), - (Index: 709; Name: 'GetCombatGroupMemberCount'), - (Index: 710; Name: 'IsIgnoringCombat'), - (Index: 711; Name: 'GetLightLevel'), - (Index: 713; Name: 'SpellHasCastingPerk'; ParamType1: ptPerk), - (Index: 714; Name: 'IsBeingRidden'), - (Index: 715; Name: 'IsUndead'), - (Index: 716; Name: 'GetRealHoursPassed'), - (Index: 718; Name: 'IsUnlockedDoor'), - (Index: 719; Name: 'IsHostileToActor'; ParamType1: ptActor), - (Index: 720; Name: 'GetTargetHeight'; ParamType1: ptObjectReference), - (Index: 721; Name: 'IsPoison'), - (Index: 722; Name: 'WornApparelHasKeywordCount'; ParamType1: ptKeyword), - (Index: 723; Name: 'GetItemHealthPercent'), - (Index: 724; Name: 'EffectWasDualCast'), - (Index: 725; Name: 'GetKnockStateEnum'), - (Index: 726; Name: 'DoesNotExist'), - (Index: 728; Name: 'GetPlayerWalkAwayFromDialogueScene'), - (Index: 729; Name: 'GetActorStance'), - (Index: 734; Name: 'CanProduceForWorkshop'), - (Index: 735; Name: 'CanFlyHere'), - (Index: 736; Name: 'EPIsDamageType'; ParamType1: ptDamageType), - (Index: 738; Name: 'GetActorGunState'), - (Index: 739; Name: 'GetVoiceLineLength'), - (Index: 741; Name: 'ObjectTemplateItem_HasKeyword'; ParamType1: ptKeyword), - (Index: 742; Name: 'ObjectTemplateItem_HasUniqueKeyword'; ParamType1: ptKeyword), - (Index: 743; Name: 'ObjectTemplateItem_GetLevel'), - (Index: 744; Name: 'MovementIdleMatches'; ParamType1: ptInteger; ParamType2: ptInteger), // TODO: determine correct param types (2) - (Index: 745; Name: 'GetActionData'), - (Index: 746; Name: 'GetActionDataShort'; ParamType1: ptInteger), - (Index: 747; Name: 'GetActionDataByte'; ParamType1: ptInteger), - (Index: 748; Name: 'GetActionDataFlag'; ParamType1: ptInteger), - (Index: 749; Name: 'ModdedItemHasKeyword'; ParamType1: ptKeyword), - (Index: 750; Name: 'GetAngryWithPlayer'), - (Index: 751; Name: 'IsCameraUnderWater'), - (Index: 753; Name: 'IsActorRefOwner'; ParamType1: ptActor), - (Index: 754; Name: 'HasActorRefOwner'; ParamType1: ptActor), - (Index: 756; Name: 'GetLoadedAmmoCount'), - (Index: 757; Name: 'IsTimeSpanSunrise'), - (Index: 758; Name: 'IsTimeSpanMorning'), - (Index: 759; Name: 'IsTimeSpanAfternoon'), - (Index: 760; Name: 'IsTimeSpanEvening'), - (Index: 761; Name: 'IsTimeSpanSunset'), - (Index: 762; Name: 'IsTimeSpanNight'), - (Index: 763; Name: 'IsTimeSpanMidnight'), - (Index: 764; Name: 'IsTimeSpanAnyDay'), - (Index: 765; Name: 'IsTimeSpanAnyNight'), - (Index: 766; Name: 'CurrentFurnitureHasKeyword'; ParamType1: ptKeyword), - (Index: 767; Name: 'GetWeaponEquipIndex'), - (Index: 769; Name: 'IsOverEncumbered'), - (Index: 770; Name: 'IsPackageRequestingBlockedIdles'), - (Index: 771; Name: 'GetActionDataInt'), - (Index: 772; Name: 'GetVATSRightMinusLeftAreaFree'; ParamType1: ptObjectReference), - (Index: 773; Name: 'GetInIronSights'; ParamType1: ptObjectReference), - (Index: 774; Name: 'GetActorStaggerDirection'), - (Index: 775; Name: 'GetActorStaggerMagnitude'), - (Index: 776; Name: 'WornCoversBipedSlot'; ParamType1: ptInteger), - (Index: 777; Name: 'GetInventoryValue'), - (Index: 778; Name: 'IsPlayerInConversation'), - (Index: 779; Name: 'IsInDialogueCamera'), - (Index: 780; Name: 'IsMyDialogueTargetPlayer'), - (Index: 781; Name: 'IsMyDialogueTargetActor'), - (Index: 782; Name: 'GetMyDialogueTargetDistance'), - (Index: 783; Name: 'IsSeatOccupied'; ParamType1: ptKeyword), - (Index: 784; Name: 'IsPlayerRiding'), - (Index: 785; Name: 'IsTryingEventCamera'), - (Index: 786; Name: 'UseLeftSideCamera'), - (Index: 787; Name: 'GetNoteType'), - (Index: 788; Name: 'LocationHasPlayerOwnedWorkshop'), - (Index: 789; Name: 'IsStartingAction'), - (Index: 790; Name: 'IsMidAction'), - (Index: 791; Name: 'IsWeaponChargeAttack'), - (Index: 792; Name: 'IsInWorkshopMode'), - (Index: 793; Name: 'IsWeaponChargingHoldAttack'), - (Index: 794; Name: 'IsEncounterAbovePlayerLevel'), - (Index: 795; Name: 'IsMeleeAttacking'), - (Index: 796; Name: 'GetVATSQueuedTargetsUnique'), - (Index: 797; Name: 'GetCurrentLocationCleared'), - (Index: 798; Name: 'IsPowered'), - (Index: 799; Name: 'GetTransmitterDistance'), - (Index: 800; Name: 'GetCameraPlaybackTime'), - (Index: 801; Name: 'IsInWater'), - (Index: 802; Name: 'GetWithinActivateDistance'; ParamType1: ptObjectReference), - (Index: 803; Name: 'IsUnderWater'), - (Index: 804; Name: 'IsInSameSpace'; ParamType1: ptObjectReference), - (Index: 805; Name: 'LocationAllowsReset'), - (Index: 806; Name: 'GetVATSBackRightAreaFree'; ParamType1: ptObjectReference), - (Index: 807; Name: 'GetVATSBackLeftAreaFree'; ParamType1: ptObjectReference), - (Index: 808; Name: 'GetVATSBackRightTargetVisible'; ParamType1: ptObjectReference), - (Index: 809; Name: 'GetVATSBackLeftTargetVisible'; ParamType1: ptObjectReference), - (Index: 810; Name: 'GetVATSTargetLimbVisible'; ParamType1: ptObjectReference), - (Index: 811; Name: 'IsPlayerListening'; ParamType1: ptFloat), - (Index: 812; Name: 'GetPathingRequestedQuickTurn'), - (Index: 813; Name: 'EPIsCalculatingBaseDamage'), - (Index: 814; Name: 'GetReanimating'), - (Index: 817; Name: 'IsInRobotWorkbench'), - - // F4SE - (Index: 1024; Name: 'GetSKSEVersion'; ), - (Index: 1025; Name: 'GetSKSEVersionMinor'; ), - (Index: 1026; Name: 'GetSKSEVersionBeta'; ), - (Index: 1027; Name: 'GetSKSERelease'; ), - (Index: 1028; Name: 'ClearInvalidRegistrations'; ) - ); -var - wbCTDAFunctionEditInfo: string; - -function wbCTDAParamDescFromIndex(aIndex: Integer): PCTDAFunction; -var - L, H, I, C: Integer; -begin - Result := nil; - - L := Low(wbCTDAFunctions); - H := High(wbCTDAFunctions); - while L <= H do begin - I := (L + H) shr 1; - C := CmpW32(wbCTDAFunctions[I].Index, aIndex); - if C < 0 then - L := I + 1 - else begin - H := I - 1; - if C = 0 then begin - L := I; - Result := @wbCTDAFunctions[L]; - end; - end; - end; -end; - -function wbCTDACompValueDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - // "use global" flag - if Integer(Container.ElementByName['Type'].NativeValue) and $04 <> 0 then - Result := 1; -end; - -function wbCTDAParam1Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Desc: PCTDAFunction; - Container: IwbContainer; - ParamFlag: Byte; - ParamType: TCTDAFunctionParamType; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Desc := wbCTDAParamDescFromIndex(Container.ElementByName['Function'].NativeValue); - - if Assigned(Desc) then begin - ParamType := Desc.ParamType1; - ParamFlag := Container.ElementByName['Type'].NativeValue; - if ParamType in [ptObjectReference, ptActor, ptPackage] then begin - if ParamFlag and $02 > 0 then begin - // except for this func when Run On = Quest Alias, then alias is param3 and package is param1 - // [INFO:00020D3C] - if not ((Container.ElementByName['Run On'].NativeValue = 5) and (Desc.Name = 'GetIsCurrentPackage')) then - ParamType := ptAlias {>>> 'use aliases' is set <<<} - end - else if ParamFlag and $08 > 0 then - ParamType := ptPackdata; {>>> 'use packdata' is set <<<} - end; - Result := Succ(Integer(ParamType)); - end; -end; - -function wbCTDAParam2Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Desc: PCTDAFunction; - Container: IwbContainer; - ParamFlag: Byte; - ParamType: TCTDAFunctionParamType; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Desc := wbCTDAParamDescFromIndex(Container.ElementByName['Function'].NativeValue); - - if Assigned(Desc) then begin - ParamType := Desc.ParamType2; - ParamFlag := Container.ElementByName['Type'].NativeValue; - if ParamType in [ptObjectReference, ptActor, ptPackage] then begin - if ParamFlag and $02 > 0 then ParamType := ptAlias else {>>> 'use aliases' is set <<<} - if ParamFlag and $08 > 0 then ParamType := ptPackdata; {>>> 'use packdata' is set <<<} - end; - Result := Succ(Integer(ParamType)); - end; -end; - -function wbCTDAParam2VATSValueParamDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Result := Container.ElementByName['Parameter #1'].NativeValue; -end; - -function wbCTDAFunctionToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Desc : PCTDAFunction; - i : Integer; -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := Desc.Name - else if aType = ctToEditValue then - Result := IntToStr(aInt) - else - Result := ''; - end; - ctToSortKey: Result := IntToHex(aInt, 8); - ctCheck: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := '' - else - Result := ''; - end; - ctEditType: - Result := 'ComboBox'; - ctEditInfo: begin - Result := wbCTDAFunctionEditInfo; - if Result = '' then begin - with TStringList.Create do try - for i := Low(wbCTDAFunctions) to High(wbCTDAFunctions) do - Add(wbCTDAFunctions[i].Name); - Sort; - Result := CommaText; - finally - Free; - end; - wbCTDAFunctionEditInfo := Result; - end; - end; - end; -end; - -function wbCTDAFunctionToInt(const aString: string; const aElement: IwbElement): Int64; -var - i: Integer; -begin - for i := Low(wbCTDAFunctions) to High(wbCTDAFunctions) do - with wbCTDAFunctions[i] do - if SameText(Name, aString) then begin - Result := Index; - Exit; - end; - Result := StrToInt64(aString); -end; - -function wbNeverShow(const aElement: IwbElement): Boolean; -begin - Result := wbHideNeverShow; -end; - -function GetREGNType(aElement: IwbElement): Integer; -var - Container: IwbContainerElementRef; -begin - Result := -1; - if not Assigned(aElement) then - Exit; - while aElement.Name <> 'Region Data Entry' do begin - aElement := aElement.Container; - if not Assigned(aElement) then - Exit; - end; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - Result := Container.ElementNativeValues['RDAT\Type']; -end; - -function wbREGNObjectsDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 2; -end; - -function wbREGNWeatherDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 3; -end; - -function wbREGNMapDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 4; -end; - -function wbREGNLandDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 5; -end; - -function wbREGNGrassDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 6; -end; - -function wbREGNSoundDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 7; -end; - -function wbREGNImposterDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 8; -end; - -function wbMESGTNAMDontShow(const aElement: IwbElement): Boolean; -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - Result := False; - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if Integer(Container.ElementNativeValues['DNAM']) and 1 <> 0 then - Result := True; -end; - -function wbEPFDDontShow(const aElement: IwbElement): Boolean; -var - Container: IwbContainerElementRef; -begin - Result := False; - if aElement.Name <> 'Entry Point Function Parameters' then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if not (Integer(Container.ElementNativeValues['EPFT']) in [1..3]) then - Result := True; -end; - -function wbTES4ONAMDontShow(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - Result := False; - if not Assigned(aElement) then - Exit; - MainRecord := aElement.ContainingMainRecord; - if not Assigned(MainRecord) then - Exit; - if not MainRecord.IsESM then - Result := True; -end; - -function wbEPF2DontShow(const aElement: IwbElement): Boolean; -var - Container: IwbContainerElementRef; -begin - Result := False; - if aElement.Name <> 'Entry Point Function Parameters' then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if not (Integer(Container.ElementNativeValues['EPFT']) in [4]) then - Result := True; -end; - -procedure wbRemoveOFST(const aElement: IwbElement); -var - Container: IwbContainer; - rOFST: IwbRecord; -begin - if not wbRemoveOffsetData then - Exit; - - if Supports(aElement, IwbContainer, Container) then begin - if wbBeginInternalEdit then try - Container.RemoveElement(OFST); - finally - wbEndInternalEdit; - end else begin - rOFST := Container.RecordBySignature[OFST]; - if Assigned(rOFST) then - Container.RemoveElement(rOFST); - end; - end; -end; - -procedure wbWRLDAfterLoad(const aElement: IwbElement); - function OutOfRange(aValue: Integer; aRange: Integer = 256): Boolean; - begin - Result := (aValue < -aRange) or (aValue > aRange); - end; -var - MainRecord: IwbMainRecord; - Container: IwbContainer; -begin - wbRemoveOFST(aElement); - - if wbBeginInternalEdit then try - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.ElementExists['Unused RNAM'] then - MainRecord.RemoveElement('Unused RNAM'); - - //if MainRecord.ElementExists['World Default Level Data'] then - // MainRecord.RemoveElement('World Default Level Data'); - - //if MainRecord.ElementExists['MHDT'] then - // MainRecord.RemoveElement('MHDT'); - - if MainRecord.ElementExists['CLSZ'] then - MainRecord.RemoveElement('CLSZ'); - - // large values in object bounds cause stutter and performance issues in game (reported by Arthmoor) - // CK can occasionally set them wrong, so make a warning - if Supports(MainRecord.ElementByName['Object Bounds'], IwbContainer, Container) then - if OutOfRange(StrToIntDef(Container.ElementEditValues['NAM0\X'], 0)) or - OutOfRange(StrToIntDef(Container.ElementEditValues['NAM0\Y'], 0)) or - OutOfRange(StrToIntDef(Container.ElementEditValues['NAM9\X'], 0)) or - OutOfRange(StrToIntDef(Container.ElementEditValues['NAM9\Y'], 0)) - then - wbProgressCallback(''); - - finally - wbEndInternalEdit; - end; -end; - -procedure wbDOBJObjectsAfterLoad(const aElement: IwbElement); -var - ObjectsContainer : IwbContainerElementRef; - i : Integer; - ObjectContainer : IwbContainerElementRef; -begin - wbRemoveOFST(aElement); - - if wbBeginInternalEdit then try - - if not Supports(aElement, IwbContainerElementRef, ObjectsContainer) then - Exit; - - for i := Pred(ObjectsContainer.ElementCount) downto 0 do - if Supports(ObjectsContainer.Elements[i], IwbContainerElementRef, ObjectContainer) then - if ObjectContainer.ElementNativeValues['Use'] = 0 then - ObjectsContainer.RemoveElement(i, True); - finally - wbEndInternalEdit; - end; -end; - -function wbActorTemplateUseTraits(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000001) <> 0; - end; -end; - -function wbActorTemplateUseStats(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000002) <> 0; - end; -end; - -function wbActorAutoCalcDontShow(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Flags']; - Result := (i and $00000010) <> 0; - end; -end; - -function wbActorTemplateUseStatsAutoCalc(const aElement: IwbElement): Boolean; -begin - Result := wbActorTemplateUseStats(aElement) or wbActorAutoCalcDontShow(aElement); -end; - -function wbActorTemplateUseFactions(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000004) <> 0; - end; -end; - -function wbActorTemplateUseActorEffectList(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000008) <> 0; - end; -end; - -function wbActorTemplateUseAIData(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000010) <> 0; - end; -end; - -function wbActorTemplateUseAIPackages(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000020) <> 0; - end; -end; - -function wbActorTemplateUseModelAnimation(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000040) <> 0; - end; -end; - -function wbActorTemplateUseBaseData(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000080) <> 0; - end; -end; - -function wbActorTemplateUseInventory(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000100) <> 0; - end; -end; - -function wbActorTemplateUseScript(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000200) <> 0; - end; -end; - -function wbActorTemplatesUseTemplate0(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 0 and 1) = 0 - else - Result := False; -end; - -function wbActorTemplatesUseTemplate1(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 1 and 1) = 0 - else - Result := False; -end; - -function wbActorTemplatesUseTemplate2(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 2 and 1) = 0 - else - Result := False; -end; - -function wbActorTemplatesUseTemplate3(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 3 and 1) = 0 - else - Result := False; -end; - -function wbActorTemplatesUseTemplate4(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 4 and 1) = 0 - else - Result := False; -end; - -function wbActorTemplatesUseTemplate5(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 5 and 1) = 0 - else - Result := False; -end; - -function wbActorTemplatesUseTemplate6(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 6 and 1) = 0 - else - Result := False; -end; - -function wbActorTemplatesUseTemplate7(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 7 and 1) = 0 - else - Result := False; -end; - -function wbActorTemplatesUseTemplate8(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 8 and 1) = 0 - else - Result := False; -end; - -function wbActorTemplatesUseTemplate9(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 9 and 1) = 0 - else - Result := False; -end; - -function wbActorTemplatesUseTemplate10(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 10 and 1) = 0 - else - Result := False; -end; - -function wbActorTemplatesUseTemplate11(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 11 and 1) = 0 - else - Result := False; -end; - -function wbActorTemplatesUseTemplate12(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - MainRecord := aElement.ContainingMainRecord; - if Assigned(MainRecord) then - Result := (Cardinal(MainRecord.ElementNativeValues['ACBS\Use Template Actors']) shr 12 and 1) = 0 - else - Result := False; -end; - -procedure wbRemoveEmptyKWDA(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Assigned(Container.ElementBySignature['KSIZ']) then - if Assigned(Container.ElementBySignature['KWDA']) then - Container.ElementBySignature['KWDA'].Remove; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbReplaceBODTwithBOD2(const aElement: IwbElement); -var - MainRecord : IwbMainRecord; - ContainerBOD2 : IwbContainerElementRef; - ContainerBODT : IwbContainerElementRef; -begin - Exit; {>>> Looks like causes problems with Dawnguard.esm <<<} - - if wbBeginInternalEdit then try - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if not Supports(MainRecord.ElementBySignature[BODT], IwbContainerElementRef, ContainerBODT) then - Exit; - - if Supports(MainRecord.Add('BOD2', True), IwbContainerElementRef, ContainerBOD2) then begin - ContainerBOD2.ElementNativeValues['First Person Flags'] := ContainerBODT.ElementNativeValues['First Person Flags']; - ContainerBOD2.ElementNativeValues['Armor Type'] := ContainerBODT.ElementNativeValues['Armor Type']; - MainRecord.RemoveElement(BODT); - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbARMOAfterLoad(const aElement: IwbElement); -begin - wbRemoveEmptyKWDA(aElement); - wbReplaceBODTwithBOD2(aElement); -end; - -procedure wbARMAAfterLoad(const aElement: IwbElement); -{var - MainRecord : IwbMainRecord;} -begin - wbReplaceBODTwithBOD2(aElement); - {if wbBeginInternalEdit then try - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - if MainRecord.ElementNativeValues['DNAM\Weight slider - Male'] = 0 then - MainRecord.ElementNativeValues['DNAM\Weight slider - Male'] := 2; - if MainRecord.ElementNativeValues['DNAM\Weight slider - Female'] = 0 then - MainRecord.ElementNativeValues['DNAM\Weight slider - Female'] := 2; - finally - wbEndInternalEdit; - end;} -end; - -procedure wbNPCAfterLoad(const aElement: IwbElement); -begin - wbRemoveEmptyKWDA(aElement); -end; - -procedure wbREFRAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if Container.ElementExists['XLOC'] then begin - if Container.ElementNativeValues['XLOC - Lock Data\Level'] = 0 then - Container.ElementNativeValues['XLOC - Lock Data\Level'] := 1; - end; - - Container.RemoveElement('XPTL'); - finally - wbEndInternalEdit; - end; -end; - -procedure wbWEAPAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - Flags : Cardinal; -begin - wbRemoveEmptyKWDA(aElement); - - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - // clear IronSights flags which are randomly assigned in CK - if Container.ElementExists['DNAM'] then begin - Flags := Container.ElementNativeValues['DNAM - Data\Flags']; - Flags := Flags and ($FFFF xor $0040); - Container.ElementNativeValues['DNAM - Data\Flags'] := Flags; - Flags := Container.ElementNativeValues['DNAM - Data\Flags2']; - Flags := Flags and ($FFFFFFFF xor $0100); - Container.ElementNativeValues['DNAM - Data\Flags2'] := Flags; - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbCELLXCLWGetConflictPriority(const aElement: IwbElement; var aCP: TwbConflictPriority); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - DataRec : IwbElement; - Flags : Cardinal; -begin - if not Assigned(aElement) then - Exit; - - if not Supports(aElement.Container, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(Container, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - DataRec := MainRecord.ElementBySignature[DATA]; - - if not Assigned(DataRec) then - Exit; - - Flags := DataRec.NativeValue; - - {0x0001 Is Interior Cell} - if (Flags and 1) = 1 then - {Interior cells don't use water level in Skyrim at all} - aCP := cpIgnore; -end; - -procedure wbCELLDATAAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainer; -begin - if not Assigned(aElement) then - Exit; - Container := aElement.Container; - while Assigned(Container) and not (Container.Def.DefType = dtRecord) do - Container := Container.Container; - if Assigned(Container) then - Container.ResetConflict; -end; - -procedure wbCELLAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; -// Container2 : IwbContainerElementRef; - MainRecord : IwbMainRecord; - DataSubRec : IwbSubrecord; - Flags : Byte; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if Supports(Container.ElementBySignature['DATA'] , IwbSubRecord, DataSubRec) then begin - // expand itU8 flags to itU16 - if DataSubRec.SubRecordHeaderSize = 1 then begin - Flags := PByte(DataSubRec.DataBasePtr)^; - DataSubRec.SetToDefault; - DataSubRec.NativeValue := Flags; - end; - // 'Default' water height for exterior cells if not set (so water height will be taken from WRLD by game) - if (not Container.ElementExists['XCLW']) and ((Integer(DataSubRec.NativeValue) and $02) <> 0) then begin - Container.Add('XCLW', True); - Container.ElementEditValues['XCLW'] := 'Default'; - end; - end; - - // Min (-0 as in CK) water height is set to 0 when saving in CK - if Container.ElementEditValues['XCLW'] = 'Min' then - Container.ElementEditValues['XCLW'] := '0.0'; - -// if Supports(Container.ElementBySignature[XCLR], IwbContainerElementRef, Container2) then begin -// for i := Pred(Container2.ElementCount) downto 0 do -// if not Supports(Container2.Elements[i].LinksTo, IwbMainRecord, MainRecord) or (MainRecord.Signature <> 'REGN') then -// Container2.RemoveElement(i); -// if Container2.ElementCount < 1 then -// Container2.Remove; -// end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbMESGAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - IsMessageBox : Boolean; - HasTimeDelay : Boolean; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - IsMessageBox := (Integer(Container.ElementNativeValues['DNAM']) and 1) = 1; - HasTimeDelay := Container.ElementExists['TNAM']; - - if IsMessageBox = HasTimeDelay then - if IsMessageBox then - Container.RemoveElement('TNAM') - else begin - if not Container.ElementExists['DNAM'] then - Container.Add('DNAM', True); - Container.ElementNativeValues['DNAM'] := Integer(Container.ElementNativeValues['DNAM']) or 1; - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbLIGHAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Container.ElementExists['FNAM'] then begin - Container.Add('FNAM', True); - Container.ElementNativeValues['FNAM'] := 1.0; - end; - - if Container.ElementExists['DATA'] then begin - if SameValue(Container.ElementNativeValues['DATA\Falloff Exponent'], 0.0) then - Container.ElementNativeValues['DATA\Falloff Exponent'] := 1.0; - if SameValue(Container.ElementNativeValues['DATA\FOV'], 0.0) then - Container.ElementNativeValues['DATA\FOV'] := 90.0; - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbEFITAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - Element : IwbElement; - ActorValue: Variant; - MainRecord: IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - MainRecord := Container.ContainingMainRecord; - if not Assigned(MainRecord) or MainRecord.IsDeleted then - Exit; - - Element := Container.ElementByPath['..\EFID']; - if not Assigned(Element) then - Exit; - if not Supports(Element.LinksTo, IwbMainRecord, MainRecord) then - Exit; - if MainRecord.Signature <> 'MGEF' then - Exit; - ActorValue := MainRecord.ElementNativeValues['DATA - Data\Actor Value']; - if VarIsNull(ActorValue) or VarIsClear(ActorValue) then - Exit; - if VarCompareValue(ActorValue, Container.ElementNativeValues['Actor Value']) <> vrEqual then - Container.ElementNativeValues['Actor Value'] := ActorValue; - finally - wbEndInternalEdit; - end; -end; - -procedure wbRPLDAfterLoad(const aElement: IwbElement); -var - Container: IwbContainer; - a, b: Single; - NeedsFlip: Boolean; -begin - if wbBeginInternalEdit then try - if Supports(aElement, IwbContainer, Container) then begin - NeedsFlip := False; - if Container.ElementCount > 1 then begin - a := StrToFloat((Container.Elements[0] as IwbContainer).Elements[0].Value); - b := StrToFloat((Container.Elements[Pred(Container.ElementCount)] as IwbContainer).Elements[0].Value); - case CompareValue(a, b) of - EqualsValue: begin - a := StrToFloat((Container.Elements[0] as IwbContainer).Elements[1].Value); - b := StrToFloat((Container.Elements[Pred(Container.ElementCount)] as IwbContainer).Elements[1].Value); - NeedsFlip := CompareValue(a, b) = GreaterThanValue; - end; - GreaterThanValue: - NeedsFlip := True; - end; - end; - if NeedsFlip then - Container.ReverseElements; - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbLLEAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - Entries : IwbContainerElementRef; - MainRecord : IwbMainRecord; - i : integer; -begin - if wbBeginInternalEdit then try - // zero entries' Chance None if Form Version < 69 - if wbFormVerDecider(nil, nil, aElement, 69) = 1 then - Exit; - - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Supports(MainRecord.ElementByName['Leveled List Entries'], IwbContainerElementRef, Entries) then - Exit; - - - for i := 0 to Pred(Entries.ElementCount) do begin - if not Supports(Entries.Elements[i], IwbContainerElementRef, Container) then - Exit; - Container.ElementNativeValues['LVLO\Chance None'] := 0; - end; - - finally - wbEndInternalEdit; - end; -end; - -function wbPubPackCNAMDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rANAM: IwbRecord; - ctype: string; -begin - Result := 0; - rANAM := aElement.Container.RecordBySignature[ANAM]; - if Assigned(rANAM) then begin - ctype := rANAM.NativeValue; - if ctype = 'Bool' then Result := 1 else - if ctype = 'Int' then Result := 2 else - if ctype = 'Float' then Result := 3 else - if ctype = 'ObjectList' then Result := 3; - end; -end; - -function wbTypeDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - Element : IwbElement; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Element := Container.ElementByName['Type']; - if Assigned(Element) then - Result := Element.NativeValue - else if wbMoreInfoForDecider then - wbProgressCallback('"'+Container.Name+'" does not contain an element named Type'); -end; - -procedure wbCNTOsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('COCT - Count', aElement); -end; - -procedure wbContainerAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('COCT - Count', 'Items', aElement); - wbCounterContainerAfterSet('KSIZ - Keyword Count', 'KWDA - Keywords', aElement); -end; - -procedure wbSPLOsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('SPCT - Count', aElement); -end; - -procedure wbKWDAsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('KSIZ - Keyword Count', aElement); -end; - -procedure wbNPCAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('COCT - Count', 'Items', aElement); - wbCounterContainerAfterSet('SPCT - Count', 'Actor Effects', aElement); - wbCounterContainerAfterSet('LLCT - Count', 'Leveled List Entries', aElement); - wbCounterContainerAfterSet('KSIZ - Keyword Count', 'KWDA - Keywords', aElement); - wbCounterContainerAfterSet('PRKZ - Perk Count', 'Perks', aElement); -end; - -procedure wbRaceAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('SPCT - Count', 'Actor Effects', aElement); - wbCounterContainerAfterSet('KSIZ - Keyword Count', 'KWDA - Keywords', aElement); -end; - -procedure wbKeywordsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('KSIZ - Keyword Count', 'KWDA - Keywords', aElement); -end; - -procedure wbLVLOsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('LLCT - Count', aElement); -end; - -procedure wbLLEAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('LLCT - Count', 'Leveled List Entries', aElement); -end; - -procedure wbPRKRsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('PRKZ - Perk Count', aElement); -end; - -procedure wbSMQNQuestsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('QNAM - Quest Count', aElement); -end; - -procedure wbCTDAsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('CITC - Condition Count', aElement); -end; - -procedure wbConditionsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('CITC - Condition Count', 'Conditions', aElement); -end; - -procedure wbCounterEffectsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - // if it is really possible to have both counter effects and multiple data, this is going to be tricky. - wbCounterByPathAfterSet('Magic Effect Data\DATA - Data\Counter effect count', aElement); -end; - -procedure wbMGEFAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbKeywordsAfterSet(aElement, aOldValue, aNewValue); - wbCounterContainerByPathAfterSet('Magic Effect Data\DATA - Data\Counter effect count', 'Counter Effects', aElement); -end; - -procedure wbTERMDisplayItemsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('BSIZ - Count', aElement); -end; - -procedure wbTERMMenuItemsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('ISIZ - Count', aElement); -end; - -procedure wbSNDRRatesOfFireAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('ITMC - Count', aElement); -end; - -procedure wbNPCActorSoundsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('CS2H - Count', aElement); -end; - -procedure wbMorphPresetsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('MPPC - Count', aElement); -end; - -procedure wbLENSAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('LFSP - Count', aElement); -end; - - -procedure wbIDLAsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Element : IwbElement; - Container : IwbContainer; - SelfAsContainer : IwbContainer; -begin - if wbBeginInternalEdit then try - if not wbCounterAfterSet('IDLC - Animation Count', aElement) then - if Supports(aElement.Container, IwbContainer, Container) then begin - Element := Container.ElementByPath['IDLC']; - if Assigned(Element) and Supports(aElement, IwbContainer, SelfAsContainer) and - (Element.GetNativeValue<>SelfAsContainer.GetElementCount) then - Element.SetNativeValue(SelfAsContainer.GetElementCount); - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbAnimationsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Element : IwbElement; - Elems : IwbElement; - Container : IwbContainer; -begin - if wbBeginInternalEdit then try - if not wbCounterContainerAfterSet('IDLC - Animation Count', 'IDLA - Animations', aElement) then - if Supports(aElement, IwbContainer, Container) then begin - Element := Container.ElementByPath['IDLC\Animation Count']; - Elems := Container.ElementByName['IDLA - Animations']; - if Assigned(Element) and not Assigned(Elems) then - if Element.GetNativeValue<>0 then - Element.SetNativeValue(0); - end; - finally - wbEndInternalEdit; - end; -end; - -function wbOffsetDataColsCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbDataContainer; - Element : IwbElement; - fResult : Extended; -begin - Result := 0; - - if Supports(aElement.Container, IwbDataContainer, Container) and (Container.Name = 'OFST - Offset Data') and - Supports(Container.Container, IwbDataContainer, Container) then begin - Element := Container.ElementByPath['Object Bounds\NAM0 - Min\X']; - if Assigned(Element) then begin - fResult := Element.NativeValue; - if fResult >= MaxInt then - Result := 0 - else - Result := Trunc(fResult); - Element := Container.ElementByPath['Object Bounds\NAM9 - Max\X']; - if Assigned(Element) then begin - fResult := Element.NativeValue; - if fResult >= MaxInt then - Result := 1 - else - Result := Trunc(fResult) - Result + 1; - end; - end; - end; -end; - -procedure wbOMODpropertyAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('Property Count', aElement); -end; - -procedure wbOMODincludeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('Include Count', aElement); -end; - -procedure wbOMODdataAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('Property Count', 'Properties', aElement); - wbCounterContainerAfterSet('Include Count', 'Includes', aElement); -end; - -function wbOMODDataIncludeCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbContainer; -begin - if Supports(aElement.Container, IwbContainer, Container) then - Result := Container.ElementNativeValues['Include Count'] - else - Result := 0; -end; - -function wbOMODDataPropertyCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbContainer; -begin - if Supports(aElement.Container, IwbContainer, Container) then - Result := Container.ElementNativeValues['Property Count'] - else - Result := 0; -end; - -function GetObjectModPropertyEnum(const aElement: IwbElement): IwbEnumDef; -var - MainRecord: IwbMainRecord; - rDATA: IwbContainer; - Signature: TwbSignature; - FormType: Cardinal; -begin - Result := nil; - - MainRecord := aElement.ContainingMainRecord; - - if not Assigned(MainRecord) then - Exit; - - Signature := MainRecord.Signature; - - if Signature = OMOD then - if Supports(MainRecord.ElementBySignature['DATA'], IwbContainer, rDATA) then begin - FormType := rDATA.ElementNativeValues['Form Type']; - Signature := PwbSignature(@FormType)^; - end; - - if Signature = ARMO then - Result := wbArmorPropertyEnum - else if Signature = WEAP then - Result := wbWeaponPropertyEnum - else if Signature = NPC_ then - Result := wbActorPropertyEnum; -end; - -function wbObjectModPropertyToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - PropEnum: IwbEnumDef; -begin - Result := ''; - - PropEnum := GetObjectModPropertyEnum(aElement); - - if not Assigned(PropEnum) then - case aType of - ctToStr, ctToSortKey, ctToEditValue: Result := IntToStr(aInt); - end - else - case aType of - ctToStr: Result := PropEnum.ToString(aInt, aElement); - ctToSortKey: Result := PropEnum.ToSortKey(aInt, aElement); - ctCheck: Result := PropEnum.Check(aInt, aElement); - ctToEditValue: Result := PropEnum.ToEditValue(aInt, aElement); - ctEditType: Result := 'ComboBox'; - ctEditInfo: Result := PropEnum.EditInfo[aInt, aElement]; - end; -end; - -function wbObjectModPropertyToInt(const aString: string; const aElement: IwbElement): Int64; -var - PropEnum: IwbEnumDef; -begin - PropEnum := GetObjectModPropertyEnum(aElement); - - if not Assigned(PropEnum) then - Result := StrToIntDef(aString, 0) - else - Result := PropEnum.FromEditValue(aString, aElement); -end; - -function wbOMODDataFunctionTypeDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - ValueType : Integer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - ValueType := Container.ElementNativeValues['Value Type']; - - case ValueType of - 0: Result := 0; - 1: Result := 0; - 2: Result := 1; - 4: Result := 3; - 5: Result := 2; - 6: Result := 3; - end; -end; - -function wbOMODDataPropertyValue1Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - ValueType : Integer; - PropName : string; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - ValueType := Container.ElementNativeValues['Value Type']; - PropName := Container.ElementEditValues['Property']; - - case ValueType of - 0: Result := 1; - 1: Result := 2; - 2: Result := 3; - 4, 6: Result := 4; - 5: begin - if PropName = 'SoundLevel' then Result := 6 else - if PropName = 'StaggerValue' then Result := 7 else - if PropName = 'HitBehaviour' then Result := 8 else - Result := 5; - end; - end; -end; - -function wbOMODDataPropertyValue2Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - ValueType : Integer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - ValueType := Container.ElementNativeValues['Value Type']; - - case ValueType of - 0: Result := 1; - 1: Result := 2; - 2: Result := 3; - 4: Result := 1; - 6: Result := 2; - end; -end; - -procedure wbOBTSCombinationsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('OBTE - Count', aElement); -end; - -procedure wbINNRAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('VNAM - Count', aElement); -end; - -function wbCELLCombinedMeshesCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbContainer; -begin - if Supports(aElement.Container, IwbContainer, Container) then - Result := Container.ElementNativeValues['Meshes Count'] - else - Result := 0; -end; - -procedure wbCELLCombinedMeshesAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('Meshes Count', aElement); -end; - -function wbCELLCombinedRefsCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbContainer; -begin - // the counter is double of entries (each member of struct is counted) - if Supports(aElement.Container, IwbContainer, Container) then - Result := Container.ElementNativeValues['References Count'] div 2 - else - Result := 0; -end; - -procedure wbCELLCombinedRefsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Element : IwbElement; - Container : IwbContainer; - SelfAsContainer : IwbContainer; -begin - // the counter is double of entries (each member of struct is counted) - if wbBeginInternalEdit then try - if Supports(aElement.Container, IwbContainer, Container) and - Supports(aElement, IwbContainer, SelfAsContainer) then begin - Element := Container.ElementByName['References Count']; - if Assigned(Element) then try - if (Element.GetNativeValue <> (SelfAsContainer.GetElementCount * 2)) then - Element.SetNativeValue(SelfAsContainer.GetElementCount * 2); - except end; - end; - finally - wbEndInternalEdit; - end; -end; - -function wbCombinedMeshIDToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Cell: IwbMainRecord; -begin - Result := IntToHex(aInt, 8); - - Cell := aElement.ContainingMainRecord; - if not Assigned(Cell) then - Exit; - - case aType of - ctToStr, ctToEditValue: begin - Result := 'Precombined\' + IntToHex(Cell.FormID and $00FFFFFF, 8) + '_' + Result + '_OC.nif'; - end; - ctCheck: Result := ''; - end; -end; - -function wbCombinedMeshIDToInt(const aString: string; const aElement: IwbElement): Int64; -var - s: string; - i: Integer; -begin - Result := 0; - // hex number between first and second underscope - i := Pos('_', aString); - if i <> 0 then begin - s := Copy(aString, i + 1, Length(aString) - i); - i := Pos('_', s); - if i <> 0 then begin - s := Copy(s, 1, i - 1); - if Length(s) = 8 then try - Result := StrToInt64('$' + s); - except end; - end; - end; -end; - -function wbREFRRecordFlagsDecider(const aElement: IwbElement): Integer; -var - MainRecord : IwbMainRecord; - NameRec : IwbElement; -begin - Result := 0; - - if not Assigned(aElement) then - Exit; - - MainRecord := aElement.ContainingMainRecord; - - if not Assigned(MainRecord) then - Exit; - - NameRec := MainRecord.ElementBySignature[NAME]; - if not Assigned(NameRec) then - Exit; - - if not Supports(NameRec.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - if (MainRecord.Signature = ACTI) or - (MainRecord.Signature = STAT) or - (MainRecord.Signature = SCOL) or - (MainRecord.Signature = TREE) - then - Result := 1 - else if - (MainRecord.Signature = CONT) or - (MainRecord.Signature = TERM) - then - Result := 2 - else if MainRecord.Signature = DOOR then - Result := 3 - else if MainRecord.Signature = LIGH then - Result := 4 - else if MainRecord.Signature = MSTT then - Result := 5 - else if MainRecord.Signature = ADDN then - Result := 6 - else if - (MainRecord.Signature = SCRL) or - (MainRecord.Signature = AMMO) or - (MainRecord.Signature = ARMO) or - (MainRecord.Signature = BOOK) or - (MainRecord.Signature = INGR) or - (MainRecord.Signature = KEYM) or - (MainRecord.Signature = MISC) or - (MainRecord.Signature = FURN) or - (MainRecord.Signature = WEAP) or - (MainRecord.Signature = ALCH) - then - Result := 7; -end; - -function wbByteColors(const aName: string = 'Color'): IwbStructDef; -begin - Result := wbStruct(aName, [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]); -end; - -function wbFloatColors(const aName: string = 'Color'): IwbStructDef; -begin - Result := wbStruct(aName, [ - wbFloat('Red', cpNormal, True, 255, 0), - wbFloat('Green', cpNormal, True, 255, 0), - wbFloat('Blue', cpNormal, True, 255, 0) - ]); -end; - -function wbWeatherColors(const aName: string): IwbStructDef; -begin - Result := wbStruct(aName, [ - wbByteColors('Sunrise'), - wbByteColors('Day'), - wbByteColors('Sunset'), - wbByteColors('Night'), - wbByteColors('EarlySunrise'), - wbByteColors('LateSunrise'), - wbByteColors('EarlySunset'), - wbByteColors('LateSunset') - ], cpNormal, True, nil, 4); -end; - -function wbAmbientColors(const aSignature: TwbSignature; const aName: string = 'Directional Ambient Lighting Colors'): IwbSubRecordDef; overload; -begin - Result := wbStruct(aSignature, aName, [ - wbStruct('Directional', [ - wbByteColors('X+'), - wbByteColors('X-'), - wbByteColors('Y+'), - wbByteColors('Y-'), - wbByteColors('Z+'), - wbByteColors('Z-') - ]), - wbByteColors('Specular'), - wbFloat('Scale') - ]) -end; - -function wbAmbientColors(const aName: string = 'Directional Ambient Lighting Colors'): IwbStructDef; overload; -begin - Result := wbStruct(aName, [ - wbStruct('Directional', [ - wbByteColors('X+'), - wbByteColors('X-'), - wbByteColors('Y+'), - wbByteColors('Y-'), - wbByteColors('Z+'), - wbByteColors('Z-') - ]), - wbByteColors('Specular'), - wbFloat('Scale', cpIgnore) - ]); -end; - -function wbIntToHexStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - case aType of - ctToStr, ctToSortKey, ctToEditValue: Result := IntToHex(aInt, 8); - else - Result := ''; - end; -end; - -function wbStrToInt(const aString: string; const aElement: IwbElement): Int64; -var - s: string; - i: integer; -begin - // ignore anything after space or : - i := Pos(' ', aString); - if i = 0 then - i := Pos(':', aString); - - if i <> 0 then - s := Copy(aString, 1, i - 1) - else - s := aString; - - try - Result := StrToInt64(s) - except - Result := 0; - end; -end; - -function wbHexStrToInt(const aString: string; const aElement: IwbElement): Int64; -var - s: string; - i: integer; -begin - // ignore anything after space or : - i := Pos(' ', aString); - if i = 0 then - i := Pos(':', aString); - - if i <> 0 then - s := Copy(aString, 1, i - 1) - else - s := aString; - - try - Result := StrToInt64('$' + s) - except - Result := 0; - end; -end; - -type - TFaceGenFeature = record - RaceID : String; - Female : Boolean; - Entries : array of record - Index: Cardinal; - Name : String; - end; - end; - PFaceGenFeature = ^TFaceGenFeature; - -var - // cache of race specific face morphs - FaceMorphs: array of TFaceGenFeature; - // cache of race specific tint layers - TintLayers: array of TFaceGenFeature; - // cache of race specific morph groups/presets and values - MorphValues: array of TFaceGenFeature; - - -function wbMorphValueToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; - - function GetCached(const aRaceID: string; aFemale: boolean): PFaceGenFeature; - var - i: integer; - begin - Result := nil; - if Length(MorphValues) <> 0 then - for i := Low(MorphValues) to High(MorphValues) do - if (MorphValues[i].Female = aFemale) and (MorphValues[i].RaceID = aRaceID) then begin - Result := @MorphValues[i]; - Break; - end; - end; - -var - Actor, Race : IwbMainRecord; - Element : IwbElement; - Container, Entry : IwbContainerElementRef; - Container2, Entry2: IwbContainerElementRef; - Female, Female2 : Boolean; - RaceID, EntryName : string; - Cache : PFaceGenFeature; - Index : Cardinal; - i, j, k : integer; - slList : TStringList; -begin - // defaults - case aType of - ctToStr, ctToEditValue: Result := IntToHex64(aInt, 8); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - Actor := aElement.ContainingMainRecord; - if not Assigned(Actor) then - Exit; - - Female := Actor.ElementEditValues['ACBS\Flags\Female'] = '1'; - - Element := Actor.ElementBySignature['RNAM']; - if not Assigned(Element) then - Exit; - - Element := Element.LinksTo; - if not Supports(Element, IwbMainRecord, Race) then - Exit; - - Race := Race.WinningOverride; - RaceID := Race.EditorID; - - Cache := GetCached(RaceID, Female); - - // cache not found, fill with data from RACE - if not Assigned(Cache) then begin - - slList := TStringList.Create; - - for i := 0 to 1 do begin - - Female2 := i = 1; - SetLength(MorphValues, Succ(Length(MorphValues))); - Cache := @MorphValues[Pred(Length(MorphValues))]; - Cache.RaceID := RaceID; - Cache.Female := Female2; - - slList.Clear; - - if not Female2 then - Element := Race.ElementByName['Male Morph Groups'] - else - Element := Race.ElementByName['Female Morph Groups']; - - // iterate over morph groups - if Supports(Element, IwbContainerElementRef, Container) then - for j := 0 to Pred(Container.ElementCount) do begin - if not Supports(Container.Elements[j], IwbContainerElementRef, Entry) then - Break; - - // group name - EntryName := Entry.ElementEditValues['MPGN']; - - // iterate over morph group presets - if not Supports(Entry.ElementByName['Morph Presets'], IwbContainerElementRef, Container2) then - Continue; - - for k := 0 to Pred(Container2.ElementCount) do - if Supports(Container2.Elements[k], IwbContainerElementRef, Entry2) then - slList.AddObject( - EntryName + ' - ' + Entry2.ElementEditValues['MPPN'], - TObject(Cardinal(Entry2.ElementNativeValues['MPPI'])) - ); - end; - - // append morph values, same for both sexes - if Supports(Race.ElementByName['Morph Values'], IwbContainerElementRef, Container) then - for j := 0 to Pred(Container.ElementCount) do - if Supports(Container.Elements[j], IwbContainerElementRef, Entry) then - slList.AddObject( - Entry.ElementEditValues['MSM0'] + '/' + Entry.ElementEditValues['MSM1'], - TObject(Cardinal(Entry.ElementNativeValues['MSID'])) - ); - - SetLength(Cache.Entries, slList.Count); - - for j := 0 to Pred(slList.Count) do begin - Cache.Entries[j].Index := Cardinal(slList.Objects[j]); - Cache.Entries[j].Name := slList[j]; - end; - - end; - - slList.Free; - - Cache := GetCached(RaceID, Female); - end; - - if not Assigned(Cache) then - Exit; - - EntryName := ''; - Index := Cardinal(aInt); - if Length(Cache.Entries) <> 0 then - for i := Low(Cache.Entries) to High(Cache.Entries) do - if Cache.Entries[i].Index = Index then begin - EntryName := Cache.Entries[i].Name; - Break; - end; - - case aType of - ctToStr: begin - if EntryName <> '' then - Result := IntToHex64(aInt, 8) + ' ' + EntryName - else - Result := IntToHex64(aInt, 8) + ' '; - end; - ctCheck: begin - if EntryName = '' then - Result := '' - else - Result := ''; - end; - ctEditType: Result := 'ComboBox'; - ctEditInfo: begin - Result := ''; - if Length(Cache.Entries) <> 0 then - for i := Low(Cache.Entries) to High(Cache.Entries) do begin - if Result <> '' then Result := Result + ','; - Result := Result + '"' + IntToHex(Cache.Entries[i].Index, 8) + ' ' + Cache.Entries[i].Name + '"'; - end; - end; - end; -end; - - - -function wbFaceMorphToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; - - function GetCached(const aRaceID: string; aFemale: boolean): PFaceGenFeature; - var - i: integer; - begin - Result := nil; - if Length(FaceMorphs) <> 0 then - for i := Low(FaceMorphs) to High(FaceMorphs) do - if (FaceMorphs[i].Female = aFemale) and (FaceMorphs[i].RaceID = aRaceID) then begin - Result := @FaceMorphs[i]; - Break; - end; - end; - -var - Actor, Race : IwbMainRecord; - Element : IwbElement; - Container, Entry : IwbContainerElementRef; - Female, Female2 : Boolean; - RaceID, EntryName : string; - Cache : PFaceGenFeature; - Index : Cardinal; - i, j : integer; -begin - // defaults - case aType of - ctToStr, ctToEditValue: Result := IntToHex64(aInt, 8); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - Actor := aElement.ContainingMainRecord; - if not Assigned(Actor) then - Exit; - - Female := Actor.ElementEditValues['ACBS\Flags\Female'] = '1'; - - Element := Actor.ElementBySignature['RNAM']; - if not Assigned(Element) then - Exit; - - Element := Element.LinksTo; - if not Supports(Element, IwbMainRecord, Race) then - Exit; - - Race := Race.WinningOverride; - RaceID := Race.EditorID; - - Cache := GetCached(RaceID, Female); - - // cache not found, fill with data from RACE - if not Assigned(Cache) then begin - - for i := 0 to 1 do begin - - Female2 := i = 1; - SetLength(FaceMorphs, Succ(Length(FaceMorphs))); - Cache := @FaceMorphs[Pred(Length(FaceMorphs))]; - Cache.RaceID := RaceID; - Cache.Female := Female2; - - if not Female2 then - Element := Race.ElementByName['Male Face Morphs'] - else - Element := Race.ElementByName['Female Face Morphs']; - - if not Supports(Element, IwbContainerElementRef, Container) then - Continue; - - SetLength(Cache.Entries, Container.ElementCount); - - for j := 0 to Pred(Container.ElementCount) do begin - if not Supports(Container.Elements[j], IwbContainerElementRef, Entry) then - Break; - Cache.Entries[j].Index := Entry.ElementNativeValues['FMRI']; - Cache.Entries[j].Name := Entry.ElementEditValues['FMRN']; - end; - end; - - Cache := GetCached(RaceID, Female); - end; - - if not Assigned(Cache) then - Exit; - - EntryName := ''; - Index := Cardinal(aInt); - if Length(Cache.Entries) <> 0 then - for i := Low(Cache.Entries) to High(Cache.Entries) do - if Cache.Entries[i].Index = Index then begin - EntryName := Cache.Entries[i].Name; - Break; - end; - - case aType of - ctToStr: begin - if EntryName <> '' then - Result := IntToHex64(aInt, 8) + ' ' + EntryName - else - Result := IntToHex64(aInt, 8) + ' '; - end; - ctCheck: begin - if EntryName = '' then - Result := '' - else - Result := ''; - end; - ctEditType: Result := 'ComboBox'; - ctEditInfo: begin - Result := ''; - if Length(Cache.Entries) <> 0 then - for i := Low(Cache.Entries) to High(Cache.Entries) do begin - if Result <> '' then Result := Result + ','; - Result := Result + '"' + IntToHex(Cache.Entries[i].Index, 8) + ' ' + Cache.Entries[i].Name + '"'; - end; - end; - end; -end; - -function wbTintLayerToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; - - function GetCached(const aRaceID: string; aFemale: boolean): PFaceGenFeature; - var - i: integer; - begin - Result := nil; - if Length(TintLayers) <> 0 then - for i := Low(TintLayers) to High(TintLayers) do - if (TintLayers[i].Female = aFemale) and (TintLayers[i].RaceID = aRaceID) then begin - Result := @TintLayers[i]; - Break; - end; - end; - -var - Actor, Race : IwbMainRecord; - Element : IwbElement; - Container, Entry : IwbContainerElementRef; - Container2, Entry2: IwbContainerElementRef; - Female, Female2 : Boolean; - RaceID, EntryName : string; - Cache : PFaceGenFeature; - Index : Cardinal; - i, j, k : integer; - slList : TStringList; -begin - // defaults - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - Actor := aElement.ContainingMainRecord; - if not Assigned(Actor) then - Exit; - - Female := Actor.ElementEditValues['ACBS\Flags\Female'] = '1'; - - Element := Actor.ElementBySignature['RNAM']; - if not Assigned(Element) then - Exit; - - Element := Element.LinksTo; - if not Supports(Element, IwbMainRecord, Race) then - Exit; - - Race := Race.WinningOverride; - RaceID := Race.EditorID; - - Cache := GetCached(RaceID, Female); - - // cache not found, fill with data from RACE - if not Assigned(Cache) then begin - - slList := TStringList.Create; - - for i := 0 to 1 do begin - - Female2 := i = 1; - SetLength(TintLayers, Succ(Length(TintLayers))); - Cache := @TintLayers[Pred(Length(TintLayers))]; - Cache.RaceID := RaceID; - Cache.Female := Female2; - - if not Female2 then - Element := Race.ElementByName['Male Tint Layers'] - else - Element := Race.ElementByName['Female Tint Layers']; - - if not Supports(Element, IwbContainerElementRef, Container) then - Continue; - - slList.Clear; - - // iterate over tint groups - for j := 0 to Pred(Container.ElementCount) do - if Supports(Container.Elements[j], IwbContainerElementRef, Entry) then - // iterate over tint group options - if Supports(Entry.ElementByName['Options'], IwbContainerElementRef, Container2) then - for k := 0 to Pred(Container2.ElementCount) do - if Supports(Container2.Elements[k], IwbContainerElementRef, Entry2) then - slList.AddObject( - Entry.ElementEditValues['TTGP'] + ' - ' + Entry2.ElementEditValues['TTGP'], - TObject(Cardinal(Entry2.ElementNativeValues['TETI\Index'])) - ); - - SetLength(Cache.Entries, slList.Count); - - for j := 0 to Pred(slList.Count) do begin - Cache.Entries[j].Index := Cardinal(slList.Objects[j]); - Cache.Entries[j].Name := slList[j]; - end; - end; - - slList.Free; - - Cache := GetCached(RaceID, Female); - end; - - if not Assigned(Cache) then - Exit; - - EntryName := ''; - Index := Cardinal(aInt); - if Length(Cache.Entries) <> 0 then - for i := Low(Cache.Entries) to High(Cache.Entries) do - if Cache.Entries[i].Index = Index then begin - EntryName := Cache.Entries[i].Name; - Break; - end; - - case aType of - ctToStr: begin - if EntryName <> '' then - Result := IntToStr(aInt) + ' ' + EntryName - else - Result := IntToStr(aInt) + ' '; - end; - ctCheck: begin - if EntryName = '' then - Result := '' - else - Result := ''; - end; - ctEditType: Result := 'ComboBox'; - ctEditInfo: begin - Result := ''; - if Length(Cache.Entries) <> 0 then - for i := Low(Cache.Entries) to High(Cache.Entries) do begin - if Result <> '' then Result := Result + ','; - Result := Result + '"' + IntToStr(Cache.Entries[i].Index) + ' ' + Cache.Entries[i].Name + '"'; - end; - end; - end; -end; - - -var - wbRecordFlagsFlags : IwbFlagsDef; - -procedure DefineFO4a; - -begin - wbNull := wbByteArray('Unused', -255); - wbBoolEnum := wbEnum(['False', 'True']); - wbLLCT := wbInteger(LLCT, 'Count', itU8, nil, cpBenign); - wbCITC := wbInteger(CITC, 'Condition Count', itU32, nil, cpBenign); - wbLVLD := wbInteger(LVLD, 'Chance None', itU8, nil, cpNormal, True); - - wbSPCT := wbInteger(SPCT, 'Count', itU32, nil, cpBenign); - wbSPLO := wbFormIDCk(SPLO, 'Actor Effect', [SPEL, LVSP]); - wbSPLOs := wbRArrayS('Actor Effects', wbSPLO, cpNormal, False, nil, wbSPLOsAfterSet, nil{wbActorTemplateUseActorEffectList}); - - wbKSIZ := wbInteger(KSIZ, 'Keyword Count', itU32, nil, cpBenign); - wbKWDAs := wbArrayS(KWDA, 'Keywords', wbFormIDCk('Keyword', [KYWD, NULL]), 0, cpNormal, False, nil, wbKWDAsAfterSet); - wbReqKWDAs := wbArrayS(KWDA, 'Keywords', wbFormIDCk('Keyword', [KYWD, NULL]), 0, cpNormal, True, nil, wbKWDAsAfterSet); - - wbKeywords := wbRStruct('Keywords', [ - wbKSIZ, - wbReqKWDAs - ], []); - - //wbActorValue := wbInteger('Actor Value', itS32, wbActorValueEnum); - wbActorValue := wbFormIDCkNoReach('Actor Value', [AVIF, NULL]); - - wbCOED := wbStructExSK(COED, [2], [0, 1], 'Extra Data', [ - {00} wbFormIDCkNoReach('Owner', [NPC_, FACT, NULL]), - {04} wbUnion('Global Variable / Required Rank', wbCOEDOwnerDecider, [ - wbByteArray('Unused', 4, cpIgnore), - wbFormIDCk('Global Variable', [GLOB, NULL]), - wbInteger('Required Rank', itS32) - ]), - {08} wbFloat('Item Condition') - ]); - - wbCNTO := - wbRStructExSK([0], [1], 'Item', [ - wbStructExSK(CNTO, [0], [1], 'Item', [ - wbFormIDCk('Item', sigBaseObjects), - wbInteger('Count', itS32) - ]), - wbCOED - ], []); - wbCOCT := wbInteger(COCT, 'Count', itU32, nil, cpBenign); - wbCNTOs := wbRArrayS('Items', wbCNTO, cpNormal, False, nil, wbCNTOsAfterSet); - - {>>> When NAME is user defined these will be incorrect <<<} - wbBipedObjectEnum := wbEnum([ - '30 - Hair Top', - '31 - Hair Long', - '32 - FaceGen Head', - '33 - BODY', - '34 - L Hand', - '35 - R Hand', - '36 - [U] Torso', - '37 - [U] L Arm', - '38 - [U] R Arm', - '39 - [U] L Leg', - '40 - [U] R Leg', - '41 - [A] Torso', - '42 - [A] L Arm', - '43 - [A] R Arm', - '44 - [A] L Leg', - '45 - [A] R Leg', - '46 - Headband', - '47 - Eyes', - '48 - Beard', - '49 - Mouth', - '50 - Neck', - '51 - Ring', - '52 - Scalp', - '53 - Decapitation', - '54 - Unnamed', - '55 - Unnamed', - '56 - Unnamed', - '57 - Unnamed', - '58 - Unnamed', - '59 - Shield', - '60 - Pipboy', - '61 - FX' - ], [ - -1, 'None' - ]); - - wbBipedObjectFlags := wbFlags([ - {0x00000001} '30 - Hair Top', - {0x00000002} '31 - Hair Long', - {0x00000004} '32 - FaceGen Head', - {0x00000008} '33 - BODY', - {0x00000010} '34 - L Hand', - {0x00000020} '35 - R Hand', - {0x00000040} '36 - [U] Torso', - {0x00000080} '37 - [U] L Arm', - {0x00000100} '38 - [U] R Arm', - {0x00000200} '39 - [U] L Leg', - {0x00000400} '40 - [U] R Leg', - {0x00000800} '41 - [A] Torso', - {0x00001000} '42 - [A] L Arm', - {0x00002000} '43 - [A] R Arm', - {0x00004000} '44 - [A] L Leg', - {0x00008000} '45 - [A] R Leg', - {0x00010000} '46 - Headband', - {0x00020000} '47 - Eyes', - {0x00040000} '48 - Beard', - {0x00080000} '49 - Mouth', - {0x00100000} '50 - Neck', - {0x00200000} '51 - Ring', - {0x00400000} '52 - Scalp', - {0x00800000} '53 - Decapitation', - {0x01000000} '54 - Unnamed', - {0x02000000} '55 - Unnamed', - {0x04000000} '56 - Unnamed', - {0x08000000} '57 - Unnamed', - {0x10000000} '58 - Unnamed', - {0x20000000} '59 - Shield', - {0x40000000} '60 - Pipboy', - {0x80000000} '61 - FX' - ], True); - - wbFirstPersonFlagsU32 := wbInteger('First Person Flags', itU32, wbBipedObjectFlags); - - wbBOD2 := wbStruct(BOD2, 'Biped Body Template', [ - wbFirstPersonFlagsU32 - ], cpNormal, False); - - wbMDOB := wbFormID(MDOB, 'Menu Display Object', cpNormal, False); - wbCNAM := wbStruct(CNAM, 'Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unknown', 1) - ]); - - wbDODT := wbStruct(DODT, 'Decal Data', [ - wbFloat('Min Width'), - wbFloat('Max Width'), - wbFloat('Min Height'), - wbFloat('Max Height'), - wbFloat('Depth'), - wbFloat('Shininess'), - wbStruct('Parallax', [ - wbFloat('Scale'), - wbInteger('Passes', itU8) {>>> This can't be higher than 30 <<<} - ]), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'POM Shadows', - {0x02} 'Alpha - Blending', - {0x04} 'Alpha - Testing', - {0x08} 'No Subtextures' - ], True)), - wbInteger('Alpha Threshold?', itU16), - wbByteColors('Color') - ]); - -// wbRecordFlagsFlags := wbFlags([ -// {>>> 0x00000000 ACTI: Collision Geometry (default) <<<} -// {0x00000001}'ESM', -// {0x00000002}'Unknown 2', -// {>>> 0x00000004 ARMO: Not playable <<<} -// {0x00000004}'NotPlayable', -// {0x00000008}'Unknown 4', -// {0x00000010}'Unknown 5', -// {0x00000020}'Deleted', -// {>>> 0x00000040 ACTI: Has Tree LOD <<<} -// {>>> 0x00000040 REGN: Border Region <<<} -// {>>> 0x00000040 STAT: Has Tree LOD <<<} -// {>>> 0x00000040 REFR: Hidden From Local Map <<<} -// {0x00000040}'Constant HiddenFromLocalMap BorderRegion HasTreeLOD', -// {>>> 0x00000080 TES4: Localized <<<} -// {>>> 0x00000080 PHZD: Turn Off Fire <<<} -// {>>> 0x00000080 SHOU: Treat Spells as Powers <<<} -// {>>> 0x00000080 STAT: Add-on LOD Object <<<} -// {0x00000080}'Localized IsPerch AddOnLODObject TurnOffFire TreatSpellsAsPowers', -// {>>> 0x00000100 ACTI: Must Update Anims <<<} -// {>>> 0x00000100 REFR: Inaccessible <<<} -// {>>> 0x00000100 REFR for LIGH: Doesn't light water <<<} -// {0x00000100}'MustUpdateAnims Inaccessible DoesntLightWater', -// {>>> 0x00000200 ACTI: Local Map - Turns Flag Off, therefore it is Hidden <<<} -// {>>> 0x00000200 REFR: MotionBlurCastsShadows <<<} -// {0x00000200}'HiddenFromLocalMap StartsDead MotionBlurCastsShadows', -// {>>> 0x00000400 LSCR: Displays in Main Menu <<<} -// {0x00000400}'PersistentReference QuestItem DisplaysInMainMenu', -// {0x00000800}'InitiallyDisabled', -// {0x00001000}'Ignored', -// {0x00002000}'ActorChanged', -// {0x00004000}'Unknown 15', -// {>>> 0x00008000 STAT: Has Distant LOD <<<} -// {0x00008000}'VWD', -// {>>> 0x00010000 ACTI: Random Animation Start <<<} -// {>>> 0x00010000 REFR light: Never fades <<<} -// {0x00010000}'RandomAnimationStart NeverFades', -// {>>> 0x00020000 ACTI: Dangerous <<<} -// {>>> 0x00020000 REFR light: Doesn't light landscape <<<} -// {>>> 0x00020000 SLGM: Can hold NPC's soul <<<} -// {>>> 0x00020000 STAT: Use High-Detail LOD Texture <<<} -// {0x00020000}'Dangerous OffLimits DoesntLightLandscape HighDetailLOD CanHoldNPC', -// {0x00040000}'Compressed', -// {>>> 0x00080000 STAT: Has Currents <<<} -// {0x00080000}'CantWait HasCurrents', -// {>>> 0x00100000 ACTI: Ignore Object Interaction <<<} -// {0x00100000}'IgnoreObjectInteraction', -// {0x00200000}'(Used in Memory Changed Form)', -// {0x00400000}'Unknown 23', -// {>>> 0x00800000 ACTI: Is Marker <<<} -// {0x00800000}'IsMarker', -// {0x01000000}'Unknown 25', -// {>>> 0x02000000 ACTI: Obstacle <<<} -// {>>> 0x02000000 REFR: No AI Acquire <<<} -// {0x02000000}'Obstacle NoAIAcquire', -// {>>> 0x04000000 ACTI: Filter <<<} -// {0x04000000}'NavMeshFilter', -// {>>> 0x08000000 ACTI: Bounding Box <<<} -// {0x08000000}'NavMeshBoundingBox', -// {>>> 0x10000000 STAT: Show in World Map <<<} -// {0x10000000}'MustExitToTalk ShowInWorldMap', -// {>>> 0x20000000 ACTI: Child Can Use <<<} -// {>>> 0x20000000 REFR: Don't Havok Settle <<<} -// {0x20000000}'ChildCanUse DontHavokSettle', -// {>>> 0x40000000 ACTI: GROUND <<<} -// {>>> 0x40000000 REFR: NoRespawn <<<} -// {0x40000000}'NavMeshGround NoRespawn', -// {>>> 0x80000000 REFR: MultiBound <<<} -// {0x80000000}'MultiBound' -// ], [18]); - - wbRecordFlagsFlags := wbFlags(wbRecordFlagsFlags, [ - {0x00000001} { 0} 'Unknown 0', - {0x00000002} { 1} 'Unknown 1', - {0x00000004} { 2} 'Unknown 2', - {0x00000008} { 3} 'Unknown 3', - {0x00000010} { 4} 'Unknown 4', - {0x00000020} { 4} 'Unknown 5', - {0x00000040} { 6} 'Unknown 6', - {0x00000080} { 7} 'Unknown 7', - {0x00000100} { 8} 'Unknown 8', - {0x00000200} { 9} 'Unknown 9', - {0x00000400} {10} 'Unknown 10', - {0x00000800} {11} 'Unknown 11', - {0x00001000} {12} 'Unknown 12', - {0x00002000} {13} 'Unknown 13', - {0x00004000} {14} 'Unknown 14', - {0x00008000} {15} 'Unknown 15', - {0x00010000} {16} 'Unknown 16', - {0x00020000} {17} 'Unknown 17', - {0x00040000} {18} 'Unknown 18', - {0x00080000} {19} 'Unknown 19', - {0x00100000} {20} 'Unknown 20', - {0x00200000} {21} 'Unknown 21', - {0x00400000} {22} 'Unknown 22', - {0x00800000} {23} 'Unknown 23', - {0x01000000} {24} 'Unknown 24', - {0x02000000} {25} 'Unknown 25', - {0x04000000} {26} 'Unknown 26', - {0x08000000} {27} 'Unknown 27', - {0x10000000} {28} 'Unknown 28', - {0x20000000} {29} 'Unknown 29', - {0x40000000} {30} 'Unknown 30', - {0x80000000} {31} 'Unknown 31' - ]); - - wbRecordFlags := wbInteger('Record Flags', itU32, wbFlags(wbRecordFlagsFlags, wbFlagsList([]))); - - wbMainRecordHeader := wbStruct('Record Header', [ - wbString('Signature', 4, cpCritical), - wbInteger('Data Size', itU32, nil, cpIgnore), - wbRecordFlags, - wbFormID('FormID', cpFormID), - wbByteArray('Version Control Info 1', 4, cpIgnore), - wbInteger('Form Version', itU16, nil, cpIgnore), - wbByteArray('Version Control Info 2', 2, cpIgnore) - ]); - - wbSizeOfMainRecordStruct := 24; - - wbIgnoreRecords.Add(XXXX); - - wbXRGD := wbByteArray(XRGD, 'Ragdoll Data'); - wbXRGB := wbByteArray(XRGB, 'Ragdoll Biped Data'); - - wbMusicEnum := wbEnum(['Default', 'Public', 'Dungeon']); - wbSoundLevelEnum := wbEnum([ - 'Loud', - 'Normal', - 'Silent', - 'Very Loud', - 'Quiet' - ]); - - wbEntryPointsEnum := wbEnum([ - { 0} 'Mod Breath Timer', - { 1} 'Mod My Critical Hit Chance', - { 2} 'Mod My Critical Hit Damage Mult', - { 3} 'Mod Mine Explode Chance', - { 4} 'Mod Incoming Limb Damage', - { 5} 'Mod Book Actor Value Bonus', - { 6} 'Mod Recovered Health', - { 7} 'Set Should Attack', - { 8} 'Mod Buy Prices', - { 9} 'Add Leveled List On Death', - {10} 'Set Max Carry Weight', - {11} 'Mod Addiction Chance', - {12} 'Mod Addiction Duration', - {13} 'Mod Positive Chem Duration', - {14} 'Activate', - {15} 'Ignore Running During Detection', - {16} 'Ignore Broken Lock', - {17} 'Mod Enemy Critical Hit Chance', - {18} 'Mod Sneak Attack Mult', - {19} 'Mod Max Placeable Mines', - {20} 'Mod Bow Zoom', - {21} 'Mod Recover Arrow Chance', - {22} 'Mod Exp', - {23} 'Mod Telekinesis Distance', - {24} 'Mod Telekinesis Damage Mult', - {25} 'Mod Telekinesis Damage', - {26} 'Mod Bashing Damage', - {27} 'Mod Power Attack Action Points', - {28} 'Mod Power Attack Damage', - {29} 'Mod Spell Magnitude', - {30} 'Mod Spell Duration', - {31} 'Mod Secondary Value Weight', - {32} 'Mod Armor Weight', - {33} 'Mod Incoming Stagger', - {34} 'Mod Target Stagger', - {35} 'Mod Weapon Attack Damage', - {36} 'Mod Incoming Weapon Damage', - {37} 'Mod Target Damage Resistance', - {38} 'Mod Spell Cost', - {39} 'Mod Percent Blocked', - {40} 'Mod Shield Deflect Arrow Chance', - {41} 'Mod Incoming Spell Magnitude', - {42} 'Mod Incoming Spell Duration', - {43} 'Mod Player Intimidation', - {44} 'Mod Ricochet Chance', - {45} 'Mod Ricochet Damage', - {46} 'Mod Bribe Amount', - {47} 'Mod Detection Light', - {48} 'Mod Detection Movement', - {49} 'Mod Scrap Reward Mult', - {50} 'Set Sweep Attack', - {51} 'Apply Combat Hit Spell', - {52} 'Apply Bashing Spell', - {53} 'Apply Reanimate Spell', - {54} 'Set Boolean Graph Variable', - {55} 'Mod Spell Casting Sound Event', - {56} 'Mod Pickpocket Chance', - {57} 'Mod Detection Sneak Skill', - {58} 'Mod Falling Damage', - {59} 'Mod Lockpick Sweet Spot', - {60} 'Mod Sell Prices', - {61} 'Set Pickpocket Equipped Item', - {62} 'Set Player Gate Lockpick', - {63} 'Set Lockpick Starting Arc', - {64} 'Set Progression Picking', - {65} 'Set Lockpicks Unbreakable', - {66} 'Mod Alchemy Effectiveness', - {67} 'Apply Weapon Swing Spell', - {68} 'Mod Commanded Actor Limit', - {69} 'Apply Sneaking Spell', - {70} 'Mod Player Magic Slowdown', - {71} 'Mod Ward Magicka Absorption Pct', - {72} 'Mod Initial Ingredient Effects Learned', - {73} 'Purify Alchemy Ingredients', - {74} 'Set Filter Activation', - {75} 'Set Dual Cast', - {76} 'Mod Outgoing Explosion Limb Damage', - {77} 'Mod Enchantment Power', - {78} 'Mod Soul Pct Captured to Weapon', - {79} 'Mod VATS Attack Action Points', - {80} 'Mod Reflect Damage Chance', - {81} 'Set Activate Label', - {82} 'Mod Kill Experience', - {83} 'Mod Poison Dose Count', - {84} 'Set Apply Placed Item', - {85} 'Mod Armor Rating', - {86} 'Mod lockpicking crime chance', - {87} 'Mod ingredients harvested', - {88} 'Mod Spell Range (Target Loc.)', - {89} 'Mod Critical Charge Mult on Ricochet', - {90} 'Mod lockpicking key reward chance', - {91} 'Mod Auto Lockpicking Chance', - {92} 'Mod Auto Hacking Chance', - {93} 'Mod Typed Weapon Attack Damage', - {94} 'Mod Typed Incoming Weapon Damage', - {95} 'Mod Charisma Challenge Chance', - {96} 'Mod Sprint AP Drain Rate', - {97} 'Mod Drawn Weapon Weight Speed Effect', - {98} 'Set Player Gate Hacking', - {99} 'Mod Player Explosion Damage', - {100} 'Mod Player Explosion Scale', - {101} 'Set Rads To Health Mult', - {102} 'Mod Actor Scope Stability', - {103} 'Mod Actor Grenade Speed Mult', - {104} 'Mod Explosion Force', - {105} 'Mod VATS Penetration Min Visibility', - {106} 'Mod Rads for Rad Health Max', - {107} 'Mod VATS Player AP On Kill Chance', - {108} 'Set VATS Fill Critical Bar On Hit', - {109} 'Mod VATS Concentrated Fire Chance Bonus', - {110} 'Mod VATS Critical Count', - {111} 'Mod VATS Hold Em Steady Bonus', - {112} 'Mod Typed Spell Magnitude', - {113} 'Mod Typed Incoming Spell Magnitude', - {114} 'Set VATS Gun-Fu Num Targets For Crits', - {115} 'Mod Outgoing Limb Damage', - {116} 'Mod Restore Action Cost Value', - {117} 'Mod VATS Reload Action Points', - {118} 'Mod Incoming Battery Damage', - {119} 'Mod VATS Critical Charge', - {120} 'Mod Exp Location', - {121} 'Mod Exp Speech', - {122} 'Mod VATS Head Shot Chance', - {123} 'Mod VATS Hit Chance', - {124} 'Mod Incoming Explosion Damage', - {125} 'Mod Ammo Health Mult', - {126} 'Mod Hacking Guesses', - {127} 'Mod Terminal Lockout Time', - {128} 'Set Undetectable', - {129} 'Invest In Vendor', - {130} 'Mod Outgoing Limb Bash Damage', - {131} 'Set Run While Over Encumbered', - {132} 'Get Component Radar Distance', - {133} 'Show Grenade Trajectory', - {134} 'Mod Cone-of-fire Mult', - {135} 'Mod VATS Concentrated Fire Damage Mult', - {136} 'Apply Bloody Mess Spell', - {137} 'Mod VATS Critical Fill Chance On Bank', - {138} 'Mod VATS Critical Fill Chance On Use', - {139} 'Set VATS Critical Fill On AP Reward', - {140} 'Set VATS Critical Fill On Stranger', - {141} 'Mod Gun Range Mult', - {142} 'Mod Scope Hold Breath AP Drain Mult', - {143} 'Set Force Decapitate', - {144} 'Mod VATS Shoot Explosive Damage Mult', - {145} 'Mod Scrounger Fill Ammo Chance', - {146} 'Set Can Explode Pants', - {147} 'Set VATS Penetration Full Damage', - {148} 'Mod VATS Gun-Fu 2nd Target Dmg Mult', - {149} 'Mod VATS Gun-Fu 3rd Target Dmg Mult', - {150} 'Mod VATS Gun-Fu 4th+ Target Dmg Mult', - {151} 'Mod VATS Blitz Max Distance', - {152} 'Set VATS Blitz Max Dmg Mult', - {153} 'Mod VATS Blitz Dmg Bonus Dist', - {154} 'Mod Bash Critical Chance', - {155} 'VATS Apply Paralyzing Palm Spell', - {156} 'Null Function' - ]); - - wbEquipType := wbFlags([ - {0x00000001} 'Hand To Hand Melee', - {0x00000002} 'One Hand Sword', - {0x00000004} 'One Hand Dagger', - {0x00000008} 'One Hand Axe', - {0x00000010} 'One Hand Mace', - {0x00000020} 'Two Hand Sword', - {0x00000040} 'Two Hand Axe', - {0x00000080} 'Bow', - {0x00000100} 'Staff', - {0x00000200} 'Gun', - {0x00000400} 'Grenade', - {0x00000800} 'Mine', - {0x00001000} 'Spell', - {0x00002000} 'Shield', - {0x00004000} 'Torch' - ], True); - - wbEmotionTypeEnum := wbEnum([ - {0} 'Neutral', - {1} 'Anger', - {2} 'Disgust', - {3} 'Fear', - {4} 'Sad', - {5} 'Happy', - {6} 'Surprise', - {7} 'Puzzled' - ]); - - wbFurnitureAnimTypeEnum := wbEnum([ - {0} '', - {1} 'Sit', - {2} 'Lay', - {3} '', - {4} 'Lean' - ]); - - wbFurnitureEntryTypeFlags := wbFlags([ - {0x01} 'Front', - {0x02} 'Behind', - {0x04} 'Right', - {0x08} 'Left', - {0x10} 'Up' - ]); - - wbWardStateEnum := wbEnum([ - 'None', - 'Absorb', - 'Break' - ]); - - wbEventFunctionEnum := wbEnum([ - 'GetIsID', - 'IsInList', - 'GetValue', - 'HasKeyword', - 'GetItemValue' - ]); - - // Event member names and availability are different depending on event type - // Using generic names for the last 3 of them: Form, Value1, Value2 - wbEventMemberEnum := wbEnum([], [ - $0000, 'None', - $314F, 'CreatedObject', - $314C, '(Old)Location', - $324C, '(New)Location', - $314B, 'Keyword', - $3146, 'Form', - $3156, 'Value1', - $3256, 'Value2' - ]); - - wbWeaponAnimTypeEnum := wbEnum([ - {0} 'HandToHandMelee', - {1} 'OneHandSword', - {2} 'OneHandDagger', - {3} 'OneHandAxe', - {4} 'OneHandMace', - {5} 'TwoHandSword', - {6} 'TwoHandAxe', - {7} 'Bow', - {8} 'Staff', - {9} 'Crossbow' - ]); - - wbReverbClassEnum := wbEnum([ - 'Default', - 'Class A', - 'Class B', - 'Class C', - 'Class D', - 'Class E' - ]); - - wbHitBehaviourEnum := wbEnum([ - 'Normal formula behaviour', - 'Dismember only', - 'Explode only', - 'No dismember/explode' - ]); - - wbEDID := wbString(EDID, 'Editor ID', 0, cpNormal); // not cpBenign according to Arthmoor - wbFULL := wbLStringKC(FULL, 'Name', 0, cpTranslate); - wbFULLActor := wbLStringKC(FULL, 'Name', 0, cpTranslate, False, nil{wbActorTemplateUseBaseData}); - wbFULLReq := wbLStringKC(FULL, 'Name', 0, cpTranslate, True); - wbDESC := wbLStringKC(DESC, 'Description', 0, cpTranslate); - wbDESCReq := wbLStringKC(DESC, 'Description', 0, cpTranslate, True); - wbXSCL := wbFloat(XSCL, 'Scale'); - - wbOBND := wbStruct(OBND, 'Object Bounds', [ - wbInteger('X1', itS16), - wbInteger('Y1', itS16), - wbInteger('Z1', itS16), - wbInteger('X2', itS16), - wbInteger('Y2', itS16), - wbInteger('Z2', itS16) - ]); - - wbOBNDReq := wbStruct(OBND, 'Object Bounds', [ - wbInteger('X1', itS16), - wbInteger('Y1', itS16), - wbInteger('Z1', itS16), - wbInteger('X2', itS16), - wbInteger('Y2', itS16), - wbInteger('Z2', itS16) - ], cpNormal, True); - - wbPropTypeEnum := wbEnum([ - {00} 'None', - {01} 'Object', - {02} 'String', - {03} 'Int32', - {04} 'Float', - {05} 'Bool', - {06} 'Variable', - {07} 'Struct', - {08} '', - {09} '', - {10} '', - {11} 'Array of Object', - {12} 'Array of String', - {13} 'Array of Int32', - {14} 'Array of Float', - {15} 'Array of Bool', - {16} 'Array of Variable', - {17} 'Array of Struct' - ]); - - wbScriptFlags := wbInteger('Flags', itU8, wbEnum([ - {0x00} 'Local', - {0x01} 'Inherited', - {0x02} 'Removed', - {0x03} 'Inherited and Removed' - ])); - - wbScriptPropertyObject := wbUnion('Object Union', wbScriptObjFormatDecider, [ - wbStructSK([1], 'Object v2', [ - wbInteger('Unused', itU16, nil, cpIgnore), - wbInteger('Alias', itS16, wbScriptObjectAliasToStr, wbStrToAlias), - wbFormID('FormID') - ], [2, 1, 0]), - wbStructSK([1], 'Object v1', [ - wbFormID('FormID'), - wbInteger('Alias', itS16, wbScriptObjectAliasToStr, wbStrToAlias), - wbInteger('Unused', itU16, nil, cpIgnore) - ]) - ]); - - wbScriptPropertyStruct := - wbArrayS('Struct', wbStructSK([0], 'Member', [ - wbLenString('memberName', 2), - wbInteger('Type', itU8, wbPropTypeEnum, cpNormal, False, nil, wbScriptPropertyTypeAfterSet), - wbInteger('Flags', itU8, wbEnum([ - {0x00} '', - {0x01} 'Edited', - {0x02} '', - {0x03} 'Removed' - ])), - wbUnion('Value', wbScriptPropertyStructMemberDecider, [ - {00} wbNull, - {01} wbScriptPropertyObject, - {02} wbLenString('String', 2), - {03} wbInteger('Int32', itS32), - {04} wbFloat('Float'), - {05} wbInteger('Bool', itU8, wbBoolEnum), - {11} wbArray('Array of Object', wbScriptPropertyObject, -1), - {12} wbArray('Array of String', wbLenString('Element', 2), -1), - {13} wbArray('Array of Int32', wbInteger('Element', itS32), -1), - {14} wbArray('Array of Float', wbFloat('Element'), -1), - {15} wbArray('Array of Bool', wbInteger('Element', itU8, wbBoolEnum), -1) - ]) - ]), -1, cpNormal, False); - - wbScriptProperties := - wbArrayS('Properties', wbStructSK([0], 'Property', [ - wbLenString('propertyName', 2), - wbInteger('Type', itU8, wbPropTypeEnum, cpNormal, False, nil, wbScriptPropertyTypeAfterSet), - wbInteger('Flags', itU8, wbEnum([ - {0x00} '', - {0x01} 'Edited', - {0x02} '', - {0x03} 'Removed' - ])), - wbUnion('Value', wbScriptPropertyDecider, [ - {00} wbNull, - {01} wbScriptPropertyObject, - {02} wbLenString('String', 2), - {03} wbInteger('Int32', itS32), - {04} wbFloat('Float'), - {05} wbInteger('Bool', itU8, wbBoolEnum), - {06} wbScriptPropertyStruct, // Variable. No idea if possible or how to decode, leaving like that for the moment - {07} wbScriptPropertyStruct, - {11} wbArray('Array of Object', wbScriptPropertyObject, -1), - {12} wbArray('Array of String', wbLenString('Element', 2), -1), - {13} wbArray('Array of Int32', wbInteger('Element', itS32), -1), - {14} wbArray('Array of Float', wbFloat('Element'), -1), - {15} wbArray('Array of Bool', wbInteger('Element', itU8, wbBoolEnum), -1), - {17} wbArray('Array of Struct', wbScriptPropertyStruct, -1) - ]) - ]), -2, cpNormal, False, nil, nil, nil, False); - - wbScriptEntry := wbStructSK([0], 'Script', [ - wbLenString('scriptName', 2), - wbScriptFlags, - wbScriptProperties - ]); - - wbScriptFragmentsInfo := wbStruct('Script Fragments', [ - wbInteger('Unknown', itS8), - wbInteger('Flags', itU8, wbFlags([ - {1} 'OnBegin', - {2} 'OnEnd' - ])), - wbScriptEntry, - wbArray('Fragments', // Do NOT sort, ordered OnBegin, OnEnd - wbStruct('Fragment', [ - wbInteger('Unknown', itS8), - wbLenString('scriptName', 2), - wbLenString('fragmentName', 2) - ]), [], wbScriptFragmentsInfoCounter) - ]); - - wbScriptFragmentsPack := wbStruct('Script Fragments', [ - wbInteger('Unknown', itS8), - wbInteger('Flags', itU8, wbFlags([ - {1} 'OnBegin', - {2} 'OnEnd', - {4} 'OnChange' - ])), - wbScriptEntry, - wbArray('Fragments', // Do NOT sort, ordered OnBegin, OnEnd, OnChange - wbStruct('Fragment', [ - wbInteger('Unknown', itS8), - wbLenString('scriptName', 2), - wbLenString('fragmentName', 2) - ]), [], wbScriptFragmentsPackCounter) - ]); - - wbScriptFragmentsQuest := wbStruct('Script Fragments', [ - wbInteger('Unknown', itS8), - wbInteger('fragmentCount', itU16), - wbLenString('scriptName', 2), - // if scriptName = "" then no Flags and Properties - wbUnion('Script', wbScriptFragmentsEmptyScriptDecider, [ - wbStruct('Script Data', [ - wbScriptFlags, - wbScriptProperties - ]), -// Quest [000179EF] -// Quest [000792CA] "Merchant Dialogue System" -// Quest [00091FE1] -// MQ101KelloggSequence "Kellogg Sequence in Vault 111" [QUST:000D3997] -// DialogueGlowingSeaAtom "Children of the Atom Dialogue" [QUST:0012DB31] -// BoSIdleHandlerQuest [QUST:00157460] - wbNull - ]), - wbArrayS('Fragments', - wbStructSK([0, 2], 'Fragment', [ - wbInteger('Quest Stage', itU16), - wbInteger('Unknown', itS16), - wbInteger('Quest Stage Index', itS32), - wbInteger('Unknown', itS8), - wbLenString('scriptName', 2), - wbLenString('fragmentName', 2) - ]), - wbScriptFragmentsQuestCounter) - ]); - - wbScriptFragmentsScen := wbStruct('Script Fragments', [ - wbInteger('Unknown', itS8), - wbInteger('Flags', itU8, wbFlags([ - {1} 'OnBegin', - {2} 'OnEnd' - ])), - wbScriptEntry, - wbArray('Fragments', // Do NOT sort, ordered OnBegin, OnEnd - wbStruct('Fragment', [ - wbInteger('Unknown', itS8), - wbLenString('scriptName', 2), - wbLenString('fragmentName', 2) - ]), [], wbScriptFragmentsSceneCounter), - wbArray('Phase Fragments', - wbStructSK([0, 1], 'Phase Fragment', [ - wbInteger('Phase Flag', itU8, wbFlags([ - {1} 'OnStart', - {2} 'OnCompletion' - ])), - wbInteger('Phase Index', itU8), - wbInteger('Unknown', itS16), - wbInteger('Unknown', itS8), - wbInteger('Unknown', itS8), - wbLenString('scriptName', 2), - wbLenString('fragmentName', 2) - ]), -2) - ]); - - wbScriptFragments := wbStruct('Script Fragments', [ - wbInteger('Unknown', itS8), - wbScriptEntry, - wbArrayS('Fragments', - wbStructSK([0], 'Fragment', [ - wbInteger('Fragment Index', itU16), - wbInteger('Unknown', itS16), - wbInteger('Unknown', itS8), - wbLenString('scriptName', 2), - wbLenString('fragmentName', 2) - ]), -2) - ]); - - {>>> http://www.uesp.net/wiki/Tes5Mod:Mod_File_Format/VMAD_Field <<<} - - wbVMAD := wbStruct(VMAD, 'Virtual Machine Adapter', [ - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Scripts', wbScriptEntry, -2, cpNormal, False, nil, nil, nil, False) - ]); - - wbVMADFragmentedPERK := wbStruct(VMAD, 'Virtual Machine Adapter', [ - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Scripts', wbScriptEntry, -2, cpNormal, False, nil, nil, nil, False), - wbScriptFragments - ], cpNormal, False, nil, 3); - - wbVMADFragmentedPACK := wbStruct(VMAD, 'Virtual Machine Adapter', [ - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Scripts', wbScriptEntry, -2, cpNormal, False, nil, nil, nil, False), - wbScriptFragmentsPack - ], cpNormal, False, nil, 3); - - wbVMADFragmentedQUST := wbStruct(VMAD, 'Virtual Machine Adapter', [ - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Scripts', wbScriptEntry, -2, cpNormal, False, nil, nil, nil, False), - wbScriptFragmentsQuest, - wbArrayS('Aliases', wbStructSK([0], 'Alias', [ - wbScriptPropertyObject, - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Alias Scripts', wbScriptEntry, -2) - ]), -2) - ], cpNormal, False, nil, 3); - - wbVMADFragmentedSCEN := wbStruct(VMAD, 'Virtual Machine Adapter', [ - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Scripts', wbScriptEntry, -2, cpNormal, False, nil, nil, nil, False), - wbScriptFragmentsScen - ], cpNormal, False, nil, 3); - - wbVMADFragmentedINFO := wbStruct(VMAD, 'Virtual Machine Adapter', [ - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Scripts', wbScriptEntry, -2, cpNormal, False, nil, nil, nil, False), - wbScriptFragmentsInfo - ], cpNormal, False, nil, 3); - - wbAttackData := wbRStructSK([1], 'Attack', [ - wbStruct(ATKD, 'Attack Data', [ - wbFloat('Damage Mult'), - wbFloat('Attack Chance'), - wbFormIDCk('Attack Spell', [SPEL, NULL]), - wbInteger('Attack Flags', itU32, wbFlags([ - {0x00000001} 'Ignore Weapon', - {0x00000002} 'Bash Attack', - {0x00000004} 'Power Attack', - {0x00000008} 'Charge Attack', - {0x00000010} 'Rotating Attack', - {0x00000020} 'Continuous Attack', - {0x00000040} 'Unknown 6', - {0x00000080} 'Unknown 7', - {0x00000100} 'Unknown 8', - {0x00000200} 'Unknown 9', - {0x00000400} 'Unknown 10', - {0x00000800} 'Unknown 11', - {0x00001000} 'Unknown 12', - {0x00002000} 'Unknown 13', - {0x00004000} 'Unknown 14', - {0x00008000} 'Unknown 15', - {0x00010000} 'Unknown 16', - {0x00020000} 'Unknown 17', - {0x00040000} 'Unknown 18', - {0x00080000} 'Unknown 19', - {0x00100000} 'Unknown 20', - {0x00200000} 'Unknown 21', - {0x00400000} 'Unknown 22', - {0x00800000} 'Unknown 23', - {0x01000000} 'Unknown 24', - {0x02000000} 'Unknown 25', - {0x04000000} 'Unknown 26', - {0x08000000} 'Unknown 27', - {0x10000000} 'Unknown 28', - {0x20000000} 'Unknown 29', - {0x40000000} 'Unknown 30', - {0x80000000} 'Override Data' - ])), - wbFloat('Attack Angle'), - wbFloat('Strike Angle'), - wbFloat('Stagger'), - wbFloat('Knockdown'), - wbFloat('Recovery Time'), - wbFloat('Action Points Mult'), - wbInteger('Stagger Offset', itS32) - ]), - wbString(ATKE, 'Attack Event'), - wbFormIDCk(ATKW, 'Weapon Slot', [EQUP]), - wbFormIDCk(ATKS, 'Required Slot', [EQUP]), - wbString(ATKT, 'Description') - ], []); - - wbLocationEnum := wbEnum([ - {0} 'Near reference', // string dump: '%s' in '%s' radius %u - {1} 'In cell', // string dump: In cell '%s' - {2} 'Near package start location', // string dump: Near package start location, radius %u - {3} 'Near editor location', // string dump: Near editor location, radius %u - {4} 'Object ID', - {5} 'Object Type', - {6} 'Near linked reference', // string dump: Near linked reference, radius %u%s%s - {7} 'At package location', // string dump: At package location, radius %u - {8} 'Alias (reference)', // string dump: Alias: %s [item #%u], radius %u - {9} 'Alias (location)', // string dump: Alias: %s, radius %u - {10} 'Target', // string dump: - {11} 'Target (location)', // string dump: Target: %s, radius %u - {12} 'Near self', // Near Self, radius %u - {13} 'Near Editor Location Cell', - {14} 'Alias (ref collection)' - ]); - - wbObjectTypeEnum := wbEnum([ - { 0} ' NONE', - { 1} 'Activators', - { 2} 'Armor', - { 3} 'Books', - { 4} 'Containers', - { 5} 'Doors', - { 6} 'Ingredients', - { 7} 'Lights', - { 8} 'Miscellaneous', - { 9} 'Flora', - {10} 'Furniture', - {11} 'Weapons: Any', - {12} 'Ammo', - {13} 'Keys', - {14} 'Alchemy', - {15} 'Food', - {16} 'Clothing', - {17} 'All: Wearable', - {18} 'Weapons: NONE', - {19} 'Weapons: Melee', - {20} 'Weapons: Ranged', - {21} 'Spells: Any', - {22} 'Spells: Range Target', - {23} 'Spells: Range Touch', - {24} 'Spells: Range Self', - {25} 'Actors: Any', - {26} 'Furniture: Beds', - {27} 'Furniture: Chairs', - {28} 'Shouts', - {29} 'Headtrack Markers' - ]); - - wbPLDT := wbStruct(PLDT, 'Location', [ - wbInteger('Type', itS32, wbLocationEnum), - wbUnion('Location Value', wbTypeDecider, [ - {0} wbFormIDCkNoReach('Reference', sigReferences), - {1} wbFormIDCkNoReach('Cell', [NULL, CELL]), - {2} wbByteArray('Near Package Start Location', 4, cpIgnore), - {3} wbByteArray('Near Editor Location', 4, cpIgnore), - {4} wbFormIDCkNoReach('Object ID', [NULL, ACTI, DOOR, STAT, MSTT, FURN, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, OMOD, BOOK, NOTE, KEYM, ALCH, INGR, LIGH, FACT, FLST, IDLM, TXST, PROJ]), - {5} wbInteger('Object Type', itU32, wbObjectTypeEnum), - {6} wbFormIDCk('Keyword', [NULL, KYWD]), - {7} wbByteArray('Unused', 4, cpIgnore), - {8} wbInteger('Ref Alias', itS32, wbPackageLocationAliasToStr, wbStrToAlias), - {9} wbInteger('Loc Alias', itS32, wbPackageLocationAliasToStr, wbStrToAlias), - {10} wbInteger('Interrupt Data', itU32), - {11} wbInteger('Packdata Target', itU32), - {12} wbByteArray('Unknown', 4, cpIgnore), - {13} wbByteArray('Unknown', 4), - {14} wbInteger('Ref Collection Alias', itS32, wbPackageLocationAliasToStr, wbStrToAlias) - ]), - wbInteger('Radius', itS32), - wbInteger('Collection Index', itU32) - ], cpNormal, False, nil, 3); - - wbPLVD := wbStruct(PLVD, 'Location', [ - wbInteger('Type', itS32, wbLocationEnum), - wbUnion('Location Value', wbTypeDecider, [ - {0} wbFormIDCkNoReach('Reference', sigReferences), - {1} wbFormIDCkNoReach('Cell', [NULL, CELL]), - {2} wbByteArray('Near Package Start Location', 4, cpIgnore), - {3} wbByteArray('Near Editor Location', 4, cpIgnore), - {4} wbFormIDCkNoReach('Object ID', [NULL, ACTI, DOOR, STAT, MSTT, FURN, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, OMOD, BOOK, NOTE, KEYM, ALCH, INGR, LIGH, FACT, FLST, IDLM, TXST, PROJ]), - {5} wbInteger('Object Type', itU32, wbObjectTypeEnum), - {6} wbFormIDCk('Keyword', [NULL, KYWD]), - {7} wbByteArray('Unused', 4, cpIgnore), - {8} wbInteger('Ref Alias', itS32, wbPackageLocationAliasToStr, wbStrToAlias), - {9} wbInteger('Loc Alias', itS32, wbPackageLocationAliasToStr, wbStrToAlias), - {10} wbInteger('Interrupt Data', itU32), - {11} wbInteger('Packdata Target', itU32), - {12} wbByteArray('Unknown', 4, cpIgnore), - {13} wbByteArray('Unknown', 4), - {14} wbInteger('Ref Collection Alias', itS32, wbPackageLocationAliasToStr, wbStrToAlias) - ]), - wbInteger('Radius', itS32), - wbInteger('Collection Index', itU32) - ], cpNormal, False, nil, 3); - - wbTargetData := wbStruct('Target Data', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Specific Reference', - {1} 'Object ID', - {2} 'Object Type', - {3} 'Linked Reference', - {4} 'Ref Alias', - {5} 'Interrupt Data', - {6} 'Self', - {7} 'Keyword', - {8} 'Unknown 8' - ]), cpNormal, False, nil, nil, 2), - wbUnion('Target', wbTypeDecider, [ - {0} wbFormIDCkNoReach('Reference', sigReferences, True), - {1} wbFormIDCkNoReach('Object ID', [NULL, ACTI, DOOR, STAT, MSTT, FURN, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, OMOD, BOOK, NOTE, KEYM, ALCH, INGR, LIGH, FACT, FLST, IDLM, TXST, PROJ]), - {2} wbInteger('Object Type', itU32, wbObjectTypeEnum), - {3} wbFormIDCk('Keyword', [KYWD, NULL]), - {4} wbInteger('Alias', itS32, wbPackageLocationAliasToStr, wbStrToAlias), - {5} wbInteger('Interrupt Data', itU32), - {6} wbByteArray('Unknown', 4, cpIgnore), - {7} wbFormIDCk('Keyword', [KYWD, NULL]), - {8} wbByteArray('Unknown', 4, cpIgnore) - ]), - wbInteger('Count / Distance', itS32) - ]); - - wbEITM := wbFormIDCk(EITM, 'Object Effect', [ENCH, SPEL]); - - wbPosRot := - wbStruct('Position/Rotation', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ]); - - wbDATAPosRot := - wbStruct(DATA, 'Position/Rotation', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ], cpNormal, True); - - wbMODS := wbFormIDCk(MODS, 'Material Swap', [MSWP]); - wbMO2S := wbFormIDCk(MO2S, 'Material Swap', [MSWP]); - wbMO3S := wbFormIDCk(MO3S, 'Material Swap', [MSWP]); - wbMO4S := wbFormIDCk(MO4S, 'Material Swap', [MSWP]); - wbMO5S := wbFormIDCk(MO5S, 'Material Swap', [MSWP]); - - wbMODF := wbUnknown(MODF); - wbMO2F := wbUnknown(MO2F); - wbMO3F := wbUnknown(MO3F); - wbMO4F := wbUnknown(MO4F); - wbMO5F := wbUnknown(MO5F); - - wbMODC := wbFloat(MODC, 'Color Remapping Index'); - wbMO2C := wbFloat(MO2C, 'Color Remapping Index'); - wbMO3C := wbFloat(MO3C, 'Color Remapping Index'); - wbMO4C := wbFloat(MO4C, 'Color Remapping Index'); - wbMO5C := wbFloat(MO5C, 'Color Remapping Index'); - - wbMODT := wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow); - wbDMDT := wbByteArray(DMDT, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow); - {wbMODT := wbStruct(MODT, 'Texture Files Hashes', [ - wbInteger('Number of headers', itU32), - wbInteger('Textures count', itU32), - wbByteArray('Unused', 4), - wbInteger('Unique textures count', itU32), - wbInteger('Materials count', itU32), - wbArray('Hashes', wbStruct('Hash', [ - wbByteArray('Flags', 4), - wbString('Type', 4), - wbByteArray('Texture hash', 4) - ])) - ]);} - - wbMODL := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbMODT, - wbMODS, - wbMODC, - wbMODF - ], [], cpNormal, False, nil, True); - - wbMODLActor := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbMODT, - wbMODS - ], [], cpNormal, False, nil{wbActorTemplateUseModelAnimation}, True); - - wbMODLReq := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbMODT, - wbMODS, - wbMODC, - wbMODF - ], [], cpNormal, True, nil, True); - - wbDMDS := wbFormIDCk(DMDS, 'Material Swap', [MSWP]); - wbDMDC := wbFloat(DMDC, 'Color Remapping Index'); - - wbDEST := wbRStruct('Destructible', [ - wbStruct(DEST, 'Header', [ - wbInteger('Health', itS32), - wbInteger('DEST Count', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'VATS Targetable', - 'Large Actor Destroys' - ])), - wbByteArray('Unknown', 2) - ]), - wbArrayS(DAMC, 'Resistances', wbStructSK([0], 'Resistance', [ - wbFormIDCk('Damage Type', [DMGT]), - wbInteger('Value', itU32) - ])), - wbRArray('Stages', - wbRStruct('Stage', [ - wbStruct(DSTD, 'Destruction Stage Data', [ - wbInteger('Health %', itU8), - wbInteger('Index', itU8), - wbInteger('Model Damage Stage', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'Cap Damage', - 'Disable', - 'Destroy', - 'Ignore External Dmg', - 'Becomes Dynamic' - ])), - wbInteger('Self Damage per Second', itS32), - wbFormIDCk('Explosion', [EXPL, NULL]), - wbFormIDCk('Debris', [DEBR, NULL]), - wbInteger('Debris Count', itS32) - ], cpNormal, True), - wbString(DSTA, 'Sequence Name'), - wbRStructSK([0], 'Model', [ - wbString(DMDL, 'Model Filename', 0, cpNormal, True), - wbDMDT, - wbDMDC, - wbDMDS - ], [], cpNormal, False, nil, True), - wbEmpty(DSTF, 'End Marker', cpNormal, True) - ], [], cpNormal, False, nil) - ) - ], [], cpNormal, False, nil); - - wbDESTActor := wbRStruct('Destructible', [ - wbStruct(DEST, 'Header', [ - wbInteger('Health', itS32), - wbInteger('Count', itU8), - wbInteger('VATS Targetable', itU8, wbBoolEnum), - wbByteArray('Unknown', 2) - ]), - wbRArray('Stages', // Begin Stage Array - wbRStruct('Stage', [ // Begin Stage RStruct - wbStruct(DSTD, 'Destruction Stage Data', [ // Begin DSTD - wbInteger('Health %', itU8), - wbInteger('Index', itU8), - wbInteger('Damage Stage', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'Cap Damage', - 'Disable', - 'Destroy' - ])), - wbInteger('Self Damage per Second', itS32), - wbFormIDCk('Explosion', [EXPL, NULL]), - wbFormIDCk('Debris', [DEBR, NULL]), - wbInteger('Debris Count', itS32) - ], cpNormal, True), // End DSTD - wbRStructSK([0], 'Model', [ // Begin DMDL - wbString(DMDL, 'Model Filename') - ], []), // End DMDL - wbDMDT, - wbDMDC, - wbDMDS, - wbEmpty(DSTF, 'End Marker', cpNormal, True) - ], []) // Begin Stage RStruct - ) // End Stage Array - ], [], cpNormal, False, nil{wbActorTemplateUseModelAnimation}); - - wbXLOD := wbArray(XLOD, 'Distant LOD Data', wbFloat('Unknown'), 3); - - wbXESP := wbStruct(XESP, 'Enable Parent', [ - wbFormIDCk('Reference', sigReferences), - wbInteger('Flags', itU8, wbFlags([ - 'Set Enable State to Opposite of Parent', - 'Pop In' - ])), - wbByteArray('Unused', 3, cpIgnore) - ]); - - wbPDTO := - wbStruct(PDTO, 'Topic Data', [ - wbInteger('Type', itU32, wbEnum([ - 'Topic Ref', - 'Topic Subtype' - ])), - wbUnion('Data', wbTypeDecider, [ - wbFormIDCk('Topic', [DIAL, NULL]), - wbString('Subtype', 4) - ]) - ]); - - wbPDTOs := wbRArray('Topic', wbPDTO, cpNormal, False, nil); - - wbXLCM := wbInteger(XLCM, 'Level Modifier', itS32, wbEnum([ - 'Easy', - 'Medium', - 'Hard', - 'Very Hard' - ])); - - if wbSimpleRecords then begin - wbMaxHeightDataCELL := wbByteArray(MHDT, 'Max Height Data', 0, cpNormal); - wbMaxHeightDataWRLD := wbByteArray(MHDT, 'Max Height Data', 0, cpNormal); - end - else begin - wbMaxHeightDataCELL := wbStruct(MHDT, 'Max Height Data', [ - wbFloat('Offset'), - wbArray('Rows', - wbByteArray('Columns', 32) - // way too verbose for no practical use - //wbStruct('Row', [ wbArray('Columns', wbInteger('Column', itU8), 32) ]) - , 32) - ]); - wbMaxHeightDataWRLD := wbStruct(MHDT, 'Max Height Data', [ - wbStruct('Min', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbStruct('Max', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbByteArray('Cell Data', 0) - // way too verbose for no practical use - {wbArray('Cell Data', wbStruct('Quad Height', [ - wbInteger('Bottom Left', itU8), - wbInteger('Bottom Right', itU8), - wbInteger('Top Left', itU8), - wbInteger('Top Right', itU8) - ]))} - ]); - end; - - if wbSimpleRecords then - wbOFST := wbByteArray(OFST, 'Offset Data') - else - wbOFST := wbArray(OFST, 'Offset Data', wbArray('Rows', wbInteger('Offset', itU32), wbOffsetDataColsCounter), 0); - - wbXOWN := wbStruct(XOWN, 'Owner', [ - wbFormIDCkNoReach('Owner', [FACT, ACHR, NPC_]), - wbByteArray('Unknown', 4), - wbInteger('Flags', itU8, wbFlags(['No Crime'])), - wbByteArray('Unknown', 3) - ]); - wbXRNK := wbInteger(XRNK, 'Owner Faction Rank', itS32); - - if wbSimpleRecords then - wbNVNM := wbStruct(NVNM, 'Navmesh Geometry', [ - wbInteger('Version', itU32), - wbByteArray('Magic', 4), - wbFormIDCk('Parent Worldspace', [WRLD, NULL]), - wbUnion('Parent', wbNVNMParentDecider, [ - wbStruct('Coordinates', [ - wbInteger('Grid Y', itS16), - wbInteger('Grid X', itS16) - ]), - wbFormIDCk('Parent Cell', [CELL]) - ]), - wbByteArray('Vertices and Triangles') - ]) - else - wbNVNM := wbStruct(NVNM, 'Navmesh Geometry', [ - wbInteger('Version', itU32), // Changes how the struct is loaded, should be 15 in FO4 - wbStruct('Pathing Cell', [ - wbInteger('Magic', itU32), // This looks like a magic number (always $A5E9A03C), loaded with the parents - wbFormIDCk('Parent Worldspace', [WRLD, NULL]), - wbUnion('Parent', wbNVNMParentDecider, [ // same as TES5 cell if worldspace is null or Grid X Y - wbStruct('Coordinates', [ - wbInteger('Grid Y', itS16), - wbInteger('Grid X', itS16) - ]), - wbFormIDCk('Parent Cell', [CELL]) - ]) - ]), - wbArray('Vertices', wbStruct('Vertex', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), -1), - wbArray('Triangles', - wbStruct('Triangle', [ - wbInteger('Vertex 0', itS16), - wbInteger('Vertex 1', itS16), - wbInteger('Vertex 2', itS16), - wbInteger('Edge 0-1', itS16), - wbInteger('Edge 1-2', itS16), - wbInteger('Edge 2-0', itS16), - wbFloat('Height'), // this and next if form ver > 57 - wbInteger('Unknown', itU8, wbFlags([])), // flags - wbInteger('Unknown', itU32) // encoding or flags - ]) - , -1), - wbArray('Edge Links', - wbStruct('Edge Link', [ - wbInteger('Unknown', itU32), - wbFormIDCk('Mesh', [NAVM]), // those last three are a structure - wbInteger('Triangle', itS16), - wbInteger('Unknown', itU8) // if form ver > 127 - ]) - , -1), - wbArray('Door Triangles', - wbStruct('Door Triangle', [ - wbInteger('Triangle before door', itU16), // I would say itU16 - wbInteger('DTUnknown', itU32), // used as a key to lookup in a map of PathingDoor - wbUnion('Door', wbDoorTriangleDoorTriangleDecider, [wbNull, wbFormIDCk('Door', [REFR])]) - ]) - , -1), - wbArray('Unknown 5', // if navmesh version gt 12 - wbStruct('Unknown', [ - wbInteger('Unknown', itU16), - wbInteger('Unknown', itU16), - wbInteger('Unknown', itU32 {, wbFlags([]) ? }) - ]) - , -1), - wbArray('Unknown 6', - wbStruct('Uknown', [ - wbInteger('Unknown', itU16), - wbInteger('Unknown', itU16) - ]) - , -1), - wbArray('Unknown 7', // if navmesh version gt 11 - wbStruct('Unknown', [ - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbInteger('Unknown', itU16), - wbInteger('Unknown', itU32) - ]) - , -1), - wbStruct('Navmesh Grid', [ - wbInteger('Navmesh Grid Size', itU32), // max 12 - wbFloat('Max X Distance'), - wbFloat('Max Y Distance'), - wbFloat('Min X'), - wbFloat('Min Y'), - wbFloat('Min Z'), - wbFloat('Max X'), - wbFloat('Max Y'), - wbFloat('Max Z'), - wbArray('NavMesh Grid Arrays', wbArray('NavMeshGridCell', wbInteger('Triangle', itS16), -1)) // There are NavMeshGridSize^2 arrays to load - ]) - ]); - -end; - -procedure DefineFO4b; -begin - - wbRecord(ACHR, 'Placed NPC', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000200} 9, 'Starts Dead', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x02000000} 25, 'No AI Acquire', - {0x20000000} 29, 'Don''t Havok Settle' - ], True, True)), [ - wbEDID, - wbVMAD, - wbFormIDCk(NAME, 'Base', [NPC_], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - {--- Ragdoll ---} - wbXRGD, - wbXRGB, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbPDTOs, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal) - ], []), - - {--- Leveled Actor ----} - wbXLCM, - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbInteger(XHLT, 'Health %', itU32), - - wbRArrayS('Linked References', wbStructSK(XLKR, [0], 'Linked Reference', [ - wbFormIDCk('Keyword/Ref', [KYWD, PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA, NULL]), - wbFormIDCk('Ref', sigReferences) - ], cpNormal, False, nil, 1)), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', sigReferences), - wbFloat('Delay') - ]) - ) - ], []), - - wbEmpty(XLKT, 'Linked Ref Transient'), - wbFormIDCk(XRFG, 'Reference Group', [RFGP]), - wbFormIDCk(XLYR, 'Layer', [LAYR]), - wbFormIDCk(XMSP, 'Material Swap', [MSWP]), - - wbFormIDCk(XLCN, 'Persistent Location', [LCTN]), - wbFormIDCk(XLRL, 'Location Reference', [LCRT, LCTN, NULL], False, cpBenignIfAdded), - wbArray(XLRT, 'Location Ref Type', wbFormIDCk('Ref', [LCRT, NULL])), - - wbEmpty(XIS2, 'Ignored by Sandbox'), - wbRArray('Spline Connection', wbStruct(XPLK, 'Link', [ - wbFormIDCk('Ref', [REFR, ACHR]), - wbUnknown // always 00 00 00 00 so far in DLCWorkshop03.esm - ])), - wbFloat(XHTW, 'Head-Tracking Weight'), - wbFloat(XFVC, 'Favor Cost'), - - {--- Enable Parent ---} - wbXESP, - - {--- Ownership ---} - wbXOWN, - wbXRNK, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', sigReferences), - - {--- Flags ---} - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot, - wbString(MNAM, 'Comments') - ], True, wbPlacedAddInfo); - - wbVatsValueFunctionEnum := - wbEnum([ - { 0} 'Weapon Is', - { 1} 'Weapon In List', - { 2} 'Target Is', - { 3} 'Target In List', - { 4} 'Target Distance', - { 5} 'Target Part', - { 6} 'VATS Action', - { 7} 'Is Success', - { 8} 'Is Critical', - { 9} 'Critical Effect Is', - {10} 'Critical Effect In List', - {11} 'Is Fatal', - {12} 'Explode Part', - {13} 'Dismember Part', - {14} 'Cripple Part', - {15} 'Weapon Type Is', - {16} 'Is Stranger', - {17} 'Is Paralyzing Palm', - {18} 'Projectile Type Is', - {19} 'Delivery Type Is', - {20} 'Casting Type Is' - ]); - - wbActorValueEnum := - wbEnum([ - {00} 'Aggression', - {01} 'Confidence', - {02} 'Energy', - {03} 'Morality', - {04} 'Mood', - {05} 'Assistance', - {06} 'One-Handed', - {07} 'Two-Handed', - {08} 'Archery', - {09} 'Block', - {10} 'Smithing', - {11} 'Heavy Armor', - {12} 'Light Armor', - {13} 'Pickpocket', - {14} 'Lockpicking', - {15} 'Sneak', - {16} 'Alchemy', - {17} 'Speech', - {18} 'Alteration', - {19} 'Conjuration', - {20} 'Destruction', - {21} 'Illusion', - {22} 'Restoration', - {23} 'Enchanting', - {24} 'Health', - {25} 'Magicka', - {26} 'Stamina', - {27} 'Heal Rate', - {28} 'Magicka Rate', - {29} 'Stamina Rate', - {30} 'Speed Mult', - {31} 'Inventory Weight', - {32} 'Carry Weight', - {33} 'Critical Chance', - {34} 'Melee Damage', - {35} 'Unarmed Damage', - {36} 'Mass', - {37} 'Voice Points', - {38} 'Voice Rate', - {39} 'Damage Resist', - {40} 'Poison Resist', - {41} 'Resist Fire', - {42} 'Resist Shock', - {43} 'Resist Frost', - {44} 'Resist Magic', - {45} 'Resist Disease', - {46} 'Unknown 46', - {47} 'Unknown 47', - {48} 'Unknown 48', - {49} 'Unknown 49', - {50} 'Unknown 50', - {51} 'Unknown 51', - {52} 'Unknown 52', - {53} 'Paralysis', - {54} 'Invisibility', - {55} 'Night Eye', - {56} 'Detect Life Range', - {57} 'Water Breathing', - {58} 'Water Walking', - {59} 'Unknown 59', - {60} 'Fame', - {61} 'Infamy', - {62} 'Jumping Bonus', - {63} 'Ward Power', - {64} 'Right Item Charge', - {65} 'Armor Perks', - {66} 'Shield Perks', - {67} 'Ward Deflection', - {68} 'Variable01', - {69} 'Variable02', - {70} 'Variable03', - {71} 'Variable04', - {72} 'Variable05', - {73} 'Variable06', - {74} 'Variable07', - {75} 'Variable08', - {76} 'Variable09', - {77} 'Variable10', - {78} 'Bow Speed Bonus', - {79} 'Favor Active', - {80} 'Favors Per Day', - {81} 'Favors Per Day Timer', - {82} 'Left Item Charge', - {83} 'Absorb Chance', - {84} 'Blindness', - {85} 'Weapon Speed Mult', - {86} 'Shout Recovery Mult', - {87} 'Bow Stagger Bonus', - {88} 'Telekinesis', - {89} 'Favor Points Bonus', - {90} 'Last Bribed Intimidated', - {91} 'Last Flattered', - {92} 'Movement Noise Mult', - {93} 'Bypass Vendor Stolen Check', - {94} 'Bypass Vendor Keyword Check', - {95} 'Waiting For Player', - {96} 'One-Handed Modifier', - {97} 'Two-Handed Modifier', - {98} 'Marksman Modifier', - {99} 'Block Modifier', - {100} 'Smithing Modifier', - {101} 'Heavy Armor Modifier', - {102} 'Light Armor Modifier', - {103} 'Pickpocket Modifier', - {104} 'Lockpicking Modifier', - {105} 'Sneaking Modifier', - {106} 'Alchemy Modifier', - {107} 'Speechcraft Modifier', - {108} 'Alteration Modifier', - {109} 'Conjuration Modifier', - {110} 'Destruction Modifier', - {111} 'Illusion Modifier', - {112} 'Restoration Modifier', - {113} 'Enchanting Modifier', - {114} 'One-Handed Skill Advance', - {115} 'Two-Handed Skill Advance', - {116} 'Marksman Skill Advance', - {117} 'Block Skill Advance', - {118} 'Smithing Skill Advance', - {119} 'Heavy Armor Skill Advance', - {120} 'Light Armor Skill Advance', - {121} 'Pickpocket Skill Advance', - {122} 'Lockpicking Skill Advance', - {123} 'Sneaking Skill Advance', - {124} 'Alchemy Skill Advance', - {125} 'Speechcraft Skill Advance', - {126} 'Alteration Skill Advance', - {127} 'Conjuration Skill Advance', - {128} 'Destruction Skill Advance', - {129} 'Illusion Skill Advance', - {130} 'Restoration Skill Advance', - {131} 'Enchanting Skill Advance', - {132} 'Left Weapon Speed Multiply', - {133} 'Dragon Souls', - {134} 'Combat Health Regen Multiply', - {135} 'One-Handed Power Modifier', - {136} 'Two-Handed Power Modifier', - {137} 'Marksman Power Modifier', - {138} 'Block Power Modifier', - {139} 'Smithing Power Modifier', - {140} 'Heavy Armor Power Modifier', - {141} 'Light Armor Power Modifier', - {142} 'Pickpocket Power Modifier', - {143} 'Lockpicking Power Modifier', - {144} 'Sneaking Power Modifier', - {145} 'Alchemy Power Modifier', - {146} 'Speechcraft Power Modifier', - {147} 'Alteration Power Modifier', - {148} 'Conjuration Power Modifier', - {149} 'Destruction Power Modifier', - {150} 'Illusion Power Modifier', - {151} 'Restoration Power Modifier', - {152} 'Enchanting Power Modifier', - {153} 'Dragon Rend', - {154} 'Attack Damage Mult', - {155} 'Heal Rate Mult', - {156} 'Magicka Rate Mult', - {157} 'Stamina Rate Mult', - {158} 'Werewolf Perks', - {159} 'Vampire Perks', - {160} 'Grab Actor Offset', - {161} 'Grabbed', - {162} 'Unknown 162', - {163} 'Reflect Damage' - ], [ - -1, 'None' - ]); - - wbSkillEnum := - wbEnum([ - 'Unknown 1', - 'Unknown 2', - 'Unknown 3', - 'Unknown 4', - 'Unknown 5', - 'Unknown 6', - 'One Handed', - 'Two Handed', - 'Archery', - 'Block', - 'Smithing', - 'Heavy Armor', - 'Light Armor', - 'Pickpocket', - 'Lockpicking', - 'Sneak', - 'Alchemy', - 'Speech', - 'Alteration', - 'Conjuration', - 'Destruction', - 'Illusion', - 'Restoration', - 'Enchanting' - ], [ - -1, 'None' - ]); - - wbCastEnum := wbEnum([ - {0} 'Constant Effect', - {1} 'Fire and Forget', - {2} 'Concentration', - {3} 'Scroll' - ]); - - wbTargetEnum := wbEnum([ - {0} 'Self', - {1} 'Touch', - {2} 'Aimed', - {3} 'Target Actor', - {4} 'Target Location' - ]); - - wbCastingSourceEnum := wbEnum([ - 'Left', - 'Right', - 'Voice', - 'Instant' - ]); - - wbCrimeTypeEnum := - wbEnum([ - 'Steal', - 'Pickpocket', - 'Trespass', - 'Attack', - 'Murder', - 'Escape Jail', - 'Werewolf Transformation' - ], [ - -1, 'None' - ]); - - wbKeywordTypeEnum := - wbEnum([ - {00} 'None', - {01} 'Component Tech Level', - {02} 'Attach Point', - {03} 'Component Property', - {04} 'Instantiation Filter', - {05} 'Mod Association', - {06} 'Sound', - {07} 'Anim Archetype', - {08} 'Function Call', - {09} 'Recipe Filter', - {10} 'Attraction Type', - {11} 'Dialogue Subtype', - {12} 'Quest Target', - {13} 'Anim Flavor', - {14} 'Anim Gender', - {15} 'Anim Face', - {16} 'Quest Group', - {17} 'Anim Injured', - {18} 'Dispel Effect' - ]); - - wbETYP := wbFormIDCk(ETYP, 'Equipment Type', [EQUP, NULL]); - wbETYPReq := wbFormIDCk(ETYP, 'Equipment Type', [EQUP, NULL], False, cpNormal, True); - - wbFormTypeEnum := wbEnum([], [ - 0, 'Activator', - 1, 'Armor', - 2, 'Book', - 3, 'Container', - 4, 'Door', - 5, 'Ingredient', - 6, 'Light', - 7, 'MiscItem', - 8, 'Static', - 9, 'Grass', - 10, 'Tree', - 12, 'Weapon', - 13, 'Actor', - 14, 'LeveledCharacter', - 15, 'Spell', - 16, 'Enchantment', - 17, 'Potion', - 18, 'LeveledItem', - 19, 'Key', - 20, 'Ammo', - 21, 'Flora', - 22, 'Furniture', - 23, 'Sound Marker', - 24, 'LandTexture', - 25, 'CombatStyle', - 26, 'LoadScreen', - 27, 'LeveledSpell', - 28, 'AnimObject', - 29, 'WaterType', - 30, 'IdleMarker', - 31, 'EffectShader', - 32, 'Projectile', - 33, 'TalkingActivator', - 34, 'Explosion', - 35, 'TextureSet', - 36, 'Debris', - 37, 'MenuIcon', - 38, 'FormList', - 39, 'Perk', - 40, 'BodyPartData', - 41, 'AddOnNode', - 42, 'MovableStatic', - 43, 'CameraShot', - 44, 'ImpactData', - 45, 'ImpactDataSet', - 46, 'Quest', - 47, 'Package', - 48, 'VoiceType', - 49, 'Class', - 50, 'Race', - 51, 'Eyes', - 52, 'HeadPart', - 53, 'Faction', - 54, 'Note', - 55, 'Weather', - 56, 'Climate', - 57, 'ArmorAddon', - 58, 'Global', - 59, 'Imagespace', - 60, 'Imagespace Modifier', - 61, 'Encounter Zone', - 62, 'Message', - 63, 'Constructible Object', - 64, 'Acoustic Space', - 65, 'Ragdoll', - 66, 'Script', - 67, 'Magic Effect', - 68, 'Music Type', - 69, 'Static Collection', - 70, 'Keyword', - 71, 'Location', - 72, 'Location Ref Type', - 73, 'Footstep', - 74, 'Footstep Set', - 75, 'Material Type', - 76, 'Actor Action', - 77, 'Music Track', - 78, 'Word of Power', - 79, 'Shout', - 80, 'Relationship', - 81, 'Equip Slot', - 82, 'Association Type', - 83, 'Outfit', - 84, 'Art Object', - 85, 'Material Object', - 87, 'Lighting Template', - 88, 'Shader Particle Geometry', - 89, 'Visual Effect', - 90, 'Apparatus', - 91, 'Movement Type', - 92, 'Hazard', - 93, 'SM Event Node', - 94, 'Sound Descriptor', - 95, 'Dual Cast Data', - 96, 'Sound Category', - 97, 'Soul Gem', - 98, 'Sound Output Model', - 99, 'Collision Layer', - 100, 'Scroll', - 101, 'ColorForm', - 102, 'Reverb Parameters', - 116, 'Terminal' - ]); - - wbMiscStatEnum := wbEnum([], [ - Int64($1EE71DBC), 'Animals Friended', - Int64($FCDD5011), 'Animals Killed', - Int64($366D84CF), 'Armor Improved', - Int64($8E20D7C9), 'Assaults', - Int64($B9B50725), 'Backstabs', - Int64($EA01A954), 'Bobbleheads Collected', - Int64($6932624D), 'Bright Ideas', - Int64($7FF0CC3B), 'Brotherhood of Steel Quests Completed', - Int64($FEA920AA), 'Buildings', - Int64($1F84743B), 'Caps Found', - Int64($9360004C), 'Chems Crafted', - Int64($B2A78B7A), 'Chems Taken', - Int64($53D9E9B5), 'Chests Looted', - Int64($1E258BEE), 'Computers Hacked', - Int64($3DE99B41), 'Cores Ejected', - Int64($737EAA97), 'Corpses Eaten', - Int64($40B11EFE), 'Creatures Killed', - Int64($4C4B8DF3), 'Creatures Killed DLC03', - Int64($22D5BA38), 'Critical Strikes', - Int64($3C626A90), 'Days Passed', - Int64($C5A52FD0), 'Days Survived', - Int64($45FDBB1C), 'DLC01 Quests Completed', - Int64($FA7CC7F9), 'DLC03 Locations Discovered', - Int64($AA444695), 'Dungeons Cleared', - Int64($F4E8FFD6), 'Fatman Deaths', - Int64($66DAF3CF), 'Fits of Rage', - Int64($554E59D5), 'Food', - Int64($E1EB3490), 'Food Cooked', - Int64($9311B22B), 'Food Eaten', - Int64($F947D866), 'Four Leaf Clovers', - Int64($7C586E7A), 'Fusion Cores Consumed', - Int64($2826309E), 'Game Difficulty', - Int64($A5EA7ABC), 'Grand Slams', - Int64($F5A36770), 'Grim Reaper Sprints', - Int64($52984AA4), 'Happiness', - Int64($FA024018), 'Hours Slept', - Int64($CAD2ECA1), 'Hours Waiting', - Int64($8CC5DAB6), 'HSAtomicCommand', - Int64($A2E4C1F2), 'HSAutomatron', - Int64($20F9993D), 'HSGrognak', - Int64($8D882844), 'HSJangles', - Int64($910B02C0), 'HSPipfall', - Int64($860E0723), 'HSRedMenace', - Int64($3FFA8658), 'HSZetaInvaders', - Int64($40CA9C83), 'Institute Quests Completed', - Int64($7D2E57C0), 'Intimidations', - Int64($FFE8010B), 'Investments Made', - Int64($9AF17D9D), 'Items Crafted DLC03', - Int64($CF48C0B9), 'Items Scrapped', - Int64($82F190C2), 'Items Stolen', - Int64($6D8671DD), 'Junk Collected', - Int64($110B8D2F), 'Legendary Enemies Killed', - Int64($8A24FDE2), 'Locations Discovered', - Int64($5829CC2E), 'Locks Picked', - Int64($7EA26C2D), 'Main Quests Completed', - Int64($493B803C), 'Mines Disarmed', - Int64($B1511B82), 'Minuteman Quests Completed', - Int64($98EE55DC), 'Misc Objectives Completed', - Int64($0F3315AC), 'Money Shots', - Int64($5E457DAC), 'Most Caps Carried', - Int64($D37C6909), 'Murders', - Int64($B91253A4), 'Mysterious Strabger Visits', - Int64($1DEEA18A), 'Nuka Cola Flavors Created', - Int64($9CE72536), 'Nuka World Creatures Killed', - Int64($EB0D60AC), 'Objects Built', - Int64($73AD915B), 'Pants Exploded', - Int64($53706A04), 'Paralyzing Punches', - Int64($9E78CEB3), 'People', - Int64($F22A8133), 'People Killed', - Int64($D3F632FF), 'Plants Harvested', - Int64($856FA4C1), 'PlayedFutureRetroHolotape', - Int64($F2BAC234), 'Pockets Picked', - Int64($AC69D9B9), 'Power', - Int64($0D7B8B16), 'Quests Completed', - Int64($0580BB9F), 'RadAway Taken', - Int64($D2960073), 'Rad-X Taken', - Int64($FDE20426), 'Railroad Quests Completed', - Int64($3CBF7E59), 'Ricochets', - Int64($01E1BC85), 'Robots Disabled', - Int64($2CA4ECC0), 'Robots Improved', - Int64($C8BC93BE), 'Robots Killed', - Int64($98D5710C), 'Sandman Kills', - Int64($B1AE4792), 'Side Quests Completed', - Int64($ACE470D7), 'Skill Books Read', - Int64($B556CC52), 'Sneak Attacks', - Int64($32D1B38F), 'Speach Successes', - Int64($5D6B18F1), 'Stimpacks Taken', - Int64($C5321BC5), 'Supply Lines Created', - Int64($3869002E), 'Survival Denied', - Int64($F9DEC209), 'Survival Level-Ups', - Int64($69AF5B9A), 'Synths Killed', - Int64($0A872FA3), 'Times Addicted', - Int64($7AEA9C2B), 'Trespasses', - Int64($13752285), 'Turrets Killed', - Int64($0B479511), 'Wasteland Whispers', - Int64($FCD0CCC3), 'Water', - Int64($61A5C5A9), 'Weapons Disarmed', - Int64($1D3BA844), 'Weapons Improved', - Int64($60A11697), 'Workshops Unlocked' - ]); - - wbAdvanceActionEnum := wbEnum([ - 'Normal Usage', - 'Power Attack', - 'Bash', - 'Lockpick Success', - 'Lockpick Broken' - ]); - - wbAlignmentEnum := - wbEnum([ - 'Good', - 'Neutral', - 'Evil', - 'Very Good', - 'Very Evil' - ]); - - wbAxisEnum := - wbEnum([], [ - 88, 'X', - 89, 'Y', - 90, 'Z' - ]); - - wbCriticalStageEnum := - wbEnum([ - 'None', - 'Goo Start', - 'Goo End', - 'Disintegrate Start', - 'Disintegrate End' - ]); - - wbStaggerEnum := wbEnum([ - 'None', - 'Small', - 'Medium', - 'Large', - 'Extra Large' - ]); - - wbSexEnum := wbEnum(['Male','Female']); - - wbEFID := wbFormIDCk(EFID, 'Base Effect', [MGEF]); - - wbEFIT := - wbStructSK(EFIT, [3, 4], '', [ - wbFloat('Magnitude', cpNormal, True), - wbInteger('Area', itU32), - wbInteger('Duration', itU32) - ], cpNormal, True, nil, -1, wbEFITAfterLoad); - - wbCTDA := wbRStruct('Condition', [ - wbStruct(CTDA, '', [ - wbInteger('Type', itU8, wbCtdaTypeToStr, wbCtdaTypeToInt, cpNormal, False, nil, wbCtdaTypeAfterSet), - wbByteArray('Unused', 3, cpIgnore, False, wbNeverShow), - wbUnion('Comparison Value', wbCTDACompValueDecider, [ - wbFloat('Comparison Value - Float'), - wbFormIDCk('Comparison Value - Global', [GLOB]) - ]), - wbInteger('Function', itU16, wbCTDAFunctionToStr, wbCTDAFunctionToInt), - wbByteArray('Unused', 2, cpIgnore, False, wbNeverShow), - wbUnion('Parameter #1', wbCTDAParam1Decider, [ - { unknown } - wbByteArray('Unknown', 4), - { 0 ptNone} - wbByteArray('None', 4, cpIgnore), - { 1 ptInteger} - wbInteger('Integer', itS32), - { 2 ptFloat} - wbFloat('Float'), - { 3 ptActor} - wbFormIDCkNoReach('Actor', [NULL, PLYR, ACHR, REFR]), - { 4 ptActorBase} - wbFormIDCkNoReach('Actor Base', [NPC_]), - { 5 ptActorValue} - wbActorValue, - { 6 ptAdvanceAction} - wbInteger('Player Action', itU32, wbAdvanceActionEnum), - { 7 ptAlias} - wbInteger('Alias', itS32, wbConditionAliasToStr, wbStrToAlias), - { 8 ptAlignment} - wbInteger('Alignment', itU32, wbAlignmentEnum), - { 9 ptAssociationType} - wbFormIDCk('Association Type', [ASTP]), - {10 ptAxis} - wbInteger('Axis', itU32, wbAxisEnum), - {11 ptCastingSource} - wbInteger('Casting Type', itU32, wbCastingSourceEnum), - {12 ptCell} - wbFormIDCkNoReach('Cell', [CELL]), - {13 ptClass} - wbFormIDCkNoReach('Class', [CLAS]), - {14 ptCrimeType} - wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {15 ptCriticalStage} - wbInteger('Critical Stage', itU32, wbCriticalStageEnum), - {16 ptEncounterZone} - wbFormIDCkNoReach('Encounter Zone', [ECZN]), - {17 ptEquipType} - wbFormIDCkNoReach('Equip Type', [EQUP]), - {18 ptEvent} - wbInteger('Event', itU32, wbEventFunctionAndMemberToStr, wbEventFunctionAndMemberToInt), - {19 ptEventData} - wbFormID('Event Data'), - {20 ptFaction} - wbFormIDCkNoReach('Faction', [FACT]), - {21 ptFormList} - wbFormIDCkNoReach('Form List', [FLST]), - {22 ptFormType} - wbInteger('Form Type', itU32, wbFormTypeEnum), - {23 ptFurniture} - wbFormIDCkNoReach('Furniture', [FURN, FLST]), - {24 ptFurnitureAnim} - wbInteger('Furniture Anim', itU32, wbFurnitureAnimTypeEnum), - {25 ptFurnitureEntry} - wbInteger('Furniture Entry', itU32, wbEnum([], [$010000, 'Front', $020000, 'Behind', $040000, 'Right', $80000, 'Left', $100000, 'Up'])), - {26 ptGlobal} - wbFormIDCkNoReach('Global', [GLOB]), - {27 ptIdleForm} - wbFormIDCkNoReach('Idle', [IDLE]), - {28 ptInventoryObject} - wbFormIDCkNoReach('Inventory Object', sigBaseObjects), - {29 ptKeyword} - wbFormIDCkNoReach('Keyword', [KYWD, FLST, NULL]), - {30 ptLocation} - wbFormIDCkNoReach('Location', [LCTN]), - {31 ptMagicEffect} - wbFormIDCkNoReach('Base Effect', [MGEF]), - {32 ptMagicItem} - wbFormIDCkNoReach('Effect Item', [SPEL, ENCH, ALCH, INGR, SCRL]), - {33 ptMiscStat} - wbInteger('Misc Stat', itU32, wbMiscStatEnum), - {34 ptObjectReference} - wbFormIDCkNoReach('Object Reference', sigReferences), - {35 ptOwner} - wbFormIDCkNoReach('Owner', [NULL, FACT, NPC_]), - {36 ptPackage} - wbFormIDCkNoReach('Package', [PACK]), - {37 ptPackdata} - wbInteger('Packdata ID', itU32), - {38 ptPerk} - wbFormIDCkNoReach('Perk', [PERK]), - {39 ptQuest} - wbFormIDCkNoReach('Quest', [QUST]), - {40 ptQuestStage} - wbInteger('Quest Stage', itU32, wbCTDAParam2QuestStageToStr, wbCTDAParam2QuestStageToInt), - {41 ptRace} - wbFormIDCkNoReach('Race', [RACE]), - {42 ptReferencableObject} - wbFormIDCkNoReach('Referenceable Object', sigBaseObjects), - {43 ptRefType} - wbFormIDCkNoReach('Location Ref Type', [LCRT]), - {44 ptRegion} - wbFormIDCkNoReach('Region', [REGN]), - {45 ptScene} - wbFormIDCk('Scene', [NULL, SCEN]), - {46 ptSex} - wbInteger('Sex', itU32, wbSexEnum), - {47 ptShout} - wbFormIDCkNoReach('Shout', [SHOU]), - {48 ptVariableName} - wbByteArray('Variable Name (unused)', 4, cpIgnore), - {49 ptVATSValueFunction} - wbInteger('VATS Value Function', itU32, wbVATSValueFunctionEnum), - {50 ptVATSValueParam} - wbInteger('VATS Value Param (unused)', itU32), - {51 ptVoiceType} - wbFormIDCkNoReach('Voice Type', [VTYP, FLST]), - {52 ptWardState} - wbInteger('Ward State', itU32, wbWardStateEnum), - {53 ptWeather} - wbFormIDCkNoReach('Weather', [WTHR]), - {54 ptWorldspace} - wbFormIDCkNoReach('Worldspace', [WRLD, FLST]), - {55 ptDamageType} - wbFormIDCkNoReach('Damage Type', [DMGT, FLST]) - ]), - - wbUnion('Parameter #2', wbCTDAParam2Decider, [ - { unknown } - wbByteArray('Unknown', 4), - { 0 ptNone} - wbByteArray('None', 4, cpIgnore), - { 1 ptInteger} - wbInteger('Integer', itS32), - { 2 ptFloat} - wbFloat('Float'), - { 3 ptActor} - wbFormIDCkNoReach('Actor', [NULL, PLYR, ACHR, REFR]), - { 4 ptActorBase} - wbFormIDCkNoReach('Actor Base', [NPC_]), - { 5 ptActorValue} - wbActorValue, - { 6 ptAdvanceAction} - wbInteger('Player Action', itU32, wbAdvanceActionEnum), - { 7 ptAlias} - wbInteger('Alias', itS32, wbConditionAliasToStr, wbStrToAlias), - { 8 ptAlignment} - wbInteger('Alignment', itU32, wbAlignmentEnum), - { 9 ptAssociationType} - wbFormIDCk('Association Type', [ASTP]), - {10 ptAxis} - wbInteger('Axis', itU32, wbAxisEnum), - {11 ptCastingSource} - wbInteger('Casting Type', itU32, wbCastingSourceEnum), - {12 ptCell} - wbFormIDCkNoReach('Cell', [CELL]), - {13 ptClass} - wbFormIDCkNoReach('Class', [CLAS]), - {14 ptCrimeType} - wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {15 ptCriticalStage} - wbInteger('Critical Stage', itU32, wbCriticalStageEnum), - {16 ptEncounterZone} - wbFormIDCkNoReach('Encounter Zone', [ECZN]), - {17 ptEquipType} - wbFormIDCkNoReach('Equip Type', [EQUP]), - {18 ptEvent} - wbInteger('Event', itU32, wbEventFunctionAndMemberToStr, wbEventFunctionAndMemberToInt), - {19 ptEventData} - wbFormID('Event Data'), - {20 ptFaction} - wbFormIDCkNoReach('Faction', [FACT]), - {21 ptFormList} - wbFormIDCkNoReach('Form List', [FLST]), - {22 ptFormType} - wbInteger('Form Type', itU32, wbFormTypeEnum), - {23 ptFurniture} - wbFormIDCkNoReach('Furniture', [FURN, FLST]), - {24 ptFurnitureAnim} - wbInteger('Furniture Anim', itU32, wbFurnitureAnimTypeEnum), - {25 ptFurnitureEntry} - wbInteger('Furniture Entry', itU32, wbEnum([], [$010000, 'Front', $020000, 'Behind', $040000, 'Right', $80000, 'Left', $100000, 'Up'])), - {26 ptGlobal} - wbFormIDCkNoReach('Global', [GLOB]), - {27 ptIdleForm} - wbFormIDCkNoReach('Idle', [IDLE]), - {28 ptInventoryObject} - wbFormIDCkNoReach('Inventory Object', sigBaseObjects), - {29 ptKeyword} - wbFormIDCkNoReach('Keyword', [KYWD, FLST, NULL]), - {30 ptLocation} - wbFormIDCkNoReach('Location', [LCTN]), - {31 ptMagicEffect} - wbFormIDCkNoReach('Base Effect', [MGEF]), - {32 ptMagicItem} - wbFormIDCkNoReach('Effect Item', [SPEL, ENCH, ALCH, INGR, SCRL]), - {33 ptMiscStat} - wbInteger('Misc Stat', itU32, wbMiscStatEnum), - {34 ptObjectReference} - wbFormIDCkNoReach('Object Reference', sigReferences), - {35 ptOwner} - wbFormIDCkNoReach('Owner', [NULL, FACT, NPC_]), - {36 ptPackage} - wbFormIDCkNoReach('Package', [PACK]), - {37 ptPackdata} - wbInteger('Packdata ID', itU32), - {38 ptPerk} - wbFormIDCkNoReach('Perk', [PERK]), - {39 ptQuest} - wbFormIDCkNoReach('Quest', [QUST]), - {40 ptQuestStage} - wbInteger('Quest Stage', itU32, wbCTDAParam2QuestStageToStr, wbCTDAParam2QuestStageToInt), - {41 ptRace} - wbFormIDCkNoReach('Race', [RACE]), - {42 ptReferencableObject} - wbFormIDCkNoReach('Referenceable Object', sigBaseObjects), - {43 ptRefType} - wbFormIDCkNoReach('Location Ref Type', [LCRT]), - {44 ptRegion} - wbFormIDCkNoReach('Region', [REGN]), - {45 ptScene} - wbFormIDCk('Scene', [NULL, SCEN]), - {46 ptSex} - wbInteger('Sex', itU32, wbSexEnum), - {47 ptShout} - wbFormIDCkNoReach('Shout', [SHOU]), - {48 ptVariableName} - wbByteArray('Variable Name (unused)', 4, cpIgnore), - {49 ptVATSValueFunction} - wbInteger('VATS Value Function', itU32, wbVATSValueFunctionEnum), - {50 ptVATSValueParam} - wbUnion('VATS Value Param', wbCTDAParam2VATSValueParamDecider, [ - { 0} wbFormIDCkNoReach('Weapon', [WEAP]), - { 1} wbFormIDCkNoReach('Weapon List', [FLST], [WEAP]), - { 2} wbFormIDCkNoReach('Target', [NPC_]), - { 3} wbFormIDCkNoReach('Target List', [FLST], [NPC_]), - { 4} wbByteArray('Unknown', 4, cpIgnore), - { 5} wbInteger('Target Part', itS32, wbActorValueEnum), - { 6} wbInteger('VATS Action', itU32, wbEnum([ - 'Unarmed Attack', - 'One Hand Melee Attack', - 'Two Hand Melee Attack', - 'Magic Attack', - 'Ranged Attack', - 'Reload', - 'Crouch', - 'Stand', - 'Switch Weapon', - 'Toggle Weapon Drawn', - 'Heal', - 'Player Death' - ])), - { 7} wbByteArray('Unknown', 4, cpIgnore), - { 8} wbByteArray('Unknown', 4, cpIgnore), - { 9} wbFormIDCkNoReach('Critical Effect', [SPEL]), - {10} wbFormIDCkNoReach('Critical Effect List', [FLST], [SPEL]), - {11} wbByteArray('Unknown', 4, cpIgnore), - {12} wbByteArray('Unknown', 4, cpIgnore), - {13} wbByteArray('Unknown', 4, cpIgnore), - {14} wbByteArray('Unknown', 4, cpIgnore), - {15} wbInteger('Weapon Type', itU32, wbWeaponAnimTypeEnum), - {16} wbByteArray('Unknown', 4, cpIgnore), - {17} wbByteArray('Unknown', 4, cpIgnore), - {18} wbInteger('Projectile Type', itU32, wbEnum([ - 'Missile', - 'Lobber', - 'Beam', - 'Flame', - 'Cone', - 'Barrier', - 'Arrow' - ])), - {19} wbInteger('Delivery Type', itU32, wbTargetEnum), - {20} wbInteger('Casting Type', itU32, wbCastEnum) - ]), - {51 ptVoiceType} - wbFormIDCkNoReach('Voice Type', [VTYP, FLST]), - {52 ptWardState} - wbInteger('Ward State', itU32, wbWardStateEnum), - {53 ptWeather} - wbFormIDCkNoReach('Weather', [WTHR]), - {54 ptWorldspace} - wbFormIDCkNoReach('Worldspace', [WRLD, FLST]), - {55 ptDamageType} - wbFormIDCkNoReach('Damage Type', [DMGT, FLST]) - ]), - wbInteger('Run On', itU32, wbEnum([ - { 0} 'Subject', - { 1} 'Target', - { 2} 'Reference', - { 3} 'Combat Target', - { 4} 'Linked Reference', - { 5} 'Quest Alias', - { 6} 'Package Data', - { 7} 'Event Data', - { 9} 'Command Target', - {10} 'Event Camera Ref', - {11} 'My Killer' - ]), cpNormal, False, nil, wbCTDARunOnAfterSet), - wbUnion('Reference', wbCTDAReferenceDecider, [ - wbInteger('Unused', itU32, nil, cpIgnore), - wbFormIDCkNoReach('Reference', sigReferences, False) - ]), - wbInteger('Parameter #3', itS32, nil, cpNormal, False, nil, nil, -1) - ], cpNormal, False{, nil, 0, wbCTDAAfterLoad}), - wbString(CIS1, 'Parameter #1'), - wbString(CIS2, 'Parameter #2') - ], [], cpNormal); - - wbCTDAs := wbRArray('Conditions', wbCTDA, cpNormal, False); - wbCTDAsCount := wbRArray('Conditions', wbCTDA, cpNormal, False, nil, wbCTDAsAfterSet); - wbCTDAsReq := wbRArray('Conditions', wbCTDA, cpNormal, True); - wbCTDAsReqCount := wbRArray('Conditions', wbCTDA, cpNormal, True, nil, wbCTDAsAfterSet); - - wbICON := wbString(ICON, 'Inventory Image'); - wbMICO := wbString(MICO, 'Message Icon'); - wbPTRN := wbFormIDCk(PTRN, 'Preview Transform', [TRNS]); - wbNTRM := wbFormIDCk(NTRM, 'Native Terminal', [TERM]); - wbYNAM := wbFormIDCk(YNAM, 'Sound - Pick Up', [SNDR]); - wbZNAM := wbFormIDCk(ZNAM, 'Sound - Put Down', [SNDR]); - wbCUSD := wbFormIDCk(CUSD, 'Sound - Crafting', [SNDR]); - wbINRD := wbFormIDCk(INRD, 'Instance Naming', [INNR]); - wbPRPS := wbArrayS(PRPS, 'Properties', wbStructSK([0], 'Property', [ - wbActorValue, - wbFloat('Value') - ])); - wbFLTR := wbString(FLTR, 'Filter'); - wbAPPR := wbArray(APPR, 'Attach Parent Slots', wbFormIDCk('Keyword', [KYWD])); - wbFTYP := wbFormIDCk(FTYP, 'Forced Loc Ref Type', [LCRT]); - wbATTX := wbLString(ATTX, 'Activate Text Override', 0, cpTranslate); - - wbMNAMFurnitureMarker := wbInteger(MNAM, 'Active Markers / Flags', itU32, wbFlags([ - {0x00000001} 'Interaction Point 0', - {0x00000002} 'Interaction Point 1', - {0x00000004} 'Interaction Point 2', - {0x00000008} 'Interaction Point 3', - {0x00000010} 'Interaction Point 4', - {0x00000020} 'Interaction Point 5', - {0x00000040} 'Interaction Point 6', - {0x00000080} 'Interaction Point 7', - {0x00000100} 'Interaction Point 8', - {0x00000200} 'Interaction Point 9', - {0x00000400} 'Interaction Point 10', - {0x00000800} 'Interaction Point 11', - {0x00001000} 'Interaction Point 12', - {0x00002000} 'Interaction Point 13', - {0x00004000} 'Interaction Point 14', - {0x00008000} 'Interaction Point 15', - {0x00010000} 'Interaction Point 16', - {0x00020000} 'Interaction Point 17', - {0x00040000} 'Interaction Point 18', - {0x00080000} 'Interaction Point 19', - {0x00100000} 'Interaction Point 20', - {0x00200000} 'Interaction Point 21', - {0x00400000} 'Allow Awake Sound', - {0x00800000} 'Enter With Weapon Drawn', - {0x01000000} 'Play Anim When Full', - {0x02000000} 'Disables Activation', - {0x04000000} 'Is Perch', - {0x08000000} 'Must Exit to Talk', - {0x10000000} 'Use Static Avoid Node', - {0x20000000} 'Unknown 29', - {0x40000000} 'Has Model?', - {0x80000000} 'Unknown 31' - ])); - - wbSNAMMarkerParams := - wbArray(SNAM, 'Marker Paramaters', wbStruct('Marker', [ - wbFloat('Offset X'), - wbFloat('Offset Y'), - wbFloat('Offset Z'), - wbFloat('Rotation Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFormIDCk('Keyword', [KYWD, NULL]), - wbInteger('Entry Types', itU8, wbFlags([ - 'Front', - 'Rear', - 'Right', - 'Left', - 'Other', - 'Unused 5', - 'Unused 6', - 'Unused 7' - ])), - wbByteArray('Unknown', 3) - ], cpNormal, False, nil, 4)); - - wbArmorPropertyEnum := wbEnum([ - { 0} 'Enchantments', - { 1} 'BashImpactDataSet', - { 2} 'BlockMaterial', - { 3} 'Keywords', - { 4} 'Weight', - { 5} 'Value', - { 6} 'Rating', - { 7} 'AddonIndex', - { 8} 'BodyPart', - { 9} 'DamageTypeValue', - {10} 'ActorValues', - {11} 'Health', - {12} 'ColorRemappingIndex', - {13} 'MaterialSwaps' - ]); - - wbActorPropertyEnum := wbEnum([ - { 0} 'Keywords', - { 1} 'ForcedInventory', - { 2} 'XPOffset', - { 3} 'Enchantments', - { 4} 'ColorRemappingIndex', - { 5} 'MaterialSwaps' - ]); - - wbWeaponPropertyEnum := wbEnum([ - { 0} 'Speed', - { 1} 'Reach', - { 2} 'MinRange', - { 3} 'MaxRange', - { 4} 'AttackDelaySec', - { 5} 'Unknown 5', - { 6} 'OutOfRangeDamageMult', - { 7} 'SecondaryDamage', - { 8} 'CriticalChargeBonus', - { 9} 'HitBehaviour', - {10} 'Rank', - {11} 'Unknown 11', - {12} 'AmmoCapacity', - {13} 'Unknown 13', - {14} 'Unknown 14', - {15} 'Type', - {16} 'IsPlayerOnly', - {17} 'NPCsUseAmmo', - {18} 'HasChargingReload', - {19} 'IsMinorCrime', - {20} 'IsFixedRange', - {21} 'HasEffectOnDeath', - {22} 'HasAlternateRumble', - {23} 'IsNonHostile', - {24} 'IgnoreResist', - {25} 'IsAutomatic', - {26} 'CantDrop', - {27} 'IsNonPlayable', - {28} 'AttackDamage', - {29} 'Value', - {30} 'Weight', - {31} 'Keywords', - {32} 'AimModel', - {33} 'AimModelMinConeDegrees', - {34} 'AimModelMaxConeDegrees', - {35} 'AimModelConeIncreasePerShot', - {36} 'AimModelConeDecreasePerSec', - {37} 'AimModelConeDecreaseDelayMs', - {38} 'AimModelConeSneakMultiplier', - {39} 'AimModelRecoilDiminishSpringForce', - {40} 'AimModelRecoilDiminishSightsMult', - {41} 'AimModelRecoilMaxDegPerShot', - {42} 'AimModelRecoilMinDegPerShot', - {43} 'AimModelRecoilHipMult', - {44} 'AimModelRecoilShotsForRunaway', - {45} 'AimModelRecoilArcDeg', - {46} 'AimModelRecoilArcRotateDeg', - {47} 'AimModelConeIronSightsMultiplier', - {48} 'HasScope', - {49} 'ZoomDataFOVMult', - {50} 'FireSeconds', - {51} 'NumProjectiles', - {52} 'AttackSound', - {53} 'AttackSound2D', - {54} 'AttackLoop', - {55} 'AttackFailSound', - {56} 'IdleSound', - {57} 'EquipSound', - {58} 'UnEquipSound', - {59} 'SoundLevel', - {50} 'ImpactDataSet', - {61} 'Ammo', - {62} 'CritEffect', - {63} 'BashImpactDataSet', - {64} 'BlockMaterial', - {65} 'Enchantments', - {66} 'AimModelBaseStability', - {67} 'ZoomData', - {68} 'ZoomDataOverlay', - {69} 'ZoomDataImageSpace', - {70} 'ZoomDataCameraOffsetX', - {71} 'ZoomDataCameraOffsetY', - {72} 'ZoomDataCameraOffsetZ', - {73} 'EquipSlot', - {74} 'SoundLevelMult', - {75} 'NPCAmmoList', - {76} 'ReloadSpeed', - {77} 'DamageTypeValues', - {78} 'AccuracyBonus', - {79} 'AttackActionPointCost', - {80} 'OverrideProjectile', - {81} 'HasBoltAction', - {82} 'StaggerValue', - {83} 'SightedTransitionSeconds', - {84} 'FullPowerSeconds', - {85} 'HoldInputToPower', - {86} 'HasRepeatableSingleFire', - {87} 'MinPowerPerShot', - {88} 'ColorRemappingIndex', - {89} 'MaterialSwaps', - {90} 'CriticalDamageMult', - {91} 'FastEquipSound', - {92} 'DisableShells', - {93} 'HasChargingAttack', - {94} 'ActorValues' - ]); - - wbObjectModProperties := - wbArrayS('Properties', wbStructSK([4], 'Property', [ - wbInteger('Value Type', itU8, wbEnum([ - {0} 'Int', - {1} 'Float', - {2} 'Bool', - {3} 'Unknown 3', - {4} 'FormID,Int', - {5} 'Enum', - {6} 'FormID,Float' - ])), - wbByteArray('Unused', 3, cpIgnore), - wbUnion('Function Type', wbOMODDataFunctionTypeDecider, [ - { Float } wbInteger('Function Type', itU8, wbEnum(['SET', 'MUL+ADD', 'ADD'])), - { Bool } wbInteger('Function Type', itU8, wbEnum(['SET', 'AND', 'OR'])), - { Enum } wbInteger('Function Type', itU8, wbEnum(['SET'])), - { FormID } wbInteger('Function Type', itU8, wbEnum(['SET', 'REM', 'ADD'])) - ]), - wbByteArray('Unused', 3, cpIgnore), - wbInteger('Property', itU16, wbObjectModPropertyToStr, wbObjectModPropertyToInt), - wbByteArray('Unused', 2, cpIgnore), - wbUnion('Value 1', wbOMODDataPropertyValue1Decider, [ - { 0} wbByteArray('Value 1 - Unknown', 4), - { 1} wbInteger('Value 1 - Int', itU32), - { 2} wbFloat('Value 1 - Float'), - { 3} wbInteger('Value 1 - Bool', itU32, wbBoolEnum), - { 4} wbFormID('Value 1 - FormID'), - { 5} wbInteger('Value 1 - Enum', itU32), - { 6} wbInteger('Sound Level', itU32, wbSoundLevelEnum), - { 7} wbInteger('Stagger Value', itU32, wbStaggerEnum), - { 8} wbInteger('Hit Behaviour', itU32, wbHitBehaviourEnum) - ]), - wbUnion('Value 2', wbOMODDataPropertyValue2Decider, [ - wbByteArray('Unused', 4, cpIgnore), - wbInteger('Value 2 - Int', itU32), - wbFloat('Value 2 - Float'), - wbInteger('Value 2 - Bool', itU32, wbBoolEnum) - ]), - wbFloat('Step') - ]), wbOMODDataPropertyCounter, cpNormal, False, nil, wbOMODpropertyAfterSet); - - wbOBTSReq := wbStruct(OBTS, 'Object Mod Template Item', [ - wbInteger('Include Count', itU32), // fixed name for wbOMOD* handlers - wbInteger('Property Count', itU32), // fixed name for wbOMOD* handlers - wbInteger('Level Min', itU8), - wbByteArray('Unused', 1), - wbInteger('Level Max', itU8), - wbByteArray('Unused', 1), - wbInteger('ID', itS16), - wbInteger('Default', itU8, wbBoolEnum), - wbArray('Keywords', wbFormIDCk('Keyword', [KYWD, NULL]), -4), - wbInteger('Min Level For Ranks', itU8), - wbInteger('Alt Levels Per Tier', itU8), - wbArray('Includes', wbStruct('Include', [ - wbFormIDCk('Mod', [OMOD]), - wbInteger('Attach Point Index', itU8), - wbInteger('Optional', itU8, wbBoolEnum), - wbInteger('Don''t Use All', itU8, wbBoolEnum) - ]), wbOMODDataIncludeCounter, cpNormal, False, nil, wbOMODincludeAfterSet), - wbObjectModProperties - ], cpNormal, True); - - wbObjectTemplate := wbRStruct('Object Template', [ - wbInteger(OBTE, 'Count', itU32, nil, cpBenign), - wbRArray('Combinations', - wbRStruct('Combination', [ - wbEmpty(OBTF, 'Editor Only'), - wbFULL, - wbOBTSReq - ], [], cpNormal, False, nil, True), - cpNormal, False, nil, wbOBTSCombinationsAfterSet), - wbEmpty(STOP, 'Marker', cpNormal, True) - ], []); - - wbBSMPSequence := wbRStructs('Bone Data', 'Data', [ - wbInteger(BSMP, 'Gender', itU32, wbEnum(['Male', 'Female'])), - // should not be sorted!!! - wbRArray('Bones', - wbRStruct('Bone', [ - wbString(BSMB, 'Name'), - wbArray(BSMS, 'Values', wbFloat('Value')), - wbUnknown(BMMP) - ], []) - ) - ], []); - - wbEffectsReq := - wbRStructs('Effects', 'Effect', [ - wbEFID, - wbEFIT, - wbCTDAs - ], [], cpNormal, True); - - wbRecord(ACTI, 'Activator', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000002} 2, 'Never Fades', - {0x00000004} 4, 'Non Occluder', - {0x00000040} 6, 'Unknown 6', - {0x00000080} 7, 'Heading Marker', - {0x00000100} 8, 'Must Update Anims', - {0x00000200} 9, 'Hidden From Local Map', - {0x00000400} 10, 'Headtrack Marker', - {0x00000800} 11, 'Used as Platform', - {0x00001000} 13, 'Pack-In Use Only', - {0x00008000} 15, 'Has Distant LOD', - {0x00010000} 16, 'Random Anim Start', - {0x00020000} 17, 'Dangerous', - {0x00100000} 20, 'Ignore Object Interaction', - {0x00800000} 23, 'Is Marker', - {0x02000000} 25, 'Obstacle', - {0x04000000} 26, 'NavMesh Generation - Filter', - {0x08000000} 27, 'NavMesh Generation - Bounding Box', - {0x20000000} 29, 'Child Can Use', - {0x40000000} 30, 'NavMesh Generation - Ground' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFormIDCk(STCP, 'Sound', [STAG]), - wbFULL, - wbMODL, - wbDEST, - wbKSIZ, - wbKWDAs, - wbPRPS, - wbNTRM, - wbFTYP, - wbStruct(PNAM, 'Marker Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbInteger('Unused', itU8) - ]), - wbFormIDCk(SNAM, 'Sound - Looping', [SNDR]), - wbFormIDCk(VNAM, 'Sound - Activation', [SNDR]), - wbFormIDCk(WNAM, 'Water Type', [WATR]), - wbATTX, - wbInteger(FNAM, 'Flags', itU16, wbFlags([ - 'No Displacement', - 'Ignored by Sandbox', - 'Unknown 2', - 'Unknown 3', - 'Is a Radio' - ])), - wbFormIDCk(KNAM, 'Interaction Keyword', [KYWD]), - wbStruct(RADR, 'Radio Receiver', [ - wbFormIDCk('Sound Model', [SOPM, NULL]), - wbFloat('Frequency'), - wbFloat('Volume'), - wbInteger('Starts Active', itU8, wbBoolEnum), - wbInteger('No Signal Static', itU8, wbBoolEnum) - ], cpNormal, False, nil, 4), - wbCITC, - wbCTDAs, - wbNVNM - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbRecord(TACT, 'Talking Activator', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000200} 9, 'Hidden From Local Map', - {0x00010000} 16, 'Random Anim Start', - {0x00020000} 17, 'Radio Station' - ]), [17]), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbMODL, - wbDEST, - wbKSIZ, - wbKWDAs, - wbUnknown(PNAM, cpIgnore, True), - wbFormIDCk(SNAM, 'Looping Sound', [SNDR]), - wbUnknown(FNAM, cpIgnore, True), - wbFormIDCk(VNAM, 'Voice Type', [VTYP]) - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbRecord(ALCH, 'Ingestible', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x20000000} 29, 'Medicine' - ])), [ - wbEDID, - wbOBNDReq, - wbPTRN, - wbFULL, - wbKSIZ, - wbKWDAs, - wbMODL, - wbICON, - wbMICO, - wbYNAM, - wbZNAM, - wbETYP, - wbCUSD, - wbDEST, - wbDESC, - wbFloat(DATA, 'Weight', cpNormal, True), - wbStruct(ENIT, 'Effect Data', [ - wbInteger('Value', itS32), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'No Auto-Calc', - {0x00000002} 'Food Item', - {0x00000004} 'Unknown 3', - {0x00000008} 'Unknown 4', - {0x00000010} 'Unknown 5', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unknown 7', - {0x00000080} 'Unknown 8', - {0x00000100} 'Unknown 9', - {0x00000200} 'Unknown 10', - {0x00000400} 'Unknown 11', - {0x00000800} 'Unknown 12', - {0x00001000} 'Unknown 13', - {0x00002000} 'Unknown 14', - {0x00004000} 'Unknown 15', - {0x00008000} 'Unknown 16', - {0x00010000} 'Medicine', - {0x00020000} 'Poison' - ])), - wbFormID('Addiction'), - wbFloat('Addiction Chance'), - wbFormIDCk('Sound - Consume', [SNDR, NULL]) - ], cpNormal, True), - wbLString(DNAM, 'Addiction Name', 0, cpTranslate), - wbEffectsReq - ], False, nil, cpNormal, False, wbRemoveEmptyKWDA, wbKeywordsAfterSet); - - wbRecord(AMMO, 'Ammunition', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable' - ])), [ - wbEDID, - wbOBNDReq, - wbPTRN, - wbFULL, - wbMODL, - wbDEST, - wbYNAM, - wbZNAM, - wbDESC, - wbKSIZ, - wbKWDAs, - wbStruct(DATA, 'Data', [ - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True, nil, 1), - wbStruct(DNAM, '', [ - wbFormIDCk('Projectile', [PROJ, NULL]), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Ignores Normal Weapon Resistance', - {0x02} 'Non-Playable', - {0x04} 'Has Count Based 3D' - ])), - wbByteArray('Unused', 3), - wbFloat('Damage'), - wbInteger('Health', itU32) - ], cpNormal, True), - wbLStringKC(ONAM, 'Short Name', 0, cpTranslate), - wbString(NAM1, 'Casing Model'), - wbByteArray(NAM2, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow) - ], False, nil, cpNormal, False, wbRemoveEmptyKWDA, wbKeywordsAfterSet); - - wbRecord(ANIO, 'Animated Object', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000200} 9, 'Unknown 9' - ]), [9]), [ - wbEDID, - wbMODL, - wbString(BNAM, 'Unload Event') - ]); - - wbRecord(ARMO, 'Armor', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable', - {0x00000040} 6, 'Shield', - {0x00000400} 10, 'Unknown 10', - {0x00008000} 15, 'Unknown 15' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFULL, - wbEITM, - wbRStruct('Male world model', [ - wbString(MOD2, 'Model Filename'), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO2S - ], []), - wbString(ICON, 'Male Inventory Image'), - wbString(MICO, 'Male Message Icon'), - wbRStruct('Female world model', [ - wbString(MOD4, 'Model Filename'), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO4S - ], []), - wbString(ICO2, 'Female Inventory Image'), - wbString(MIC2, 'Female Message Icon'), - wbBOD2, - wbDEST, - wbYNAM, - wbZNAM, - wbETYP, - wbFormIDCk(BIDS, 'Block Bash Impact Data Set', [IPDS, NULL]), - wbFormIDCk(BAMT, 'Alternate Block Material', [MATT, NULL]), - wbFormIDCk(RNAM, 'Race', [RACE]), - wbKSIZ, - wbKWDAs, - wbDESC, - wbINRD, - wbRArray('Models', - wbRStruct('Model', [ - wbInteger(INDX, 'Addon Index', itU16), - wbFormIDCk(MODL, 'Armor Addon', [ARMA]) - ], []) - ), - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight'), - wbInteger('Health', itU32) - ], cpNormal, True), - wbStruct(FNAM, '', [ - wbInteger('Armor Rating', itU16), - wbInteger('Base Addon Index', itU16), - wbInteger('Stagger Rating', itU8, wbStaggerEnum), - wbUnknown - ]), - wbArrayS(DAMA, 'Resistances', wbStructSK([0], 'Resistance', [ - wbFormIDCk('Damage Type', [DMGT]), - wbInteger('Value', itU32) - ])), - wbFormIDCk(TNAM, 'Template Armor', [ARMO]), - wbAPPR, - wbObjectTemplate - ], False, nil, cpNormal, False, wbARMOAfterLoad, wbKeywordsAfterSet); - - wbRecord(ARMA, 'Armor Addon', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000040} 6, 'No Underarmor Scaling', - {0x00000200} 9, 'Unknown 9', - {0x40000000} 30, 'Hi-Res 1st Person Only' - ])), [ - wbEDID, - wbBOD2, - wbFormIDCk(RNAM, 'Race', [RACE]), - wbStruct(DNAM, 'Data', [ - wbInteger('Male Priority', itU8), - wbInteger('Female Priority', itU8), - // essentialy a number of world models for different weights (Enabled = 2 models _0.nif and _1.nif) - wbInteger('Weight slider - Male', itU8, wbFlags([ - {0x01} 'Unknown 0', - {0x02} 'Enabled' - ])), - wbInteger('Weight slider - Female', itU8, wbFlags([ - {0x01} 'Unknown 0', - {0x02} 'Enabled' - ])), - wbByteArray('Unknown', 2), - wbInteger('Detection Sound Value', itU8), - wbByteArray('Unknown', 1), - wbFloat('Weapon Adjust') - ], cpNormal, True), - wbRStruct('Male world model', [ - wbString(MOD2, 'Model Filename'), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO2S, - wbMO2C, - wbMO2F - ], [], cpNormal, False), - wbRStruct('Female world model', [ - wbString(MOD3, 'Model Filename'), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO3S, - wbMO3C, - wbMO3F - ], []), - wbRStruct('Male 1st Person', [ - wbString(MOD4, 'Model Filename'), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO4S, - wbMO4C, - wbMO4F - ], []), - wbRStruct('Female 1st Person', [ - wbString(MOD5, 'Model Filename'), - wbByteArray(MO5T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO5S, - wbMO5C, - wbMO5F - ], []), - wbFormIDCK(NAM0, 'Male Skin Texture', [TXST, NULL]), - wbFormIDCK(NAM1, 'Female Skin Texture', [TXST, NULL]), - wbFormIDCK(NAM2, 'Male Skin Texture Swap List', [FLST, NULL]), - wbFormIDCK(NAM3, 'Female Skin Texture Swap List', [FLST, NULL]), - wbRArrayS('Additional Races', wbFormIDCK(MODL, 'Race', [RACE, NULL])), - wbFormIDCk(SNDD, 'Footstep Sound', [FSTS, NULL]), - wbFormIDCk(ONAM, 'Art Object', [ARTO]), - wbBSMPSequence - ], False, nil, cpNormal, False, wbARMAAfterLoad); - - wbRecord(BOOK, 'Book', [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFULL, - wbMODL, - wbICON, - wbMICO, - wbDESCreq, - wbDEST, - wbYNAM, - wbZNAM, - wbKSIZ, - wbKWDAs, - wbFormIDCk(FIMD, 'Featured Item Message', [MESG]), - wbStruct(DATA, 'Data', [ - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True), - wbStruct(DNAM, '', [ - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Advance Actor Value', - {0x02} 'Can''t be Taken', - {0x04} 'Add Spell', - {0x08} 'Unknown 3', - {0x10} 'Add Perk' - ])), - wbUnion('Teaches', wbBOOKTeachesDecider, [ - wbByteArray('Unused', 4), - wbFormIDCk('Actor Value', [AVIF, NULL]), - wbFormIDCk('Spell', [SPEL, NULL]), - wbFormIDCk('Perk', [PERK, NULL]) - ]), - wbStruct('Text Offset' , [ - wbInteger('X', itU32), - wbInteger('Y', itU32) - ]) - ], cpNormal, True), - wbLString(CNAM, 'Description', 0, cpTranslate), - wbFormIDCk(INAM, 'Inventory Art', [STAT]) - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); -end; - -procedure DefineFO4c; - - procedure ReferenceRecord(aSignature: TwbSignature; const aName: string); - begin - wbRecord(aSignature, aName, - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000080} 7, 'Turn Off Fire', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn' - ], True, True)), [ - wbEDID, - wbVMAD, - wbFormIDCk(NAME, 'Projectile', [PROJ, HAZD]), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - wbFloat(XHTW, 'Head-Tracking Weight'), - wbFloat(XFVC, 'Favor Cost'), - wbRArrayS('Reflected/Refracted By', - wbStructSK(XPWR, [0], 'Water', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Type', itU32, wbFlags([ - 'Reflection', - 'Refraction' - ])) - ], cpNormal, False, nil, 1) - ), - wbRArrayS('Linked References', wbStructSK(XLKR, [0], 'Linked Reference', [ - wbFormIDCk('Keyword/Ref', [KYWD, PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA, NULL]), - wbFormIDCk('Ref', sigReferences) - ], cpNormal, False, nil, 1)), - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', sigReferences), - wbFloat('Delay') - ]) - ) - ], []), - - wbFormIDCk(XASP, 'Unknown', [REFR]), - wbUnknown(XATP), - wbInteger(XAMC, 'Ammo Count', itU32), - wbEmpty(XLKT, 'Linked Ref Transient'), - wbFormIDCk(XLYR, 'Layer', [LAYR]), - wbFormIDCk(XMSP, 'Material Swap', [MSWP]), - wbFormIDCk(XRFG, 'Reference Group', [RFGP]), - wbUnknown(XCVR), - wbXESP, - wbXOWN, - wbXRNK, - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - wbEmpty(XIS2, 'Ignored by Sandbox'), - wbArray(XLRT, 'Location Ref Type', wbFormIDCk('Ref', [LCRT, NULL])), - wbFormIDCk(XLRL, 'Location Reference', [LCRT, LCTN, NULL], False, cpBenignIfAdded), - wbXSCL, - wbXLOD, - wbDataPosRot, - wbString(MNAM, 'Comments') - ], True, wbPlacedAddInfo); - end; - -begin -{>>> - Skrim has its own ref record for every projectile type - PARW 'Arrow' - PBEA 'Beam' - PFLA 'Flame' - PCON 'Cone' (voice) - PBAR 'Barrier' - PGRE 'Traps' - PHZD 'Hazards' - I guess all of them have the same structure -<<<} - ReferenceRecord(PARW, 'Placed Arrow'); - ReferenceRecord(PBAR, 'Placed Barrier'); - ReferenceRecord(PBEA, 'Placed Beam'); - ReferenceRecord(PCON, 'Placed Cone/Voice'); - ReferenceRecord(PFLA, 'Placed Flame'); - ReferenceRecord(PGRE, 'Placed Projectile'); - ReferenceRecord(PHZD, 'Placed Hazard'); - ReferenceRecord(PMIS, 'Placed Missile'); - - wbRecord(CELL, 'Cell', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000400} 7, 'No Pre Vis', - {0x00000400} 10, 'Persistent', - {0x00020000} 17, 'Off Limits', - {0x00040000} 18, 'Compressed', - {0x00080000} 19, 'Can''t Wait' - ]), [18]), [ - wbEDID, - wbFULL, - wbInteger(DATA, 'Flags', itU16, wbFlags([ - {0x0001} 'Is Interior Cell', - {0x0002} 'Has Water', - {0x0004} 'Can''t Travel From Here', - {0x0008} 'No LOD Water', - {0x0010} 'Unknown 5', - {0x0020} 'Public Area', - {0x0040} 'Hand Changed', - {0x0080} 'Show Sky', - {0x0100} 'Use Sky Lighting', - {0x0200} 'Unknown 10', - {0x0400} 'Unknown 11', - {0x0800} 'Sunlight Shadows', - {0x1000} 'Distant LOD only', - {0x2000} 'Player Followers Can''t Travel Here', - {0x4000} 'Unknown 15', - {0x8000} 'Unknown 16' - ]), cpNormal, True, False, nil, wbCELLDATAAfterSet), - wbStruct(XCLC, 'Grid', [ - wbInteger('X', itS32), - wbInteger('Y', itS32), - wbInteger('Force Hide Land', itU32, wbFlags([ - 'Quad 1', - 'Quad 2', - 'Quad 3', - 'Quad 4' - ], True)) - ], cpNormal, False, nil, 2), - - wbByteArray(VISI, 'PreVis Files Timestamp', 2), - wbFormIDCk(RVIS, 'In PreVis File Of', [CELL]), - wbByteArray(PCMB, 'PreCombined Files Timestamp', 2), - - wbStruct(XCLL, 'Lighting', [ - wbByteColors('Ambient Color'), - wbByteColors('Directional Color'), - wbByteColors('Fog Color Near'), - wbFloat('Fog Near'), - wbFloat('Fog Far'), - wbInteger('Directional Rotation XY', itS32), - wbInteger('Directional Rotation Z', itS32), - wbFloat('Directional Fade'), - wbFloat('Fog Clip Distance'), - wbFloat('Fog Power'), - wbAmbientColors, - wbByteColors('Fog Color Far'), - wbFloat('Fog Max'), - wbFloat('Light Fade Begin'), - wbFloat('Light Fade End'), - wbInteger('Inherits', itU32, wbFlags([ - {0x00000001} 'Ambient Color', - {0x00000002} 'Directional Color', - {0x00000004} 'Fog Color', - {0x00000008} 'Fog Near', - {0x00000010} 'Fog Far', - {0x00000020} 'Directional Rotation', - {0x00000040} 'Directional Fade', - {0x00000080} 'Clip Distance', - {0x00000100} 'Fog Power', - {0x00000200} 'Fog Max', - {0x00000400} 'Light Fade Distances' - ])), - wbFloat('Near Height Mid'), - wbFloat('Near Height Range'), - wbByteColors('Fog Color High Near'), - wbByteColors('Fog Color High Far'), - wbFloat('High Density Scale'), - wbFloat('Fog Near Scale'), - wbFloat('Fog Far Scale'), - wbFloat('Fog High Near Scale'), - wbFloat('Fog High Far Scale'), - wbFloat('Far Height Mid'), - wbFloat('Far Height Range') - ], cpNormal, False, nil, 11), - - wbInteger(CNAM, 'Precombined Object Level XY', itU8), - wbInteger(ZNAM, 'Precombined Object Level Z', itU8), - wbByteArray(TVDT, 'Unknown', 0, cpNormal), - wbMaxHeightDataCELL, - wbFormIDCk(LTMP, 'Lighting Template', [LGTM, NULL], False, cpNormal, True), - - {>>> XCLW sometimes has $FF7FFFFF and causes invalid floation point <<<} - wbFloat(XCLW, 'Water Height', cpNormal, False, 1, -1, nil, nil, 0, wbCELLXCLWGetConflictPriority), - wbArrayS(XCLR, 'Regions', wbFormIDCk('Region', [REGN])), - wbFormIDCk(XLCN, 'Location', [LCTN]), - wbByteArray(XWCN, 'Unknown', 0, cpIgnore), // leftover - wbStruct(XWCU, 'Water Velocity', [ - wbFloat('X Offset'), - wbFloat('Y Offset'), - wbFloat('Z Offset'), - wbByteArray('Unknown', 4), - wbFloat('X Angle'), - wbFloat('Y Angle'), - wbFloat('Z Angle'), - wbByteArray('Unknown', 0) - ]), - wbFormIDCk(XCWT, 'Water', [WATR]), - - {--- Ownership ---} - wbXOWN, - wbXRNK, - - wbFormIDCk(XILL, 'Lock List', [FLST, NPC_]), - - wbStruct(XILW, 'Exterior LOD', [ - wbFormIDCk('Worldspace', [WRLD]), - wbFloat('Offset X'), - wbFloat('Offset Y'), - wbFloat('Offset Z') - ]), - wbString(XWEM, 'Water Environment Map'), - wbFormIDCk(XCCM, 'Sky/Weather from Region', [REGN]), - wbFormIDCk(XCAS, 'Acoustic Space', [ASPC]), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - wbFormIDCk(XCMO, 'Music Type', [MUSC]), - wbFormIDCk(XCIM, 'Image Space', [IMGS]), - wbFormIDCk(XGDR, 'God Rays', [GDRY]), - - // those can be sorted I think, but makes copying records very slow since some cells have over 22000+ entries - // DLC01Lair01 "The Mechanist's Lair" [CELL:010008A3] - wbArrayS(XPRI, 'Physics References', wbFormIDCk('Reference', [REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA])), - wbStruct(XCRI, 'Combined References', [ - wbInteger('Meshes Count', itU32), - wbInteger('References Count', itU32), - wbArrayS('Meshes', wbInteger('Combined Mesh', itU32, wbCombinedMeshIDToStr, wbCombinedMeshIDToInt), wbCELLCombinedMeshesCounter, cpNormal, False, nil, wbCELLCombinedMeshesAfterSet), - wbArrayS('References', wbStructSK([1, 0], 'Reference', [ - wbFormIDCk('Reference', [REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - wbInteger('Combined Mesh', itU32, wbCombinedMeshIDToStr, wbCombinedMeshIDToInt) - ]), wbCELLCombinedRefsCounter, cpNormal, False, nil, wbCELLCombinedRefsAfterSet) - ]) - ], True, wbCellAddInfo, cpNormal, False{, wbCELLAfterLoad}); - - wbRecord(CLAS, 'Class', [ - wbEDID, - wbFULLReq, - wbDESCReq, - wbICON, - wbPRPS, - wbStruct(DATA, 'Data', [ - wbByteArray('Unknown', 4), - wbFloat('Bleedout Default') - ]) - ]); - - wbRecord(CLMT, 'Climate', [ - wbEDID, - wbArrayS(WLST, 'Weather Types', wbStructSK([0], 'Weather Type', [ - wbFormIDCk('Weather', [WTHR, NULL]), - wbInteger('Chance', itS32), - wbFormIDCk('Global', [GLOB, NULL]) - ])), - wbString(FNAM, 'Sun Texture'), - wbString(GNAM, 'Sun Glare Texture'), - wbMODL, - wbStruct(TNAM, 'Timing', [ - wbStruct('Sunrise', [ - wbInteger('Begin', itU8, wbClmtTime), - wbInteger('End', itU8, wbClmtTime) - ]), - wbStruct('Sunset', [ - wbInteger('Begin', itU8, wbClmtTime), - wbInteger('End', itU8, wbClmtTime) - ]), - wbInteger('Volatility', itU8), - wbInteger('Moons / Phase Length', itU8, wbClmtMoonsPhaseLength) - ], cpNormal, True) - ]); - - wbRecord(SPGD, 'Shader Particle Geometry', [ - wbEDID, - wbStruct(DATA, 'Data', [ - wbFloat('Gravity Velocity'), - wbByteArray('Unknown', 4), - wbFloat('Rotation Velocity'), - wbByteArray('Unknown', 4), - wbFloat('Particle Size X'), - wbFloat('Center Offset Min'), - wbFloat('Particle Size Y'), - wbByteArray('Unknown', 4), - wbFloat('Center Offset Min'), - wbByteArray('Unknown', 4), - wbFloat('Center Offset Max'), - wbByteArray('Unknown', 4), - wbFloat('Initial Rotation'), - wbByteArray('Unknown', 4), - wbInteger('# of Subtextures X', itU32), - wbByteArray('Unknown', 4), - wbInteger('# of Subtextures Y', itU32), - wbByteArray('Unknown', 4), - wbInteger('Type', itU32, wbEnum([ - 'Rain', - 'Snow' - ])), - wbByteArray('Unknown', 4), - wbInteger('Box Size', itU32), - wbByteArray('Unknown', 4), - wbFloat('Particle Density'), - wbUnknown - ], cpNormal, True, nil, 10), - wbString(MNAM, 'Particle Texture') - ]); - - wbRecord(RFCT, 'Visual Effect', [ - wbEDID, - wbStruct(DATA, 'Effect Data', [ - wbFormIDCK('Effect Art', [ARTO, NULL]), - wbFormIDCK('Shader', [EFSH, NULL]), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Rotate to Face Target', - {0x00000002} 'Attach to Camera', - {0x00000004} 'Inherit Rotation' - ])) - ], cpNormal, True) - ]); - - wbRecord(CONT, 'Container', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00008000} 15, 'Has Distant LOD', - {0x00010000} 16, 'Random Anim Start', - {0x02000000} 25, 'Obstacle', - {0x04000000} 26, 'NavMesh Generation - Filter', - {0x08000000} 27, 'NavMesh Generation - Bounding Box', - {0x40000000} 30, 'NavMesh Generation - Ground' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFULL, - wbMODL, - wbCOCT, - wbCNTOs, - wbDEST, - wbStruct(DATA, '', [ - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Allow Sounds When Animation', - {0x02} 'Respawns', - {0x04} 'Show Owner' - ])), - wbFloat('Weight') - ], cpNormal, True), - wbKSIZ, - wbKWDAs, - wbFTYP, - wbPRPS, - wbNTRM, - wbFormIDCk(SNAM, 'Sound - Open', [SNDR]), - wbFormIDCk(QNAM, 'Sound - Close', [SNDR]), - wbFormIDCk(TNAM, 'Sound - Take All', [SNDR]), - wbFormIDCk(ONAM, 'Filter List', [FLST]) - ], True, nil, cpNormal, False, nil, wbContainerAfterSet); - - wbAIDT := - wbStruct(AIDT, 'AI Data', [ - {00} wbInteger('Aggression', itU8, wbEnum([ - 'Unaggressive', - 'Aggressive', - 'Very Aggressive', - 'Frenzied' - ])), - {01} wbInteger('Confidence', itU8, wbEnum([ - 'Cowardly', - 'Cautious', - 'Average', - 'Brave', - 'Foolhardy' - ])), - {02} wbInteger('Energy Level', itU8), - {03} wbInteger('Responsibility', itU8, wbEnum([ - 'Any crime', - 'Violence against enemies', - 'Property crime only', - 'No crime' - ])), - {04} wbInteger('Mood', itU8, wbEnum([ - 'Neutral', - 'Angry', - 'Fear', - 'Happy', - 'Sad', - 'Surprised', - 'Puzzled', - 'Disgusted' - ])), - wbInteger('Assistance', itU8, wbEnum([ - 'Helps Nobody', - 'Helps Allies', - 'Helps Friends and Allies' - ])), - wbStruct('Aggro', [ - wbInteger('Aggro Radius Behavior', itU8, wbBoolEnum), - wbInteger('Unknown', itU8), - wbInteger('Warn', itU32), - wbInteger('Warn/Attack', itU32), - wbInteger('Attack', itU32) - ]), - wbByteArray('Unknown', 4) - ], cpNormal, True, nil{wbActorTemplateUseAIData}); - - wbRecord(CSTY, 'Combat Style', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00080000} 19, 'Allow Dual Wielding' - ])), [ - wbEDID, - wbStruct(CSGD, 'General', [ - wbFloat('Offensive Mult'), - wbFloat('Defensive Mult'), - wbFloat('Group Offensive Mult'), - wbFloat('Equipment Score Mult - Melee'), - wbFloat('Equipment Score Mult - Magic'), - wbFloat('Equipment Score Mult - Ranged'), - wbFloat('Equipment Score Mult - Shout'), - wbFloat('Equipment Score Mult - Unarmed'), - wbFloat('Equipment Score Mult - Staff'), - wbFloat('Avoid Threat Chance'), - wbFloat('Dodge Threat Chance'), - wbFloat('Evade Threat Chance') - ], cpNormal, True), - wbUnknown(CSMD, cpIgnore), - wbStruct(CSME, 'Melee', [ - wbFloat('Attack Staggered Mult'), - wbFloat('Power Attack Staggered Mult'), - wbFloat('Power Attack Blocking Mult'), - wbFloat('Bash Mult'), - wbFloat('Bash Recoil Mult'), - wbFloat('Bash Attack Mult'), - wbFloat('Bash Power Attack Mult'), - wbFloat('Special Attack Mult'), - wbFloat('Block When Staggered Mult'), - wbFloat('Attack When Staggered Mult') - ], cpNormal, True, nil, 9), - wbFloat(CSRA, 'Ranged Accuracy Mult', cpNormal, True), - wbStruct(CSCR, 'Close Range', [ - wbFloat('Dueling - Circle Mult'), - wbFloat('Dueling - Fallback Mult'), - wbFloat('Flanking - Flank Distance'), - wbFloat('Flanking - Stalk Time'), - wbFloat('Charging - Charge Distance'), - wbFloat('Charging - Throw Probability'), - wbFloat('Charging - Sprint Fast Probability'), - wbFloat('Charging - Sideswipe Probability'), - wbFloat('Charging - Disengane Probability'), - wbInteger('Charging - Throw Max Targets', itU32), - wbFloat('Flanking - Flank Variance') - ], cpNormal, True), - wbStruct(CSLR, 'Long Range', [ - wbFloat('Strafe Mult'), - wbFloat('Adjust Range Mult'), - wbFloat('Crouch Mult'), - wbFloat('Wait Mult'), - wbFloat('Range Mult') - ], cpNormal, True, nil, 3), - wbFloat(CSCV, 'Cover Search Distance Mult', cpNormal, True), - wbStruct(CSFL, 'Flight', [ - wbFloat('Hover Chance'), - wbFloat('Dive Bomb Chance'), - wbFloat('Ground Attack Chance'), - wbFloat('Hover Time'), - wbFloat('Ground Attack Time'), - wbFloat('Perch Attack Chance'), - wbFloat('Perch Attack Time'), - wbFloat('Flying Attack Chance') - ], cpNormal, True), - wbInteger(DATA, 'Flags', itU32, wbFlags([ - {0x01} 'Dueling', - {0x02} 'Flanking', - {0x04} 'Allow Dual Wielding', - {0x08} 'Charging', - {0x10} 'Retarget Any Nearby Melee Target', - {0x20} 'Unknown 5' - ]), cpNormal, True) - ]); -end; - -procedure DefineFO4d; -begin - wbRecord(DIAL, 'Dialog Topic', [ - wbEDID, - wbFULL, - wbFloat(PNAM, 'Priority', cpNormal, True, 1, -1, nil, nil, 50.0), - wbFormIDCk(BNAM, 'Branch', [DLBR]), - wbFormIDCk(QNAM, 'Quest', [QUST], False, cpNormal, False), - wbFormIDCk(KNAM, 'Keyword', [KYWD]), - wbStruct(DATA, 'Data', [ - // this should not be named Flags since TwbFile.BuildReachable - // expects Top-Level flag here from FNV - wbInteger('Topic Flags', itU8, wbFlags([ - 'Do All Before Repeating', - 'Unknown 1', - 'Unknown 2' - ]), cpNormal, True), - wbInteger('Category', itU8, wbEnum([ - {0} 'Player', - {1} 'Command', - {2} 'Scene', - {3} 'Combat', - {4} 'Favor', - {5} 'Detection', - {6} 'Service', - {7} 'Miscellaneous' - ])), - wbInteger('Subtype', itU16, wbEnum([ - { 0} 'Custom', - { 1} 'ForceGreet', - { 2} 'Rumors', - { 3} 'Custom', - { 4} 'Call', - { 5} 'Follow', - { 6} 'Move', - { 7} 'Attack', - { 8} 'Inspect', - { 9} 'Retrieve', - {10} 'Stay', - {11} 'Release', - {12} 'ShowRelationships', - {13} 'Reject', - {14} 'Heal', - {15} 'Assign', - {16} 'Enter', - {17} 'Custom', - {18} 'Show', - {19} 'Agree', - {20} 'Refuse', - {21} 'ExitFavorState', - {22} 'MoralRefusal', - {23} 'Trade', - {24} 'PathingRefusal', - {25} 'Attack', - {26} 'PowerAttack', - {27} 'Bash', - {28} 'Hit', - {29} 'Flee', - {30} 'BleedOut', - {31} 'AvoidThreat', - {32} 'Death', - {33} 'Block', - {34} 'Taunt', - {35} 'ThrowGrenade', - {36} 'AllyKilled', - {37} 'OrderFallback', - {38} 'OrderMoveUp', - {39} 'OrderFlank', - {40} 'OrderTakeCover', - {41} 'Retreat', - {42} 'CoverMe', - {43} 'SuppressiveFire', - {44} 'CrippledLimb', - {45} 'PairedAttack', - {46} 'Steal', - {47} 'Yield', - {48} 'AcceptYield', - {49} 'PickpocketCombat', - {50} 'Assault', - {51} 'Murder', - {52} 'AssaultNC', - {53} 'MurderNC', - {54} 'PickpocketNC', - {55} 'StealFromNC', - {56} 'TrespassAgainstNC', - {57} 'Trespass', - {58} 'UNUSED01', - {59} 'VoicePowerStartShort', - {60} 'VoicePowerStartLong', - {61} 'VoicePowerEndShort', - {62} 'VoicePowerEndLong', - {63} 'AlertIdle', - {64} 'LostIdle', - {65} 'NormalToAlert', - {66} 'NormalToCombat', - {67} 'NormalToLost', - {68} 'AlertToNormal', - {69} 'AlertToCombat', - {70} 'CombatToNormal', - {71} 'CombatToLost', - {72} 'LostToNormal', - {73} 'LostToCombat', - {74} 'DetectFriendDie', - {75} 'ServiceRefusal', - {76} 'Repair', - {77} 'Travel', - {78} 'Training', - {79} 'BarterExit', - {80} 'RepairExit', - {81} 'Recharge', - {82} 'RechargeExit', - {83} 'TrainingExit', - {84} 'ObserveCombat', - {85} 'NoticeCorpse', - {86} 'TimeToGo', - {87} 'Goodbye', - {88} 'Hello', - {89} 'SwingMeleeWeapon', - {90} 'ShootBow', - {91} 'ZKeyObject', - {92} 'Jump', - {93} 'KnockOverObject', - {94} 'DestroyObject', - {95} 'StandonFurniture', - {96} 'LockedObject', - {97} 'PickpocketTopic', - {98} 'PursueIdleTopic', - {99} 'SharedInfo', - {100} 'SceneChoice', - {101} 'PlayerCastProjectileSpell', - {102} 'PlayerCastSelfSpell', - {103} 'PlayerShout', - {104} 'Idle', - {105} 'EnterSprintBreath', - {106} 'EnterBowZoomBreath', - {107} 'ExitBowZoomBreath', - {108} 'ActorCollidewithActor', - {109} 'PlayerinIronSights', - {110} 'OutofBreath', - {111} 'CombatGrunt', - {112} 'LeaveWaterBreath', - {113} 'ImpatientPostitive', - {114} 'ImpatientNegative', - {115} 'ImpatientNeutral', - {116} 'ImpatientQuestion', - {117} 'WaitingForPlayerInput', - {118} 'Greeting', - {119} 'PlayerActivateDoor', - {120} 'PlayerActivateTerminals', - {121} 'PlayerActivateFurniture', - {122} 'PlayerActivateActivators', - {123} 'PlayerActivateContainer', - {124} 'PlayerAquireFeaturedItem' - ])) - ]), - wbString(SNAM, 'Subtype Name', 4), - wbInteger(TIFC, 'Info Count', itU32, nil, cpBenign) - ]); - - wbRecord(DOOR, 'Door', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000010} 4, 'Non Occluder', - {0x00008000} 15, 'Has Distant LOD', - {0x00010000} 16, 'Random Anim Start', - {0x00800000} 23, 'Is Marker' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFULL, - wbMODL, - wbDEST, - wbKSIZ, - wbKWDAs, - wbNTRM, - wbFormIDCk(SNAM, 'Sound - Open', [SNDR]), - wbFormIDCk(ANAM, 'Sound - Close', [SNDR]), - wbFormIDCk(BNAM, 'Sound - Loop', [SNDR]), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - '', - 'Automatic', - 'Hidden', - 'Minimal Use', - 'Sliding', - 'Do Not Open in Combat Search', - 'No "To" Text' - ]), cpNormal, True), - wbLStringKC(ONAM, 'Alternate Text - Open', 0, cpTranslate), - wbLStringKC(CNAM, 'Alternate Text - Close', 0, cpTranslate) - ]); - - wbBlendModeEnum := wbEnum([ - '', - 'Zero', - 'One', - 'Source Color', - 'Source Inverse Color', - 'Source Alpha', - 'Source Inverted Alpha', - 'Dest Alpha', - 'Dest Inverted Alpha', - 'Dest Color', - 'Dest Inverse Color', - 'Source Alpha SAT' - ]); - - wbBlendOpEnum := wbEnum([ - '', - 'Add', - 'Subtract', - 'Reverse Subtract', - 'Minimum', - 'Maximum' - ]); - - wbZTestFuncEnum := wbEnum([ - '', - '', - '', - 'Equal To', - '', - 'Greater Than', - '', - 'Greater Than or Equal To' - ]); - - wbRecord(EFSH, 'Effect Shader', [ - wbEDID, - wbString(ICON, 'Fill Texture'), - wbString(ICO2, 'Particle Shader Texture'), - wbString(NAM7, 'Holes Texture'), - wbString(NAM8, 'Membrane Palette Texture'), - wbString(NAM9, 'Particle Palette Texture'), - wbUnknown(DATA), // if form version < 62, ignored otherwise - // format depends on Form Version (appear with form version 62, changed in form version 106), different for older records starting from the first field - wbUnion(DNAM, '', wbEFSHFormatDecider, [ - wbStruct('Data', [ - wbInteger('Membrane Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Membrane Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Membrane Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbByteColors('Fill/Texture Effect - Color Key 1'), - wbFloat('Fill/Texture Effect - Alpha Fade In Time'), - wbFloat('Fill/Texture Effect - Full Alpha Time'), - wbFloat('Fill/Texture Effect - Alpha Fade Out Time'), - wbFloat('Fill/Texture Effect - Presistent Alpha Ratio'), - wbFloat('Fill/Texture Effect - Alpha Pulse Amplitude'), - wbFloat('Fill/Texture Effect - Alpha Pulse Frequency'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (U)'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (V)'), - wbFloat('Edge Effect - Fall Off'), - wbByteColors('Edge Effect - Color'), - wbFloat('Edge Effect - Alpha Fade In Time'), - wbFloat('Edge Effect - Full Alpha Time'), - wbFloat('Edge Effect - Alpha Fade Out Time'), - wbFloat('Edge Effect - Persistent Alpha Ratio'), - wbFloat('Edge Effect - Alpha Pulse Amplitude'), - wbFloat('Edge Effect - Alpha Pulse Frequency'), - wbFloat('Fill/Texture Effect - Full Alpha Ratio'), - wbFloat('Edge Effect - Full Alpha Ratio'), - wbInteger('Membrane Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbFloat('Holes Animation - Start Time'), - wbFloat('Holes Animation - End Time'), - wbFloat('Holes Animation - Start Value'), - wbFloat('Holes Animation - End Value'), - wbFormIDCk('Ambient Sound', [SNDR, NULL]), - wbByteColors('Fill/Texture Effect - Color Key 2'), - wbByteColors('Fill/Texture Effect - Color Key 3'), - wbInteger('Unknown', itU8), - wbStruct('Fill/Texture Effect - Color Key Scale/Time', [ - wbFloat('Color Key 1 - Scale'), - wbFloat('Color Key 2 - Scale'), - wbFloat('Color Key 3 - Scale'), - wbFloat('Color Key 1 - Time'), - wbFloat('Color Key 2 - Time'), - wbFloat('Color Key 3 - Time') - ]), - wbInteger('Flags', itU32, wbFlags([ - 'No Membrane Shader', - 'Membrane Grayscale Color', - 'Membrane Grayscale Alpha', - 'No Particle Shader', - 'Edge Effect - Inverse', - 'Affect Skin Only', - 'Texture Effect - Ignore Alpha', - 'Texture Effect - Project UVs', - 'Ignore Base Geometry Alpha', - 'Texture Effect - Lighting', - 'Texture Effect - No Weapons', - 'Use Alpha Sorting', - 'Prefer Dismembered Limbs', - 'Unknown 13', - 'Unknown 14', - 'Particle Animated', - 'Particle Grayscale Color', - 'Particle Grayscale Alpha', - 'Unknown 18', - 'Unknown 19', - 'Unknown 20', - 'Unknown 21', - 'Unknown 22', - 'Unknown 23', - 'Use Blood Geometry (Weapons Only)' - ])), - wbFloat('Fill/Texture Effect - Texture Scale (U)'), - wbFloat('Fill/Texture Effect - Texture Scale (V)') - ]), - wbStruct('Data (old format)', [ - wbByteArray('Unknown', 1), - wbInteger('Membrane Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Membrane Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Membrane Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbByteColors('Fill/Texture Effect - Color Key 1'), - wbFloat('Fill/Texture Effect - Alpha Fade In Time'), - wbFloat('Fill/Texture Effect - Full Alpha Time'), - wbFloat('Fill/Texture Effect - Alpha Fade Out Time'), - wbFloat('Fill/Texture Effect - Presistent Alpha Ratio'), - wbFloat('Fill/Texture Effect - Alpha Pulse Amplitude'), - wbFloat('Fill/Texture Effect - Alpha Pulse Frequency'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (U)'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (V)'), - wbFloat('Edge Effect - Fall Off'), - wbByteColors('Edge Effect - Color'), - wbFloat('Edge Effect - Alpha Fade In Time'), - wbFloat('Edge Effect - Full Alpha Time'), - wbFloat('Edge Effect - Alpha Fade Out Time'), - wbFloat('Edge Effect - Persistent Alpha Ratio'), - wbFloat('Edge Effect - Alpha Pulse Amplitude'), - wbFloat('Edge Effect - Alpha Pulse Frequency'), - wbFloat('Fill/Texture Effect - Full Alpha Ratio'), - wbFloat('Edge Effect - Full Alpha Ratio'), - wbInteger('Membrane Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Particle Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Particle Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Particle Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbInteger('Particle Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbFloat('Particle Shader - Particle Birth Ramp Up Time'), - wbFloat('Particle Shader - Full Particle Birth Time'), - wbFloat('Particle Shader - Particle Birth Ramp Down Time'), - wbFloat('Particle Shader - Full Particle Birth Ratio'), - wbFloat('Particle Shader - Persistant Particle Count'), - wbFloat('Particle Shader - Particle Lifetime'), - wbFloat('Particle Shader - Particle Lifetime +/-'), - wbFloat('Particle Shader - Initial Speed Along Normal'), - wbFloat('Particle Shader - Acceleration Along Normal'), - wbFloat('Particle Shader - Initial Velocity #1'), - wbFloat('Particle Shader - Initial Velocity #2'), - wbFloat('Particle Shader - Initial Velocity #3'), - wbFloat('Particle Shader - Acceleration #1'), - wbFloat('Particle Shader - Acceleration #2'), - wbFloat('Particle Shader - Acceleration #3'), - wbFloat('Particle Shader - Scale Key 1'), - wbFloat('Particle Shader - Scale Key 2'), - wbFloat('Particle Shader - Scale Key 1 Time'), - wbFloat('Particle Shader - Scale Key 2 Time'), - wbByteColors('Color Key 1 - Color'), - wbByteColors('Color Key 2 - Color'), - wbByteColors('Color Key 3 - Color'), - wbFloat('Color Key 1 - Color Alpha'), - wbFloat('Color Key 2 - Color Alpha'), - wbFloat('Color Key 3 - Color Alpha'), - wbFloat('Color Key 1 - Color Key Time'), - wbFloat('Color Key 2 - Color Key Time'), - wbFloat('Color Key 3 - Color Key Time'), - wbFloat('Particle Shader - Initial Speed Along Normal +/-'), - wbFloat('Particle Shader - Initial Rotation (deg)'), - wbFloat('Particle Shader - Initial Rotation (deg) +/-'), - wbFloat('Particle Shader - Rotation Speed (deg/sec)'), - wbFloat('Particle Shader - Rotation Speed (deg/sec) +/-'), - wbFormIDCk('Addon Models', [DEBR, NULL]), - wbFloat('Holes - Start Time'), - wbFloat('Holes - End Time'), - wbFloat('Holes - Start Val'), - wbFloat('Holes - End Val'), - wbFloat('Edge Width (alpha units)'), - wbByteColors('Edge Color'), - wbFloat('Explosion Wind Speed'), - wbInteger('Texture Count U', itU32), - wbInteger('Texture Count V', itU32), - wbFloat('Addon Models - Fade In Time'), - wbFloat('Addon Models - Fade Out Time'), - wbFloat('Addon Models - Scale Start'), - wbFloat('Addon Models - Scale End'), - wbFloat('Addon Models - Scale In Time'), - wbFloat('Addon Models - Scale Out Time'), - wbFormIDCk('Ambient Sound', [SNDR, NULL]), - wbByteColors('Fill/Texture Effect - Color Key 2'), - wbByteColors('Fill/Texture Effect - Color Key 3'), - wbStruct('Fill/Texture Effect - Color Key Scale/Time', [ - wbFloat('Color Key 1 - Scale'), - wbFloat('Color Key 2 - Scale'), - wbFloat('Color Key 3 - Scale'), - wbFloat('Color Key 1 - Time'), - wbFloat('Color Key 2 - Time'), - wbFloat('Color Key 3 - Time') - ]), - wbFloat('Color Scale'), - wbFloat('Birth Position Offset'), - wbFloat('Birth Position Offset Range +/-'), - wbStruct('Particle Shader Animated', [ - wbInteger('Start Frame', itU32), - wbInteger('Start Frame Variation', itU32), - wbInteger('End Frame', itU32), - wbInteger('Loop Start Frame', itU32), - wbInteger('Loop Start Variation', itU32), - wbInteger('Frame Count', itU32), - wbInteger('Frame Count Variation', itU32) - ]), - wbInteger('Flags', itU32, wbFlags([ - 'No Membrane Shader', - 'Membrane Grayscale Color', - 'Membrane Grayscale Alpha', - 'No Particle Shader', - 'Edge Effect Inverse', - 'Affect Skin Only', - 'Ignore Alpha', - 'Project UVs', - 'Ignore Base Geometry Alpha', - 'Lighting', - 'No Weapons', - 'Unknown 11', - 'Unknown 12', - 'Unknown 13', - 'Unknown 14', - 'Particle Animated', - 'Particle Grayscale Color', - 'Particle Grayscale Alpha', - 'Unknown 18', - 'Unknown 19', - 'Unknown 20', - 'Unknown 21', - 'Unknown 22', - 'Unknown 23', - 'Use Blood Geometry' - ])), - wbFloat('Fill/Texture Effect - Texture Scale (U)'), - wbFloat('Fill/Texture Effect - Texture Scale (V)'), - wbInteger('Scene Graph Emit Depth Limit (unused)', itU16) - ]) - ], cpNormal, True), - wbMODL - ]); - - wbRecord(ENCH, 'Object Effect', [ - wbEDID, - wbOBNDReq, - wbFULL, - wbStruct(ENIT, 'Effect Data', [ - wbInteger('Enchantment Cost', itS32), - wbInteger('Flags', itU32, wbFlags([ - 'No Auto-Calc', - '', - 'Extend Duration On Recast' - ])), - wbInteger('Cast Type', itU32, wbCastEnum), - wbInteger('Enchantment Amount', itS32), - wbInteger('Target Type', itU32, wbTargetEnum), - wbInteger('Enchant Type', itU32, wbEnum([], [ - $06, 'Enchantment', - $0C, 'Staff Enchantment' - ])), - wbFloat('Charge Time'), - wbFormIDCk('Base Enchantment', [ENCH, NULL]), - wbFormIDCk('Worn Restrictions', [FLST, NULL]) - ], cpNormal, True, nil, 8), - wbEffectsReq - ]); - - {wbRecord(EYES, 'Eyes', [ - wbEDID - ]);} - - wbRecord(FACT, 'Faction', [ - wbEDID, - wbFULL, - wbRArrayS('Relations', - wbStructSK(XNAM, [0], 'Relation', [ - wbFormIDCkNoReach('Faction', [FACT, RACE]), - wbInteger('Modifier', itS32), - wbInteger('Group Combat Reaction', itU32, wbEnum([ - {0x00000001} 'Neutral', - {0x00000002} 'Enemy', - {0x00000004} 'Ally', - {0x00000008} 'Friend' - ])) - ])), - wbStruct(DATA, 'Flags', [ - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Hidden From NPC', - {0x00000002} 'Special Combat', - {0x00000004} 'Unknown 3', - {0x00000008} 'Unknown 4', - {0x00000010} 'Unknown 5', - {0x00000020} 'Unknown 6', - {0x00000040} 'Track Crime', - {0x00000080} 'Ignore Crimes: Murder', - {0x00000100} 'Ignore Crimes: Assault', - {0x00000200} 'Ignore Crimes: Stealing', - {0x00000400} 'Ignore Crimes: Trespass', - {0x00000800} 'Do Not Report Crimes Against Members', - {0x00001000} 'Crime Gold - Use Defaults', - {0x00002000} 'Ignore Crimes: Pickpocket', - {0x00004000} 'Vendor', - {0x00008000} 'Can Be Owner', - {0x00010000} 'Ignore Crimes: Werewolf (unused)' - ])) - ], cpNormal, True, nil, 1), - wbFormIDCk(JAIL, 'Exterior Jail Marker', [REFR]), - wbFormIDCk(WAIT, 'Follower Wait Marker', [REFR]), - wbFormIDCk(STOL, 'Stolen Goods Container', [REFR]), - wbFormIDCk(PLCN, 'Player Inventory Container', [REFR]), - wbFormIDCk(CRGR, 'Shared Crime Faction List', [FLST]), - wbFormIDCk(JOUT, 'Jail Outfit', [OTFT]), - wbStruct(CRVA, 'Crime Values', [ - wbInteger('Arrest', itU8, wbBoolEnum), - wbInteger('Attack On Sight', itU8, wbBoolEnum), - wbInteger('Murder', itU16), - wbInteger('Assault', itU16), - wbInteger('Trespass', itU16), - wbInteger('Pickpocket', itU16), - wbInteger('Unknown', itU16), - wbFloat('Steal Multiplier'), - wbInteger('Escape', itU16), - wbInteger('Werewolf (unused)', itU16) - ], cpNormal, False, nil, 7), - wbRStructsSK('Ranks', 'Rank', [0], [ - wbInteger(RNAM, 'Rank#', itU32), - wbLString(MNAM, 'Male Title', 0, cpTranslate), - wbLString(FNAM, 'Female Title', 0, cpTranslate), - wbString(INAM, 'Insignia (unused)') - ], []), - wbFormIDCk(VEND, 'Vendor Buy/Sell List', [FLST]), - wbFormIDCk(VENC, 'Merchant Container', [REFR]), - wbStruct(VENV, 'Vendor Values', [ - wbInteger('Start Hour', itU16), - wbInteger('End Hour', itU16), - wbInteger('Radius', itU16), - wbByteArray('Unknown 1', 2), - wbInteger('Buys Stolen Items', itU8, wbBoolEnum), - wbInteger('Buy/Sell Everything Not In List?', itU8, wbBoolEnum), - wbInteger('Buys NonStolen Items', itU8, wbBoolEnum), - wbInteger('Unknown', itU8) - ]), - wbPLVD, - wbCITC, - wbCTDAsCount - ], False, nil, cpNormal, False, nil {wbFACTAfterLoad}, wbConditionsAfterSet); - - wbRecord(FURN, 'Furniture', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Unknown 2', - {0x00000010} 4, 'Unknown 4', - {0x00000080} 7, 'Is Perch', - {0x00002000} 13, 'Unknown 13', - {0x00008000} 15, 'Has Distant LOD', - {0x00010000} 16, 'Random Anim Start', - {0x00800000} 23, 'Is Marker', - {0x02000000} 25, 'Power Armor', - {0x10000000} 28, 'Must Exit To Talk', - {0x20000000} 29, 'Child Can Use' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFULL, - wbMODL, - wbDEST, - wbKSIZ, - wbKWDAs, - wbPRPS, - wbNTRM, - wbFTYP, - wbUnknown(PNAM), - wbFormIDCk(WNAM, 'Drinking Water Type', [WATR]), - wbATTX, - wbInteger(FNAM, 'Flags', itU16, wbFlags([ - {0x0001} 'Unknown 0', - {0x0002} 'Ignored By Sandbox' - ])), - wbCITC, - wbCTDAsCount, - wbCOCT, - wbCNTOs, - wbMNAMFurnitureMarker, - wbStruct(WBDT, 'Workbench Data', [ - wbInteger('Bench Type', itU8, wbEnum([ - {0} 'None', - {1} 'Create Object', // used only for MS11Workbench [FURN:00091FD5] - {2} 'Weapons', // used for the Weapons (plural) workbench - {3} 'Enchanting (unused)', // not used - {4} 'Enchanting Experiment (unused)', // not used - {5} 'Alchemy', // used for Chemistry and Cooking, so Alchemy is probably okay - {6} 'Alchemy Experiment (unused)', // not used - {7} 'Armor', // FO4 calls this the Armor workbench, no mention of Smithing - {8} 'Power Armor', // used for Power Armor stations - {9} 'Robot Mod' // used for Robot stations - ])), - wbInteger('Uses Skill', itS8, wbSkillEnum) - ], cpNormal, True, nil, 1), - wbFormIDCk(NAM1, 'Associated Form', [ARMO, WEAP, PERK, SPEL, HAZD]), - wbRArray('Markers', wbRStruct('Marker', [ - wbInteger(ENAM, 'Marker Index', itS32), - wbStruct(NAM0, 'Disabled Entry Points', [ - wbByteArray('Unknown', 2), - wbInteger('Disabled Points', itU16, wbFurnitureEntryTypeFlags) - ]) - //wbFormIDCk(FNMK, 'Marker Keyword', [KYWD, NULL]) - ], [])), - wbRArray('Marker Entry Points', wbStruct(FNPR, 'Marker', [ - wbInteger('Type', itU16, wbFurnitureAnimTypeEnum), - wbInteger('Entry Points', itU16, wbFurnitureEntryTypeFlags) - ])), - wbString(XMRK, 'Marker Model'), - wbSNAMMarkerParams, - wbNVNM, - wbAPPR, - wbObjectTemplate - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbRecord(GLOB, 'Global', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000040} 6, 'Constant' - ])), [ - wbEDID, - wbInteger(FNAM, 'Type', itU8, wbEnum([], [ - 0, 'Unknown 0', - Ord('s'), 'Short', - Ord('l'), 'Long', - Ord('f'), 'Float', - Ord('b'), 'Boolean' - ]), cpNormal, True), - wbFloat(FLTV, 'Value', cpNormal, True) - ]); - - wbRecord(GMST, 'Game Setting', [ - wbString(EDID, 'Editor ID', 0, cpCritical, True, nil, wbGMSTEDIDAfterSet), - wbUnion(DATA, 'Value', wbGMSTUnionDecider, [ - wbLString('Name', 0, cpTranslate), - wbInteger('Int', itS32), - wbFloat('Float'), - wbInteger('Bool', itU32, wbBoolEnum) - ], cpNormal, True) - ]); - - wbRecord(KYWD, 'Keyword', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00080000} {15} 15, 'Restricted' - ])), [ - wbEDID, - wbCNAM, - wbString(DNAM, 'Notes'), - wbInteger(TNAM, 'Type', itU32, wbKeywordTypeEnum), - wbFormIDCk(DATA, 'Attraction Rule', [AORU]), - wbFULL, - wbString(NNAM, 'Display Name') {Legacy record replaced with FULL} - ]); -end; - -procedure DefineFO4e; -begin - wbRecord(LCRT, 'Location Reference Type', [ - wbEDID, - wbCNAM, - wbUnknown(TNAM) - ]); - - wbRecord(AACT, 'Action', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00080000} {15} 15, 'Restricted' - ])), [ - wbEDID, - wbCNAM, - wbString(DNAM, 'Notes'), - wbInteger(TNAM, 'Type', itU32, wbKeywordTypeEnum), - wbFormIDCk(DATA, 'Attraction Rule', [AORU]), - wbFULL - ]); - - wbRecord(TXST, 'Texture Set', [ - wbEDID, - wbOBNDReq, - wbRStruct('Textures (RGB/A)', [ - wbString(TX00, 'Difuse'), - wbString(TX01, 'Normal/Gloss'), - wbString(TX03, 'Glow'), - wbString(TX04, 'Height'), - wbString(TX05, 'Environment'), - wbString(TX02, 'Wrinkles'), {TX05 TX02 TX06 Yes this has to go here} - wbString(TX06, 'Multilayer'), - wbString(TX07, 'Smooth Spec') - ], []), - wbDODT, - wbInteger(DNAM, 'Flags', itU16, wbFlags([ - {0x0001} 'No Specular Map', - {0x0002} 'Facegen Textures', - {0x0004} 'Has Model Space Normal Map' - ]), cpNormal, True), - wbString(MNAM, 'Material') - ]); - - wbRecord(HDPT, 'Head Part', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable' - ])), [ - wbEDID, - wbFULL, - wbMODL, - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Playable', - {0x02} 'Male', - {0x04} 'Female', - {0x10} 'Is Extra Part', - {0x20} 'Use Solid Tint', - {0x40} 'Uses Body Texture' - ]), cpNormal, True), - wbInteger(PNAM, 'Type', itU32, wbEnum([ - 'Misc', - 'Face', - 'Eyes', - 'Hair', - 'Facial Hair', - 'Scar', - 'Eyebrows', - 'Meatcaps', - 'Teeth', - 'Head Rear' - ])), - wbRArrayS('Extra Parts', - wbFormIDCk(HNAM, 'Part', [HDPT]) - ), - wbRStructs('Parts', 'Part', [ - wbInteger(NAM0, 'Part Type', itU32, wbEnum([ - 'Race Morph', - 'Tri', - 'Chargen Morph' - ])), - wbString(NAM1, 'Filename', 0, cpTranslate, True) - ], []), - wbFormIDCk(TNAM, 'Texture Set', [TXST]), - wbFormIDCk(CNAM, 'Color', [CLFM]), - wbFormIDCk(RNAM, 'Valid Races', [FLST]), - wbCTDAs - ]); - - wbRecord(ASPC, 'Acoustic Space', [ - wbEDID, - wbOBNDReq, - wbFormIDCk(SNAM, 'Looping Sound', [SNDR]), - wbFormIDCk(RDAT, 'Use Sound from Region (Interiors Only)', [REGN]), - wbFormIDCk(BNAM, 'Environment Type', [REVB]), - wbInteger(XTRI, 'Is Interior', itU8, wbBoolEnum, cpNormal, True), - wbInteger(WNAM, 'Weather Attenuation (dB)', itU16, wbDiv(100)) - ]); - - wbRecord(MSTT, 'Moveable Static', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000100} 8, 'Must Update Anims', - {0x00000200} 9, 'Hidden From Local Map', - {0x00000800} 11, 'Used As Platform', - {0x00002000} 13, 'Pack-In Use Only', - {0x00008000} 15, 'Has Distant LOD', - {0x00010000} 16, 'Random Anim Start', - {0x00080000} 19, 'Has Currents', - {0x02000000} 25, 'Obstacle', - {0x04000000} 26, 'NavMesh Generation - Filter', - {0x08000000} 27, 'NavMesh Generation - Bounding Box', - {0x40000000} 30, 'NavMesh Generation - Ground' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFULL, - wbMODL, - wbDEST, - wbKSIZ, - wbKWDAs, - wbPRPS, - wbInteger(DATA, 'On Local Map', itU8, wbBoolEnum, cpNormal, True), - wbFormIDCk(SNAM, 'Looping Sound', [SNDR]) - ]); -end; - -procedure DefineFO4f; -begin - wbRecord(IDLM, 'Idle Marker', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x20000000} 29, 'Child Can Use' - ])), [ - wbEDID, - wbOBNDReq, - wbKSIZ, - wbKWDAs, - wbInteger(IDLF, 'Flags', itU8, wbFlags([ - 'Run in Sequence', - 'Unknown 1', - 'Do Once', - 'Unknown 3', - 'Ignored by Sandbox' - ]), cpNormal, False), - wbInteger(IDLC, 'Animation Count', itU8, nil, cpBenign), - wbFloat(IDLT, 'Idle Timer Setting', cpNormal, False), - wbArray(IDLA, 'Animations', wbFormIDCk('Animation', [IDLE]), 0, nil, wbIDLAsAfterSet, cpNormal, False), - wbFormIDCk(QNAM, 'Unknown', [KYWD]), - wbMODL - ], False, nil, cpNormal, False, nil, wbAnimationsAfterSet); - - wbRecord(PROJ, 'Projectile', [ - wbEDID, - wbOBNDReq, - wbFULL, - wbMODL, - wbDEST, - wbByteArray(DATA, 'Unused', 0, cpIgnore), - wbStruct(DNAM, 'Data', [ - wbInteger('Flags', itU16, wbFlags([ - {0x00001} 'Hitscan', - {0x00002} 'Explosion', - {0x00004} 'Alt. Trigger', - {0x00008} 'Muzzle Flash', - {0x00010} 'Unknown 4', - {0x00020} 'Can Be Disabled', - {0x00040} 'Can Be Picked Up', - {0x00080} 'Supersonic', - {0x00100} 'Pins Limbs', - {0x00200} 'Pass Through Small Transparent', - {0x00400} 'Disable Combat Aim Correction', - {0x00800} 'Penetrates Geometry', - {0x01000} 'Continuous Update', - {0x02000} 'Seeks Target' - ])), - wbInteger('Type', itU16, wbEnum([], [ - $01, 'Missile', - $02, 'Lobber', - $04, 'Beam', - $08, 'Flame', - $10, 'Cone', - $20, 'Barrier', - $40, 'Arrow' - ])), - wbFloat('Gravity'), - wbFloat('Speed'), - wbFloat('Range'), - wbFormIDCk('Light', [LIGH, NULL]), - wbFormIDCk('Muzzle Flash - Light', [LIGH, NULL]), - wbFloat('Explosion - Alt. Trigger - Proximity'), - wbFloat('Explosion - Alt. Trigger - Timer'), - wbFormIDCk('Explosion', [EXPL, NULL]), - wbFormIDCk('Sound', [SNDR, NULL]), - wbFloat('Muzzle Flash - Duration'), - wbFloat('Fade Duration'), - wbFloat('Impact Force'), - wbFormIDCk('Sound - Countdown', [SNDR, NULL]), - wbFormIDCk('Sound - Disable', [SNDR, NULL]), - wbFormIDCk('Default Weapon Source', [WEAP, NULL]), - wbFloat('Cone Spread'), - wbFloat('Collision Radius'), - wbFloat('Lifetime'), - wbFloat('Relaunch Interval'), - wbFormIDCk('Decal Data', [TXST, NULL]), - wbFormIDCk('Collision Layer', [COLL, NULL]), - wbInteger('Tracer Frequency', itU8), - wbFormIDCk('VATS Projectile', [PROJ, NULL]) - ]), - wbRStructSK([0], 'Muzzle Flash Model', [ - wbString(NAM1, 'Model Filename'), - wbByteArray(NAM2, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow) - ], [], cpNormal, True), - wbInteger(VNAM, 'Sound Level', itU32, wbSoundLevelEnum, cpNormal, True) - ]); - - wbRecord(HAZD, 'Hazard', [ - wbEDID, - wbOBNDReq, - wbFULL, - wbMODL, - wbFormIDCk(MNAM, 'Image Space Modifier', [IMAD, NULL]), - wbStruct(DNAM, 'Data', [ - wbInteger('Limit', itU32), - wbFloat('Radius'), - wbFloat('Lifetime'), - wbFloat('Image Space Radius'), - wbFloat('Target Interval'), - wbInteger('Flags', itU32, wbFlags([ - {0x01} 'Affects Player Only', - {0x02} 'Inherit Duration from Spawn Spell', - {0x04} 'Align to Impact Normal', - {0x08} 'Inherit Radius from Spawn Spell', - {0x10} 'Drop to Ground', - {0x20} 'Taper Effectiveness by Proximity' - ])), - wbFormIDCk('Effect', [SPEL, ENCH, NULL]), - wbFormIDCk('Light', [LIGH, NULL]), - wbFormIDCk('Impact Data Set', [IPDS, NULL]), - wbFormIDCk('Sound', [SNDR, NULL]), - wbStruct('Taper Effectiveness', [ - wbFloat('Full Effect Radius'), - wbFloat('Taper Weight'), - wbFloat('Taper Curse') - ]) - ]) - ]); - - wbSoulGemEnum := wbEnum([ - {0} 'None', - {1} 'Petty', - {2} 'Lesser', - {3} 'Common', - {4} 'Greater', - {5} 'Grand' - ]); - - {wbRecord(SLGM, 'Soul Gem', [ - wbEDID - ]);} - - if wbSimpleRecords then begin - - wbRecord(NAVI, 'Navigation Mesh Info Map', [ - wbEDID, - wbInteger(NVER, 'Version', itU32), - wbRArray('Navigation Map Infos', - wbStruct(NVMI, 'Navigation Map Info', [ - wbFormIDCk('Navigation Mesh', [NAVM]), - wbByteArray('Data', 20), - wbArray('Merged To', wbFormIDCk('Mesh', [NAVM]), -1), - wbArray('Preferred Merges', wbFormIDCk('Mesh', [NAVM]), -1), - wbArray('Linked Doors', wbStruct('Door', [ - wbByteArray('Unknown', 4), - wbFormIDCk('Door Ref', [REFR]) - ]), -1), - wbInteger('Is Island', itU8, wbBoolEnum), - wbUnion('Island', wbNAVIIslandDataDecider, [ - wbNull, - wbStruct('Island Data', [ - wbByteArray('Unknown', 24), - wbArray('Triangles', wbByteArray('Triangle', 6), -1), - wbArray('Vertices', wbByteArray('Vertex', 12), -1) - ]) - ]), - wbByteArray('Unknown', 4), - wbFormIDCk('Parent Worldspace', [WRLD, NULL]), - wbUnion('Parent', wbNAVIParentDecider, [ - wbStruct('Coordinates', [ - wbInteger('Grid Y', itS16), - wbInteger('Grid X', itS16) - ]), - wbFormIDCk('Parent Cell', [CELL]) - ]) - ]) - ), - wbStruct(NVPP, 'Preferred Pathing', [ - wbArray('NavMeshes', wbArray('Set', wbFormIDCk('', [NAVM]), -1), -1), - wbArray('NavMesh Tree?', wbStruct('', [ - wbFormIDCk('NavMesh', [NAVM]), - wbInteger('Index/Node', itU32) - ]), -1) - ]), - //wbArray(NVSI, 'Unknown', wbFormIDCk('Navigation Mesh', [NAVM])) - wbUnknown(NVSI) - ]); - - wbRecord(NAVM, 'Navigation Mesh', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00040000} 18, 'Compressed', - {0x04000000} 26, 'AutoGen', - {0x80000000} 31, 'Unknown 31' - ]), [18]), [ - wbEDID, - wbNVNM, -// wbStruct(NVNM, 'Geometry', [ -// wbByteArray('Unknown', 8), -// wbFormIDCk('Parent Worldspace', [WRLD, NULL]), -// wbUnion('Parent', wbNVNMParentDecider, [ -// wbStruct('Coordinates', [ -// wbInteger('Grid Y', itS16), -// wbInteger('Grid X', itS16) -// ]), -// wbFormIDCk('Parent Cell', [CELL]) -// ]), -// wbArray('Vertices', wbByteArray('Vertex', 12), -1), -// wbArray('Triangles', wbByteArray('Triangle', 21), -1), -// wbArray('Edge Links', -// wbStruct('Edge Link', [ -// wbByteArray('Unknown', 4), -// wbFormIDCk('Mesh', [NAVM]), -// wbInteger('Triangle', itS16), -// wbInteger('Unknown', itU8) -// ]) -// , -1), -// wbArray('Door Triangles', -// wbStruct('Door Triangle', [ -// wbInteger('Triangle before door', itS16), -// wbByteArray('Unknown', 4), -// wbFormIDCk('Door', [REFR]) -// ]) -// , -1), -// wbUnknown -// ]), - wbUnknown(ONAM), - wbUnknown(NNAM), - wbUnknown(MNAM) - ], False, wbNAVMAddInfo); - - end else begin - - wbRecord(NAVI, 'Navigation Mesh Info Map', [ - wbEDID, - wbInteger(NVER, 'Version', itU32), - wbRArray('Navigation Map Infos', - wbStruct(NVMI, 'Navigation Map Info', [ - wbFormIDCk('Navigation Mesh', [NAVM]), - wbByteArray('Unknown', 4), - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z'), - wbInteger('Preferred Merges Flag', itU32), - wbArray('Merged To', wbFormIDCk('Mesh', [NAVM]), -1), - wbArray('Preferred Merges', wbFormIDCk('Mesh', [NAVM]), -1), - wbArray('Linked Doors', wbStruct('Door', [ - wbByteArray('Unknown', 4), - wbFormIDCk('Door Ref', [REFR]) - ]), -1), - wbInteger('Is Island', itU8, wbBoolEnum), - wbUnion('Island', wbNAVIIslandDataDecider, [ - wbNull, - wbStruct('Island Data', [ - wbFloat('Min X'), - wbFloat('Min Y'), - wbFloat('Min Z'), - wbFloat('Max X'), - wbFloat('Max Y'), - wbFloat('Max Z'), - wbArray('Triangles', - wbStruct('Triangle', [ - wbArray('Vertices', wbInteger('Vertex', itS16), 3) - ]) - , -1), - wbArray('Vertices', wbStruct('Vertex', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), -1) - ]) - ]), - wbByteArray('Unknown', 4), - wbFormIDCk('Parent Worldspace', [WRLD, NULL]), - wbUnion('Parent', wbNAVIParentDecider, [ - wbStruct('Coordinates', [ - wbInteger('Grid Y', itS16), - wbInteger('Grid X', itS16) - ]), - wbFormIDCk('Parent Cell', [CELL]) - ]) - ]) - ), - wbStruct(NVPP, 'Preferred Pathing', [ - wbArray('NavMeshes', wbArray('Set', wbFormIDCk('', [NAVM]), -1), -1), - wbArray('NavMesh Tree?', wbStruct('', [ - wbFormIDCk('NavMesh', [NAVM]), - wbInteger('Index/Node', itU32) - ]), -1) - ]), - wbArray(NVSI, 'Unknown', wbFormIDCk('Navigation Mesh', [NAVM])) - ]); - - wbRecord(NAVM, 'Navigation Mesh', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00040000} 18, 'Compressed', - {0x04000000} 26, 'AutoGen' - ]), [18]), [ - wbEDID, - wbNVNM, -// wbStruct(NVNM, 'Geometry', [ -// wbInteger('Unknown', itU32), -// wbByteArray('Unknown', 4), -// wbFormIDCk('Parent Worldspace', [WRLD, NULL]), -// wbUnion('Parent', wbNVNMParentDecider, [ -// wbStruct('Coordinates', [ -// wbInteger('Grid Y', itS16), -// wbInteger('Grid X', itS16) -// ]), -// wbFormIDCk('Parent Cell', [CELL]) -// ]), -// wbArray('Vertices', wbStruct('Vertex', [ -// wbFloat('X'), -// wbFloat('Y'), -// wbFloat('Z') -// ]), -1), -// wbArray('Triangles', -// wbStruct('Triangle', [ -// wbInteger('Vertex 0', itS16), -// wbInteger('Vertex 1', itS16), -// wbInteger('Vertex 2', itS16), -// wbInteger('Edge 0-1', itS16), -// wbInteger('Edge 1-2', itS16), -// wbInteger('Edge 2-0', itS16), -// wbFloat('Height'), -// wbByteArray('Unknown', 5) -// ]) -// , -1), -// wbArray('Edge Links', -// wbStruct('Edge Link', [ -// wbByteArray('Unknown', 4), -// wbFormIDCk('Mesh', [NAVM]), -// wbInteger('Triangle', itS16), -// wbInteger('Unknown', itU8) -// ]) -// , -1), -// wbArray('Door Triangles', -// wbStruct('Door Triangle', [ -// wbInteger('Triangle before door', itS16), -// wbByteArray('Unknown', 4), -// wbFormIDCk('Door', [REFR]) -// ]) -// , -1), -// wbUnknown -// ]), - wbFormID(ONAM), - wbArray(NNAM, 'Unknown', wbInteger('Unknown', itU16)), - wbUnion(MNAM, 'Unknown', wbSubrecordSizeDecider, [wbNull, - wbStruct('Unknown', [ - wbFormID('Unknown'), - wbInteger('Unknown', itU16), - wbInteger('Unused', itU16), - wbUnknown - ]) - ]) - ], False, wbNAVMAddInfo); - - end; - -end; - -procedure DefineFO4g; -begin - - wbRecord(EXPL, 'Explosion', [ - wbEDID, - wbOBNDReq, - wbFULL, - wbMODL, - wbEITM, - wbFormIDCk(MNAM, 'Image Space Modifier', [IMAD]), - wbStruct(DATA, 'Data', [ - wbFormIDCk('Light', [LIGH, NULL]), - wbFormIDCk('Sound 1', [SNDR, NULL]), - wbFormIDCk('Sound 2', [SNDR, NULL]), - wbFormIDCk('Impact Data Set', [IPDS, NULL]), - wbFormID('Placed Object'), - wbFormIDCk('Spawn Projectile', [PROJ, NULL]), - wbFloat('Force'), - wbFloat('Damage'), - wbFloat('Inner Radius'), - wbFloat('Outer Radius'), - wbFloat('IS Radius'), - wbUnion('Vertical Offset Mult', wbDeciderFormVersion99, [ - wbByteArray('Unknown', 4), - wbFloat('Vertical Offset Mult') - ]), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Unknown 0', - {0x00000002} 'Always Uses World Orientation', - {0x00000004} 'Knock Down - Always', - {0x00000008} 'Knock Down - By Formula', - {0x00000010} 'Ignore LOS Check', - {0x00000020} 'Push Explosion Source Ref Only', - {0x00000040} 'Ignore Image Space Swap', - {0x00000080} 'Chain', - {0x00000100} 'No Controller Vibration', - {0x00000200} 'Placed Object Persists', - {0x00000400} 'Skip Underwater Tests' - ])), - wbInteger('Sound Level', itU32, wbSoundLevelEnum), - wbFloat('Placed Object AutoFade Delay'), - wbInteger('Stagger', itU32, wbEnum([ - 'None', - 'Small', - 'Medium', - 'Large', - 'Extra Large' - ])), - wbStruct('Spawn', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z'), - wbFloat('Spread Degrees'), - wbInteger('Count', itU32) - ]) - ], cpNormal, True, nil, 13) - ]); - - wbRecord(DEBR, 'Debris', [ - wbEDID, - wbRStructs('Models', 'Model', [ - wbStruct(DATA, 'Data', [ - wbInteger('Percentage', itU8), - wbString('Model Filename'), - wbInteger('Flags', itU8, wbFlags([ - 'Has Collision Data' - ])) - ], cpNormal, True), - wbMODT - ], [], cpNormal, True) - ]); - - wbRecord(IMGS, 'Image Space', [ - wbEDID, - wbByteArray(ENAM, 'Unused', 0, cpIgnore), - wbStruct(HNAM, 'HDR', [ - wbFloat('Eye Adapt Speed'), - wbFloat('Tonemap E'), - wbFloat('Bloom Threshold'), - wbFloat('Bloom Scale'), - wbFloat('Auto Exposure Max'), - wbFloat('Auto Exposure Min'), - wbFloat('Sunlight Scale'), - wbFloat('Sky Scale'), - wbFloat('Middle Gray') - ], cpNormal, True), - wbStruct(CNAM, 'Cinematic', [ - wbFloat('Saturation'), - wbFloat('Brightness'), - wbFloat('Contrast') - ], cpNormal, True), - wbStruct(TNAM, 'Tint', [ - wbFloat('Amount'), - wbFloatColors('Color') - ], cpNormal, True), - wbStruct(DNAM, 'Depth of Field', [ - wbFloat('Strength'), - wbFloat('Distance'), - wbFloat('Range'), - wbByteArray('Unused', 2, cpIgnore), - wbInteger('Sky / Blur Radius', itU16, wbEnum([], [ - 16384, 'Radius 0', - 16672, 'Radius 1', - 16784, 'Radius 2', - 16848, 'Radius 3', - 16904, 'Radius 4', - 16936, 'Radius 5', - 16968, 'Radius 6', - 17000, 'Radius 7', - 16576, 'No Sky, Radius 0', - 16736, 'No Sky, Radius 1', - 16816, 'No Sky, Radius 2', - 16880, 'No Sky, Radius 3', - 16920, 'No Sky, Radius 4', - 16952, 'No Sky, Radius 5', - 16984, 'No Sky, Radius 6', - 17016, 'No Sky, Radius 7' - ])), - wbFloat('Vignette Radius'), - wbFloat('Vignette Strength') - ], cpNormal, True, nil, 5), - wbString(TX00, 'LUT') - ]); - - wbTimeInterpolator := wbStruct('Data', [ - wbFloat('Time'), - wbFloat('Value') - ]); - - wbColorInterpolator := wbStruct('Data', [ - wbFloat('Time'), - wbFloat('Red', cpNormal, False, 255, 0), - wbFloat('Green', cpNormal, False, 255, 0), - wbFloat('Blue', cpNormal, False, 255, 0), - wbFloat('Alpha', cpNormal, False, 255, 0) - ]); - - wbRecord(IMAD, 'Image Space Adapter', [ - wbEDID, - wbStruct(DNAM, 'Data Count', [ - wbInteger('Flags', itU32, wbFlags(['Animatable'])), - wbFloat('Duration'), - wbStruct('HDR', [ - wbInteger('Eye Adapt Speed Mult', itU32), - wbInteger('Eye Adapt Speed Add', itU32), - wbInteger('Bloom Blur Radius Mult', itU32), - wbInteger('Bloom Blur Radius Add', itU32), - wbInteger('Bloom Threshold Mult', itU32), - wbInteger('Bloom Threshold Add', itU32), - wbInteger('Bloom Scale Mult', itU32), - wbInteger('Bloom Scale Add', itU32), - wbInteger('Target Lum Min Mult', itU32), - wbInteger('Target Lum Min Add', itU32), - wbInteger('Target Lum Max Mult', itU32), - wbInteger('Target Lum Max Add', itU32), - wbInteger('Sunlight Scale Mult', itU32), - wbInteger('Sunlight Scale Add', itU32), - wbInteger('Sky Scale Mult', itU32), - wbInteger('Sky Scale Add', itU32) - ]), - wbInteger('Unknown08 Mult', itU32), - wbInteger('Unknown48 Add', itU32), - wbInteger('Unknown09 Mult', itU32), - wbInteger('Unknown49 Add', itU32), - wbInteger('Unknown0A Mult', itU32), - wbInteger('Unknown4A Add', itU32), - wbInteger('Unknown0B Mult', itU32), - wbInteger('Unknown4B Add', itU32), - wbInteger('Unknown0C Mult', itU32), - wbInteger('Unknown4C Add', itU32), - wbInteger('Unknown0D Mult', itU32), - wbInteger('Unknown4D Add', itU32), - wbInteger('Unknown0E Mult', itU32), - wbInteger('Unknown4E Add', itU32), - wbInteger('Unknown0F Mult', itU32), - wbInteger('Unknown4F Add', itU32), - wbInteger('Unknown10 Mult', itU32), - wbInteger('Unknown50 Add', itU32), - wbStruct('Cinematic', [ - wbInteger('Saturation Mult', itU32), - wbInteger('Saturation Add', itU32), - wbInteger('Brightness Mult', itU32), - wbInteger('Brightness Add', itU32), - wbInteger('Contrast Mult', itU32), - wbInteger('Contrast Add', itU32) - ]), - wbInteger('Unknown14 Mult', itU32), - wbInteger('Unknown54 Add', itU32), - wbInteger('Tint Color', itU32), - wbInteger('Blur Radius', itU32), - wbInteger('Double Vision Strength', itU32), - wbInteger('Radial Blur Strength', itU32), - wbInteger('Radial Blur Ramp Up', itU32), - wbInteger('Radial Blur Start', itU32), - wbInteger('Radial Blur Flags', itU32, wbFlags(['Use Target'])), - wbFloat('Radial Blur Center X'), - wbFloat('Radial Blur Center Y'), - wbInteger('DoF Strength', itU32), - wbInteger('DoF Distance', itU32), - wbInteger('DoF Range', itU32), - wbInteger('DoF Flags', itU32, wbFlags([ - {0x00000001} 'Use Target', - {0x00000002} 'Unknown 2', - {0x00000004} 'Unknown 3', - {0x00000008} 'Unknown 4', - {0x00000010} 'Unknown 5', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unknown 7', - {0x00000080} 'Unknown 8', - {0x00000100} 'Mode - Front', - {0x00000200} 'Mode - Back', - {0x00000400} 'No Sky', - {0x00000800} 'Blur Radius Bit 2', - {0x00001000} 'Blur Radius Bit 1', - {0x00002000} 'Blur Radius Bit 0' - ])), - wbInteger('Radial Blur Ramp Down', itU32), - wbInteger('Radial Blur Down Start', itU32), - wbInteger('Fade Color', itU32), - wbInteger('Motion Blur Strength', itU32), - wbUnknown - ]), - wbArray(BNAM, 'Blur Radius', wbTimeInterpolator), - wbArray(VNAM, 'Double Vision Strength', wbTimeInterpolator), - wbArray(TNAM, 'Tint Color', wbColorInterpolator), - wbArray(NAM3, 'Fade Color', wbColorInterpolator), - wbRStruct('Radial Blur', [ - wbArray(RNAM, 'Strength', wbTimeInterpolator), - wbArray(SNAM, 'RampUp', wbTimeInterpolator), - wbArray(UNAM, 'Start', wbTimeInterpolator), - wbArray(NAM1, 'RampDown', wbTimeInterpolator), - wbArray(NAM2, 'DownStart', wbTimeInterpolator) - ], []), - wbRStruct('Depth of Field', [ - wbArray(WNAM, 'Strength', wbTimeInterpolator), - wbArray(XNAM, 'Distance', wbTimeInterpolator), - wbArray(YNAM, 'Range', wbTimeInterpolator), - wbArray(NAM5, 'Vignette Radius', wbTimeInterpolator), - wbArray(NAM6, 'Vignette Strength', wbTimeInterpolator) - ], []), - wbArray(NAM4, 'Motion Blur Strength', wbTimeInterpolator), - wbRStruct('HDR', [ - wbArray(_00_IAD, 'Eye Adapt Speed Mult', wbTimeInterpolator), - wbArray(_40_IAD, 'Eye Adapt Speed Add', wbTimeInterpolator), - wbArray(_01_IAD, 'Bloom Blur Radius Mult', wbTimeInterpolator), - wbArray(_41_IAD, 'Bloom Blur Radius Add', wbTimeInterpolator), - wbArray(_02_IAD, 'Bloom Threshold Mult', wbTimeInterpolator), - wbArray(_42_IAD, 'Bloom Threshold Add', wbTimeInterpolator), - wbArray(_03_IAD, 'Bloom Scale Mult', wbTimeInterpolator), - wbArray(_43_IAD, 'Bloom Scale Add', wbTimeInterpolator), - wbArray(_04_IAD, 'Target Lum Min Mult', wbTimeInterpolator), - wbArray(_44_IAD, 'Target Lum Min Add', wbTimeInterpolator), - wbArray(_05_IAD, 'Target Lum Max Mult', wbTimeInterpolator), - wbArray(_45_IAD, 'Target Lum Max Add', wbTimeInterpolator), - wbArray(_06_IAD, 'Sunlight Scale Mult', wbTimeInterpolator), - wbArray(_46_IAD, 'Sunlight Scale Add', wbTimeInterpolator), - wbArray(_07_IAD, 'Sky Scale Mult', wbTimeInterpolator), - wbArray(_47_IAD, 'Sky Scale Add', wbTimeInterpolator) - ], []), - wbUnknown(_08_IAD), - wbUnknown(_48_IAD), - wbUnknown(_09_IAD), - wbUnknown(_49_IAD), - wbUnknown(_0A_IAD), - wbUnknown(_4A_IAD), - wbUnknown(_0B_IAD), - wbUnknown(_4B_IAD), - wbUnknown(_0C_IAD), - wbUnknown(_4C_IAD), - wbUnknown(_0D_IAD), - wbUnknown(_4D_IAD), - wbUnknown(_0E_IAD), - wbUnknown(_4E_IAD), - wbUnknown(_0F_IAD), - wbUnknown(_4F_IAD), - wbUnknown(_10_IAD), - wbUnknown(_50_IAD), - wbRStruct('Cinematic', [ - wbArray(_11_IAD, 'Saturation Mult', wbTimeInterpolator), - wbArray(_51_IAD, 'Saturation Add', wbTimeInterpolator), - wbArray(_12_IAD, 'Brightness Mult', wbTimeInterpolator), - wbArray(_52_IAD, 'Brightness Add', wbTimeInterpolator), - wbArray(_13_IAD, 'Contrast Mult', wbTimeInterpolator), - wbArray(_53_IAD, 'Contrast Add', wbTimeInterpolator) - ], []), - wbUnknown(_14_IAD), - wbUnknown(_54_IAD) - ]); - - wbRecord(FLST, 'FormID List', [ - wbString(EDID, 'Editor ID', 0, cpBenign, True, nil, wbFLSTEDIDAfterSet), - wbFULL, - wbRArrayS('FormIDs', wbFormID(LNAM, 'FormID'), cpNormal, False, nil, nil, nil, wbFLSTLNAMIsSorted) - ]); - - wbRecord(PERK, 'Perk', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable' - ])), [ - wbEDID, - wbVMADFragmentedPERK, - wbFULL, - wbDESCReq, - wbString(ICON, 'Image'), - wbCTDAs, - wbStruct(DATA, 'Data', [ - wbInteger('Trait', itU8, wbBoolEnum), - wbInteger('Level', itU8), - wbInteger('Num Ranks', itU8), - wbInteger('Playable', itU8, wbBoolEnum), - wbInteger('Hidden', itU8, wbBoolEnum) - ], cpNormal, True), - wbFormIDCk(SNAM, 'Sound', [SNDR]), - wbFormIDCK(NNAM, 'Next Perk', [PERK, NULL]), - wbString(FNAM, 'SWF'), - - wbRStructsSK('Effects', 'Effect', [0, 1], [ - wbStructSK(PRKE, [1, 2, 0], 'Header', [ - wbInteger('Type', itU8, wbEnum([ - 'Quest + Stage', - 'Ability', - 'Entry Point' - ]), cpNormal, False, nil, wbPERKPRKETypeAfterSet), - wbInteger('Rank', itU8), - wbInteger('Priority', itU8) - ]), - wbUnion(DATA, 'Effect Data', wbPerkDATADecider, [ - wbStructSK([0, 1], 'Quest + Stage', [ - wbFormIDCk('Quest', [QUST]), - wbInteger('Quest Stage', itU16, wbPerkDATAQuestStageToStr, wbCTDAParam2QuestStageToInt), - wbByteArray('Unused', 2) - ]), - wbFormIDCk('Ability', [SPEL]), - wbStructSK([0, 1], 'Entry Point', [ - wbInteger('Entry Point', itU8, wbEntryPointsEnum, cpNormal, True, nil{, wbPERKEntryPointAfterSet}), - wbInteger('Function', itU8, wbEnum([ - {0} 'Unknown 0', - {1} 'Set Value', // EPFT=1 - {2} 'Add Value', // EPFT=1 - {3} 'Multiply Value', // EPFT=1 - {4} 'Add Range To Value', // EPFT=2 - {5} 'Add Actor Value Mult', // EPFT=2 - {6} 'Absolute Value', // no params - {7} 'Negative Absolute Value', // no params - {8} 'Add Leveled List', // EPFT=3 - {9} 'Add Activate Choice', // EPFT=4 - {10} 'Select Spell', // EPFT=5 - {11} 'Select Text', // EPFT=6 - {12} 'Set to Actor Value Mult', // EPFT=2 - {13} 'Multiply Actor Value Mult', // EPFT=2 - {14} 'Multiply 1 + Actor Value Mult', // EPFT=2 - {15} 'Set Text' // EPFT=7 - ])), - wbInteger('Perk Condition Tab Count', itU8, nil, cpIgnore) - ]) - ], cpNormal, True), - - wbRStructsSK('Perk Conditions', 'Perk Condition', [0], [ - wbInteger(PRKC, 'Run On (Tab Index)', itS8{, wbPRKCToStr, wbPRKCToInt}), - wbCTDAsReq - ], [], cpNormal, False{, nil, nil, wbPERKPRKCDontShow}), - - wbRStruct('Function Parameters', [ - wbInteger(EPFT, 'Type', itU8, wbEnum([ - {0} 'None', - {1} 'Float', - {2} 'Float/AV,Float', - {3} 'LVLI', - {4} 'SPEL,lstring,flags', - {5} 'SPEL', - {6} 'string', - {7} 'lstring', - {8} 'AVIF' - ])), - // case(EPFT) of - // 1: EPFD=float - // 2: EPFD=float,float - // 3: EPFD=LVLI - // 4: EPFD=SPEL, EPF2=lstring, EPF3=int32 flags - // 5: EPFD=SPEL - // 6: EPFD=string - // 7: EPFD=lstring - - wbInteger(EPFB, 'Perk Entry ID (unique)', itU16), - wbLString(EPF2, 'Button Label', 0, cpTranslate), - wbStruct(EPF3, 'Script Flags', [ - wbInteger('Script Flags', itU8, wbFlags([ - 'Run Immediately', - 'Replace Default' - ])), - wbByteArray('Unknown', 1) - ]), - wbUnion(EPFD, 'Data', wbEPFDDecider, [ - {0} wbByteArray('Unknown'), - {1} wbFloat('Float'), - {2} wbStruct('Float, Float', [ - wbFloat('Float 1'), - wbFloat('Float 2') - ]), - {3} wbFormIDCk('Leveled Item', [LVLI]), - {4} wbFormIDCk('Spell', [SPEL]), - {5} wbFormIDCk('Spell', [SPEL]), - {6} wbString('Text', 0, cpTranslate), - {7} wbLString('Text', 0, cpTranslate), - {8} wbStruct('Actor Value, Float', [ - wbActorValue, // wbInteger('Actor Value', itU32, wbEPFDActorValueToStr, wbEPFDActorValueToInt), - wbFloat('Float') - ]) - ], cpNormal, False{, wbEPFDDontShow}) - ], [], cpNormal, False{, wbPERKPRKCDontShow}), - wbEmpty(PRKF, 'End Marker', cpIgnore, True) - ], []) - ]); - - wbRecord(BPTD, 'Body Part Data', [ - wbEDID, - wbMODL, - wbRArrayS('Body Parts', - wbRStructSK([1], 'Body Part', [ - wbLString(BPTN, 'Part Name', 0, cpTranslate), // optional - wbString(BPNN, 'Part Node', 0, cpNormal, True), - wbString(BPNT, 'VATS Target', 0, cpNormal, True), - wbStruct(BPND, '', [ - wbFloat('Damage Mult'), - wbFormIDCk('Explodable - Debris', [DEBR, NULL]), - wbFormIDCk('Explodable - Explosion', [EXPL, NULL]), - wbFloat('Explodable - Debris Scale'), - wbFormIDCk('Severable - Debris', [DEBR, NULL]), - wbFormIDCk('Severable - Explosion', [EXPL, NULL]), - wbFloat('Severable - Debris Scale'), - wbFloat('Cut - Min'), - wbFloat('Cut - Max'), - wbFloat('Cut - Radius'), - wbFloat('Gore Effects - Local Rotate X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Gore Effects - Local Rotate Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Cut - Tesselation'), - wbFormIDCk('Severable - Impact DataSet', [IPDS, NULL]), - wbFormIDCk('Explodable - Impact DataSet', [IPDS, NULL]), - wbFloat('Explodable - Limb Replacement Scale'), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Severable', - {0x02} 'Hit Reaction', - {0x04} 'Hit Reaction - Default', - {0x08} 'Explodable', - {0x10} 'Cut - Meat Cap Sever', - {0x20} 'On Cripple', - {0x40} 'Explodable - Absolute Chance', - {0x80} 'Show Cripple Geometry' - ])), - wbInteger('Part Type', itU8, wbEnum([ - { 0} 'Torso', - { 1} 'Head1', - { 2} 'Eye', - { 3} 'LookAt', - { 4} 'Fly Grab', - { 5} 'Head2', - { 6} 'LeftArm1', - { 7} 'LeftArm2', - { 8} 'RightArm1', - { 9} 'RightArm2', - {10} 'LeftLeg1', - {11} 'LeftLeg2', - {12} 'LeftLeg3', - {13} 'RightLeg1', - {14} 'RightLeg2', - {15} 'RightLeg3', - {16} 'Brain', - {17} 'Weapon', - {18} 'Root', - {19} 'COM', - {20} 'Pelvis', - {21} 'Camera', - {22} 'Offset Root', - {23} 'Left Foot', - {24} 'Right Foot', - {25} 'Face Target Source' - ])), - wbInteger('Health Percent', itU8), - wbFormIDCk('Actor Value', [AVIF, NULL]), - wbInteger('To Hit Chance', itU8), - wbInteger('Explodable - Explosion Chance %', itU8), - wbInteger('Non-Lethal Dismemberment Chance', itU8), - wbInteger('Severable - Debris Count', itU8), - wbInteger('Explodable - Debris Count', itU8), - wbInteger('Severable - Decal Count', itU8), - wbInteger('Explodable - Decal Count', itU8), - wbInteger('Geometry Segment Index', itU8), - wbFormIDCk('On Cripple - Art Object', [ARTO, NULL]), - wbFormIDCk('On Cripple - Debris', [DEBR, NULL]), - wbFormIDCk('On Cripple - Explosion', [EXPL, NULL]), - wbFormIDCk('On Cripple - Impact DataSet', [IPDS, NULL]), - wbFloat('On Cripple - Debris Scale'), - wbInteger('On Cripple - Debris Count', itU8), - wbInteger('On Cripple - Decal Count', itU8) - ], cpNormal, True), - wbString(NAM1, 'Limb Replacement Model', 0, cpNormal, True), - wbString(NAM4, 'Gore Effects - Target Bone', 0, cpNormal, True), - wbByteArray(NAM5, 'Texture Files Hashes', 0, cpNormal), - wbString(ENAM, 'Hit Reaction - Start'), - wbString(FNAM, 'Hit Reaction - End'), - wbFormIDCk(BNAM, 'Gore Effects - Dismember Blood Art', [ARTO]), - wbFormIDCk(INAM, 'Gore Effects - Blood Impact Material Type', [MATT]), - wbFormIDCk(JNAM, 'On Cripple - Blood Impact Material Type', [MATT]), - wbFormIDCk(CNAM, 'Meat Cap TextureSet', [TXST]), - wbFormIDCk(NAM2, 'Collar TextureSet', [TXST]), - wbString(DNAM, 'Twist Variable Prefix') - ], [], cpNormal, False, nil, True) - ) - ]); - - wbRecord(ADDN, 'Addon Node', [ - wbEDID, - wbOBNDReq, - wbMODL, - wbInteger(DATA, 'Node Index', itS32, nil, cpNormal, True), - wbFormIDCk(SNAM, 'Sound', [SNDR]), - wbFormIDCk(LNAM, 'Light', [LIGH]), - wbStruct(DNAM, 'Data', [ - wbInteger('Master Particle System Cap', itU16), - wbInteger('Flags', itU16, wbEnum([ - 'No Master Particle System', - 'Master Particle System', - 'Always Loaded', - 'Master Particle System and Always Loaded' - ])) - ], cpNormal, True) - ]); -end; - -procedure DefineFO4h; -begin - wbRecord(AVIF, 'Actor Value Information', [ - wbEDID, - wbFULL, - wbDESCReq, - wbLString(ANAM, 'Abbreviation', 0, cpTranslate), - wbFloat(NAM0, 'Default Value'), // Prior to form version 81, it was either 0.0, 1.0 or 100.0, so scale or multiplier ? - wbInteger(AVFL, 'Flags', itU32, wbFlags([ // 32 bits Flags, it used to impact NAM0 loading (bits 10, 11, 12) (even though it loads later :) ) - 'Unknown 1', - 'Unknown 2', - 'Unknown 3', - 'Unknown 4', - 'Unknown 5', - 'Unknown 6', - 'Unknown 7', - 'Unknown 8', - 'Unknown 9', - 'Unknown 10', - 'Unknown 11', - 'Unknown 12', - 'Unknown 13', - 'Unknown 14', - 'Unknown 15', - 'Unknown 16', - 'Unknown 17', - 'Unknown 18', - 'Unknown 19', - 'Unknown 20', - 'Minimum 1', - 'Maximum 10', - 'Maximum 100', - 'Multiply By 100', - 'Percentage', - 'Unknown 26', - 'Damage Is Positive', - 'God Mode Immune', - 'Unknown 29', - 'Unknown 30', - 'Unknown 31', - 'Hardcoded' - ])), - wbInteger(NAM1, 'Type', itU32, wbEnum([ - 'Derived Attribute', - 'Special (Attribute)', - 'Skill', - 'AI Attribute', - 'Resistance', - 'Condition', - 'Charge', - 'Int Value', - 'Variable', - 'Resource' - ])) - ]); // S.P.E.C.I.A.L start at index 5, so FormID 0x2bc+5 to 0x2bc+11, RadResistIngestion at index 0x29 - - wbRecord(CAMS, 'Camera Shot', [ - wbEDID, - wbMODL, - wbCTDAs, - wbStruct(DATA, 'Data', [ - wbInteger('Action', itU32, wbEnum([ - {0} 'Shoot', - {1} 'Fly', - {2} 'Hit', - {3} 'Zoom' - ])), - wbInteger('Location', itU32, wbEnum([ - {0} 'Attacker', - {1} 'Projectile', - {2} 'Target', - {3} 'Lead Actor' - ])), - wbInteger('Target', itU32, wbEnum([ - {0} 'Attacker', - {1} 'Projectile', - {2} 'Target', - {3} 'Lead Actor' - ])), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Position Follows Location', - {0x00000002} 'Rotation Follows Target', - {0x00000004} 'Don''t Follow Bone', - {0x00000008} 'First Person Camera', - {0x00000010} 'No Tracer', - {0x00000020} 'Start At Time Zero', - {0x00000040} 'Don''t Reset Location Spring', - {0x00000080} 'Don''t Reset Target Spring' - ])), - wbStruct('Time Multipliers', [ - wbFloat('Player'), - wbFloat('Target'), - wbFloat('Global') - ]), - wbFloat('Max Time'), - wbFloat('Min Time'), - wbFloat('Target % Between Actors'), - wbFloat('Near Target Distance'), - wbFloat('Location Spring'), - wbFloat('Target Spring'), - wbStruct('Rotation Offset', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]) - ], cpNormal, True, nil, 9), - wbFormIDCk(MNAM, 'Image Space Modifier', [IMAD]) - ]); - - wbRecord(CPTH, 'Camera Path', [ - wbEDID, - wbCTDAs, - wbArray(ANAM, 'Related Camera Paths', wbFormIDCk('Related Camera Path', [CPTH, NULL]), ['Parent', 'Previous Sibling'], cpNormal, True), - wbInteger(DATA, 'Camera Zoom / Flags', itU8, wbFlags([ - {0x01} 'Disable', - {0x02} 'Shot List', - {0x04} 'Dynamic Camera Times', - {0x08} 'Unknown 3', - {0x10} 'Unknown 4', - {0x20} 'Unknown 5', - {0x40} 'Randomize Paths', - {0x80} 'Not Must Have Camera Shots' - ]), cpNormal, True), - wbRArray('Camera Shots', wbFormIDCk(SNAM, 'Camera Shot', [CAMS])) - ]); - - wbRecord(VTYP, 'Voice Type', [ - wbEDID, - wbInteger(DNAM, 'Flags', itU8, wbFlags([ - 'Allow Default Dialog', - 'Female' - ]), cpNormal, True) - ]); - - wbRecord(MATT, 'Material Type', [ - wbEDID, - wbFormIDCk(PNAM, 'Material Parent', [MATT, NULL]), - wbString(MNAM, 'Material Name'), - wbStruct(CNAM, 'Havok Display Color', [ - wbFloat('Red', cpNormal, True, 255, 0), - wbFloat('Green', cpNormal, True, 255, 0), - wbFloat('Blue', cpNormal, True, 255, 0) - ]), - wbFloat(BNAM, 'Buoyancy'), - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - 'Stair Material', - 'Arrows Stick', - 'Can Tunnel' - ], False)), - wbFormIDCk(HNAM, 'Havok Impact Data Set', [IPDS]), - wbString(ANAM, 'Breakable FX'), - wbMODT - ]); - - wbRecord(IPCT, 'Impact', [ - wbEDID, - wbMODL, - wbStruct(DATA, '', [ - wbFloat('Effect - Duration'), - wbInteger('Effect - Orientation', itU32, wbEnum([ - 'Surface Normal', - 'Projectile Vector', - 'Projectile Reflection' - ])), - wbFloat('Angle Threshold'), - wbFloat('Placement Radius'), - wbInteger('Sound Level', itU32, wbSoundLevelEnum), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'No Decal Data' - ])), - wbInteger('Impact Result', itU8, wbEnum([ - {0} 'Default', - {1} 'Destroy', - {2} 'Bounce', - {3} 'Impale', - {4} 'Stick' - ])), - wbByteArray('Unknown', 2) - ], cpNormal, True), - wbDODT, - wbFormIDCk(DNAM, 'Texture Set', [TXST]), - wbFormIDCk(ENAM, 'Secondary Texture Set', [TXST]), - wbFormIDCk(SNAM, 'Sound 1', [SNDR]), - wbFormIDCk(NAM1, 'Sound 2', [SNDR]), - wbFormIDCk(NAM3, 'Footstep Explosion', [EXPL]), - wbFormIDCk(NAM2, 'Hazard', [HAZD]), - wbFloat(FNAM, 'Footstep Particle Max Dist') - ]); - - wbRecord(IPDS, 'Impact Data Set', [ - wbEDID, - wbRArrayS('Data', wbStructSK(PNAM, [0], '', [ - wbFormIDCk('Material', [MATT]), - wbFormIDCk('Impact', [IPCT]) - ])) - ]); - - wbRecord(ECZN, 'Encounter Zone', [ - wbEDID, - wbStruct(DATA, '', [ - wbFormIDCkNoReach('Owner', [NPC_, FACT, NULL]), - wbFormIDCk('Location', [LCTN, NULL]), - wbInteger('Rank', itS8), - wbInteger('Min Level', itS8), - wbInteger('Flags', itU8, wbFlags([ - 'Never Resets', - 'Match PC Below Minimum Level', - 'Disable Combat Boundary', - 'Workshop' - ])), - wbInteger('Max Level', itS8) - ], cpNormal, True) - ]); - - wbRecord(LCTN, 'Location', [ - wbEDID, - - wbArray(ACPR, 'Actor Cell Persistent Reference', wbStruct('', [ - wbFormIDCk('Actor', sigReferences, False, cpBenign), - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])), - wbArray(LCPR, 'Location Cell Persistent Reference', wbStruct('', [ - wbFormIDCk('Actor', sigReferences, False, cpBenign), - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])), - wbArray(RCPR, 'Reference Cell Persistent Reference', wbFormIDCk('Ref', [ACHR, REFR], False, cpBenign)), - - wbArray(ACUN, 'Actor Cell Unique', wbStruct('', [ - wbFormIDCk('Actor', [NPC_], False, cpBenign), - wbFormIDCk('Ref', [ACHR], False, cpBenign), - wbFormIDCk('Location', [LCTN, NULL], False, cpBenign) - ])), - wbArray(LCUN, 'Location Cell Unique', wbStruct('', [ - wbFormIDCk('Actor', [NPC_], False, cpBenign), - wbFormIDCk('Ref', [ACHR], False, cpBenign), - wbFormIDCk('Location', [LCTN, NULL], False, cpBenign) - ])), - wbArray(RCUN, 'Reference Cell Unique', wbFormIDCk('Actor', [NPC_], False, cpBenign)), - - wbArray(ACSR, 'Actor Cell Static Reference', wbStruct('', [ - wbFormIDCk('Loc Ref Type', [LCRT], False, cpBenign), - wbFormIDCk('Marker', sigReferences, False, cpBenign), - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])), - wbArray(LCSR, 'Location Cell Static Reference', wbStruct('', [ - wbFormIDCk('Loc Ref Type', [LCRT], False, cpBenign), - wbFormIDCk('Marker', sigReferences, False, cpBenign), - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])), - wbArray(RCSR, 'Reference Cell Static Reference', wbFormIDCk('Ref', [ACHR, REFR], False, cpBenign)), - - wbRArray('Actor Cell Encounter Cell', - wbStruct(ACEC, 'Unknown', [ - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbArray('Coordinates', wbStruct('', [ - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])) - ]) - ), - wbRArray('Location Cell Encounter Cell', - wbStruct(LCEC, 'Unknown', [ - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbArray('Coordinates', wbStruct('', [ - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])) - ]) - ), - wbRArray('Reference Cell Encounter Cell', - wbStruct(RCEC, 'Unknown', [ - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbArray('Coordinates', wbStruct('', [ - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])) - ]) - ), - - wbArray(ACID, 'Actor Cell Marker Reference', wbFormIDCk('Ref', sigReferences, False, cpBenign)), - wbArray(LCID, 'Location Cell Marker Reference', wbFormIDCk('Ref', sigReferences, False, cpBenign)), - - wbArray(ACEP, 'Actor Cell Enable Point', wbStruct('', [ - wbFormIDCk('Actor', sigReferences, False, cpBenign), - wbFormIDCk('Ref', sigReferences, False, cpBenign), - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])), - wbArray(LCEP, 'Location Cell Enable Point', wbStruct('', [ - wbFormIDCk('Actor', sigReferences, False, cpBenign), - wbFormIDCk('Ref', sigReferences, False, cpBenign), - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])), - - wbFULL, - wbKSIZ, - wbKWDAs, - wbFormIDCk(PNAM, 'Parent Location', [LCTN, NULL]), - wbFormIDCk(NAM1, 'Music', [MUSC, NULL]), - wbFormIDCk(FNAM, 'Unreported Crime Faction', [FACT]), - wbFormIDCk(MNAM, 'World Location Marker Ref', [REFR, ACHR]), - wbFloat(RNAM, 'World Location Radius'), - //wbFormIDCk(NAM0, 'Horse Marker Ref', [REFR]), - wbFloat(ANAM, 'Unknown'), - wbCNAM - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - -end; - -{this is required to prevent XE6 compiler error} -type - TVarRecs = array of TVarRec; - -function CombineVarRecs(const a, b : array of const) - : TVarRecs; -begin - SetLength(Result, Length(a) + Length(b)); - if Length(a) > 0 then - Move(a[0], Result[0], SizeOf(TVarRec) * Length(a)); - if Length(b) > 0 then - Move(b[0], Result[Length(a)], SizeOf(TVarRec) * Length(b)); -end; - -function MakeVarRecs(const a : array of const) - : TVarRecs; -begin - SetLength(Result, Length(a)); - if Length(a) > 0 then - Move(a[0], Result[0], SizeOf(TVarRec) * Length(a)); -end; - - -procedure DefineFO4i; -var - a, b, c : TVarRecs; -begin - wbRecord(MESG, 'Message', [ - wbEDID, - wbDESCReq, - wbFULL, - wbFormIDCk(INAM, 'Icon (unused)', [NULL], False, cpIgnore, True), // leftover - wbFormIDCk(QNAM, 'Owner Quest', [QUST]), - wbInteger(DNAM, 'Flags', itU32, wbFlags([ - 'Message Box', - 'Delay Initial Display' - ]), cpNormal, True, False, nil, wbMESGDNAMAfterSet), - wbInteger(TNAM, 'Display Time', itU32, nil, cpNormal, False, False, wbMESGTNAMDontShow), - wbString(SNAM, 'SWF'), - wbLString(NNAM, 'Short Title', 0, cpTranslate), - wbRStructs('Menu Buttons', 'Menu Button', [ - wbLString(ITXT, 'Button Text', 0, cpTranslate), - wbCTDAs - ], []) - ], False, nil, cpNormal, False, wbMESGAfterLoad); - - a := MakeVarRecs([ - 0, 'None', - Sig2Int('AAAC'), 'Action Activate', - Sig2Int('AAB1'), 'Action Bleedout Start', - Sig2Int('AAB2'), 'Action Bleedout Stop', - Sig2Int('AABA'), 'Action Block Anticipate', - Sig2Int('AABH'), 'Action Block Hit', - Sig2Int('AABI'), 'Action Bumped Into', - Sig2Int('AADA'), 'Action Dual Attack', - Sig2Int('AADE'), 'Action Death', - Sig2Int('AADL'), 'Action Dual Release', - Sig2Int('AADR'), 'Action Draw', - Sig2Int('AADW'), 'Action Death Wait', - Sig2Int('AAF1'), 'Action Fly Start', - Sig2Int('AAF2'), 'Action Fly Stop', - Sig2Int('AAFA'), 'Action Fall', - Sig2Int('AAFQ'), 'Action Force Equip', - Sig2Int('AAGU'), 'Action Get Up', - Sig2Int('AAH1'), 'Action Hover Start', - Sig2Int('AAH2'), 'Action Hover Stop', - Sig2Int('AAID'), 'Action Idle', - Sig2Int('AAIS'), 'Action Idle Stop', - Sig2Int('AAJP'), 'Action Jump', - Sig2Int('AALA'), 'Action Left Attack', - Sig2Int('AALD'), 'Action Left Ready', - Sig2Int('AALI'), 'Action Left Interrupt', - Sig2Int('AALK'), 'Action Look', - Sig2Int('AALM'), 'Action Large Movement Delta', - Sig2Int('AALN'), 'Action Land', - Sig2Int('AALR'), 'Action Left Release', - Sig2Int('AALS'), 'Action Left Sync Attack', - Sig2Int('AAMT'), 'Action Mantle', - Sig2Int('AAOE'), 'Action AoE Attack', - Sig2Int('AAPA'), 'Action Right Power Attack', - Sig2Int('AAPE'), 'Action Path End', - Sig2Int('AAPS'), 'Action Path Start', - Sig2Int('AAR2'), 'Action Large Recoil', - Sig2Int('AARA'), 'Action Right Attack', - Sig2Int('AARC'), 'Action Recoil', - Sig2Int('AARD'), 'Action Right Ready', - Sig2Int('AARI'), 'Action Right Interrupt', - Sig2Int('AARR'), 'Action Right Release', - Sig2Int('AARS'), 'Action Right Sync Attack', - Sig2Int('AAS1'), 'Action Stagger Start', - Sig2Int('AASC'), 'Action Shield Change', - Sig2Int('AASH'), 'Action Sheath', - Sig2Int('AASN'), 'Action Sneak', - Sig2Int('AASP'), 'Action Sprint Stop', - Sig2Int('AASS'), 'Action Summoned Start', - Sig2Int('AAST'), 'Action Sprint Start', - Sig2Int('AASW'), 'Action Swim State Change', - Sig2Int('AAVC'), 'Action Voice', - Sig2Int('AAVD'), 'Action Voice Ready', - Sig2Int('AAVI'), 'Action Voice Interrupt', - Sig2Int('AAVR'), 'Action Voice Release', - Sig2Int('AAWH'), 'Action Ward Hit', - Sig2Int('ABLA'), 'Action Begin Looping Activate', - Sig2Int('ABOL'), 'Action Bolt Charge', - Sig2Int('ABSE'), 'Art Object Absorb Effect', - Sig2Int('ACHI'), 'Action Hide', - Sig2Int('ACSS'), 'Action Cover Sprint Start', - Sig2Int('ACTN'), 'Action Tunnel', - Sig2Int('ACWR'), 'Action Cower', - Sig2Int('ADGE'), 'Action Dodge', - Sig2Int('ADPA'), 'Action Dual Power Attack', - Sig2Int('AECL'), 'Action Enter Cover', - Sig2Int('AELA'), 'Action End Looping Activate', - Sig2Int('AENC'), 'Action Enter Combat', - Sig2Int('AENI'), 'Action Dialogue Enter', - Sig2Int('AEVD'), 'Action Evade', - Sig2Int('AEXC'), 'Action Exit Cover', - Sig2Int('AEXI'), 'Action Dialogue Exit', - Sig2Int('AEXT'), 'Action Exit Combat', - Sig2Int('AFCH'), 'Action Fire Charge', - Sig2Int('AFCO'), 'Action Fire Charge Hold', - Sig2Int('AFEM'), 'Action Fire Empty', - Sig2Int('AFIA'), 'Action Fire Auto', - Sig2Int('AFIS'), 'Action Fire Single', - Sig2Int('AFLT'), 'Action Flip-Throw', - Sig2Int('AFNP'), 'Keyword Activator Furniture No Player', - Sig2Int('AGAL'), 'Action Gun Alert', - Sig2Int('AGCS'), 'Action Gun Charge Start', - Sig2Int('AGDN'), 'Action Gun Down', - Sig2Int('AGRX'), 'Action Gun Relaxed', - Sig2Int('AGRY'), 'Action Gun Ready', - Sig2Int('AIDW'), 'Action Idle Warn', - Sig2Int('AIEN'), 'Action Interaction Enter', - Sig2Int('AIEQ'), 'Action Interaction Exit Quick', - Sig2Int('AIEX'), 'Action Interaction Exit', - Sig2Int('AILN'), 'Action Dialogue Listen Negative', - Sig2Int('AILp'), 'Action Dialogue Listen Positive', - Sig2Int('AILQ'), 'Action Dialogue Listen Question', - Sig2Int('AINT'), 'Action Intimidate', - Sig2Int('AIVC'), 'Verlet Cape', - Sig2Int('AIXA'), 'Action Interaction Exit Alternate', - Sig2Int('AKDN'), 'Action Knockdown', - Sig2Int('ALIC'), 'Action Limb Critical', - Sig2Int('ALIK'), 'Alcohol Item keyword', - Sig2Int('ALPA'), 'Action Left Power Attack', - Sig2Int('ALTI'), 'Action Dialogue Listen', - Sig2Int('AMBK'), 'Action Move Backward', - Sig2Int('AMEL'), 'Action Melee', - Sig2Int('AMFD'), 'Action Move Forward', - Sig2Int('AMLT'), 'Action Move Left', - Sig2Int('AMRT'), 'Action Move Right', - Sig2Int('AMSP'), 'Action Move Stop', - Sig2Int('AMST'), 'Action Move Start', - Sig2Int('ANML'), 'Keyword Animal', - Sig2Int('ANSC'), 'Action NonSupport Contact', - Sig2Int('AODA'), 'Keyword Armor Material Daedric', - Sig2Int('AODB'), 'Keyword Armor Material Dragonbone', - Sig2Int('AODP'), 'Keyword Armor Material Dragonplate', - Sig2Int('AODS'), 'Keyword Armor Material Dragonscale', - Sig2Int('AODW'), 'Keyword Armor Material Dwarven', - Sig2Int('AOEB'), 'Keyword Armor Material Ebony', - Sig2Int('AOEL'), 'Keyword Armor Material Elven', - Sig2Int('AOES'), 'Keyword Armor Material ElvenSplinted', - Sig2Int('AOFE'), 'Keyword Armor Material Iron', - Sig2Int('AOFL'), 'Keyword Armor Material FullLeather', - Sig2Int('AOGL'), 'Keyword Armor Material Glass', - Sig2Int('AOHI'), 'Keyword Armor Material Hide', - Sig2Int('AOIB'), 'Keyword Armor Material IronBanded', - Sig2Int('AOIH'), 'Keyword Armor Material ImperialHeavy', - Sig2Int('AOIM'), 'Keyword Armor Material Imperial', - Sig2Int('AOIR'), 'Keyword Armor Material ImperialReinforced', - Sig2Int('AOOR'), 'Keyword Armor Material Orcish', - Sig2Int('AOSC'), 'Keyword Armor Material Scaled', - Sig2Int('AOSD'), 'Keyword Armor Material Studded', - Sig2Int('AOSK'), 'Keyword Armor Material Stormcloak', - Sig2Int('AOSP'), 'Keyword Armor Material SteelPlate', - Sig2Int('AOST'), 'Keyword Armor Material Steel', - Sig2Int('APIC'), 'Action Pipboy Close', - Sig2Int('APID'), 'Action Pipboy Data', - Sig2Int('APII'), 'Action Pipboy Inventory', - Sig2Int('APIM'), 'Action Pipboy Map', - Sig2Int('APIN'), 'Action Pipboy Inspect', - Sig2Int('APIP'), 'Action Pipboy', - Sig2Int('APIS'), 'Action Pipboy Stats', - Sig2Int('APIT'), 'Action Pipboy Tab', - Sig2Int('APIZ'), 'Action Pipboy Zoom', - Sig2Int('APLH'), 'Action Pipboy Load Holotape', - Sig2Int('APLN'), 'Action Dialogue Listen Neutral', - Sig2Int('APNC'), 'Action Panic', - Sig2Int('APPS'), 'Action Pipboy Select', - Sig2Int('APR0'), 'Action Pipboy Radio Off', - Sig2Int('APR1'), 'Action Pipboy Radio On', - Sig2Int('APSH'), 'Allow Player Shout', - Sig2Int('APTP'), 'Action Pipboy Tab Previous', - Sig2Int('AREL'), 'Action Reload', - Sig2Int('ARGI'), 'Action Ragdoll Instant', - Sig2Int('ARTL'), 'Armor Material List', - Sig2Int('ASFL'), 'Action Shuffle', - Sig2Int('ASID'), 'Action Idle Stop Instant', - Sig2Int('ASIR'), 'Action Sighted Release', - Sig2Int('ASIT'), 'Action Sighted', - Sig2Int('ATHR'), 'Action Throw', - Sig2Int('ATKI'), 'Action Dialogue Talking', - Sig2Int('ATLE'), 'Action Turn Left', - Sig2Int('ATRI'), 'Action Turn Right', - Sig2Int('ATSP'), 'Action Turn Stop', - Sig2Int('AVVP'), 'Vampire Available Perks', - Sig2Int('AVWP'), 'Unused', - Sig2Int('AWWS'), 'Action Waterwalk Start', - Sig2Int('AWWW'), 'Bunny Faction', - Sig2Int('BAPO'), 'Base Potion', - Sig2Int('BAPS'), 'Base Poison', - Sig2Int('BEEP'), 'Keyword Robot', - Sig2Int('BENA'), 'Base Armor Enchantment', - Sig2Int('BENW'), 'Base Weapon Enchantment', - Sig2Int('BTMS'), 'Battle Music', - Sig2Int('CACA'), 'Commanded Actor Ability', - Sig2Int('CHIK'), 'Chem Item keyword', - Sig2Int('CLIK'), 'Clothes Item keyword', - Sig2Int('CMPX'), 'Complex Scene Object', - Sig2Int('CNMK'), 'Keyword nullptr Mod', - Sig2Int('COEX'), 'Keyword Conditional Explosion', - Sig2Int('COOK'), 'Keyword Cooking Pot', - Sig2Int('CSTY'), 'Combat Style', - Sig2Int('CWNE'), 'Keyword Civil War Neutral', - Sig2Int('CWOK'), 'Keyword Civil War Owner', - Sig2Int('DAED'), 'Keyword Daedra', - Sig2Int('DBHF'), 'Dark Brotherhood Faction', - Sig2Int('DCMS'), 'Dungeon Cleared Music', - Sig2Int('DCZM'), 'Dragon Crash Zone Marker', - Sig2Int('DDSC'), 'Dialogue Voice Category', - Sig2Int('DEIS'), 'Drug Wears Off Image Space', - Sig2Int('DFTS'), 'Footstep Set', - Sig2Int('DGFL'), 'DialogueFollower Quest', - Sig2Int('DIEN'), 'Keyword Disallow Enchanting', - Sig2Int('DLMT'), 'Landscape Material', - Sig2Int('DLZM'), 'Dragon Land Zone Marker', - Sig2Int('DMFL'), 'Default Movement Type: Fly', - Sig2Int('DMSN'), 'Default Movement Type: Sneak', - Sig2Int('DMSW'), 'Default Movement Type: Swim', - Sig2Int('DMWL'), 'Default Movement Type: Default', - Sig2Int('DOP2'), 'Dialogue Output Model 3D', - Sig2Int('DOP3'), 'Dialogue Output Model 2D', - Sig2Int('DRAK'), 'Keyword Dragon', - Sig2Int('DTMS'), 'Death Music', - Sig2Int('EACA'), 'Every Actor Ability', - Sig2Int('EPDF'), 'Eat Package Default Food', - Sig2Int('FFFP'), 'Keyword Furniture Forces 1st Person', - Sig2Int('FFTP'), 'Keyword Furniture Forces 3rd Person', - Sig2Int('FOIK'), 'Food Item Keyword', - Sig2Int('FORG'), 'Keyword Forge', - Sig2Int('FTEL'), 'Male Face Texture Set: Eyes', - Sig2Int('FTGF'), 'Fighters'' Guild Faction', - Sig2Int('FTHD'), 'Male Face Texture Set: Head', - Sig2Int('FTHF'), 'Female Face Texture Set: Head', - Sig2Int('FTMF'), 'Female Face Texture Set: Mouth', - Sig2Int('FTML'), 'Favor travel marker location', - Sig2Int('FTMO'), 'Male Face Texture Set: Mouth', - Sig2Int('FTNP'), 'Furniture Test NPC', - Sig2Int('FTRF'), 'Female Face Texture Set: Eyes' - ]); - - b := MakeVarRecs([ - Sig2Int('GCK1'), 'Keyword Generic Craftable Keyword 01', - Sig2Int('GCK2'), 'Keyword Generic Craftable Keyword 02', - Sig2Int('GCK3'), 'Keyword Generic Craftable Keyword 03', - Sig2Int('GCK4'), 'Keyword Generic Craftable Keyword 04', - Sig2Int('GCK5'), 'Keyword Generic Craftable Keyword 05', - Sig2Int('GCK6'), 'Keyword Generic Craftable Keyword 06', - Sig2Int('GCK7'), 'Keyword Generic Craftable Keyword 07', - Sig2Int('GCK8'), 'Keyword Generic Craftable Keyword 08', - Sig2Int('GCK9'), 'Keyword Generic Craftable Keyword 09', - Sig2Int('GCKX'), 'Keyword Generic Craftable Keyword 10', - Sig2Int('GFAC'), 'Guard Faction', - Sig2Int('GLIK'), 'Gloves Item Keyword', - Sig2Int('GOLD'), 'Gold', - Sig2Int('GRIK'), 'Grenade Item Keyword', - Sig2Int('HBAL'), 'Help Basic Alchemy', - Sig2Int('HBBR'), 'Help Barter', - Sig2Int('HBCO'), 'Help Basic Cooking', - Sig2Int('HBEC'), 'Help Basic Enchanting', - Sig2Int('HBFG'), 'Help Basic Forging', - Sig2Int('HBFS'), 'Help Favorites', - Sig2Int('HBFT'), 'Help Teamate Favor', - Sig2Int('HBHJ'), 'Help Jail', - Sig2Int('HBJL'), 'Help Journal', - Sig2Int('HBLH'), 'Help Low Health', - Sig2Int('HBLK'), 'Help Basic Lockpicking PC', - Sig2Int('HBLM'), 'Help Low Magicka', - Sig2Int('HBLS'), 'Help Low Stamina', - Sig2Int('HBLU'), 'Help Leveling up', - Sig2Int('HBLX'), 'Help Basic Lockpicking Console', - Sig2Int('HBML'), 'Help Basic Smelting', - Sig2Int('HBMM'), 'Help Map Menu', - Sig2Int('HBOC'), 'Help Basic Object Creation', - Sig2Int('HBSA'), 'Help Basic Smithing Armor', - Sig2Int('HBSK'), 'Help Skills Menu', - Sig2Int('HBSM'), 'Help Basic Smithing Weapon', - Sig2Int('HBTA'), 'Help Basic Tanning', - Sig2Int('HBWC'), 'Help Weapon Charge', - Sig2Int('HCLL'), 'FormList Hair Color List', - Sig2Int('HEIK'), 'Helmet Item Keyword', - Sig2Int('HFSD'), 'Heartbeat Sound Fast', - Sig2Int('HMPC'), 'Help Manual PC', - Sig2Int('HMXB'), 'Help Manual XBox', - Sig2Int('HRSK'), 'Keyword Horse', - Sig2Int('HSSD'), 'Heartbeat Sound Slow', - Sig2Int('HVFS'), 'Harvest Failed Sound', - Sig2Int('HVSS'), 'Harvest Sound', - Sig2Int('HWIK'), 'Heavy Weapon Item keyword', - Sig2Int('IMDI'), 'Dialogue Imagespace', - Sig2Int('IMID'), 'ImageSpaceModifier for inventory menu.', - Sig2Int('IMLH'), 'Imagespace: Low Health', - Sig2Int('IMPP'), 'ImageSpaceModifier for Pipboy menu in Power armor.', - Sig2Int('IOPM'), 'Interface Output Model', - Sig2Int('JRLF'), 'Jarl Faction', - Sig2Int('JWLR'), 'Keyword Jewelry', - Sig2Int('KHFL'), 'Kinect Help FormList', - Sig2Int('KTRW'), 'Teammate Ready Weapon', - Sig2Int('KWBR'), 'Color Form', - Sig2Int('KWCU'), 'Keyword Cuirass', - Sig2Int('KWDM'), 'Keyword DummyObject', - Sig2Int('KWDO'), 'Keyword ClearableLocation', - Sig2Int('KWGE'), 'Keyword UseGeometryEmitter', - Sig2Int('KWMS'), 'Keyword MustStop', - Sig2Int('LGH1'), 'Default Light 1', - Sig2Int('LGH2'), 'Default Light 2', - Sig2Int('LGH3'), 'Default Light 3', - Sig2Int('LGH4'), 'Default Light 4', - Sig2Int('LGHP'), 'Pipboy Light', - Sig2Int('LKHO'), 'Keyword Hold Location', - Sig2Int('LKPK'), 'Lockpick', - Sig2Int('LMHP'), 'Local Map Hide Plane', - Sig2Int('LRRD'), 'LocRefType Resource Destructible', - Sig2Int('LRSO'), 'LocRefType Civil War Soldier', - Sig2Int('LSIS'), 'Imagespace: Load screen', - Sig2Int('MBIK'), 'Med Bag Item Keyword', - Sig2Int('MDSC'), 'Music Sound Category', - Sig2Int('MFSN'), 'Magic Fail Sound', - Sig2Int('MGGF'), 'Mages'' Guild Faction', - Sig2Int('MIIK'), 'Mine Item Keyword', - Sig2Int('MMCL'), 'Main Menu Cell', - Sig2Int('MMSD'), 'Map Menu Looping Sound', - Sig2Int('MNTK'), 'Keyword Mount', - Sig2Int('MTSC'), 'Master Sound Category', - Sig2Int('MVBL'), 'Keyword Movable', - Sig2Int('NASD'), 'No-Activation Sound', - Sig2Int('NDSC'), 'Non-Dialogue Voice Category', - Sig2Int('NMRD'), 'Road Marker', - Sig2Int('NPCK'), 'Keyword NPC', - Sig2Int('NRNT'), 'Keyword Nirnroot', - Sig2Int('P3OM'), 'Player''s Output Model 3rd Person', - Sig2Int('PDLC'), 'Pause During Loading Menu Category', - Sig2Int('PDMC'), 'Pause During Menu Category Fade', - Sig2Int('PDSA'), 'Putdown Sound Armor', - Sig2Int('PDSB'), 'Putdown Sound Book', - Sig2Int('PDSG'), 'Putdown Sound Generic', - Sig2Int('PDSI'), 'Putdown Sound Ingredient', - Sig2Int('PDSW'), 'Putdown Sound Weapon', - Sig2Int('PFAC'), 'Player Faction', - Sig2Int('PIMC'), 'Pause During Menu Category Immediate', - Sig2Int('PIVV'), 'Player Is Vampire Variable', - Sig2Int('PIWV'), 'UNUSED01', - Sig2Int('PLOC'), 'PersistAll Location', - Sig2Int('PLST'), 'Default Pack List', - Sig2Int('POEQ'), 'Potion Equip', - Sig2Int('POPM'), 'Player''s Output Model 1st Person', - Sig2Int('PTEM'), 'Package Template', - Sig2Int('PTFR'), 'PotentialFollower Faction', - Sig2Int('PTNP'), 'Pathing Test NPC', - Sig2Int('PUSA'), 'Pickup Sound Armor', - Sig2Int('PUSB'), 'Pickup Sound Book', - Sig2Int('PUSG'), 'Pickup Sound Generic', - Sig2Int('PUSI'), 'Pickup Sound Ingredient', - Sig2Int('PUSW'), 'Pickup Sound Weapon', - Sig2Int('PVFA'), 'Player Voice Female', - Sig2Int('PVFC'), 'Player Voice Female Child', - Sig2Int('PVMA'), 'Player Voice Male', - Sig2Int('PVMC'), 'Player Voice Male Child', - Sig2Int('PWFD'), 'Wait-For-Dialogue Package', - Sig2Int('QMEA'), 'Quest Marker Enemy Above', - Sig2Int('QMEB'), 'Quest Marker Enemy Below', - Sig2Int('QMEN'), 'Quest Marker Enemy', - Sig2Int('QMFO'), 'Quest Marker Follower', - Sig2Int('QMLO'), 'Quest Marker Location', - Sig2Int('RIVR'), 'Vampire Race', - Sig2Int('RIVS'), 'Vampire Spells', - Sig2Int('RIWR'), 'UNUSED02', - Sig2Int('RKIK'), 'Repair Kit Item Keyword', - Sig2Int('RUSG'), 'Keyword Reusable SoulGem', - Sig2Int('RVBT'), 'Reverb Type', - Sig2Int('SALT'), 'Sitting Angle Limit', - Sig2Int('SAT1'), 'Keyword Scale Actor To 1.0', - Sig2Int('SCSD'), 'Soul Captured Sound', - Sig2Int('SFDC'), 'SFX To Fade In Dialogue Category', - Sig2Int('SFSN'), 'Shout Fail Sound', - Sig2Int('SKLK'), 'Skeleton Key', - Sig2Int('SLDM'), 'Snow LOD Material', - Sig2Int('SLHD'), 'Snow LOD Material HD', - Sig2Int('SMLT'), 'Keyword Smelter', - Sig2Int('SMSC'), 'Stats Mute Category', - Sig2Int('SPFK'), 'Keyword Special Furniture', - Sig2Int('SSSC'), 'Stats Music', - Sig2Int('TANN'), 'Keyword Tanning Rack', - Sig2Int('TKAM'), 'Keyword Type Ammo', - Sig2Int('TKAR'), 'Keyword Type Armor', - Sig2Int('TKBK'), 'Keyword Type Book', - Sig2Int('TKGS'), 'Telekinesis Grab Sound', - Sig2Int('TKIG'), 'Keyword Type Ingredient', - Sig2Int('TKKY'), 'Keyword Type Key', - Sig2Int('TKMS'), 'Keyword Type Misc', - Sig2Int('TKPT'), 'Keyword Type Potion', - Sig2Int('TKSG'), 'Keyword Type SoulGem', - Sig2Int('TKTS'), 'Telekinesis Throw Sound', - Sig2Int('TKWP'), 'Keyword Type Weapon', - Sig2Int('TVGF'), 'Thieves'' Guild Faction', - Sig2Int('UNDK'), 'Keyword Undead', - Sig2Int('URVT'), 'Underwater Reverb Type', - Sig2Int('UWLS'), 'Underwater Loop Sound', - Sig2Int('VAMP'), 'Keyword Vampire', - Sig2Int('VLOC'), 'Virtual Location', - Sig2Int('VOEQ'), 'Voice Equip', - Sig2Int('WASN'), 'Ward Absorb Sound', - Sig2Int('WBSN'), 'Ward Break Sound', - Sig2Int('WDSN'), 'Ward Deflect Sound', - Sig2Int('WEML'), 'Weapon Material List', - Sig2Int('WMDA'), 'Keyword Weapon Material Daedric', - Sig2Int('WMDH'), 'Keyword Weapon Material DraugrHoned', - Sig2Int('WMDR'), 'Keyword Weapon Material Draugr', - Sig2Int('WMDW'), 'Keyword Weapon Material Dwarven', - Sig2Int('WMEB'), 'Keyword Weapon Material Ebony', - Sig2Int('WMEL'), 'Keyword Weapon Material Elven', - Sig2Int('WMFA'), 'Keyword Weapon Material Falmer', - Sig2Int('WMFH'), 'Keyword Weapon Material FalmerHoned', - Sig2Int('WMGL'), 'Keyword Weapon Material Glass', - Sig2Int('WMIK'), 'Workshop Misc Item Keyword', - Sig2Int('WMIM'), 'Keyword Weapon Material Imperial', - Sig2Int('WMIR'), 'Keyword Weapon Material Iron', - Sig2Int('WMOR'), 'Keyword Weapon Material Orcish', - Sig2Int('WMST'), 'Keyword Weapon Material Steel', - Sig2Int('WMWE'), 'World Map Weather', - Sig2Int('WMWO'), 'Keyword Weapon Material Wood', - Sig2Int('WPOK'), 'Workshop Player Ownership', - Sig2Int('WTBA'), 'Keyword WeaponTypeBoundArrow', - Sig2Int('WWSP'), 'UNUSED03' - ]); - - c := CombineVarRecs(a, b); - - wbRecord(DOBJ, 'Default Object Manager', [ - wbEDID, - wbArrayS(DNAM, 'Objects', - wbStructSK([0], 'Object', [ - wbInteger('Use', itU32, wbEnum([], c), cpNormalIgnoreEmpty), - wbFormID('Object ID', cpNormalIgnoreEmpty) - ]), 0, cpNormalIgnoreEmpty, True, wbDOBJObjectsAfterLoad - ) - ]); - - wbRecord(LGTM, 'Lighting Template', [ - wbEDID, - wbStruct(DATA, 'Lighting', [ - wbByteColors('Ambient Color'), - wbByteColors('Directional Color'), - wbByteColors('Fog Color Near'), - wbFloat('Fog Near'), - wbFloat('Fog Far'), - wbInteger('Directional Rotation XY', itS32), - wbInteger('Directional Rotation Z', itS32), - wbFloat('Directional Fade'), - wbFloat('Fog Clip Distance'), - wbFloat('Fog Power'), - wbByteArray('Unused', 32, cpIgnore), - wbByteColors('Fog Color Far'), - wbFloat('Fog Max'), - wbFloat('Light Fade Begin'), - wbFloat('Light Fade End'), - wbByteArray('Unused', 4, cpIgnore), - wbFloat('Near Height Mid'), - wbFloat('Near Height Range'), - wbByteColors('Fog Color High Near'), - wbByteColors('Fog Color High Far'), - wbFloat('High Density Scale'), - wbFloat('Fog Near Scale'), - wbFloat('Fog Far Scale'), - wbFloat('Fog High Near Scale'), - wbFloat('Fog High Far Scale'), - wbFloat('Far Height Mid'), - wbFloat('Far Height Range') - ], cpNormal, True, nil, 15), - wbAmbientColors(DALC), - wbFormIDCk(WGDR, 'God Rays', [GDRY]) - ]); - - wbRecord(MUSC, 'Music Type', [ - wbEDID, - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - {0x01} 'Plays One Selection', - {0x02} 'Abrupt Transition', - {0x04} 'Cycle Tracks', - {0x08} 'Maintain Track Order', - {0x10} 'Unknown 5', - {0x20} 'Ducks Current Track', - {0x40} 'Doesn''t Queue' - ]), cpNormal, True), - wbStruct(PNAM, 'Data', [ - wbInteger('Priority', itU16), - wbInteger('Ducking (dB)', itU16, wbDiv(100)) - ]), - wbFloat(WNAM, 'Fade Duration'), - wbArray(TNAM, 'Music Tracks', wbFormIDCk('Track', [MUST, NULL])) - ]); - - wbRecord(FSTP, 'Footstep', [ - wbEDID, - wbFormIDCk(DATA, 'Impact Data Set', [IPDS, NULL], False, cpNormal, True), - wbString(ANAM, 'Tag', 0, cpNormal, True) - ]); - - wbRecord(FSTS, 'Footstep Set', [ - wbEDID, - wbStruct(XCNT, 'Count', [ - wbInteger('Walking', itU32), - wbInteger('Running', itU32), - wbInteger('Sprinting', itU32), - wbInteger('Sneaking', itU32), - wbInteger('Swimming', itU32) - ], cpNormal, True), - wbArray(DATA, 'Footstep Sets', wbFormIDCk('Footstep', [FSTP]), 0, nil, nil, cpNormal, True) - ]); - - wbSMNodeFlags := wbFlags([ - 'Random', - 'Warn if no child quest started' - ]); - - wbRecord(SMBN, 'Story Manager Branch Node', [ - wbEDID, - wbFormIDCk(PNAM, 'Parent ', [SMQN, SMBN, SMEN, NULL]), - wbFormIDCk(SNAM, 'Child ', [SMQN, SMBN, SMEN, NULL], False, cpBenign), - wbCITC, - wbCTDAsCount, - wbInteger(DNAM, 'Flags', itU32, wbSMNodeFlags), - wbUnknown(XNAM) - ], False, nil, cpNormal, False, nil, wbConditionsAfterSet); - - wbRecord(SMQN, 'Story Manager Quest Node', [ - wbEDID, - wbFormIDCk(PNAM, 'Parent ', [SMQN, SMBN, SMEN, NULL]), - wbFormIDCk(SNAM, 'Child ', [SMQN, SMBN, SMEN, NULL], False, cpBenign), - wbCITC, - wbCTDAsCount, - wbStruct(DNAM, 'Flags', [ - wbInteger('Node Flags', itU16, wbSMNodeFlags), - wbInteger('Quest Flags', itU16, wbFlags([ - 'Do all before repeating', - 'Shares event', - 'Num quests to run' - ])) - ]), - wbInteger(XNAM, 'Max concurrent quests', itU32), - wbInteger(MNAM, 'Num quests to run', itU32), - wbFloat(HNAM, 'Hours until reset'), - wbInteger(QNAM, 'Quest Count', itU32, nil, cpBenign), - wbRArray('Quests', wbRStructSK([0], 'Quest', [ - wbFormIDCk(NNAM, 'Quest', [QUST]), - wbUnknown(FNAM), - wbFloat(RNAM, 'Hours until reset', cpNormal, False, 1/24) - ], []), cpNormal, False, nil, wbSMQNQuestsAfterSet) - ], False, nil, cpNormal, False, nil, wbConditionsAfterSet); - - wbRecord(SMEN, 'Story Manager Event Node', [ - wbEDID, - wbFormIDCk(PNAM, 'Parent ', [SMQN, SMBN, SMEN, NULL]), - wbFormIDCk(SNAM, 'Child ', [SMQN, SMBN, SMEN, NULL]), - wbCITC, - wbCTDAsCount, - wbInteger(DNAM, 'Flags', itU32, wbSMNodeFlags), - wbUnknown(XNAM), - wbString(ENAM, 'Type', 4) - ], False, nil, cpNormal, False, nil, wbConditionsAfterSet); -end; - -procedure DefineFO4j; -begin - wbRecord(DLBR, 'Dialog Branch', [ - wbEDID, - wbFormIDCk(QNAM, 'Quest', [QUST], False, cpNormal, True), - wbInteger(TNAM, 'Unknown', itU32), - wbInteger(DNAM, 'Flags', itU32, wbFlags([ - {0x01} 'Top-Level', - {0x02} 'Blocking', - {0x04} 'Exclusive' - ])), - wbFormIDCk(SNAM, 'Starting Topic', [DIAL], False, cpNormal, True) - ]); - - wbRecord(MUST, 'Music Track', [ - wbEDID, - wbInteger(CNAM, 'Track Type', itU32, wbEnum([], [ - Int64($23F678C3), 'Palette', - Int64($6ED7E048), 'Single Track', - Int64($A1A9C4D5), 'Silent Track' - ]), cpNormal, True), - wbFloat(FLTV, 'Duration'), - wbFloat(DNAM, 'Fade-Out'), - wbString(ANAM, 'Track Filename'), - wbString(BNAM, 'Finale Filename'), - wbStruct(LNAM, 'Loop Data', [ - wbFloat('Loop Begins'), - wbFloat('Loop Ends'), - wbInteger('Loop Count', itU32) - ]), - wbArray(FNAM, 'Cue Points', wbFloat('Point')), - wbCITC, - wbCTDAsCount, - wbArray(SNAM, 'Tracks', wbFormIDCk('Track', [MUST, NULL])) - ], False, nil, cpNormal, False, nil, wbConditionsAfterSet); - - wbRecord(DLVW, 'Dialog View', [ - wbEDID, - wbFormIDCk(QNAM, 'Quest', [QUST], False, cpNormal, True), - wbRArray('Branches', wbFormIDCk(BNAM, 'Branch', [DLBR])), - wbRArray('Unknown TNAM', wbRStruct('Unknown', [ - wbUnknown(TNAM) - ], [])), - wbUnknown(ENAM), - wbUnknown(DNAM) - ]); - - {wbRecord(WOOP, 'Word of Power', [ - wbEDID - ]);} - - {wbRecord(SHOU, 'Shout', [ - wbEDID - ]);} - - wbRecord(EQUP, 'Equip Type', [ - wbEDID, - wbArray(PNAM, 'Slot Parents', wbFormIDCk('Parent', [EQUP])), - wbInteger(DATA, 'Flags', itU32, wbFlags([ - 'Use All Parents', - 'Parents Optional', - 'Item Slot' - ])), - wbFormIDCk(ANAM, 'Condition Actor Value', [AVIF, NULL, FFFF]) - ]); - - wbRecord(RELA, 'Relationship', [ - wbEDID, - wbStruct(DATA, 'Data', [ - wbFormIDCk('Parent', [NPC_, NULL]), - wbFormIDCk('Child', [NPC_, NULL]), - wbInteger('Rank', itU8, wbEnum([ - 'Lover', - 'Ally', - 'Confidant', - 'Friend', - 'Acquaitance', - 'Rival', - 'Foe', - 'Enemy', - 'Archnemesis' - ])), - wbByteArray('Unknown', 2), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Unknown 1', - {0x02} 'Unknown 2', - {0x04} 'Unknown 3', - {0x08} 'Unknown 4', - {0x10} 'Unknown 5', - {0x20} 'Unknown 6', - {0x40} 'Unknown 7', - {0x80} 'Secret' - ])), - wbFormIDCk('Association Type', [ASTP, NULL]) - ]) - ]); - - wbRecord(SCEN, 'Scene', [ - wbEDID, - wbVMADFragmentedSCEN, - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - {0x00000001} 'Begin on Quest Start', - {0x00000002} 'Stop on Quest End', - {0x00000004} 'Unknown 2', - {0x00000008} 'Repeat Conditions While True', - {0x00000010} 'Interruptible', - {0x00000020} 'Unknown 5', - {0x00000040} 'Prevent Player Exit Dialogue', - {0x00000080} 'Unknown 7', - {0x00000100} 'Unknown 8', - {0x00000200} 'Unknown 9', - {0x00000400} 'Unknown 10', - {0x00000800} 'Disable Dialogue Camera', - {0x00001000} 'No Follower Idle Chatter' - ])), - wbRArray('Phases', - wbRStruct('Phase', [ - wbEmpty(HNAM, 'Marker Phase Start'), - wbString(NAM0, 'Name'), - wbRStruct('Start Conditions', [wbCTDAs], []), - wbEmpty(NEXT, 'Marker Start Conditions'), - wbRStruct('Completion Conditions', [wbCTDAs], []), - wbEmpty(NEXT, 'Marker Completion Conditions'), - wbInteger(WNAM, 'Editor Width', itU32), - wbInteger(FNAM, 'Flags', itU16, wbFlags([ - {0x0001} 'Start - WalkAway Phase', - {0x0002} 'Don''t Run End Scripts on Scene Jump', - {0x0004} 'Start - Inherit In Templated Scenes' - ])), - wbStruct(SCQS, 'Set Parent Quest Stage', [ - wbInteger('On Start', itS16), - wbInteger('On Completion', itS16) - ]), - wbEmpty(HNAM, 'Marker Phase End') - ], []) - ), - wbRArray('Actors', wbRStruct('Actor', [ - wbInteger(ALID, 'Alias ID', itS32), - wbInteger(LNAM, 'Flags', itU32, wbFlags([ - 'No Player Activation', - 'Optional', - 'Run Only Scene Packages', - 'No Command State' - ])), - wbInteger(DNAM, 'Behaviour Flags', itU32, wbFlags([ - 'Death Pause', - 'Death End', - 'Combat Pause', - 'Combat End', - 'Dialogue Pause', - 'Dialogue End', - 'OBS_COM Pause', - 'OBS_COM End' - ])) - ], [])), - wbRArray('Actions', wbRStruct('Action', [ - wbInteger(ANAM, 'Type', itU16, wbEnum([ - {0} 'Dialogue', - {1} 'Package', - {2} 'Timer', - {3} 'Player Dialogue', - {4} 'Start Scene', - {5} 'NPC Response Dialogue', - {6} 'Radio' - ])), - wbString(NAM0, 'Name'), - wbInteger(ALID, 'Alias ID', itS32), - wbInteger(INAM, 'Index', itU32), - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - {0x00000001} 'Unknown 0', - {0x00000002} 'Unknown 1', - {0x00000004} 'Unknown 2', - {0x00000008} 'Unknown 3', - {0x00000010} 'Unknown 4', - {0x00000020} 'Unknown 5', - {0x00000040} 'Unknown 6', - {0x00000080} 'Player Positive Use Dialogue Subtype / Hold Into Next Scene', - {0x00000100} 'Player Negative Use Dialogue Subtype', - {0x00000200} 'Player Neutral Use Dialogue Subtype', - {0x00000400} 'Use Dialogue Subtype', - {0x00000800} 'Player Question Use Dialogue Subtype', - {0x00001000} 'Keep/Clear Target on Action End', - {0x00002000} 'Unknown 13', - {0x00004000} 'Unknown 14', - {0x00008000} 'Face Target', - {0x00010000} 'Looping', - {0x00020000} 'Headtrack Player', - {0x00040000} 'Unknown 18', - {0x00080000} 'Ignore For Completion', - {0x00100000} 'Unknown 20', - {0x00200000} 'Camera Speaker Target', - {0x00400000} 'Complete Face Target', - {0x00800000} 'Unknown 23', - {0x01000000} 'Unknown 24', - {0x02000000} 'Unknown 25', - {0x04000000} 'Unknown 26', - {0x08000000} 'NPC Positive Use Dialogue Subtype', - {0x10000000} 'NPC Negative Use Dialogue Subtype', - {0x20000000} 'NPC Neutral Use Dialogue Subtype', - {0x40000000} 'NPC Question Use Dialogue Subtype' - ])), - wbInteger(SNAM, 'Start Phase', itU32), - wbInteger(ENAM, 'End Phase', itU32), - wbFloat(SNAM, 'Timer - Max Seconds'), - wbInteger(SCQS, 'Set Parent Quest Stage', itS16), - wbFloat(TNAM, 'Timer - Min Seconds'), - wbUnknown(STSC), - wbRStructs('Start Scenes', 'Start Scene', [ - wbFormIDCk(LCEP, 'Scene', [SCEN]), - wbInteger(INTT, 'Phase Index', itU16), - wbString(SSPN, 'Start Phase for Scene'), - wbCITC, - wbCTDAs - ], []), - wbFormIDCk(PTOP, 'Player Positive Response', [DIAL]), - wbFormIDCk(NTOP, 'Player Negative Response', [DIAL]), - wbFormIDCk(NETO, 'Player Neutral Response', [DIAL]), - wbFormIDCk(QTOP, 'Player Question Response', [DIAL]), - wbFormIDCk(VENC, 'Player Positive Dialogue Subtype', [KYWD]), - wbFormIDCk(PLVD, 'Player Negative Dialogue Subtype', [KYWD]), - wbFormIDCk(JOUT, 'Player Neutral Dialogue Subtype', [KYWD]), - wbFormIDCk(DALC, 'Player Question Dialogue Subtype', [KYWD]), - wbArray(DTID, 'NPC Headtracking', wbInteger('Actor ID', itS32)), - wbFormIDCk(NPOT, 'NPC Positive Response', [DIAL]), - wbFormIDCk(NNGT, 'NPC Negative Response', [DIAL]), - wbFormIDCk(NNUT, 'NPC Neutral Response', [DIAL]), - wbFormIDCk(NQUT, 'NPC Question Response', [DIAL]), - wbFormIDCk(NPOS, 'NPC Positive Dialogue Subtype', [KYWD]), - wbFormIDCk(NNGS, 'NPC Negative Dialogue Subtype', [KYWD]), - wbFormIDCk(NNUS, 'NPC Neutral Dialogue Subtype', [KYWD]), - wbFormIDCk(NQUS, 'NPC Question Dialogue Subtype', [KYWD]), - wbInteger(DTGT, 'Dialogue Target Actor', itS32), - wbRArray('Packages', wbFormIDCk(PNAM, 'Package', [PACK])), - wbFormIDCk(DATA, 'Topic', [DIAL, NULL]), - wbUnion(HTID, '', wbSceneActionSoundDecider, [ - wbEmpty('End Scene Say Greeting'), - wbFormIDCk('Play Sound', [SNDR, NULL]) - ]), - wbFloat(DMAX, 'Looping - Max'), - wbFloat(DMIN, 'Looping - Min'), - wbStruct(CRIS, 'Camera', [ - wbFloat('FOV On Player Camera'), - wbFloat('Rate Of Camera Change') - ]), - wbInteger(DEMO, 'Emotion Type', itU32, wbEmotionTypeEnum), - wbInteger(DEVA, 'Emotion Value', itU32), - wbArray(HTID, 'Player Headtracking', wbInteger('Actor ID', itS32)), - wbFormIDCk(VENC, 'Dialogue Subtype', [KYWD]), - wbFormIDCk(PNAM, 'AnimArchType', [KYWD]), - wbFormIDCk(ONAM, 'Audio Output Override', [SOPM]), - wbEmpty(ANAM, 'End Marker') - ], [])), - wbFormIDCk(PNAM, 'Quest', [QUST]), - wbInteger(INAM, 'Last Action Index', itU32), - wbUnknown(VNAM), - wbFloat(CNAM, 'Camera Distance Override'), - wbFloat(ACTV, 'Dialogue Distance Override'), - wbFloat(CRIS, 'FOV Override'), - wbKSIZ, - wbKWDAs, - wbCTDAs, - wbStruct(SCQS, 'Set Parent Quest Stage', [ - wbInteger('On Begin', itS16), - wbInteger('On End', itS16) - ]), - wbString(NNAM, 'Notes'), - wbFormIDCk(TNAM, 'Template Scene', [SCEN]), - wbInteger(XNAM, 'Index', itU32) - ]); - - wbRecord(ASTP, 'Association Type', [ - wbEDID, - wbString(MPRT, 'Male Parent Title'), - wbString(FPRT, 'Female Parent Title'), - wbString(MCHT, 'Male Child Title'), - wbString(FCHT, 'Female Child Title'), - wbInteger(DATA, 'Flags', itU32, wbFlags([ - 'Family Association' - ])) - ]); -end; - -procedure DefineFO4k; -begin - - wbSPED := wbStruct(SPED, 'Movement Data', [ - wbFloat('Unknown'), - wbFloat('Walk - Left'), - wbFloat('Run - Left'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Walk - Right'), - wbFloat('Run - Right'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Walk - Forward'), - wbFloat('Run - Forward'), - wbFloat('Sprint - Forward'), - wbFloat('Unknown'), - wbFloat('Walk - Back'), - wbFloat('Run - Back'), - wbFloat('Unknown'), - wbFloat('Standing - Pitch', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Walk - Pitch', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Run - Pitch', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Sprint - Pitch', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Unknown'{, cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize}), - wbFloat('Unknown'{, cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize}), - wbFloat('Unknown'{, cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize}), - wbFloat('Unknown'{, cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize}), - wbFloat('Standing - Yaw', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Walk - Yaw', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Run - Yaw', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Sprint - Yaw', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ], cpNormal, True, nil, 10); - - wbRecord(OTFT, 'Outfit', [ - wbEDID, - wbArrayS(INAM, 'Items', wbFormIDCk('Item', [ARMO, LVLI])) - ]); - - wbRecord(ARTO, 'Art Object', [ - wbEDID, - wbOBNDReq, - wbPTRN, - wbKSIZ, - wbKWDAs, - wbMODL, - wbInteger(DNAM, 'Art Type', itU32, wbEnum([ - 'Magic Casting', - 'Magic Hit Effect', - 'Enchantment Effect' - ])) - ]); - - wbRecord(MATO, 'Material Object', [ - wbEDID, - wbMODL, - wbRArray('Property Data', - wbByteArray(DNAM, 'Data', 0, cpIgnore, False, False, wbNeverShow) - ), - wbStruct(DATA, 'Directional Material Data', [ - wbFloat('Falloff Scale'), - wbFloat('Falloff Bias'), - wbFloat('Noise UV Scale'), - wbFloat('Material UV Scale'), - wbStruct('Projection Vector', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbFloat('Normal Dampener'), - wbFloatColors('Single Pass Color'), - wbInteger('Flags', itU32, wbFlags(['Single Pass'])) - ], cpNormal, True, nil, 5) - ]); - - wbRecord(MOVT, 'Movement Type', [ - wbEDID, - wbString(MNAM, 'Name'), - wbSPED, - wbStruct(INAM, 'Anim Change Thresholds (unused)', [ - wbFloat('Directional', cpNormal, True, 180/Pi), - wbFloat('Movement Speed'), - wbFloat('Rotation Speed', cpNormal, True, 180/Pi) - ]), - wbFloat(JNAM, 'Float Height'), - wbFloat(LNAM, 'Flight - Angle Gain') - ]); - - wbRecord(SNDR, 'Sound Descriptor', [ - wbEDID, - wbString(NNAM, 'Notes'), - wbInteger(CNAM, 'Descriptor Type', itU32, wbEnum([], [ - Int64($1EEF540A), 'Standard', - Int64($54651A43), 'Compound', - Int64($ED157AE3), 'AutoWeapon' - ])), - wbFormIDCk(GNAM, 'Category', [SNCT]), - wbFormIDCk(SNAM, 'Alternate Sound For', [SNDR]), - wbRArray('Sounds', - wbRStruct('Sound Files', [ - wbString(ANAM, 'File Name') - ], []) - ), - wbFormIDCk(ONAM, 'Output Model', [SOPM]), - wbCTDAs, - wbStruct(LNAM, 'Values', [ - wbByteArray('Unknown', 1), - wbInteger('Looping', itU8, wbEnum([], [ - $00, 'None', - $08, 'Loop', - $10, 'Envelope Fast', - $20, 'Envelope Slow' - ])), - wbInteger('Sidechain', itU8), - wbInteger('Rumble Send Value = (Small / 7) + ((Big / 7) * 16)', itU8) - ]), - wbUnion(BNAM, 'Data', wbSNDRDataDecider, [ - wbStruct('Values', [ - wbInteger('% Frequency Shift', itS8), - wbInteger('% Frequency Variance', itS8), - wbInteger('Priority', itU8), - wbInteger('db Variance', itU8), - wbInteger('Static Attenuation (db)', itU16, wbDiv(100)) - ]), - wbFormIDCk('Base Descriptor', [SNDR]) - ]), - wbRArray('Descriptors', wbFormIDCk(DNAM, 'Descriptor', [SNDR])), - wbInteger(ITMC, 'Count', itU32, nil, cpBenign), - wbRArrayS('Rates of Fire', - wbRStructSK([1], 'Sound', [ - wbEmpty(ITMS, 'Marker Start'), - wbInteger(INTV, 'RoF (RPM)', itU32), - wbString(FNAM, 'File'), - wbEmpty(ITME, 'Marker End') - ], []), - cpNormal, False, nil, wbSNDRRatesOfFireAfterSet - ) - ]); - - wbRecord(DUAL, 'Dual Cast Data', [ - wbEDID - ]); - - wbRecord(SNCT, 'Sound Category', [ - wbEDID, - wbFULL, - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - {0x0000001} 'Mute When Submerged', - {0x0000002} 'Should Appear on Menu', - {0x0000004} 'Immune to Time Speedup', - {0x0000008} 'Pause During Menus (Immed)', - {0x0000010} 'Pause During Menus (Fade)', - {0x0000020} 'Exclude from Player OPM Override', - {0x0000040} 'Pause During Start Menu' - ]), cpNormal, True), - wbFormIDCk(PNAM, 'Parent Category', [SNCT]), - wbFormIDCk(ONAM, 'Menu Slider Category', [SNCT]), - wbInteger(VNAM, 'Static Volume Multiplier', itU16, wbDiv(65535)), - wbInteger(UNAM, 'Default Menu Value', itU16, wbDiv(65535)), - wbFloat(MNAM, 'Min Frequency Multiplier'), - wbFloat(CNAM, 'Sidechain Target Multiplier') - ]); - - wbRecord(SOPM, 'Sound Output Model', [ - wbEDID, - wbStruct(NAM1, 'Data', [ - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Attenuates With Distance', - {0x02} 'Allows Rumble', - {0x04} 'Applies Doppler', - {0x08} 'Applies Distance Delay', - {0x10} 'Player Output Model', - {0x20} 'Try Play on Controller', - {0x40} 'Causes Ducking', - {0x80} 'Avoids Ducking' - ])), - wbByteArray('Unknown', 2), - wbInteger('Reverb Send %', itU8) - ]), - wbInteger(MNAM, 'Type', itU32, wbEnum([ - 'Uses HRTF', - 'Defined Speaker Output' - ])), - wbInteger(VNAM, 'Static Attenuation', itS16, wbDiv(100)), - wbStruct(ONAM, 'Output Values', [ - wbArray('Channels', wbStruct('', [ - wbInteger('FL', itU8), - wbInteger('FR', itU8), - wbInteger('C', itU8), - wbInteger('LFE', itU8), - wbInteger('RL', itU8), - wbInteger('RR', itU8), - wbInteger('SL', itU8), - wbInteger('SR', itU8) - ]), [ - 'Channel 0', - 'Channel 1', - 'Channel 2? (unused)' - ]) - ]), - wbStruct(ATTN, 'Attenuation Values', [ - wbFloat('Fade In Distance - Start'), - wbFloat('Fade In Distance - End'), - wbFloat('Fade Out Distance - Start'), - wbFloat('Fade Out Distance - End'), - wbStruct('Fade In Curve', [ - wbInteger('Value 1', itU8), - wbInteger('Value 2', itU8), - wbInteger('Value 3', itU8), - wbInteger('Value 4', itU8) - ]), - wbStruct('Fade Out Curve', [ - wbInteger('Value 1', itU8), - wbInteger('Value 2', itU8), - wbInteger('Value 3', itU8), - wbInteger('Value 4', itU8) - ]) - ]), - wbFormIDCk(ENAM, 'Effect Chain', [AECH]) - ]); - - wbRecord(COLL, 'Collision Layer', [ - wbEDID, - wbDESCReq, - wbInteger(BNAM, 'Index', itU32, nil, cpNormal, True), - wbStruct(FNAM, 'Debug Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbInteger('Unused', itU8) - ], cpNormal, True), - wbInteger(GNAM, 'Flags', itU32, wbFlags([ - {0x00000001} 'Trigger Volume', - {0x00000002} 'Sensor', - {0x00000004} 'Navmesh Obstacle' - ]), cpNormal, True), - wbString(MNAM, 'Name', 0, cpNormal, True), - wbInteger(INTV, 'Interactables Count', itU32, nil, cpNormal, True), - wbArrayS(CNAM, 'Collides With', wbFormIDCk('Forms', [COLL]), 0, cpNormal, False) - ]); - - wbRecord(CLFM, 'Color', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable' - ])), [ - wbEDID, - wbFULL, - // union decider doesn't work during copying since decision data FNAM is located after it - // workaround using integer formatters - wbInteger(CNAM, 'Color/Index', itU32, wbCLFMColorToStr, wbCLFMColorToInt), - {wbUnion(CNAM, 'Value', wbCLFMColorDecider, [ - wbByteColors('Color'), - wbFloat('Remapping Index') - ]),} - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - 'Playable', - 'Remapping Index', - 'Extended LUT' - ]), cpNormal, True), - wbCTDAs - ]); -end; - -procedure DefineFO4l; -begin - wbRecord(REVB, 'Reverb Parameters', [ - wbEDID, - wbStruct(DATA, 'Data', [ - wbInteger('Decay Time (ms)', itU16), - wbInteger('HF Reference (Hz)', itU16), - wbInteger('Room Filter', itS8), - wbInteger('Room HF Filter', itS8), - wbInteger('Reflections', itS8), - wbInteger('Reverb Amp', itS8), - wbInteger('Decay HF Ratio', itU8, wbDiv(100)), - wbInteger('Reflect Delay (ms), scaled', itU8), - wbInteger('Reverb Delay (ms)', itU8), - wbInteger('Diffusion %', itU8), - wbInteger('Density %', itU8), - wbInteger('Unknown', itU8) - ], cpNormal, True), - wbInteger(ANAM, 'Reverb Class', itU32, wbReverbClassEnum, cpNormal, True) - ]); - - wbRecord(GRAS, 'Grass', [ - wbEDID, - wbOBNDReq, - wbMODL, - wbStruct(DATA, '', [ - wbInteger('Density', itU8), - wbInteger('Min Slope', itU8), - wbInteger('Max Slope', itU8), - wbByteArray('Unknown', 1), - wbInteger('Units From Water', itU16), - wbByteArray('Unknown', 2), - wbInteger('Units From Water Type', itU32, wbEnum([ - 'Above - At Least', - 'Above - At Most', - 'Below - At Least', - 'Below - At Most', - 'Either - At Least', - 'Either - At Most', - 'Either - At Most Above', - 'Either - At Most Below' - ])), - wbFloat('Position Range'), - wbFloat('Height Range'), - wbFloat('Color Range'), - wbFloat('Wave Period'), - wbInteger('Flags', itU8, wbFlags([ - 'Vertex Lighting', - 'Uniform Scaling', - 'Fit to Slope' - ])), - wbByteArray('Unknown', 3) - ], cpNormal, True) - ]); - - wbRecord(IDLE, 'Idle Animation', [ - wbEDID, - wbCTDAs, - wbString(DNAM, 'Behavior Graph'), - wbString(ENAM, 'Animation Event'), - wbArray(ANAM, 'Related Idle Animations', wbFormIDCk('Related Idle Animation', [AACT, IDLE, NULL]), - ['Parent', 'Previous Sibling'], cpNormal, True), - wbStruct(DATA, '', [ - wbStruct('Looping seconds (both 255 forever)', [ - wbInteger('Min', itU8), - wbInteger('Max', itU8) - ]), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Parent', - {0x02} 'Sequence', - {0x04} 'No Attacking', - {0x04} 'Blocking' - ], True)), - wbInteger('Animation Group Section', itU8{, wbIdleAnam}), - wbInteger('Replay Delay', itU16) - ], cpNormal, True), - wbString(GNAM, 'Animation File') - ]); - - wbRecord(INFO, 'Dialog response', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000040} 6, 'Unknown 6', - {0x00000080} 7, 'Exclude From Export', - {0x00002000} 13, 'Actor Changed' - ])), [ - wbEDID, - wbVMADFragmentedINFO, - wbStruct(ENAM, 'Response flags', [ - wbInteger('Flags', itU16, wbFlags([ - {0x0001} 'Start Scene on End', - {0x0002} 'Random', - {0x0004} 'Say Once', - {0x0008} 'Requires Player Activation', - {0x0010} 'Unknown 4', - {0x0020} 'Random End', - {0x0040} 'End Running Scene', - {0x0080} 'ForceGreet Hello', - {0x0100} 'Player Address', - {0x0200} 'Unknown 9', - {0x0400} 'Can Move While Greeting', - {0x0800} 'No LIP File', - {0x1000} 'Requires post-processing', - {0x2000} 'Audio Output Override', - {0x4000} 'Has Capture', - {0x8000} 'Unknown 16' - ])), - wbInteger('Reset Hours', itU16, wbDiv(2730)) - ]), - wbFormIDCk(TPIC, 'Topic', [DIAL]), - wbFormIDCkNoReach(PNAM, 'Previous INFO', [INFO, NULL], False, cpBenign), - wbFormIDCk(DNAM, 'Shared INFO', [INFO]), - wbFormIDCk(GNAM, 'Unknown', [INFO]), - wbString(IOVR, 'Override Filename'), - - wbRArray('Responses', wbRStruct('Response', [ - wbStruct(TRDA, 'Response Data', [ - wbFormIDCk('Emotion', [KYWD, FFFF]), - wbInteger('Response number', itU8), - wbByteArray('Unused', 3), - wbByteArray('Unknown', 2), - wbInteger('Interrupt Percentage', itU16), - wbInteger('Camera Target Alias', itS32), - wbInteger('Camera Location Alias', itS32) - ]), - wbLStringKC(NAM1, 'Response Text', 0, cpTranslate, True), - wbString(NAM2, 'Script Notes', 0, cpNormal, True), - wbString(NAM3, 'Edits', 0, cpNormal, True), - wbString(NAM4, 'Alternate LIP Text', 0, cpNormal, True), - wbFormIDCk(SNAM, 'Idle Animations: Speaker', [IDLE]), - wbFormIDCk(LNAM, 'Idle Animations: Listener', [IDLE]), - wbInteger(TNAM, 'Interrupt Percentage', itU16), - wbByteArray(NAM9, 'Text Hash'), - wbFormIDCk(SRAF, 'Camera Path', [CPTH]), - wbEmpty(WZMD, 'Stop on Scene End') - ], [])), - - wbCTDAs, - wbLString(RNAM, 'Prompt', 0, cpTranslate), - wbFormIDCk(ANAM, 'Speaker', [NPC_]), - wbFormIDCk(TSCE, 'Start Scene', [SCEN]), - wbInteger(ALFA, 'Forced Alias', itS32), - wbUnknown(INTV), - wbFormIDCk(ONAM, 'Audio Output Override', [SOPM]), - wbInteger(GREE, 'Greet Distance', itU32), - wbStruct(TIQS, 'Set Parent Quest Stage', [ - wbInteger('On Begin', itS16), - wbInteger('On End', itS16) - ]), - wbString(NAM0, 'Start Scene Phase'), - wbInteger(INCC, 'Challenge', itU32, wbEnum([ - {0} 'None', - {1} 'Easy', - {2} 'Medium', - {3} 'Hard', - {4} 'Always Succeeds', - {5} 'Easy Repeatable', - {6} 'Medium Repeatable', - {7} 'Hard Repeatable' - ])), - wbFormIDCk(MODQ, 'Reset Global', [GLOB]), - wbInteger(INAM, 'Subtitle Priority', itU32, wbEnum([ - 'Low', - 'Normal', - 'Unknown 2', - 'Force' - ])) - ], False, wbINFOAddInfo, cpNormal, False, nil{wbINFOAfterLoad}); - - wbRecord(INGR, 'Ingredient', [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbKSIZ, - wbKWDAs, - wbMODL, - wbICON, - wbMICO, - wbDEST, - wbETYP, - wbYNAM, - wbZNAM, - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True), - wbStruct(ENIT, 'Effect Data', [ - wbInteger('Ingredient Value', itS32), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'No auto-calculation', - {0x00000002} 'Food item', - {0x00000004} 'Unknown 3', - {0x00000008} 'Unknown 4', - {0x00000010} 'Unknown 5', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unknown 7', - {0x00000080} 'Unknown 8', - {0x00000100} 'References Persist' - ])) - ], cpNormal, True), - wbEffectsReq - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbRecord(KEYM, 'Key', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000800} 11, 'Calc Value From Components', - {0x00002000} 13, 'Pack-In Use Only' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFULLReq, - wbMODL, - wbICON, - wbMICO, - wbDEST, - wbYNAM, - wbZNAM, - wbKSIZ, - wbKWDAs, - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True) - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbQuadrantEnum := wbEnum([ - {0} 'Bottom Left', - {1} 'Bottom Right', - {2} 'Top Left', - {3} 'Top Right' - ]); - - if wbSimpleRecords then begin - - wbRecord(LAND, 'Landscape', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00040000} 18, 'Compressed' - ]), [18]), [ - wbByteArray(DATA, 'Unknown'), - wbByteArray(VNML, 'Vertex Normals'), - wbByteArray(VHGT, 'Vertext Height Map'), - wbByteArray(VCLR, 'Vertex Colours'), - - wbRArrayS('Layers', wbRUnion('Layer', [ - wbRStructSK([0],'Base Layer', [ - wbStructSK(BTXT, [1, 3], 'Base Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unknown', 1), - wbInteger('Layer', itS16) - ]) - ], []), - wbRStructSK([0],'Alpha Layer', [ - wbStructSK(ATXT, [1, 3], 'Alpha Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unknown', 1), - wbInteger('Layer', itS16) - ]), - wbByteArray(VTXT, 'Alpha Layer Data') - ], []) - ], [])), - wbArray(VTEX, 'Textures', wbFormIDCk('Texture', [LTEX, NULL])), - wbRArray('Unknown', wbUnknown(MPCD)) - ]); - - end else begin - - wbRecord(LAND, 'Landscape', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00040000} 18, 'Compressed' - ]), [18]), [ - wbByteArray(DATA, 'Unknown'), - wbArray(VNML, 'Vertex Normals', wbStruct('Row', [ - wbArray('Columns', wbStruct('Column', [ - wbInteger('X', itU8), - wbInteger('Y', itU8), - wbInteger('Z', itU8) - ]), 33) - ]), 33), - wbStruct(VHGT, 'Vertext Height Map', [ - wbFloat('Offset'), - wbArray('Rows', wbStruct('Row', [ - wbArray('Columns', wbInteger('Column', itU8), 33) - ]), 33), - wbByteArray('Unknown', 3) - ]), - wbArray(VCLR, 'Vertex Colours', wbStruct('Row', [ - wbArray('Columns', wbStruct('Column', [ - wbInteger('X', itU8), - wbInteger('Y', itU8), - wbInteger('Z', itU8) - ]), 33) - ]), 33), - - wbRArrayS('Layers', wbRUnion('Layer', [ - wbRStructSK([0],'Base Layer', [ - wbStructSK(BTXT, [1, 3], 'Base Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unknown', 1), - wbInteger('Layer', itS16) - ]) - ], []), - wbRStructSK([0],'Alpha Layer', [ - wbStructSK(ATXT, [1, 3], 'Alpha Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unknown', 1), - wbInteger('Layer', itS16) - ]), - wbArrayS(VTXT, 'Alpha Layer Data', wbStructSK([0], 'Cell', [ - wbInteger('Position', itU16, wbAtxtPosition), - wbByteArray('Unknown', 2), - wbFloat('Opacity') - ])) - ], []) - ], [])), - wbArray(VTEX, 'Textures', wbFormIDCk('Texture', [LTEX, NULL])), - wbRArray('Unknown', wbUnknown(MPCD)) - ]); - - end; - - wbRecord(LIGH, 'Light', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00010000} 16, 'Random Anim Start', - {0x00020000} 17, 'Unknown 17', - {0x00020000} 25, 'Obstacle', - {0x00020000} 28, 'Portal-strict' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbMODL, - wbKSIZ, - wbKWDAs, - wbDEST, - wbPRPS, - wbFULL, - wbICON, - wbMICO, - wbStruct(DATA, '', [ - wbInteger('Time', itS32), - wbInteger('Radius', itU32), - wbByteColors('Color'), - // Omnidirectional is the default type - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Unknown 0', - {0x00000002} 'Can be Carried', - {0x00000004} 'Unknown 2', - {0x00000008} 'Flicker', - {0x00000010} 'Unknown 4', - {0x00000020} 'Off By Default', - {0x00000040} 'Unknown 6', - {0x00000080} 'Pulse', - {0x00000100} 'Unknown 8', - {0x00000200} 'Unknown 9', - {0x00000400} 'Shadow Spotlight', - {0x00000800} 'Shadow Hemisphere', - {0x00001000} 'Shadow OmniDirectional', - {0x00002000} 'Unknown 13', - {0x00004000} 'NonShadow Spotlight', - {0x00008000} 'Non Specular', - {0x00010000} 'Attenuation Only', - {0x00020000} 'NonShadow Box', - {0x00040000} 'Ignore Roughness', - {0x00080000} 'No Rim Lighting', - {0x00100000} 'Ambient Only', - {0x00200000} 'Unknown 21' // only in [001C7F0C] - ])), - wbFloat('Falloff Exponent'), - wbFloat('FOV'), - wbFloat('Near Clip'), - wbStruct('Flicker Effect', [ - wbFloat('Period'), - wbFloat('Intensity Amplitude'), - wbFloat('Movement Amplitude') - ]), - wbFloat('Constant'), - wbFloat('Scalar'), - wbFloat('Exponent'), - wbFloat('God Rays - Near Clip'), - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True, nil, 10), - wbFloat(FNAM, 'Fade value', cpNormal, True), - wbString(NAM0, 'Gobo'), - wbFormIDCk(LNAM, 'Lens', [LENS]), - wbFormIDCk(WGDR, 'God Rays', [GDRY]), - wbFormIDCk(SNAM, 'Sound', [SNDR]) - ], False, nil, cpNormal, False, wbLIGHAfterLoad); -end; - -procedure DefineFO4m; -begin - - wbRecord(LSCR, 'Load Screen', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000400} 10, 'Displays In Main Menu', - {0x00008000} 15, 'No Rotation' - ])), [ - wbEDID, - wbDESCReq, - wbCTDAs, - wbFormIDCk(NNAM, 'Loading Screen NIF', [STAT, SCOL, NULL], False, cpNormal, True), - wbFormIDCk(TNAM, 'Transform', [TRNS]), - wbStruct(ONAM, 'Rotation', [ - wbInteger('Min', itS16), - wbInteger('Max', itS16) - ]), - wbStruct(ZNAM, 'Zoom', [ - wbFloat('Min'), - wbFloat('Max') - ]), - wbString(MOD2, 'Camera Path', 0, cpNormal, False) - ]); - - wbRecord(LTEX, 'Landscape Texture', [ - wbEDID, - wbFormIDCk(TNAM, 'Texture Set', [TXST], False, cpNormal, False), - wbFormIDCk(MNAM, 'Material Type', [MATT, NULL], False, cpNormal, True), - wbStruct(HNAM, 'Havok Data', [ - wbInteger('Friction', itU8), - wbInteger('Restitution', itU8) - ], cpNormal, True), - wbInteger(SNAM, 'Texture Specular Exponent', itU8, nil, cpNormal, True), - wbRArray('Grasses', wbFormIDCk(GNAM, 'Grass', [GRAS])) - ]); - - wbRecord(LVLN, 'Leveled NPC', [ - wbEDID, - wbOBNDReq, - wbLVLD, - wbInteger(LVLM, 'Max Count', itU8), { Always 00 } {Unavailable} - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count', - {0x04} 'Calculate All' {Still picks just one} - ]), cpNormal, True), - wbFormIDCk(LVLG, 'Use Global', [GLOB]), - wbLLCT, - wbRArrayS('Leveled List Entries', - wbRStructExSK([0], [1], 'Leveled List Entry', [ - wbStructExSK(LVLO , [0, 2], [3], 'Base Data', [ - wbInteger('Level', itU16), - wbByteArray('Unused', 2, cpIgnore, false, wbNeverShow), - wbFormIDCk('Reference', [NPC_, LVLN]), - wbInteger('Count', itS16), - wbInteger('Chance None', itU8), - wbByteArray('Unused', 1, cpIgnore, false, wbNeverShow) - ]), - wbCOED - ], []), cpNormal, False, nil, wbLVLOsAfterSet), - wbArrayS(LLKC, 'Filter Keyword Chances', - wbStructSK([0], 'Filter', [ - wbFormIDCk('Keyword', [KYWD]), - wbInteger('Chance', itU32) - ]) - ), - wbMODL - ], False, nil, cpNormal, False, wbLLEAfterLoad, wbLLEAfterSet); - - wbRecord(LVLI, 'Leveled Item', [ - wbEDID, - wbOBNDReq, - wbLVLD, - wbInteger(LVLM, 'Max Count', itU8), { Always 00 } - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count', - {0x04} 'Use All' - ]), cpNormal, True), - wbFormIDCk(LVLG, 'Use Global', [GLOB]), - wbLLCT, - wbRArrayS('Leveled List Entries', - wbRStructExSK([0], [1], 'Leveled List Entry', [ - wbStructExSK(LVLO , [0, 2], [3], 'Base Data', [ - wbInteger('Level', itU16), - wbByteArray('Unused', 2, cpIgnore, false, wbNeverShow), - wbFormIDCk('Reference', sigBaseObjects), - wbInteger('Count', itU16), - wbInteger('Chance None', itU8), - wbByteArray('Unused', 1, cpIgnore, false, wbNeverShow) - ]), - wbCOED - ], []), cpNormal, False, nil, wbLVLOsAfterSet - ), - wbArrayS(LLKC, 'Filter Keyword Chances', - wbStructSK([0], 'Filter', [ - wbFormIDCk('Keyword', [KYWD]), - wbInteger('Chance', itU32) - ]) - ), - wbFormIDCk(LVSG, 'Epic Loot Chance', [GLOB]), - wbLStringKC(ONAM, 'Override Name', 0, cpTranslate) - ], False, nil, cpNormal, False, wbLLEAfterLoad, wbLLEAfterSet); - - wbRecord(LVSP, 'Leveled Spell', [ - wbEDID - ]); - - wbMGEFType := wbInteger('Archetype', itU32, wbEnum([ - {00} 'Value Modifier', - {01} 'Script', - {02} 'Dispel', - {03} 'Cure Disease', - {04} 'Absorb', - {05} 'Dual Value Modifier', - {06} 'Calm', - {07} 'Demoralize', - {08} 'Frenzy', - {09} 'Disarm', - {10} 'Command Summoned', - {11} 'Invisibility', - {12} 'Light', - {13} 'Darkness', - {14} 'Nighteye', - {15} 'Lock', - {16} 'Open', - {17} 'Bound Weapon', - {18} 'Summon Creature', - {19} 'Detect Life', - {20} 'Telekinesis', - {21} 'Paralysis', - {22} 'Reanimate', - {23} 'Soul Trap', - {24} 'Turn Undead', - {25} 'Guide', - {26} 'Unknown 26', - {27} 'Cure Paralysis', - {28} 'Cure Addiction', - {29} 'Cure Poison', - {30} 'Concussion', - {31} 'Stimpack', - {32} 'Accumulate Magnitude', - {33} 'Stagger', - {34} 'Peak Value Modifier', - {35} 'Cloak', - {36} 'Unknown 36', - {37} 'Slow Time', - {38} 'Rally', - {39} 'Enhance Weapon', - {40} 'Spawn Hazard', - {41} 'Etherealize', - {42} 'Banish', - {43} 'Spawn Scripted Ref', - {44} 'Disguise', - {45} 'Damage', - {46} 'Immunity', - {47} 'Permanent Reanimate', - {48} 'Jetpack', - {49} 'Chameleon' - ]), cpNormal, False, nil, wbMGEFArchtypeAfterSet); - - wbMGEFData := wbRStruct('Magic Effect Data', [ - wbStruct(DATA, 'Data', [ - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Hostile', - {0x00000002} 'Recover', - {0x00000004} 'Detrimental', - {0x00000008} 'Snap to Navmesh', - {0x00000010} 'No Hit Event', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unknown 7', - {0x00000080} 'Unknown 8', - {0x00000100} 'Dispel with Keywords', - {0x00000200} 'No Duration', - {0x00000400} 'No Magnitude', - {0x00000800} 'No Area', - {0x00001000} 'FX Persist', - {0x00002000} 'Unknown 14', - {0x00004000} 'Gory Visuals', - {0x00008000} 'Hide in UI', - {0x00010000} 'Unknown 17', - {0x00020000} 'No Recast', - {0x00040000} 'Unknown 19', - {0x00080000} 'Unknown 20', - {0x00100000} 'Unknown 21', - {0x00200000} 'Power Affects Magnitude', - {0x00400000} 'Power Affects Duration', - {0x00800000} 'Unknown 24', - {0x01000000} 'Unknown 25', - {0x02000000} 'Unknown 26', - {0x04000000} 'Painless', - {0x08000000} 'No Hit Effect', - {0x10000000} 'No Death Dispel', - {0x20000000} 'Unknown 30', - {0x40000000} 'Unknown 31', - {0x80000000} 'Unknown 32' - ])), - wbFloat('Base Cost'), - wbUnion('Assoc. Item', wbMGEFAssocItemDecider, [ - wbFormID('Unused', cpIgnore), - wbFormIDCk('Assoc. Item', [LIGH, NULL]), - wbFormIDCk('Assoc. Item', [WEAP, ARMO, NULL]), - wbFormIDCk('Assoc. Item', [NPC_, NULL]), - wbFormIDCk('Assoc. Item', [HAZD, NULL]), - wbFormIDCk('Assoc. Item', [SPEL, NULL]), - wbFormIDCk('Assoc. Item', [RACE, NULL]), - wbFormIDCk('Assoc. Item', [ENCH, NULL]), - wbFormIDCk('Assoc. Item', [KYWD, NULL]) - ], cpNormal, False, nil, wbMGEFAssocItemAfterSet), - wbByteArray('Magic Skill (unused)', 4), - wbFormIDCk('Resist Value', [AVIF, NULL]), - wbInteger('Counter Effect count', itU16), - wbByteArray('Unused', 2), - wbFormIDCk('Casting Light', [LIGH, NULL]), - wbFloat('Taper Weight'), - wbFormIDCk('Hit Shader', [EFSH, NULL]), - wbFormIDCk('Enchant Shader', [EFSH, NULL]), - wbInteger('Minimum Skill Level', itU32), - wbStruct('Spellmaking', [ - wbInteger('Area', itU32), - wbFloat('Casting Time') - ]), - wbFloat('Taper Curve'), - wbFloat('Taper Duration'), - wbFloat('Second AV Weight', cpNormal, False, nil, wbMGEFAV2WeightAfterSet), - wbMGEFType, - wbActorValue, - wbFormIDCk('Projectile', [PROJ, NULL]), - wbFormIDCk('Explosion', [EXPL, NULL]), - wbInteger('Casting Type', itU32, wbCastEnum), - wbInteger('Delivery', itU32, wbTargetEnum), - wbActorValue, //wbInteger('Second Actor Value', itS32, wbActorValueEnum), - wbFormIDCk('Casting Art', [ARTO, NULL]), - wbFormIDCk('Hit Effect Art', [ARTO, NULL]), - wbFormIDCk('Impact Data', [IPDS, NULL]), - wbFloat('Skill Usage Multiplier'), - wbStruct('Dual Casting', [ - wbFormIDCk('Art', [DUAL, NULL]), - wbFloat('Scale') - ]), - wbFormIDCk('Enchant Art', [ARTO, NULL]), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbFormIDCk('Equip Ability', [SPEL, NULL]), - wbFormIDCk('Image Space Modifier', [IMAD, NULL]), - wbFormIDCk('Perk to Apply', [PERK, NULL]), - wbInteger('Casting Sound Level', itU32, wbSoundLevelEnum), - wbStruct('Script Effect AI', [ - wbFloat('Score'), - wbFloat('Delay Time') - ]) - ], cpNormal, True) - ], []); - - wbRecord(MGEF, 'Magic Effect', [ - wbEDID, - wbVMAD, - wbFULL, - wbMDOB, - wbKSIZ, - wbKWDAs, - wbMGEFData, - wbRArrayS('Counter Effects', wbFormIDCk(ESCE, 'Effect', [MGEF]), cpNormal, False, nil, wbCounterEffectsAfterSet), - wbArray(SNDD, 'Sounds', wbStruct('', [ - wbInteger('Type', itU32, wbEnum([ - 'Sheathe/Draw', - 'Charge', - 'Ready', - 'Release', - 'Concentration Cast Loop', - 'On Hit' - ])), - wbFormIDCk('Sound', [SNDR]) - ])), - wbLStringKC(DNAM, 'Magic Item Description', 0, cpTranslate), - wbCTDAs - ], False, nil, cpNormal, False, nil {wbMGEFAfterLoad}, wbMGEFAfterSet); - - wbRecord(MISC, 'Misc. Item', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 11, 'Calc From Components', - {0x00000004} 13, 'Pack-In Use Only' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFULL, - wbMODL, - wbICON, - wbMICO, - wbDEST, - wbYNAM, - wbZNAM, - wbKSIZ, - wbKWDAs, - wbFormID(FIMD, 'Featured Item Message'), - wbStruct(DATA, 'Data', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True), - // the amount of components is the same as size of CDIX, so should not be sorted probably - wbStructs(CVPA, 'Components', 'Component', [ - wbFormIDCk('Component', sigBaseObjects), // CK allows only CMPO - wbInteger('Count', itU32) - ]), - wbArray(CDIX, 'Component Display Indices', wbInteger('Display Index', itU8)) - ], False, nil, cpNormal, False, wbRemoveEmptyKWDA, wbKeywordsAfterSet); - - wbRecord(COBJ, 'Constructible Object', [ - wbEDID, - wbYNAM, - wbZNAM, - wbArrayS(FVPA, 'Components', - wbStructSK([0], 'Component', [ - wbFormIDCk('Component', sigBaseObjects), - wbInteger('Count', itU32) - ]) - ), - wbDESC, - wbCTDAs, - wbFormIDCk(CNAM, 'Created Object', sigBaseObjects), - wbFormIDCk(BNAM, 'Workbench Keyword', [KYWD]), - wbByteArray(NAM1, 'Unused', 0, cpIgnore, False, False, wbNeverShow), // co_PA_FusionCore01 - wbByteArray(NAM2, 'Unused', 0, cpIgnore, False, False, wbNeverShow), // co_PA_FusionCore01 - wbByteArray(NAM3, 'Unused', 0, cpIgnore, False, False, wbNeverShow), // co_PA_FusionCore01 - wbFormIDCk(ANAM, 'Menu Art Object', [ARTO]), - wbArrayS(FNAM, 'Category', wbFormIDCk('Keyword', [KYWD])), - wbStruct(INTV, 'Data', [ - wbInteger('Created Object Count', itU16), - wbInteger('Priority', itU16) - ], cpNormal, False, nil, 1) - ]); - - wbRecord(NPC_, 'Non-Player Character (Actor)', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000400} 10, 'Unknown 10', - {0x00040000} 18, 'Compressed', - {0x00080000} 19, 'Unknown 19', - {0x20000000} 29, 'Bleedout Override' - ]), [18]), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFormIDCk(STCP, 'Unknown', [STAG]), - wbStruct(ACBS, 'Configuration', [ - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Female', - {0x00000002} 'Essential', - {0x00000004} 'Is CharGen Face Preset', - {0x00000008} 'Respawn', - {0x00000010} 'Auto-calc stats', - {0x00000020} 'Unique', - {0x00000040} 'Doesn''t affect stealth meter', - {0x00000080} 'PC Level Mult', - {0x00000100} 'Unknown 8', - {0x00000200} 'Calc For Each Template', - {0x00000400} 'Unknown 10', - {0x00000800} 'Protected', - {0x00001000} 'Unknown 12', - {0x00002000} 'Unknown 13', - {0x00004000} 'Summonable', - {0x00008000} 'Unknown 15', - {0x00010000} 'Doesn''t bleed', - {0x00020000} 'Unknown 17', - {0x00040000} 'Bleedout Override', - {0x00080000} 'Opposite Gender Anims', - {0x00100000} 'Simple Actor', - {0x00200000} 'Unknown 21', - {0x00400000} 'Unknown 22', - {0x00800000} 'No Activation/Hellos', - {0x01000000} 'Diffuse Alpha Test', - {0x02000000} 'Unknown 25', - {0x04000000} 'Unknown 26', - {0x08000000} 'Unknown 27', - {0x10000000} 'Unknown 28', - {0x20000000} 'Is Ghost', - {0x40000000} 'Unknown 30', - {0x80000000} 'Invulnerable' - ])), - wbInteger('XP Value Offset', itS16, nil, cpNormal, True, nil{wbActorTemplateUseStats}), - wbUnion('Level', wbNPCLevelDecider, [ - wbInteger('Level', itS16, nil, cpNormal, True, nil{wbActorTemplateUseStats}), - wbInteger('Level Mult', itS16, wbDiv(1000), cpNormal, True, nil{wbActorTemplateUseStats}) - ], cpNormal, True, nil{wbActorTemplateUseStats}), - wbInteger('Calc min level', itU16, nil, cpNormal, True, nil{wbActorTemplateUseStats}), - wbInteger('Calc max level', itU16, nil, cpNormal, True, nil{wbActorTemplateUseStats}), - wbInteger('Disposition Base', itS16), - wbInteger('Use Template Actors', itU16, wbFlags([ - {0x0001} 'Traits', - {0x0002} 'Stats', - {0x0004} 'Factions', - {0x0008} 'Spell List', - {0x0010} 'AI Data', - {0x0020} 'AI Packages', - {0x0040} 'Model/Animation', - {0x0080} 'Base Data', - {0x0100} 'Inventory', - {0x0200} 'Script', - {0x0400} 'Def Pack List', - {0x0800} 'Attack Data', - {0x1000} 'Keywords' - ])), - wbInteger('Bleedout Override', itU16), - wbByteArray('Unknown', 2) - ], cpNormal, True), - wbRArrayS('Factions', - wbStructSK(SNAM, [0], 'Faction', [ - wbFormIDCk('Faction', [FACT]), - wbInteger('Rank', itS8) - ]), cpNormal, False, nil, nil, nil{wbActorTemplateUseFactions} - ), - wbFormIDCk(INAM, 'Death item', [LVLI], False, cpNormal, False, nil{wbActorTemplateUseTraits}), - wbFormIDCk(VTCK, 'Voice', [VTYP], False, cpNormal, False, nil{wbActorTemplateUseTraits}), - wbFormIDCk(TPLT, 'Default Template', [LVLN, NPC_]), - wbFormIDCk(LTPT, 'Legendary Template', [LVLN, NPC_]), - wbFormIDCk(LTPC, 'Legendary Chance', [GLOB]), - wbStruct(TPTA, 'Template Actors', [ - wbFormIDCk('Traits', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate0), - wbFormIDCk('Stats', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate1), - wbFormIDCk('Factions', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate2), - wbFormIDCk('Spell List', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate3), - wbFormIDCk('AI Data', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate4), - wbFormIDCk('AI Packages', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate5), - wbFormIDCk('Model/Animation', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate6), - wbFormIDCk('Base Data', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate7), - wbFormIDCk('Inventory', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate8), - wbFormIDCk('Script', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate9), - wbFormIDCk('Def Pack List', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate10), - wbFormIDCk('Attack Data', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate11), - wbFormIDCk('Keywords', [LVLN, NPC_, NULL], False, cpNormal, False, wbActorTemplatesUseTemplate12) - ]), - wbFormIDCk(RNAM, 'Race', [RACE], False, cpNormal, True, nil{wbActorTemplateUseTraits}), - wbSPCT, - wbSPLOs, - wbDEST, - wbFormIDCk(WNAM, 'Skin', [ARMO], False, cpNormal, False), - wbFormIDCk(ANAM, 'Far away model', [ARMO], False, cpNormal, False, nil{wbActorTemplateUseTraits}), - wbFormIDCk(ATKR, 'Attack Race', [RACE], False, cpNormal, False), - wbRArrayS('Attacks', wbAttackData), - wbFormIDCk(SPOR, 'Spectator Override Package List', [FLST]), - wbFormIDCk(OCOR, 'Observe Dead Body Override Package List', [FLST]), - wbFormIDCk(GWOR, 'Guard Warn Override Package List', [FLST]), - wbFormIDCk(ECOR, 'Combat Override Package List', [FLST]), - wbFormIDCk(FCPL, 'Follower Command Package List', [FLST]), - wbFormIDCk(RCLR, 'Follower Elevator Package List', [FLST]), - wbInteger(PRKZ, 'Perk Count', itU32, nil, cpBenign), - wbRArrayS('Perks', - wbStructSK(PRKR, [0], 'Perk', [ - wbFormIDCk('Perk', [PERK]), - wbInteger('Rank', itU8) - ]), cpNormal, False, nil, wbPRKRsAfterSet - ), - wbPRPS, - wbFTYP, - wbNTRM, - wbCOCT, - wbCNTOs, - wbAIDT, - wbRArray('Packages', wbFormIDCk(PKID, 'Package', [PACK]), cpNormal, False, nil{wbActorTemplateUseAIPackages}), - wbKSIZ, - wbKWDAs, - wbAPPR, - wbObjectTemplate, - wbFormIDCk(CNAM, 'Class', [CLAS], False, cpNormal, True), - wbFULL, - wbLString(SHRT, 'Short Name', 0, cpTranslate), - wbByteArray(DATA, 'Marker'), - wbStruct(DNAM, '', [ - wbInteger('Unknown', itU16), - wbInteger('Unknown', itU16), - wbInteger('Far Away Model Distance', itU16), - wbInteger('Geared Up Weapons', itU16) - ]), - wbRArrayS('Head Parts', wbFormIDCk(PNAM, 'Head Part', [HDPT]), cpNormal, False, nil, nil, nil{wbActorTemplateUseModelAnimation}), - wbFormIDCk(HCLF, 'Hair Color', [CLFM], False, cpNormal, False), - wbFormIDCk(BCLF, 'Facial Hair Color', [CLFM], False, cpNormal, False), - wbFormIDCk(ZNAM, 'Combat Style', [CSTY], False, cpNormal, False), - wbFormIDCk(GNAM, 'Gift Filter', [FLST], False, cpNormal, False), - wbUnknown(NAM5, cpNormal, True), - wbFloat(NAM6, 'Height Min', cpNormal, True), - wbFloat(NAM7, 'Unused', cpNormal, True), - wbFloat(NAM4, 'Height Max'), - wbStruct(MWGT, 'Weight', [ - wbFloat('Thin'), - wbFloat('Muscular'), - wbFloat('Fat') - ]), - wbInteger(NAM8, 'Sound Level', itU32, wbSoundLevelEnum, cpNormal, True), - wbRStruct('Actor Sounds', [ - wbInteger(CS2H, 'Count', itU32, nil, cpBenign, True), - wbRArrayS('Sounds', - wbRStructSK([0], 'Sound', [ - wbFormIDCk(CS2K, 'Keyword', [KYWD]), - wbFormIDCk(CS2D, 'Sound', [SNDR], False, cpNormal, True) - ], [], cpNormal, False, nil, True), - cpNormal, False, nil, wbNPCActorSoundsAfterSet - ), - wbEmpty(CS2E, 'End Marker', cpNormal, True), - wbByteArray(CS2F, 'Finalize', 1, cpNormal, True) - ], []), - wbFormIDCk(CSCR, 'Inherits Sounds From', [NPC_], False, cpNormal, False), - wbFormIDCk(PFRN, 'Power Armor Stand', [FURN]), - wbFormIDCk(DOFT, 'Default Outfit', [OTFT], False, cpNormal, False), - wbFormIDCk(SOFT, 'Sleeping Outfit', [OTFT], False, cpNormal, False), - wbFormIDCk(DPLT, 'Default Package List', [FLST], False, cpNormal, False), - wbFormIDCk(CRIF, 'Crime Faction', [FACT], False, cpNormal, False), - wbFormIDCk(FTST, 'Head Texture', [TXST], False, cpNormal, False), - wbStruct(QNAM, 'Texture lighting', [ - wbFloat('Red', cpNormal, True, 255, 0), - wbFloat('Green', cpNormal, True, 255, 0), - wbFloat('Blue', cpNormal, True, 255, 0), - wbFloat('Alpha') - ]), - wbArray(MSDK, 'Morph Keys', wbInteger('Key', itU32, wbMorphValueToStr, wbHexStrToInt)), - wbArray(MSDV, 'Morph Values', wbFloat('Value')), - wbRArrayS('Face Tinting Layers', - wbRStructSK([0], 'Layer', [ - wbStructSK(TETI, [1], 'Index', [ - wbInteger('Data Type', itU16, wbEnum(['', 'Value/Color', 'Value'])), - wbInteger('Index', itU16, wbTintLayerToStr, wbStrToInt) - ]), - //wbByteArray(TEND, 'Data') - wbStruct(TEND, 'Data', [ - wbInteger('Value', itU8, wbDiv(100)), - wbByteColors('Color'), - wbInteger('Template Color Index', itS16) - ], cpNormal, True, nil, 1) - ], []) - ), - wbStruct(MRSV, 'Body Morph Region Values', [ - wbFloat('Head'), - wbFloat('Upper Torso'), - wbFloat('Arms'), - wbFloat('Lower Torso'), - wbFloat('Legs') - ]), - // reported to cause issues when sorted - wbRArrayS('Face Morphs', - wbRStructSK([0], 'Face Morph', [ - wbInteger(FMRI, 'Index', itU32, wbFaceMorphToStr, wbHexStrToInt), - //wbArray(FMRS, 'Unknown', wbFloat('Unknown')) - wbStruct(FMRS, 'Values', [ - wbFloat('Position - X'), - wbFloat('Position - Y'), - wbFloat('Position - Z'), - wbFloat('Rotation - X'), - wbFloat('Rotation - Y'), - wbFloat('Rotation - Z'), - wbFloat('Scale'), - wbByteArray('Unknown') - ]) - ], []) - ), - wbFloat(FMIN, 'Facial Morph Intensity'), - wbATTX - ], False, nil, cpNormal, False, wbNPCAfterLoad, wbNPCAfterSet); - - wbPKDTSpecificFlagsUnused := False; - - wbPKDTFlags := wbFlags([ - {0x00000001} 'Offers Services', - {0x00000002} 'Unknown 2', - {0x00000004} 'Must complete', - {0x00000008} 'Maintain Speed at Goal', - {0x00000010} 'Treat As Player Follower', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unlock doors at package start', - {0x00000080} 'Unlock doors at package end', - {0x00000100} 'Request Block Idles', - {0x00000200} 'Continue if PC Near', - {0x00000400} 'Once per day', - {0x00000800} 'Unknown 12', - {0x00001000} 'Skip Load Into Furniture', - {0x00002000} 'Preferred Speed', - {0x00004000} 'Unknown 15', - {0x00008000} 'Unknown 16', - {0x00010000} 'Unknown 17', - {0x00020000} 'Always Sneak', - {0x00040000} 'Allow Swimming', - {0x00080000} 'Unknown 20', - {0x00100000} 'Ignore Combat', - {0x00200000} 'Weapons Unequipped', - {0x00400000} 'Unknown 23', - {0x00800000} 'Weapon Drawn', - {0x01000000} 'Unknown 25', - {0x02000000} 'Unknown 26', - {0x04000000} 'Unknown 27', - {0x08000000} 'No Combat Alert', - {0x10000000} 'Unknown 29', - {0x20000000} 'Wear Sleep Outfit', - {0x40000000} 'Unknown 31', - {0x80000000} 'Unknown 32' - ], [29]); - - wbPKDTInterruptFlags := wbFlags([ - {0x0001} 'Hellos to player', - {0x0002} 'Random conversations', - {0x0004} 'Observe combat behavior', - {0x0008} 'Greet corpse behavior', - {0x0010} 'Reaction to player actions', - {0x0020} 'Friendly fire comments', - {0x0040} 'Aggro Radius Behavior', - {0x0080} 'Allow Idle Chatter', - {0x0100} 'Unknown 9', - {0x0200} 'World Interactions', - {0x0400} 'Off For Important Scene', - {0x0800} 'Unknown 12', - {0x1000} 'Unknown 13', - {0x2000} 'Unknown 14', - {0x4000} 'Unknown 15', - {0x8000} 'Unknown 16' - ]); -end; - - -procedure DefineFO4n; - - function wbTintTemplateGroups(const aName: string): IwbSubRecordArrayDef; - begin - Result := - wbRStructs(aName, 'Group', [ - wbLString(TTGP, 'Group Name', 0, cpTranslate), - wbRStructs('Options', 'Option', [ - wbStruct(TETI, 'Index', [ - wbByteArray('Unknown', 2), - wbInteger('Index', itU16) - ]), - wbLString(TTGP, 'Name', 0, cpTranslate), - wbUnknown(TTEF), - wbCTDAs, - wbRArray('Textures', wbString(TTET, 'Texture')), - wbUnknown(TTEB), - wbArray(TTEC, 'Template Colors', wbStruct('Template Color', [ - wbFormIDCk('Color', [CLFM]), - wbFloat('Alpha'), - wbInteger('Template Index', itU16), - wbByteArray('Unknown', 4) - ])), - wbFloat(TTED, 'Unknown') - ], []), - wbByteArray(TTGE, 'Group End', 4) - ], []); - end; - - function wbMorphGroups(const aName: string): IwbSubRecordArrayDef; - begin - Result := - wbRArray(aName, - wbRStruct('Morph Group', [ - wbString(MPGN, 'Name'), - wbInteger(MPPC, 'Count', itU32, nil, cpBenign), - wbRArray('Morph Presets', - wbRStruct('Morph Preset', [ - wbInteger(MPPI, 'Index', itU32, wbIntToHexStr, wbHexStrToInt), - wbLString(MPPN, 'Name', 0, cpTranslate), - wbString(MPPM, 'Unknown'), - wbFormIDCk(MPPT, 'Texture', [TXST]), - wbUnknown(MPPF) - ], []), - cpNormal, False, nil, wbMorphPresetsAfterSet - ), - wbUnknown(MPPK), - wbUnknown(MPGS) - ], []) - ); - end; - - function wbFaceMorphs(const aName: string): IwbSubRecordArrayDef; - begin - Result := - wbRArray(aName, - wbRStruct('Face Morph', [ - wbInteger(FMRI, 'Index', itU32, wbIntToHexStr, wbHexStrToInt), - wbLString(FMRN, 'Name') - ], []) - ); - end; - -begin - wbUNAMs := wbRArray('Data Inputs', wbRStruct('Data Input', [ - wbInteger(UNAM, 'Index', itS8), - wbString(BNAM, 'Name'), - wbInteger(PNAM, 'Flags', itU32, wbFlags([ - 'Public' - ])) - ], [])); - - wbRecord(PACK, 'Package', [ - wbEDID, - wbVMADFragmentedPACK, - - wbStruct(PKDT, 'Pack Data', [ - wbInteger('General Flags', itU32, wbPKDTFlags), - wbInteger('Type', itU8, wbEnum ([], [ - 18, 'Package', - 19, 'Package Template' - ])), - wbInteger('Interrupt Override', itU8, wbEnum([ - {0} 'None', - {1} 'Spectator', - {2} 'ObserveDead', - {3} 'GuardWarn', - {4} 'Combat', - {5} 'Command Travel', - {6} 'Command Activate', - {7} 'Leave Workstation' - ])), - wbInteger('Preferred Speed', itU8, wbEnum([ - 'Walk', - 'Jog', - 'Run', - 'Fast Walk' - ])), - wbByteArray('Unknown', 1), - wbInteger('Interrupt Flags', itU16, wbPKDTInterruptFlags), - wbByteArray('Unknown', 2) - ], cpNormal, True), - - wbStruct(PSDT, 'Schedule', [ - wbInteger('Month', itS8), - wbInteger('Day of week', itS8, wbEnum([ - 'Sunday', - 'Monday', - 'Tuesday', - 'Wednesday', - 'Thursday', - 'Friday', - 'Saturday', - 'Weekdays', - 'Weekends', - 'Monday, Wednesday, Friday', - 'Tuesday, Thursday' - ], [ - -1, 'Any' - ])), - wbInteger('Date', itU8), - wbInteger('Hour', itS8), - wbInteger('Minute', itS8), - wbByteArray('Unused', 3, cpIgnore), - wbInteger('Duration (minutes)', itS32) - ], cpNormal, True), - - wbCTDAs, - - wbRStruct('Idle Animations', [ - wbInteger(IDLF, 'Flags', itU8, wbEnum([], [ - 0, 'Unknown', - 8, 'Random', - 9, 'Run in Sequence', - 12, 'Random, Do Once', - 13, 'Run in Sequence, Do Once' - ]), cpNormal, True), - wbInteger(IDLC, 'Animation Count', itU8, nil, cpBenign), - wbFloat(IDLT, 'Idle Timer Setting', cpNormal, True), - wbArray(IDLA, 'Animations', wbFormIDCk('Animation', [IDLE]), 0, nil, wbIDLAsAfterSet, cpNormal, True), - wbByteArray(IDLB, 'Unknown', 4, cpIgnore) - ], [], cpNormal, False, nil, False, nil {cannot be totally removed , wbAnimationsAfterSet}), - - wbFormIDCk(CNAM, 'Combat Style', [CSTY]), - wbFormIDCk(QNAM, 'Owner Quest', [QUST]), - wbStruct(PKCU, 'Counter', [ - wbInteger('Data Input Count', itU32), - wbFormIDCk('Package Template', [PACK, NULL]), - wbInteger('Version Counter (autoincremented)', itU32) - ], cpNormal, True), - - wbRStruct('Package Data', [ - wbRArray('Data Input Values', wbRStruct('Value', [ - wbString(ANAM, 'Type'), - wbUnion(CNAM, 'Value', wbPubPackCNAMDecider, [ - {0} wbByteArray('Unknown'), - {1} wbInteger('Bool', itU8, wbBoolEnum), - {2} wbInteger('Integer', itU32), - {3} wbFloat('Float') - ]), - wbUnknown(BNAM), - wbPDTOs, - wbPLDT, - wbStruct(PTDA, 'Target', [wbTargetData]), - wbUnknown(TPIC) - ], [], cpNormal, False)), - wbUNAMs - ], []), - wbByteArray(XNAM, 'Marker'), - - wbRStruct('Procedure Tree', [ - wbRArray('Branches', wbRStruct('Branch', [ - wbString(ANAM, 'Branch Type'), - wbCITC, - wbCTDAsCount, - wbStruct(PRCB, 'Root', [ - wbInteger('Branch Count', itU32), - wbInteger('Flags', itU32, wbFlags([ - 'Repeat when Complete', - 'Unknown 1' - ])) - ]), - wbString(PNAM, 'Procedure Type'), - wbInteger(FNAM, 'Flags', itU32, wbFlags(['Success Completes Package'])), - wbRArray('Data Input Indexes', wbInteger(PKC2, 'Index', itU8)), - {>>> PFO2 should be single, there is only 1 PACK [00095F46] in Skyrim.esm with 2xPFO2 <<<} - wbRArray('Flags Override', - wbStruct(PFO2, 'Data', [ - wbInteger('Set General Flags', itU32, wbPKDTFlags), - wbInteger('Clear General Flags', itU32, wbPKDTFlags), - wbInteger('Set Interrupt Flags', itU16, wbPKDTInterruptFlags), - wbInteger('Clear Interrupt Flags', itU16, wbPKDTInterruptFlags), - wbInteger('Preferred Speed Override', itU8, wbEnum([ - 'Walk', - 'Jog', - 'Run', - 'Fast Walk' - ])), - wbByteArray('Unknown', 3) - ]) - ), - wbRArray('Unknown', wbUnknown(PFOR), cpIgnore) - ], [], cpNormal, False, nil, False, nil, wbConditionsAfterSet)) - ], []), - wbUNAMs, - wbRStruct('OnBegin', [ - wbEmpty(POBA, 'OnBegin Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbPDTOs - ], []), - wbRStruct('OnEnd', [ - wbEmpty(POEA, 'OnEnd Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbPDTOs - ], []), - wbRStruct('OnChange', [ - wbEmpty(POCA, 'OnChange Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbPDTOs - ], []) - ], False, nil, cpNormal, False, nil {wbPACKAfterLoad}); - - wbQUSTAliasFlags := - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - {0x00000001} 'Reserves Location/Reference', - {0x00000002} 'Optional', - {0x00000004} 'Quest Object', - {0x00000008} 'Allow Reuse in Quest', - {0x00000010} 'Allow Dead', - {0x00000020} 'Matching Ref - In Loaded Area', - {0x00000040} 'Essential', - {0x00000080} 'Allow Disabled', - {0x00000100} 'Stores Text', - {0x00000200} 'Allow Reserved', - {0x00000400} 'Protected', - {0x00000800} 'Forced by Aliases', - {0x00001000} 'Allow Destroyed', - {0x00002000} 'Matching Ref - Closest', - {0x00004000} 'Uses Stored Text', - {0x00008000} 'Initially Disabled', - {0x00010000} 'Allow Cleared', - {0x00020000} 'Clear Names When Removed', - {0x00040000} 'Matching Ref - Actors Only', - {0x00080000} 'Create Ref - Temp', - {0x00100000} 'External Alias - Linked', - {0x00200000} 'No Pickpocket', - {0x00400000} 'Can Apply Data To Non-Aliased Refs', - {0x00800000} 'Is Companion', - {0x01000000} 'Optional All Scenes' - ])); - - wbRecord(QUST, 'Quest', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00004000} 14, 'Partial Form' // Allows the Record to inherit some subrecords from its master - ])), [ - wbEDID, - wbVMADFragmentedQUST, - wbFULL, - wbStruct(DNAM, 'General', [ - wbInteger('Flags', itU16, wbFlags([ - {0x0001} 'Start Game Enabled', - {0x0002} 'Unknown 2', - {0x0004} 'Add Idle Topic To Hello', - {0x0008} 'Allow repeated stages', - {0x0010} 'Unknown 5', - {0x0020} 'Unknown 6', - {0x0040} 'Unknown 7', - {0x0080} 'Unknown 8', - {0x0100} 'Run Once', - {0x0200} 'Exclude from dialogue export', - {0x0400} 'Warn on alias fill failure', - {0x0800} 'Unknown 12', - {0x1000} 'Unknown 13' - ])), - wbInteger('Priority', itU8), - wbInteger('Form Version', itU8, nil, cpIgnore), - wbByteArray('Unknown', 4), - wbInteger('Type', itU32, wbEnum([ - {0} 'None', - {1} 'Main Quest', - {2} 'Brotherhood of Steel', - {3} 'Institute', - {4} 'Minutemen', - {5} 'Railroad', - {6} 'Miscellaneous', - {7} 'Side Quests', - {8} 'DLC01', - {9} 'DLC02', - {10} 'DLC03', - {11} 'DLC04', - {12} 'DLC05', - {13} 'DLC06', - {14} 'DLC07' - ])) - ]), - wbString(ENAM, 'Event', 4), - wbFormIDCk(LNAM, 'Location', [LCTN]), - wbFormIDCk(XNAM, 'Quest Completion XP', [GLOB]), - wbRArray('Text Display Globals', wbFormIDCk(QTGL, 'Global', [GLOB])), - wbFLTR, - wbRStruct('Quest Dialogue Conditions', [wbCTDAs], [], cpNormal, False), - wbEmpty(NEXT, 'Marker'), - wbCTDAs, {>>> Unknown, doesn't show up in CK <<<} - wbRArrayS('Stages', wbRStructSK([0], 'Stage', [ - wbStructSK(INDX, [0], 'Stage Index', [ - wbInteger('Stage Index', itU16), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Unknown 1', - {0x02} 'Run On Start', - {0x04} 'Run On Stop', - {0x08} 'Keep Instance Data From Here On' - ])), - wbInteger('Unknown', itU8) - ]), - wbRArray('Log Entries', wbRStruct('Log Entry', [ - wbInteger(QSDT, 'Stage Flags', itU8, wbFlags([ - {0x01} 'Complete Quest', - {0x02} 'Fail Quest' - ])), - wbCTDAs, - wbString(NAM2, 'Note'), - wbLString(CNAM, 'Log Entry', 0, cpTranslate), - wbFormIDCk(NAM0, 'Next Quest', [QUST]) - ], [])) - ], [])), - wbRArray('Objectives', wbRStruct('Objective', [ - wbInteger(QOBJ, 'Objective Index', itU16), - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - {0x01} 'ORed With Previous', - {0x02} 'No Stats Tracking' - ])), - wbLString(NNAM, 'Display Text', 0, cpTranslate, True), - wbRArray('Targets', wbRStruct('Target', [ - wbStruct(QSTA, 'Target', [ - wbInteger('Alias', itS32, wbQuestAliasToStr, wbStrToAlias), - wbInteger('Flags', itU32, wbFlags([ - {0x01} 'Compass Marker Ignores Locks', - {0x02} 'Hostile', - {0x04} 'Use Straight Line Pathing' - ])), - wbFormIDCk('Keyword', [KYWD, NULL]) - ]), - wbCTDAs - ], [])) - ], [])), - - wbByteArray(ANAM, 'Aliases Marker', 4), - - wbRArray('Aliases', - wbRUnion('Alias', [ - - // Reference Alias - wbRStruct('Alias', [ - wbInteger(ALST, 'Reference Alias ID', itU32), - wbString(ALID, 'Alias Name'), - wbQUSTAliasFlags, - wbInteger(ALFI, 'Force Into Alias When Filled', itS32, wbQuestAliasToStr, wbStrToAlias), - //wbFormIDCk(ALFL, 'Specific Location', [LCTN]), - wbFormID(ALFR, 'Forced Reference'), - wbFormIDCk(ALUA, 'Unique Actor', [NPC_]), - wbRStruct('Location Alias Reference', [ - wbInteger(ALFA, 'Alias', itS32, wbQuestAliasToStr, wbStrToAlias), - wbFormIDCk(KNAM, 'Keyword', [KYWD]), - wbFormIDCk(ALRT, 'Ref Type', [LCRT]) - ], []), - wbRStruct('External Alias Reference', [ - wbFormIDCk(ALEQ, 'Quest', [QUST]), - wbInteger(ALEA, 'Alias', itS32, wbQuestExternalAliasToStr, wbStrToAlias) - ], []), - wbRStruct('Create Reference to Object', [ - wbFormID(ALCO, 'Object'), - wbStruct(ALCA, 'Alias', [ - wbInteger('Alias', itS16, wbQuestAliasToStr, wbStrToAlias), - wbInteger('Create', itU16, wbEnum([] ,[ - $0000, 'At', - $8000, 'In' - ])) - ]), - wbInteger(ALCL, 'Level', itU32, wbEnum([ - 'Easy', - 'Medium', - 'Hard', - 'Very Hard', - 'None' - ])) - ], []), - wbRStruct('Find Matching Reference Near Alias', [ - wbInteger(ALNA, 'Alias', itS32, wbQuestAliasToStr, wbStrToAlias), - wbInteger(ALNT, 'Type', itU32, wbEnum([ - 'Linked From', - 'Linked Ref' - ])) - ], []), - wbRStruct('Find Matching Reference From Event', [ - wbString(ALFE, 'From Event', 4), - wbByteArray(ALFD, 'Event Data') - ], []), - wbInteger(ALCC, 'Closest To Alias', itS32, wbQuestAliasToStr, wbStrToAlias), - wbCTDAs, - wbKSIZ, - wbKWDAs, - wbCOCT, - wbCNTOs, - wbFormIDCk(SPOR, 'Spectator override package list', [FLST], False, cpNormal, False), - wbFormIDCk(OCOR, 'Observe dead body override package list', [FLST], False, cpNormal, False), - wbFormIDCk(GWOR, 'Guard warn override package list', [FLST], False, cpNormal, False), - wbFormIDCk(ECOR, 'Combat override package list', [FLST], False, cpNormal, False), - wbArray(ALLA, 'Linked Aliases', wbStruct('Linked Alias', [ - wbFormIDCk('Keyword', [KYWD, NULL]), - wbInteger('Alias', itS32, wbQuestAliasToStr, wbStrToAlias) - ])), - wbFormIDCk(ALDN, 'Display Name', [MESG]), - wbFormIDCk(ALFV, 'Forced Voice', [VTYP]), - wbFormIDCk(ALDI, 'Death Item', [LVLI]), - wbRArrayS('Alias Spells', wbFormIDCk(ALSP, 'Spell', [SPEL])), - wbRArrayS('Alias Factions', wbFormIDCk(ALFC, 'Faction', [FACT])), - wbRArray('Alias Package Data', wbFormIDCk(ALPC, 'Package', [PACK])), - wbFormIDCk(VTCK, 'Voice Types', [NPC_, FACT, FLST, VTYP, NULL]), - wbEmpty(ALED, 'Alias End', cpNormal, True) - ], [], cpNormal, False, nil, False, nil, wbContainerAfterSet), - - // Location Alias - wbRStruct('Alias', [ - wbInteger(ALLS, 'Location Alias ID', itU32), - wbString(ALID, 'Alias Name'), - wbQUSTAliasFlags, - wbInteger(ALFI, 'Force Into Alias When Filled', itS32, wbQuestAliasToStr, wbStrToAlias), - wbFormIDCk(ALFL, 'Specific Location', [LCTN]), - wbRStruct('Reference Alias Location', [ - wbInteger(ALFA, 'Alias', itS32, wbQuestAliasToStr, wbStrToAlias), - wbFormIDCk(KNAM, 'Keyword', [KYWD]) - ], []), - wbRStruct('External Alias Location', [ - wbFormIDCk(ALEQ, 'Quest', [QUST]), - wbInteger(ALEA, 'Alias', itS32, wbQuestExternalAliasToStr, wbStrToAlias) - ], []), - wbRStruct('Find Matching Location From Event', [ - wbString(ALFE, 'From Event', 4), - wbByteArray(ALFD, 'Event Data') - ], []), - wbCTDAs, - wbInteger(ALCC, 'Closest To Alias', itS32, wbQuestAliasToStr, wbStrToAlias), - wbEmpty(ALED, 'Alias End', cpNormal, True) - ], []), - - // Ref Collection Alias - wbRStruct('Alias', [ - wbInteger(ALCS, 'Collection Alias ID', itU32), - wbInteger(ALMI, 'Max Initial Fill Count', itU8) - ], []) - - ], []) - ), - - wbString(NNAM, 'Description', 0, cpTranslate, False), - wbFormIDCk(GNAM, 'Quest Group', [KYWD]), - wbString(SNAM, 'SWF File') - ]); - - wbBodyPartIndexEnum := wbEnum([ - 'Body Texture' - ]); - - wbPhonemeTargets := wbStruct(PHWT, 'Phoneme Target Weight', [ - wbFloat('Aah / LipBigAah'), - wbFloat('BigAah / LipDST'), - wbFloat('BMP / LipEee'), - wbFloat('ChJsh / LipFV'), - wbFloat('DST / LipK'), - wbFloat('Eee / LipL'), - wbFloat('Eh / LipR'), - wbFloat('FV / LipTh'), - wbFloat('I'), - wbFloat('K'), - wbFloat('N'), - wbFloat('Oh'), - wbFloat('OohQ'), - wbFloat('R'), - wbFloat('TH'), - wbFloat('W'), - wbUnknown - ], cpNormal, False, nil, 1); // only a single value in HandyRace - - wbPHWT := wbRStruct('FaceFX Phonemes', [ - wbRStruct('IY', [wbPhonemeTargets], []), - wbRStruct('IH', [wbPhonemeTargets], []), - wbRStruct('EH', [wbPhonemeTargets], []), - wbRStruct('EY', [wbPhonemeTargets], []), - wbRStruct('AE', [wbPhonemeTargets], []), - wbRStruct('AA', [wbPhonemeTargets], []), - wbRStruct('AW', [wbPhonemeTargets], []), - wbRStruct('AY', [wbPhonemeTargets], []), - wbRStruct('AH', [wbPhonemeTargets], []), - wbRStruct('AO', [wbPhonemeTargets], []), - wbRStruct('OY', [wbPhonemeTargets], []), - wbRStruct('OW', [wbPhonemeTargets], []), - wbRStruct('UH', [wbPhonemeTargets], []), - wbRStruct('UW', [wbPhonemeTargets], []), - wbRStruct('ER', [wbPhonemeTargets], []), - wbRStruct('AX', [wbPhonemeTargets], []), - wbRStruct('S', [wbPhonemeTargets], []), - wbRStruct('SH', [wbPhonemeTargets], []), - wbRStruct('Z', [wbPhonemeTargets], []), - wbRStruct('ZH', [wbPhonemeTargets], []), - wbRStruct('F', [wbPhonemeTargets], []), - wbRStruct('TH', [wbPhonemeTargets], []), - wbRStruct('V', [wbPhonemeTargets], []), - wbRStruct('DH', [wbPhonemeTargets], []), - wbRStruct('M', [wbPhonemeTargets], []), - wbRStruct('N', [wbPhonemeTargets], []), - wbRStruct('NG', [wbPhonemeTargets], []), - wbRStruct('L', [wbPhonemeTargets], []), - wbRStruct('R', [wbPhonemeTargets], []), - wbRStruct('W', [wbPhonemeTargets], []), - wbRStruct('Y', [wbPhonemeTargets], []), - wbRStruct('HH', [wbPhonemeTargets], []), - wbRStruct('B', [wbPhonemeTargets], []), - wbRStruct('D', [wbPhonemeTargets], []), - wbRStruct('JH', [wbPhonemeTargets], []), - wbRStruct('G', [wbPhonemeTargets], []), - wbRStruct('P', [wbPhonemeTargets], []), - wbRStruct('T', [wbPhonemeTargets], []), - wbRStruct('K', [wbPhonemeTargets], []), - wbRStruct('CH', [wbPhonemeTargets], []), - wbRStruct('SIL', [wbPhonemeTargets], []), - wbRStruct('SHOTSIL', [wbPhonemeTargets], []), - wbRStruct('FLAP', [wbPhonemeTargets], []) - ], []); - - wbHeadPart := wbRStructSK([0], 'Head Part', [ - wbInteger(INDX, 'Head Part Number', itU32), - wbFormIDCk(HEAD, 'Head', [HDPT, NULL]) - ], []); - - wbRaceRBPC := - wbArray(RBPC, 'Biped Object Conditions', - wbUnion('Slot 30+', wbFormVer78Decider, [ - wbInteger('Slot 30+', itU32), - wbFormIDCk('Slot 30+', [AVIF, NULL]) - ]) - ); - // since version 78: array of pair of AVIF FormID, before array of AVIF index. Similar to DamageType (and MGEF also somehow). - {wbUnion(RBPC, 'Biped Object Conditions', wbFormVer78Decider, [ - wbArray('Biped Object Conditions', wbInteger('Condition AV', itU32)), - wbArray('Biped Object Conditions', wbStruct('Condition AV', [ - wbFormIDck('AVIF 1', [AVIF, NULL]), - wbFormIDck('AVIF 2', [AVIF, NULL]) - ])) - ]);} - - wbRecord(RACE, 'Race', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00080000} 19, 'Unknown 19' - ])), [ - wbEDID, - wbFormIDCk(STCP, 'Sound', [STAG]), - wbFULL, - wbDESCReq, - wbSPCT, - wbSPLOs, - wbFormIDCk(WNAM, 'Skin', [ARMO, NULL]), - wbBOD2, - wbKSIZ, - wbKWDAs, - wbPRPS, - wbAPPR, - wbStruct(DATA, 'Data', [ - wbFloat('Male Height'), - wbFloat('Female Height'), - wbStruct('Male Default Weight', [ - wbFloat('Thin'), - wbFloat('Muscular'), - wbFloat('Fat') - ]), - wbStruct('Female Default Weight', [ - wbFloat('Thin'), - wbFloat('Muscular'), - wbFloat('Fat') - ]), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Playable', - {0x00000002} 'FaceGen Head', - {0x00000004} 'Child', - {0x00000008} 'Tilt Front/Back', - {0x00000010} 'Tilt Left/Right', - {0x00000020} 'No Shadow', - {0x00000040} 'Swims', - {0x00000080} 'Flies', - {0x00000100} 'Walks', - {0x00000200} 'Immobile', - {0x00000400} 'Not Pushable', - {0x00000800} 'No Combat In Water', - {0x00001000} 'No Rotating to Head-Track', - {0x00002000} 'Don''t Show Blood Spray', - {0x00004000} 'Don''t Show Blood Decal', - {0x00008000} 'Uses Head Track Anims', - {0x00010000} 'Spells Align w/Magic Node', - {0x00020000} 'Use World Raycasts For FootIK', - {0x00040000} 'Allow Ragdoll Collision', - {0x00080000} 'Regen HP In Combat', - {0x00100000} 'Can''t Open Doors', - {0x00200000} 'Allow PC Dialogue', - {0x00400000} 'No Knockdowns', - {0x00800000} 'Allow Pickpocket', - {0x01000000} 'Always Use Proxy Controller', - {0x02000000} 'Don''t Show Weapon Blood', - {0x04000000} 'Overlay Head Part List', {>>>Only one can be active<<<} - {0x08000000} 'Override Head Part List', {>>>Only one can be active<<<} - {0x10000000} 'Can Pickup Items', - {0x20000000} 'Allow Multiple Membrane Shaders', - {0x40000000} 'Can Dual Wield', - {0x80000000} 'Avoids Roads' - ])), - wbFloat('Acceleration Rate'), - wbFloat('Deceleration Rate'), - wbInteger('Size', itU32, wbEnum([ - 'Small', - 'Medium', - 'Large', - 'Extra Large' - ])), - wbByteArray('Unknown', 8), - wbFloat('Injured Health Pct'), - wbInteger('Shield Biped Object', itS32, wbBipedObjectEnum), - wbInteger('Beard Biped Object', itS32, wbBipedObjectEnum), - wbInteger('Body Biped Object', itS32, wbBipedObjectEnum), - wbFloat('Aim Angle Tolerance'), - wbFloat('Flight Radius'), - wbFloat('Angular Acceleration Rate'), - wbFloat('Angular Tolerance'), - wbInteger('Flags 2', itU32, wbFlags([ - {0x00000001} 'Use Advanced Avoidance', - {0x00000002} 'Non-Hostile', - {0x00000004} 'Floats', - {0x00000008} 'Unknown 3', - {0x00000010} 'Unknown 4', - {0x00000020} 'Head Axis Bit 0', - {0x00000040} 'Head Axis Bit 1', - {0x00000080} 'Can Melee When Knocked Down', - {0x00000100} 'Use Idle Chatter During Combat', - {0x00000200} 'Ungendered', - {0x00000400} 'Can Move When Knocked Down', - {0x00000800} 'Use Large Actor Pathing', - {0x00001000} 'Use Subsegmented Damage', - {0x00002000} 'Flight - Defer Kill', - {0x00004000} 'Unknown 14', - {0x00008000} 'Flight - Allow Procedural Crash Land', - {0x00010000} 'Disable Weapon Culling', - {0x00020000} 'Use Optimal Speeds', - {0x00040000} 'Has Facial Rig', - {0x00080000} 'Can Use Crippled Limbs', - {0x00100000} 'Use Quadruped Controller', - {0x00200000} 'Low Priority Pushable', - {0x00400000} 'Cannot Use Playable Items' - ])), - wbByteArray('Unknown', 36), - wbInteger('Pipboy Biped Object', itS32, wbBipedObjectEnum), - wbInteger('XP Value', itS16), - wbFloat('Severable - Debris Scale'), - wbInteger('Severable - Debris Count', itU8), - wbInteger('Severable - Decal Count', itU8), - wbFloat('Explodable - Debris Scale'), - wbInteger('Explodable - Debris Count', itU8), - wbInteger('Explodable - Decal Count', itU8), - wbFormIDCk('Severable - Explosion', [EXPL, NULL]), - wbFormIDCk('Severable - Debris', [DEBR, NULL]), - wbFormIDCk('Severable - Impact DataSet', [IPDS, NULL]), - wbFormIDCk('Explodable - Explosion', [EXPL, NULL]), - wbFormIDCk('Explodable - Debris', [DEBR, NULL]), - wbFormIDCk('Explodable - Impact DataSet', [IPDS, NULL]), - wbFloat('OnCripple - Debris Scale'), - wbInteger('OnCripple - Debris Count', itU8), - wbInteger('OnCripple - Decal Count', itU8), - wbFormIDCk('OnCripple - Explosion', [EXPL, NULL]), - wbFormIDCk('OnCripple - Debris', [DEBR, NULL]), - wbFormIDCk('OnCripple - Impact DataSet', [IPDS, NULL]), - wbFormIDCk('Explodable - Subsegment Explosion', [EXPL, NULL]), - wbFloat('Orientation Limits - Pitch'), - wbFloat('Orientation Limits - Roll') - ], cpNormal, True), - - wbEmpty(MNAM, 'Male Marker'), - wbString(ANAM, 'Male Skeletal Model'), - wbMODT, - wbEmpty(FNAM, 'Female Marker'), - wbString(ANAM, 'Female Skeletal Model'), - wbMODT, - wbEmpty(NAM2, 'Marker NAM2 #1'), - wbRArrayS('Movement Type Names', wbString(MTNM, 'Name')), - wbArray(VTCK, 'Voices', wbFormIDCk('Voice', [VTYP]), ['Male', 'Female'], cpNormal, True), - //wbArray(DNAM, 'Decapitate Armors', wbFormIDCk('Decapitate Armor', [NULL, ARMO]), ['Male', 'Female'], cpNormal, False), - wbArray(HCLF, 'Default Hair Colors', wbFormIDCk('Default Hair Color', [NULL, CLFM]), ['Male', 'Female'], cpNormal, False), - wbInteger(TINL, 'Total Number of Tints in List', itU16, nil, nil, cpNormal, False), {>>> Needs Count Updated <<<} - wbFloat(PNAM, 'FaceGen - Main clamp', cpNormal, True), - wbFloat(UNAM, 'FaceGen - Face clamp', cpNormal, True), - - wbFormIDCk(ATKR, 'Attack Race', [RACE], False, cpNormal, False), - wbRArrayS('Attacks', wbAttackData), - - wbRStruct('Body Data', [ - wbEmpty(NAM1, 'Body Data Marker', cpNormal, True), - wbRStruct('Male Body Data', [ - wbEmpty(MNAM, 'Male Data Marker'), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbBodyPartIndexEnum), - wbMODL - ], []), cpNormal, True) - ], [], cpNormal, True), - wbRStruct('Female Body Data', [ - wbEmpty(FNAM, 'Female Data Marker', cpNormal, True), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbBodyPartIndexEnum), - wbMODL - ], []), cpNormal, True) - ], [], cpNormal, True) - ], [], cpNormal, True), - wbFormIDCk(GNAM, 'Body Part Data', [BPTD]), - - wbEmpty(NAM2, 'Marker NAM2 #2', cpNormal), - wbEmpty(NAM3, 'Marker NAM3 #3', cpNormal, True), - wbRStruct('Male Behavior Graph', [ - wbEmpty(MNAM, 'Male Data Marker'), - wbMODL - ], [], cpNormal, True), - wbRStruct('Female Behavior Graph', [ - wbEmpty(FNAM, 'Female Data Marker', cpNormal, True), - wbMODL - ], [], cpNormal, True), - - wbFormIDCk(NAM4, 'Impact Material Type', [MATT]), - wbFormIDCk(NAM5, 'Impact Data Set', [IPDS]), - wbFormIDCk(NAM7, 'Dismember Blood Art', [ARTO]), - wbFormIDCk(CNAM, 'Meat Cap TextureSet', [TXST]), - wbFormIDCk(NAM2, 'Collar TextureSet', [TXST]), - wbFormIDCk(ONAM, 'Sound - Open Corpse', [SNDR]), - wbFormIDCk(LNAM, 'Sound - Close Corpse', [SNDR]), - wbRArray('Biped Object Names', wbString(NAME, 'Name')), - wbRaceRBPC, - wbRArrayS('Movement Data Overrides', wbRStructSK([0], 'Override', [ - wbFormIDCk(MTYP, 'Movement Type', [MOVT]), - wbSPED - ], [])), - wbInteger(VNAM, 'Equipment Flags', itU32, wbEquipType), - wbRArray('Equip Slots', - wbRStruct('Equip Slot', [ - wbFormIDCk(QNAM, 'Equip Slot', [EQUP]), - wbString(ZNAM, 'Node') - ], []) - ), - wbFormIDCk(UNWP, 'Unarmed Weapon', [WEAP]), - - wbRArray('Phoneme Target Names', wbString(PHTN, 'Name')), - wbPHWT, - - wbFormIDCk(WKMV, 'Base Movement Defaults - Default', [MOVT]), - wbFormIDCk(SWMV, 'Base Movement Defaults - Swim', [MOVT]), - wbFormIDCk(FLMV, 'Base Movement Defaults - Fly', [MOVT]), - wbFormIDCk(SNMV, 'Base Movement Defaults - Sneak', [MOVT]), - - // Male head - wbEmpty(NAM0, 'Head Data Marker'), - wbEmpty(MNAM, 'Male Data Marker'), - wbStruct(NNAM, 'Male Neck Fat Adjustments Scale', [ - wbByteArray('Unknown', 4), - wbFloat('X'), - wbFloat('Y') - ]), - wbRArrayS('Male Head Parts', wbHeadPart), - wbRArray('Male Race Presets', wbFormIDCk(RPRM, 'Preset NPC', [NPC_, NULL])), - wbRArray('Male Hair Colors', wbFormIDCk(AHCM, 'Hair Color', [CLFM, NULL])), - wbRArrayS('Male Face Details', wbFormIDCk(FTSM, 'Texture Set', [TXST, NULL])), - wbFormIDCk(DFTM, 'Male Default Face Texture', [TXST]), - wbTintTemplateGroups('Male Tint Layers'), - wbMorphGroups('Male Morph Groups'), - wbFaceMorphs('Male Face Morphs'), - wbString(WMAP, 'Male Wrinkle Map Path'), - - // Female head - wbEmpty(NAM0, 'Head Data Marker'), - wbEmpty(FNAM, 'Female Data Marker'), - wbStruct(NNAM, 'Female Neck Fat Adjustments Scale', [ - wbByteArray('Unknown', 4), - wbFloat('X'), - wbFloat('Y') - ]), - wbRArrayS('Female Head Parts', wbHeadPart), - wbRArray('Female Race Presets', wbFormIDCk(RPRF, 'Preset NPC', [NPC_, NULL])), - wbRArray('Female Hair Colors', wbFormIDCk(AHCF, 'Hair Color', [CLFM, NULL])), - wbRArrayS('Female Face Details', wbFormIDCk(FTSF, 'Texture Set', [TXST, NULL])), - wbFormIDCk(DFTF, 'Female Default Face Texture', [TXST]), - wbTintTemplateGroups('Female Tint Layers'), - wbMorphGroups('Female Morph Groups'), - wbFaceMorphs('Female Face Morphs'), - wbString(WMAP, 'Female Wrinkle Map Path'), - - wbFormIDCk(NAM8, 'Morph Race', [RACE]), - wbFormIDCk(RNAM, 'Armor Race', [RACE]), - wbFormIDCk(SRAC, 'Subgraph Template Race', [RACE]), - wbFormIDCk(SADD, 'Subgraph Additive Race', [RACE]), - wbRArray('Subgraph Data', - wbRStruct('Data', [ - wbString(SGNM, 'Behaviour Graph'), - wbRArray('Actor Keywords', wbFormIDCk(SAKD, 'Keyword', [KYWD])), - wbRArray('Target Keywords', wbFormIDCk(STKD, 'Keyword', [KYWD])), - wbRArray('Animation Paths', wbString(SAPT, 'Path'), cpNormal, True), - // Values greater than $10000 sets a bool. Reading this "closes" the current record. - wbStruct(SRAF, 'Flags', [ - wbInteger('Role', itU16, wbEnum([ - {0} 'MT', - {1} 'Weapon', - {2} 'Furniture', - {3} 'Idle', - {4} 'Pipboy' - ])), - wbInteger('Perspective', itU16, wbEnum([ - '3rd', - '1st' - ])) - ], cpNormal, True) - ], [], cpNormal, False, nil, True) - ), - wbFloat(PTOP, 'Idle Chatter Time Min'), - wbFloat(NTOP, 'Idle Chatter Time Max'), - wbRArray('Morph Values', - wbRStruct('Value', [ - wbInteger(MSID, 'Index', itU32, wbIntToHexStr, wbHexStrToInt), - wbString(MSM0, 'Min Name'), - wbString(MSM1, 'Max Name') - ], []) - ), - wbUnknown(MLSI), - wbString(HNAM, 'Hair Color Lookup Texture'), - wbString(HLTX, 'Hair Color Extended Lookup Texture'), - wbFormIDCk(QSTI, 'Dialogue Quest', [QUST]), - wbBSMPSequence - ], False, nil, cpNormal, False, nil, wbRACEAfterSet); - - - wbRecord(REFR, 'Placed Object', wbFormaterUnion(wbREFRRecordFlagsDecider, [ - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000010} 4, 'Ground Piece', - {0x00000100} 8, 'LOD Respects Enable State', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Is Full LOD', - {0x04000000} 26, 'Filter (Collision Geometry)', - {0x08000000} 27, 'Bounding Box (Collision Geometry)', - {0x10000000} 28, 'Reflected By Auto Water', - {0x40000000} 30, 'Ground', - {0x80000000} 31, 'Multibound' - ], True, True)), - {ACTI STAT SCOL TREE} wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000010} 4, 'Ground Piece', - {0x00000100} 8, 'LOD Respects Enable State', - {0x00000200} 9, 'Hidden From Local Map', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00008000} 15, 'Visible when distant', - {0x00010000} 16, 'Is Full LOD', - {0x04000000} 26, 'Filter (Collision Geometry)', - {0x08000000} 27, 'Bounding Box (Collision Geometry)', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn', - {0x80000000} 31, 'Multibound' - ], True, True)), - {CONT TERM} wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000010} 4, 'Ground Piece', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Is Full LOD', - {0x02000000} 25, 'No AI Acquire', - {0x04000000} 26, 'Filter (Collision Geometry)', - {0x08000000} 27, 'Bounding Box (Collision Geometry)', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'Ground', - {0x80000000} 31, 'Multibound' - ], True, True)), - {DOOR} wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Minimal Use Door', - {0x00000040} 6, 'Hidden From Local Map', - {0x00000100} 8, 'Inaccessible', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Is Full LOD', - {0x04000000} 26, 'Filter (Collision Geometry)', - {0x08000000} 27, 'Bounding Box (Collision Geometry)', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn', - {0x80000000} 31, 'Multibound' - ], True, True)), - {LIGH} wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000100} 8, 'Doesn''t Light Water', - {0x00000200} 9, 'Casts Shadows', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Never Fades', - {0x00020000} 17, 'Doesn''t Light Landscape', - {0x02000000} 25, 'No AI Acquire', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn', - {0x80000000} 31, 'Multibound' - ], True, True)), - {MSTT} wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000010} 4, 'Ground Piece', - {0x00000200} 9, 'Motion Blur', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Is Full LOD', - {0x04000000} 26, 'Filter (Collision Geometry)', - {0x08000000} 27, 'Bounding Box (Collision Geometry)', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn', - {0x80000000} 31, 'Multibound' - ], True, True)), - {ADDN} wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Is Full LOD', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn', - {0x80000000} 31, 'Multibound' - ], True, True)), - {ALCH BOOK SCRL AMMO ARMO INGR KEYM MISC FURN WEAP} - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000010} 4, 'Ground Piece', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Is Full LOD', - {0x02000000} 25, 'No AI Acquire', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn', - {0x80000000} 31, 'Multibound' - ], True, True)) - ]), [ - wbEDID, - wbVMAD, - wbFormIDCk(NAME, 'Base', sigBaseObjects, False, cpNormal, True), - - {--- Bound Contents ---} - {--- Bound Data ---} - wbStruct(XMBO, 'Bound Half Extents', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - - {--- Primitive ---} - wbStruct(XPRM, 'Primitive', [ - wbStruct('Bounds', [ - wbFloat('X', cpNormal, True, 2, 4), - wbFloat('Y', cpNormal, True, 2, 4), - wbFloat('Z', cpNormal, True, 2, 4) - ]), - wbFloatColors('Color'), - wbFloat('Unknown'), - wbInteger('Type', itU32, wbEnum([ - 'None', - 'Box', - 'Sphere', - 'Plane', - 'Line', - 'Ellipsoid' - ])) - ]), - - wbArray(XPOD, 'Portal Data', wbStruct('References', [ - wbFormIDCk('Origin', [REFR, NULL]), - wbFormIDCk('Destination', [REFR, NULL]) - ])), - - wbUnknown(XORD), - - wbStruct(XOCP, 'Occlusion Plane Data', [ - wbStruct('Size', [ - wbFloat('Width', cpNormal, False, 2), - wbFloat('Height', cpNormal, False, 2) - ]), - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation (Quaternion?)', [ - wbFloat('q1'), - wbFloat('q2'), - wbFloat('q3'), - wbFloat('q4') - ]) - ]), - - wbRStruct('Bound Data', [ - wbStruct(XRMR, 'Header', [ - wbInteger('Linked Rooms Count', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'Unknown 1', - 'Unknown 2', - 'Unknown 3', - 'Unknown 4', - 'Unknown 5', - 'Unknown 6', - 'Has Image Space', - 'Has Lighting Template' - ])), - wbByteArray('Unknown', 2) - ]), - wbFormIDCk(LNAM, 'Lighting Template', [LGTM]), - wbFormIDCk(INAM, 'Image Space', [IMGS]), - wbRArrayS('Linked Rooms', - wbFormIDCk(XLRM, 'Linked Room', [REFR]) - ) - ], []), - wbEmpty(XMBP, 'MultiBound Primitive Marker', cpIgnore), - - {--- Ragdoll ---} - wbXRGD, - wbXRGB, - - wbFloat(XRDS, 'Radius'), - wbXSCL, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - wbStruct(XLIG, 'Light Data', [ - wbFloat('FOV 90+/-'), - wbFloat('Fade 1.0+/-'), - wbFloat('End Distance Cap'), - wbFloat('Shadow Depth Bias'), - wbFloat('Near Clip'), - wbFloat('Volumetric Intensity') - ], cpNormal, False, nil, 4), - wbStruct(XALP, 'Alpha', [ - wbInteger('Cutoff', itU8), - wbInteger('Base', itU8) - ]), - - {--- Teleport ---} - wbStruct(XTEL, 'Teleport Destination', [ - wbFormIDCk('Door', [REFR], True), - wbPosRot, - wbInteger('Flags', itU32, wbFlags([ - 'No Alarm', - 'No Load Screen', - 'Relative Position' - ])), - wbFormIDCk('Transition Interior', [CELL, NULL]) - ]), - wbFormIDCk(XTNM, 'Teleport Loc Name', [MESG]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - {--- Placed Water ---} - wbUnknown(XWCN), - wbStruct(XWCU, 'Water Velocity', [ - wbFloat('X Offset'), - wbFloat('Y Offset'), - wbFloat('Z Offset'), - wbByteArray('Unknown', 4), - wbFloat('X Angle'), - wbFloat('Y Angle'), - wbFloat('Z Angle'), - wbByteArray('Unknown', 0) - ]), - - wbFormIDCk(XASP, 'Acoustic Restriction', [REFR]), - wbEmpty(XATP, 'Activation Point'), - wbInteger(XAMC, 'Ammo Count', itU32), - wbEmpty(XLKT, 'Linked Ref Transient'), - wbFormIDCk(XLYR, 'Layer', [LAYR]), - wbFormIDCk(XMSP, 'Material Swap', [MSWP]), - wbFormIDCk(XRFG, 'Reference Group', [RFGP]), - wbStruct(XRDO, 'Radio', [ - wbFloat('Frequency'), - wbFloat('Min Weak Distance'), - wbFloat('Max Weak Distance'), - wbInteger('Flags', itU32, wbFlags(['Ignores Distance Checks'])) - ]), - wbStruct(XBSD, 'Spline', [ - wbFloat('Slack'), - wbFloat('Thickness'), - wbFloat('Unknown'), // not shown in editor - wbFloat('Unknown'), // not shown in editor - wbFloat('Unknown'), // not shown in editor - wbInteger('Wind - Detached End', itU8, wbBoolEnum), - wbByteArray('Unused', 0) // junk data? - ], cpNormal, False, nil, 5), - wbStruct(XPDD, 'Projected Decal', [ - wbFloat('Width Scale'), - wbFloat('Height Scale') - // "Uses Box Primitive" checkbox does the following: - // 1. "Rounds" above floats (probably due to floating point precision) [DIRTY EDITS?] - // 2. "Rounds" DATA\Position floats (probably due to floating point precision) [DIRTY EDITS?] - // 3. Creates an XPRM subrecord (this is the "Primitive" tab in the editor) - // 4. Fills out Primitive data: - // 4a. Primitive type: Box - // 4b. Collision layer: XTRI subrecord = 15 - // 4c. Bounds (XYZ): 256.0, 215.0, 256.0 - // 4d. Color (RGB): 0, 128, 128 - // 4e. Unknown: 0.4 - ]), - wbFormIDCk(XSPC, 'Spawn Container', [REFR]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', sigReferences), - wbFloat('Delay') - ]) - ) - ], []), - - wbFormIDCk(XLIB, 'Leveled Item Base Object', [LVLI]), - wbXLCM, - wbFormIDCk(XLCN, 'Persistent Location', [LCTN]), - - {>>> COLL form Index value <<<} - wbInteger(XTRI, 'Collision Layer', itU32), - - {--- Lock ---} - wbStruct(XLOC, 'Lock Data', [ - wbInteger('Level', itU8, wbEnum([], [ - 0, 'None', - 1, 'Novice 1', - 25, 'Novice 25', - 50, 'Advanced', - 75, 'Expert', - 100, 'Master', - 253, 'Requires Terminal', - 251, 'Barred', - 252, 'Chained', - 254, 'Inaccessible', - 255, 'Requires Key' - ])), - wbByteArray('Unused', 3, cpIgnore), - wbFormIDCkNoReach('Key', [KEYM, NULL]), - wbInteger('Flags', itU8, wbFlags(['', '', 'Leveled Lock'])), - wbByteArray('Unused', 3, cpIgnore), - wbUnknown - ], cpNormal, False, nil, 4), - - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - {--- Generated Data ---} - wbStruct(XNDP, 'Navigation Door Link', [ - wbFormIDCk('Navigation Mesh', [NAVM]), - wbInteger('Teleport Marker Triangle', itS16, wbREFRNavmeshTriangleToStr, wbStringToInt), - wbByteArray('Unused', 2, cpIgnore) - ]), - - wbFormIDCk(XLRL, 'Location Reference', [LCRT, LCTN, NULL], False, cpBenignIfAdded), - wbArray(XLRT, 'Location Ref Type', wbFormIDCk('Ref', [LCRT, NULL])), - wbEmpty(XIS2, 'Ignored by Sandbox'), - - {--- Ownership ---} - wbXOWN, - wbXRNK, - - wbInteger(XCNT, 'Item Count', itS32), - wbInteger(XHLT, 'Health %', itU32), - - wbXESP, - wbRArray('Linked References', wbStruct(XLKR, 'Linked Reference', [ - wbFormIDCk('Keyword/Ref', [KYWD, PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA, NULL]), - wbFormIDCk('Ref', sigReferences) - ], cpNormal, False, nil, 1)), - - wbRArray('Patrol', wbRStruct('Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbPDTOs - ], [])), - - {--- Flags ---} - wbInteger(XACT, 'Action Flag', itU32, wbFlags([ - 'Use Default', - 'Activate', - 'Open', - 'Open by Default' - ])), - - wbFloat(XHTW, 'Head-Tracking Weight'), - wbFloat(XFVC, 'Favor Cost'), - - wbEmpty(ONAM, 'Open by Default'), - - {--- Map Data ---} - wbRStruct('Map Marker', [ - wbEmpty(XMRK, 'Map Marker Data'), - wbInteger(FNAM, 'Map Flags', itU8, wbFlags([ - {0x01} 'Visible', - {0x02} 'Can Travel To', - {0x04} '"Show All" Hidden', - {0x08} 'Use Location Name' - ]), cpNormal, True), - wbFULLReq, - wbStruct(TNAM, '', [ - wbInteger('Type', itU8, wbEnum([], [ - {Vv = Verified Vanilla} - {No new map markers for Automatron or Workshop} - 0, 'Cave', {Vv} - 1, 'City', {Vv} - 2, 'Diamond City', {Vv} - 3, 'Encampment', {Vv} - 4, 'Factory / Industrial Site', {Vv} - 5, 'Gov''t Building / Monument', {Vv} - 6, 'Metro Station', {Vv} - 7, 'Military Base', {Vv} - 8, 'Natural Landmark', {Vv} - 9, 'Office / Civic Building', {Vv} - 10, 'Ruins - Town', {Vv} - 11, 'Ruins - Urban', {Vv} - 12, 'Sanctuary', {Vv} - 13, 'Settlement', {Vv} - 14, 'Sewer / Utility Tunnels', {Vv} - 15, 'Vault', {Vv} - 16, 'Airfield', {Vv} - 17, 'Bunker Hill', {Vv} - 18, 'Camper', {Vv} - 19, 'Car', {Vv} - 20, 'Church', {Vv} - 21, 'Country Club', {Vv} - 22, 'Custom House', {Vv} - 23, 'Drive-In', {Vv} - 24, 'Elevated Highway', {Vv} - 25, 'Faneuil Hall', {Vv} - 26, 'Farm', {Vv} - 27, 'Filling Station', {Vv} - 28, 'Forested', {Vv} - 29, 'Goodneighbor', {Vv} - 30, 'Graveyard', {Vv} - 31, 'Hospital', {Vv} - 32, 'Industrial Dome', {Vv} - 33, 'Industrial Stacks', {Vv} - 34, 'Institute', {Vv} - 35, 'Irish Pride', {Vv} - 36, 'Junkyard', {Vv} - 37, 'Observatory', {Vv} - 38, 'Pier', {Vv} - 39, 'Pond / Lake', {Vv} - 40, 'Quarry', {Vv} - 41, 'Radioactive Area', {Vv} - 42, 'Radio Tower', {Vv} - 43, 'Salem', {Vv} - 44, 'School', {Vv} - 45, 'Shipwreck', {Vv} - 46, 'Submarine', {Vv} - 47, 'Swan Pond', {Vv} - 48, 'Synth Head', {Vv} - 49, 'Town', {Vv} - 50, 'Brotherhood of Steel', {Vv} - 51, 'Brownstone Townhouse', {Vv} - 52, 'Bunker', {Vv} - 53, 'Castle', {Vv} - 54, 'Skyscraper', {Vv} - 55, 'Libertalia', {Vv} - 56, 'Low-Rise Building', {Vv} - 57, 'Minutemen', {Vv} - 58, 'Police Station', {Vv} - 59, 'Prydwen', {Vv} - 60, 'Railroad - Faction', {Vv} - 61, 'Railroad', {Vv} - 62, 'Satellite', {Vv} - 63, 'Sentinel', {Vv} - 64, 'USS Constitution', {Vv} - 65, 'Mechanist LairRaider settlementVassal settlementPotential Vassal settlement', {Vv} - 66, 'Custom 66', - 67, 'Custom 67', - 68, 'Custom 68', - 69, 'Custom 69', - 70, 'Custom 70', - 71, 'Custom 71', - 72, 'Custom 72', - 73, 'Custom 73', - 74, 'Custom 74', - 75, 'Custom 75', - 76, 'Custom 76', - 77, 'Custom 77', - 78, 'Custom 78', - 79, 'Custom 79', - 80, 'Custom 80', - 81, 'Custom 81', - 82, 'Custom 82', - 83, 'Custom 83', - 84, 'Custom 84', - 85, 'Custom 85', - 86, 'Custom 86', - 87, 'Custom 87', - 88, 'Custom 88', - 89, 'Custom 89', - 90, 'Custom 90', - 91, 'Custom 91', - 92, 'Custom 92', - 93, 'Custom 93', - 94, 'Custom 94', - 95, 'Custom 95', - 96, 'Custom 96', - 97, 'Custom 97', - 98, 'Custom 98', - 99, 'Custom 99' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True) - ], []), - - {--- Attach reference ---} - wbFormIDCk(XATR, 'Attach Ref', [REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - - wbRArray('Spline Connection', wbStruct(XPLK, 'Link', [ - wbFormIDCk('Ref', [REFR, ACHR]), - wbUnknown // always 00 00 00 00 so far in DLCWorkshop03.esm - ])), - - wbRStruct('Power Grid', [ - wbInteger(XWPG, 'Count', itU32), - wbRArray('Connections', wbStruct(XWPN, 'Connection', [ - wbFormIDCk('Node 1', [REFR, ACHR, NULL]), - wbFormIDCk('Node 2', [REFR, ACHR, NULL]), - wbFormIDCk('Line', [REFR, NULL]) // BNDS ref - ])) - ], []), - - wbUnknown(XCVR), - wbUnknown(XCVL), - wbFormIDCk(XCZR, 'Unknown', sigReferences), - wbUnknown(XCZA), - wbFormIDCk(XCZC, 'Unknown', [CELL, NULL]), - - wbXLOD, // not seen in FO4 vanilla files - - wbDataPosRot, - wbString(MNAM, 'Comments') - ], True, wbPlacedAddInfo, cpNormal, False, wbREFRAfterLoad); - - wbRecord(REGN, 'Region', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000040} 6, 'Border Region' - ])), [ - wbEDID, - wbStruct(RCLR, 'Map Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unknown', 1) - ], cpNormal, True), - wbFormIDCkNoReach(WNAM, 'Worldspace', [WRLD]), - wbRArray('Region Areas', wbRStruct('Region Area', [ - wbInteger(RPLI, 'Edge Fall-off', itU32), - wbArray(RPLD, 'Region Point List Data', wbStruct('Point', [ - wbFloat('X'), - wbFloat('Y') - ]), 0, wbRPLDAfterLoad), - wbUnknown(ANAM) - ], [])), - wbRArrayS('Region Data Entries', wbRStructSK([0], 'Region Data Entry', [ - {always starts with an RDAT} - wbStructSK(RDAT, [0], 'Data Header', [ - wbInteger('Type', itU32, wbEnum([ - {0} 'Unknown 0', - {1} 'Unknown 1', - {2} 'Objects', - {3} 'Weather', - {4} 'Map', - {5} 'Land', - {6} 'Grass', - {7} 'Sound', - {8} 'Imposter', - {9} 'Unknown 10', - {10}'Unknown 11', - {11}'Unknown 12', - {12}'Unknown 13', - {13}'Unknown 14', - {14}'Unknown 15', - {15}'Unknown 16' - ])), - wbInteger('Flags', itU8, wbFlags([ - 'Override' - ])), - wbInteger('Priority', itU8), - wbByteArray('Unknown') - ], cpNormal, True), - - {--- Icon ---} - wbICON, - - {--- Sound ---} - wbFormIDCk(RDMO, 'Music', [MUSC], False, cpNormal, False, wbREGNSoundDontShow), - wbArrayS(RDSA, 'Sounds', wbStructSK([0], 'Sound', [ - wbFormIDCk('Sound', [SNDR, NULL]), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Pleasant', - {0x00000002} 'Cloudy', - {0x00000004} 'Rainy', - {0x00000008} 'Snowy' - ])), - wbFloat('Chance') - ]), 0, cpNormal, False, nil, nil, wbREGNSoundDontShow), - - {--- Map ---} - wbLString(RDMP, 'Map Name', 0, cpTranslate, False, wbREGNMapDontShow), - - {followed by one of these: } - - {--- Objects ---} - wbArray(RDOT, 'Objects', wbStruct('Object', [ - wbFormIDCk('Object', [TREE, FLOR, STAT, LTEX, MSTT]), - wbInteger('Parent Index', itU16, wbHideFFFF), - wbByteArray('Unknown', 2), - wbFloat('Density'), - wbInteger('Clustering', itU8), - wbInteger('Min Slope', itU8), - wbInteger('Max Slope', itU8), - wbInteger('Flags', itU8, wbFlags([ - {0}'Conform to slope', - {1}'Paint Vertices', - {2}'Size Variance +/-', - {3}'X +/-', - {4}'Y +/-', - {5}'Z +/-', - {6}'Tree', - {7}'Huge Rock' - ])), - wbInteger('Radius wrt Parent', itU16), - wbInteger('Radius', itU16), - wbFloat('Min Height'), - wbFloat('Max Height'), - wbFloat('Sink'), - wbFloat('Sink Variance'), - wbFloat('Size Variance'), - wbStruct('Angle Variance', [ - wbInteger('X', itU16), - wbInteger('Y', itU16), - wbInteger('Z', itU16) - ]), - wbByteArray('Unknown', 2), - wbByteArray('Unknown', 4) - ]), 0, nil, nil, cpNormal, False, wbREGNObjectsDontShow), - - {--- Grass ---} - wbArrayS(RDGS, 'Grasses', wbStructSK([0], 'Grass', [ - wbFormIDCk('Grass', [GRAS]), - wbByteArray('Unknown',4) - ]), 0, cpNormal, False, nil, nil, wbREGNGrassDontShow), - - {--- Weather ---} - wbArrayS(RDWT, 'Weather Types', wbStructSK([0], 'Weather Type', [ - wbFormIDCk('Weather', [WTHR]), - wbInteger('Chance', itU32), - wbFormIDCk('Global', [GLOB, NULL]) - ]), 0, cpNormal, False, nil, nil, wbREGNWeatherDontShow), - - wbFloat(RLDM, 'LOD Display Distance Multiplier'), - wbFloat(ANAM, 'Occlusion Accuracy Dist') - - ], [])) - ], True); - - wbRecord(SOUN, 'Sound Marker', [ - wbEDID, - wbOBNDReq, - wbFormIDCk(SDSC, 'Sound Descriptor', [SNDR, NULL]), - wbStruct(REPT, 'Repeat', [ - wbFloat('Min Time'), - wbFloat('Max Time'), - wbInteger('Stackable', itU8, wbBoolEnum) - ], cpNormal, False, nil, 2) - ]); - - wbSPIT := wbStruct(SPIT, 'Data', [ - wbInteger('Base Cost', itU32), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Manual Cost Calc', - {0x00000002} 'Unknown 2', - {0x00000004} 'Unknown 3', - {0x00000008} 'Unknown 4', - {0x00000010} 'Unknown 5', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unknown 7', - {0x00000080} 'Unknown 8', - {0x00000100} 'Unknown 9', - {0x00000200} 'Unknown 10', - {0x00000400} 'Unknown 11', - {0x00000800} 'Unknown 12', - {0x00001000} 'Unknown 13', - {0x00002000} 'Unknown 14', - {0x00004000} 'Unknown 15', - {0x00008000} 'Unknown 16', - {0x00010000} 'Unknown 17', - {0x00020000} 'PC Start Spell', - {0x00040000} 'Instant Cast', - {0x00080000} 'Area Effect Ignores LOS', - {0x00100000} 'Ignore Resistance', - {0x00200000} 'No Absorb/Reflect', - {0x00400000} 'Unknown 23', - {0x00800000} 'No Dual Cast Modification', - {0x01000000} 'Unknown 25', - {0x02000000} 'Unknown 26', - {0x04000000} 'Unknown 27', - {0x08000000} 'Unknown 28', - {0x10000000} 'Unknown 29', - {0x20000000} 'Unknown 30', - {0x40000000} 'Unknown 31', - {0x80000000} 'Unknown 32' - ])), - wbInteger('Type', itU32, wbEnum([ - {0} 'Spell', - {1} 'Disease', - {2} 'Power', - {3} 'Lesser Power', - {4} 'Ability', - {5} 'Poison', - {6} 'Unknown 6', - {7} 'Unknown 7', - {8} 'Unknown 8', - {9} 'Unknown 9', - {10} 'Addiction', - {11} 'Voice' - ])), - wbFloat('Charge Time'), - wbInteger('Cast Type', itU32, wbCastEnum), - wbInteger('Target Type', itU32, wbTargetEnum), - wbFloat('Cast Duration'), - wbFloat('Range'), - wbFormIDCk('Casting Perk', [NULL, PERK]) - ], cpNormal, True); - - wbRecord(SPEL, 'Spell', [ - wbEDID, - wbOBNDReq, - wbFULL, - wbKSIZ, - wbKWDAs, - wbETYP, - wbDESCReq, - wbSPIT, - wbEffectsReq - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - {wbRecord(SCRL, 'Scroll', [ - wbEDID - ]);} - - wbRecord(STAT, 'Static', - wbFlags(wbRecordFlagsFlags, [ - {0x00000001} { 0} '', - {0x00000002} { 1} '', - {0x00000004} { 2} 'Heading Marker', - {0x00000008} { 3} '', - {0x00000010} { 4} 'Non Occluder', - {0x00000020} { 5} 'Deleted', - {0x00000040} { 6} 'Has Tree LOD', // Used in Fallout 4 ? - {0x00000080} { 7} 'Add-On LOD Object', - {0x00000100} { 8} '', - {0x00000200} { 9} 'Hidden From Local Map', - {0x00000400} {10} 'Headtrack Marker', - {0x00000800} {11} 'Used as Platform', - {0x00001000} {12} '', - {0x00002000} {13} 'Pack-In Use Only', - {0x00004000} {14} '', - {0x00008000} {15} 'Has Distant LOD', - {0x00010000} {16} '', - {0x00020000} {17} 'Uses HD LOD Texture', - {0x00040000} {18} '', - {0x00080000} {19} 'Has Currents', - {0x00100000} {20} '', - {0x00200000} {21} '', - {0x00400000} {22} '', - {0x00800000} {23} 'Is Marker', - {0x01000000} {24} '', - {0x02000000} {25} 'Obstacle', - {0x04000000} {26} 'NavMesh Generation - Filter', - {0x08000000} {27} 'NavMesh Generation - Bounding Box', - {0x10000000} {28} 'Show In World Map (Sky Cell Only)', - {0x20000000} {29} '', - {0x40000000} {30} 'NavMesh Generation - Ground', - {0x80000000} {31} '' - ]), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFTYP, - wbMODL, - wbPRPS, - wbFULL, - wbStruct(DNAM, 'Direction Material', [ - wbFloat('Max Angle (30-120)'), - wbFormIDCk('Material', [MATO, NULL]), - wbFloat('Leaf Amplitude'), - wbFloat('Leaf Frequency') - ], cpNormal, True, nil, 2), - wbNVNM, - wbArray(MNAM, 'Distant LOD', - wbStruct('LOD', [ - {>>> Contains null-terminated mesh filename followed by random data up to 260 bytes <<<} - wbString(True, 'Mesh', 260) - //wbByteArray('Mesh', 260, cpIgnore) - ]), [ - 'Level 0', - 'Level 1', - 'Level 2', - 'Level 3' - ], - cpNormal, False - ) - ], True); // unordered, NVNM can be before or after MNAM - - wbRecord(TES4, 'Main File Header', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000001} 0, 'ESM', - {0x00000080} 7, 'Localized' - ], False), True), [ - wbStruct(HEDR, 'Header', [ - wbFloat('Version'), - wbInteger('Number of Records', itU32), - wbInteger('Next Object ID', itU32) - ], cpNormal, True), - 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', // Valid in CK - wbFormIDCk('Form', [ACHR, LAND, NAVM, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA, DLBR, DIAL, INFO, SCEN]), - 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 78 (array of DIAL) and BGSScene 126 (array of SCEN) - wbArray('Unknown', wbFormID('Unknown')) - ])), // Ignored by the runtime - 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; - -procedure DefineFO4o; -begin - - wbRecord(TREE, 'Tree', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00008000} 15, 'Has Distant LOD' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbMODL, - wbFormIDCK(PFIG, 'Ingredient', sigBaseObjects), - wbFormIDCK(SNAM, 'Harvest Sound', [SNDR, NULL]), - wbStruct(PFPC, 'Ingredient Production', [ - wbInteger('Spring', itU8), - wbInteger('Summer', itU8), - wbInteger('Fall', itU8), - wbInteger('Winter', itU8) - ]), - wbFULL, - wbStruct(CNAM, 'Tree Data', [ - wbFloat('Trunk Flexibility'), - wbFloat('Branch Flexibility'), - //wbByteArray('Unknown', 32), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Leaf Amplitude'), - wbFloat('Leaf Frequency') - ], cpNormal, True) - ]); - - wbRecord(FLOR, 'Flora', [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFULLReq, - wbMODL, - wbDEST, - wbKSIZ, - wbKWDAs, - wbPRPS, - wbUnknown(PNAM), - wbATTX, - wbLString(RNAM, 'Activate Text Override', 0, cpTranslate), - wbUnknown(FNAM), - wbFormIDCk(PFIG, 'Ingredient', sigBaseObjects), - wbFormIDCK(SNAM, 'Harvest Sound', [SNDR]), - wbStruct(PFPC, 'Ingredient Production', [ - wbInteger('Spring', itU8), - wbInteger('Summer ', itU8), - wbInteger('Fall', itU8), - wbInteger('Winter', itU8) - ], cpNormal, True) - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbRecord(WATR, 'Water', [ - wbEDID, - wbFULL, - wbInteger(ANAM, 'Opacity (unused)', itU8), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - {0x01} 'Dangerous', - {0x02} 'Unknown 1', - {0x04} 'Directional Sound' - ]), cpNormal, True), - wbFormIDCk(TNAM, 'Material (unused)', [MATT]), - wbFormIDCk(SNAM, 'Open Sound', [SNDR, NULL]), - wbFormIDCk(XNAM, 'Consume Spell', [SPEL]), - wbFormIDCk(YNAM, 'Contact Spell', [SPEL]), - wbFormIDCk(INAM, 'Image Space', [IMGS]), - wbByteArray(DATA, 'Unused', 0), - wbStruct(DNAM, 'Visual Data', [ - wbStruct('Fog Properties', [ - wbFloat('Depth Amount'), - wbByteColors('Shallow Color'), - wbByteColors('Deep Color'), - wbFloat('Color Shallow Range'), - wbFloat('Color Deep Range'), - wbFloat('Shallow Alpha'), - wbFloat('Deep Alpha'), - wbFloat('Alpha Shallow Range'), - wbFloat('Alpha Deep Range'), - wbByteColors('Underwater Color'), - wbFloat('Underwater Fog Amount'), - wbFloat('Underwater Near Fog'), - wbFloat('Underwater Far Fog') - ]), - wbStruct('Physical Properties', [ - wbFloat('Normal Magnitude'), - wbFloat('Shallow Normal Falloff'), - wbFloat('Deep Normal Falloff'), - wbFloat('Reflectivity Amount'), - wbFloat('Fresnel Amount'), - wbFloat('Surface Effect Falloff'), - wbStruct('Displacement Simulator', [ - wbFloat('Force'), - wbFloat('Velocity'), - wbFloat('Falloff'), - wbFloat('Dampener'), - wbFloat('Starting Size') - ]), - wbByteColors('Reflection Color') - ]), - wbStruct('Specular Properties', [ - wbFloat('Sun Specular Power'), - wbFloat('Sun Specular Magnitude'), - wbFloat('Sun Sparkle Power'), - wbFloat('Sun Sparkle Magnitude'), - wbFloat('Interior Specular Radius'), - wbFloat('Interior Specular Brightness'), - wbFloat('Interior Specular Power') - ]), - wbStruct('Noise Properties', [ - wbFloat('Layer 1 - Wind Direction'), - wbFloat('Layer 2 - Wind Direction'), - wbFloat('Layer 3 - Wind Direction'), - wbFloat('Layer 1 - Wind Speed'), - wbFloat('Layer 2 - Wind Speed'), - wbFloat('Layer 3 - Wind Speed'), - wbFloat('Layer 1 - Amplitude Scale'), - wbFloat('Layer 2 - Amplitude Scale'), - wbFloat('Layer 3 - Amplitude Scale'), - wbFloat('Layer 1 - UV Scale'), - wbFloat('Layer 2 - UV Scale'), - wbFloat('Layer 3 - UV Scale'), - wbFloat('Layer 1 - Noise Falloff'), - wbFloat('Layer 2 - Noise Falloff'), - wbFloat('Layer 3 - Noise Falloff') - ]), - wbStruct('Silt Properties', [ - wbFloat('Silt Amount'), - wbByteColors('Light Color'), - wbByteColors('Dark Color') - ]), - wbInteger('Screen Space Reflections', itU8, wbBoolEnum) - ], cpNormal, True, nil, 4), - wbByteArray(GNAM, 'Unused', 0), - wbStruct(NAM0, 'Linear Velocity', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ], cpNormal, False), - wbStruct(NAM1, 'Angular Velocity', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ], cpNormal, False), - wbString(NAM2, 'Layer 1 Noise Texture'), - wbString(NAM3, 'Layer 2 Noise Texture'), - wbString(NAM4, 'Layer 3 Noise Texture') - ]); - - wbRecord(WEAP, 'Weapon', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable', - {0x20000000} 30, 'High-Res 1st Person Only' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbPTRN, - wbFULL, - wbMODL, - wbICON, - wbMICO, - wbEITM, - wbInteger(EAMT, 'Enchantment Amount', itU16), - wbDEST, - wbETYP, - wbFormIDCk(BIDS, 'Block Bash Impact Data Set', [IPDS, NULL]), - wbFormIDCk(BAMT, 'Alternate Block Material', [MATT, NULL]), - wbYNAM, - wbZNAM, - wbKSIZ, - wbKWDAs, - wbDESC, - wbFormIDCk(INRD, 'Instance Naming', [INNR]), - wbAPPR, - wbObjectTemplate, - wbFormIDCk(NNAM, 'Embedded Weapon Mod', [OMOD]), - wbRStruct('1st Person Model', [ - wbString(MOD4, 'Model Filename'), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO4S, - wbMO4C, - wbMO4F - ], []), - wbStruct(DNAM, 'Data', [ - wbFormIDCk('Ammo', [AMMO, NULL]), - wbFloat('Speed'), - wbFloat('Reload Speed'), - wbFloat('Reach'), - wbFloat('Min Range'), - wbFloat('Max Range'), - wbFloat('Attack Delay'), - wbByteArray('Unknown', 4), - wbFloat('Damage - OutOfRange Mult'), - wbInteger('On Hit', itU32, wbHitBehaviourEnum), - wbFormIDCk('Skill', [AVIF, NULL]), - wbFormIDCk('Resist', [AVIF, NULL]), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Player Only', - {0x00000002} 'NPCs Use Ammo', - {0x00000004} 'No Jam After Reload', - {0x00000008} 'Charging Reload', - {0x00000010} 'Minor Crime', - {0x00000020} 'Fixed Range', - {0x00000040} 'Not Used In Normal Combat', - {0x00000080} 'Unknown 8', - {0x00000100} 'Crit Effect - on Death', - {0x00000200} 'Charging Attack', - {0x00000400} 'Unknown 11', - {0x00000800} 'Hold Input To Power', - {0x00001000} 'Non Hostile', - {0x00002000} 'Bound Weapon', - {0x00004000} 'Ignores Normal Weapon Resistance', - {0x00008000} 'Automatic', - {0x00010000} 'Repeatable Single Fire', - {0x00020000} 'Can''t Drop', - {0x00040000} 'Hide Backpack', - {0x00080000} 'Embedded Weapon', - {0x00100000} 'Not Playable', - {0x00200000} 'Has Scope', - {0x00400000} 'Bolt Action', - {0x00800000} 'Secondary Weapon', - {0x01000000} 'Disable Shells', - {0x02000000} 'Unknown 26', - {0x04000000} 'Unknown 27', - {0x08000000} 'Unknown 28', - {0x10000000} 'Unknown 29', - {0x20000000} 'Unknown 30', - {0x40000000} 'Unknown 31', - {0x80000000} 'Unknown 32' - ])), - wbInteger('Capacity', itU16), - wbInteger('Animation Type', itU8, wbEnum([ - 'HandToHandMelee', - 'OneHandSword', - 'OneHandDagger', - 'OneHandAxe', - 'OneHandMace', - 'TwoHandSword', - 'TwoHandAxe', - 'Bow', - 'Staff', - 'Gun', - 'Grenade', - 'Mine' - ])), - wbFloat('Damage - Secondary'), - wbFloat('Weight'), - wbInteger('Value', itU32), - wbInteger('Damage - Base', itU16), - wbInteger('Sound Level', itU32, wbSoundLevelEnum), - wbFormIDCk('Sound - Attack', [SNDR, NULL]), - wbFormIDCk('Sound - Attack 2D', [SNDR, NULL]), - wbFormIDCk('Sound - Attack Loop', [SNDR, NULL]), - wbFormIDCk('Sound - Attack Fail', [SNDR, NULL]), - wbFormIDCk('Sound - Idle', [SNDR, NULL]), - wbFormIDCk('Sound - Equip Sound', [SNDR, NULL]), - wbFormIDCk('Sound - UnEquip Sound', [SNDR, NULL]), - wbFormIDCk('Sound - Fast Equip Sound', [SNDR, NULL]), - wbInteger('Accuracy Bonus', itU8), - wbFloat('Animation Attack Seconds'), - wbByteArray('Unknown', 2), - wbFloat('Action Point Cost'), - wbFloat('Full Power Seconds'), - wbFloat('Min Power Per Shot'), - wbInteger('Stagger', itU32, wbStaggerEnum), - wbByteArray('Unknown', 4) - ]), - wbStruct(FNAM, '', [ - wbFloat('Animation Fire Seconds'), - wbFloat('Rumble - Left Motor Strength'), - wbFloat('Rumble - Right Motor Strength'), - wbFloat('Rumble - Duration'), - wbFloat('Animation Reload Seconds'), - wbByteArray('Unknown', 4), - wbFloat('Sighted Transition Seconds'), - wbInteger('# Projectiles', itU8), - wbFormIDCk('Override Projectile', [PROJ, NULL]), - wbInteger('Pattern', itU32, wbEnum([ - 'Constant', - 'Square', - 'Triangle', - 'Sawtooth' - ])), - wbInteger('Rumble - Peroid (ms)', itU32) - ]), - wbStruct(CRDT, 'Critical Data', [ - wbFloat('Crit Damage Mult'), - wbFloat('Crit Charge Bonus'), - wbFormIDCk('Crit Effect', [SPEL, NULL]) - ]), - wbFormIDCk(INAM, 'Impact Data Set', [IPDS]), - wbFormIDCk(LNAM, 'NPC Add Ammo List', [LVLI]), - wbFormIDCk(WAMD, 'Aim Model', [AMDL]), - wbFormIDCk(WZMD, 'Zoom', [ZOOM]), - wbFormIDCk(CNAM, 'Template', [WEAP]), - wbStructs(DAMA, 'Damage Types', 'Damage Type', [ - wbFormIDCk('Type', [DMGT]), - wbInteger('Amount', itU32) - ]), - wbFLTR, - wbInteger(MASE, 'Melee Speed', itU32, wbEnum([ - 'Very Slow', - 'Slow', - 'Medium', - 'Fast', - 'Very Fast' - ])) - ], False, nil, cpNormal, False, nil{wbWEAPAfterLoad}, wbKeywordsAfterSet); - - wbRecord(WRLD, 'Worldspace', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00080000} 19, 'Can''t Wait' - ])), [ - wbEDID, - wbRArray('Unused RNAM', wbUnknown(RNAM), cpIgnore, False{, wbNeverShow}), - wbMaxHeightDataWRLD, - wbFULL, - wbStruct(WCTR, 'Fixed Dimensions Center Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbFormIDCk(LTMP, 'Interior Lighting', [LGTM]), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN, NULL]), - wbFormIDCk(XLCN, 'Location', [LCTN, NULL]), - wbRStruct('Parent', [ - wbFormIDCk(WNAM, 'Worldspace', [WRLD]), - wbStruct(PNAM, '', [ - wbInteger('Flags', itU8, wbFlags([ - {0x0001} 'Use Land Data', - {0x0002} 'Use LOD Data', - {0x0004} 'Don''t Use Map Data', - {0x0008} 'Use Water Data', - {0x0010} 'Use Climate Data', - {0x0020} 'Use Image Space Data (unused)', - {0x0040} 'Use Sky Cell' - ], [5])), - wbByteArray('Unknown', 1) - ], cpNormal, True) - ], []), - wbFormIDCk(CNAM, 'Climate', [CLMT]), - wbFormIDCk(NAM2, 'Water', [WATR]), - wbFormIDCk(NAM3, 'LOD Water Type', [WATR]), - wbFloat(NAM4, 'LOD Water Height'), - wbStruct(DNAM, 'Land Data', [ - wbFloat('Default Land Height'), - wbFloat('Default Water Height') - ]), - wbString(ICON, 'Map Image'), - wbRStruct('Cloud Model', [wbMODL], []), - wbStruct(MNAM, 'Map Data', [ - wbStruct('Usable Dimensions', [ - wbInteger('X', itS32), - wbInteger('Y', itS32) - ]), - wbStruct('Cell Coordinates', [ - wbStruct('NW Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbStruct('SE Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]) - ]) - ]), - wbStruct(ONAM, 'World Map Offset Data', [ - wbFloat('World Map Scale'), - wbFloat('Cell X Offset'), - wbFloat('Cell Y Offset'), - wbFloat('Cell Z Offset') - ], cpNormal, True), - wbFloat(NAMA, 'Distant LOD Multiplier'), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Small World', - {0x02} 'Can''t Fast Travel', - {0x04} 'Unknown 3', - {0x08} 'No LOD Water', - {0x10} 'No Landscape', - {0x20} 'No Sky', - {0x40} 'Fixed Dimensions', - {0x80} 'No Grass' - ]), cpNormal, True), - {>>> Object Bounds doesn't show up in CK <<<} - wbRStruct('Object Bounds', [ - wbStruct(NAM0, 'Min', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True), - wbStruct(NAM9, 'Max', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True) - ], []), - wbFormIDCk(ZNAM, 'Music', [MUSC]), - wbString(NNAM, 'Canopy Shadow (unused)', 0, cpIgnore), - wbString(XWEM, 'Water Environment Map'), - wbString(TNAM, 'HD LOD Diffuse Texture'), - wbString(UNAM, 'HD LOD Normal Texture'), - wbRStruct('World Default Level Data', [ - wbStruct(WLEV, 'Dimension', [ - wbStruct('NW Cell', [ - wbInteger('X', itS8), - wbInteger('Y', itS8) - ]), - wbStruct('Size', [ - wbInteger('Width', itU8), - wbInteger('Height', itU8) - ]) - ]), - wbByteArray(WLEV, 'Data') - ], []), - wbOFST, - wbUnknown(CLSZ) - ], False, nil, cpNormal, False, wbWRLDAfterLoad); - - - wbRecord(WTHR, 'Weather', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000200} 9, 'Unknown 9' - ])), [ - wbEDID, - wbString(_00_0TX, 'Cloud Texture Layer #0'), - wbString(_10_0TX, 'Cloud Texture Layer #1'), - wbString(_20_0TX, 'Cloud Texture Layer #2'), - wbString(_30_0TX, 'Cloud Texture Layer #3'), - wbString(_40_0TX, 'Cloud Texture Layer #4'), - wbString(_50_0TX, 'Cloud Texture Layer #5'), - wbString(_60_0TX, 'Cloud Texture Layer #6'), - wbString(_70_0TX, 'Cloud Texture Layer #7'), - wbString(_80_0TX, 'Cloud Texture Layer #8'), - wbString(_90_0TX, 'Cloud Texture Layer #9'), - wbString(_3A_0TX, 'Cloud Texture Layer #10'), - wbString(_3B_0TX, 'Cloud Texture Layer #11'), - wbString(_3C_0TX, 'Cloud Texture Layer #12'), - wbString(_3D_0TX, 'Cloud Texture Layer #13'), - wbString(_3E_0TX, 'Cloud Texture Layer #14'), - wbString(_3F_0TX, 'Cloud Texture Layer #15'), - wbString(_40h_0TX, 'Cloud Texture Layer #16'), - wbString(A0TX, 'Cloud Texture Layer #17'), - wbString(B0TX, 'Cloud Texture Layer #18'), - wbString(C0TX, 'Cloud Texture Layer #19'), - wbString(D0TX, 'Cloud Texture Layer #20'), - wbString(E0TX, 'Cloud Texture Layer #21'), - wbString(F0TX, 'Cloud Texture Layer #22'), - wbString(G0TX, 'Cloud Texture Layer #23'), - wbString(H0TX, 'Cloud Texture Layer #24'), - wbString(I0TX, 'Cloud Texture Layer #25'), - wbString(J0TX, 'Cloud Texture Layer #26'), - wbString(K0TX, 'Cloud Texture Layer #27'), - wbString(L0TX, 'Cloud Texture Layer #28'), - wbUnknown(LNAM), - wbFormIDCK(MNAM, 'Precipitation Type', [SPGD, NULL]), - wbFormIDCK(NNAM, 'Visual Effect', [RFCT, NULL], False, cpNormal, True), - wbByteArray(ONAM, 'Unused', 0, cpIgnore), - wbRStruct('Cloud Speed', [ - wbArray(RNAM, 'Y Speed', wbInteger('Layer', itU8, wbCloudSpeedToStr, wbCloudSpeedToInt)), - wbArray(QNAM, 'X Speed', wbInteger('Layer', itU8, wbCloudSpeedToStr, wbCloudSpeedToInt)) - ], []), - wbArray(PNAM, 'Cloud Colors', wbWeatherColors('Layer')), - wbArray(JNAM, 'Cloud Alphas', wbStruct('Layer', [ - wbFloat('Sunrise'), - wbFloat('Day'), - wbFloat('Sunset'), - wbFloat('Night'), - wbFloat('EarlySunrise'), - wbFloat('LateSunrise'), - wbFloat('EarlySunset'), - wbFloat('LateSunset') - ])), - wbStruct(NAM0, 'Weather Colors', [ - wbWeatherColors('Sky-Upper'), - wbWeatherColors('Fog Near'), - wbWeatherColors('Unknown'), - wbWeatherColors('Ambient'), - wbWeatherColors('Sunlight'), - wbWeatherColors('Sun'), - wbWeatherColors('Stars'), - wbWeatherColors('Sky-Lower'), - wbWeatherColors('Horizon'), - wbWeatherColors('Effect Lighting'), - wbWeatherColors('Cloud LOD Diffuse'), - wbWeatherColors('Cloud LOD Ambient'), - wbWeatherColors('Fog Far'), - wbWeatherColors('Sky Statics'), - wbWeatherColors('Water Multiplier'), - wbWeatherColors('Sun Glare'), - wbWeatherColors('Moon Glare'), - wbWeatherColors('Fog Near High'), - wbWeatherColors('Fog Far High') - ], cpNormal, True, nil, 8), - wbArray(NAM4, 'Unknown', wbFloat('Unknown')), - wbStruct(FNAM, 'Fog Distance', [ - wbFloat('Day - Near'), - wbFloat('Day - Far'), - wbFloat('Night - Near'), - wbFloat('Night - Far'), - wbFloat('Day - Power'), - wbFloat('Night - Power'), - wbFloat('Day - Max'), - wbFloat('Night - Max'), - wbFloat('Day - Near Height Mid'), - wbFloat('Day - Near Height Range'), - wbFloat('Night - Near Height Mid'), - wbFloat('Night - Near Height Range'), - wbFloat('Day - High Density Scale'), - wbFloat('Night - High Density Scale'), - wbFloat('Day - Far Height Mid'), - wbFloat('Day - Far Height Range'), - wbFloat('Night - Far Height Mid'), - wbFloat('Night - Far Height Range') - ], cpNormal, True, nil, 8), - wbStruct(DATA, 'Data', [ - wbInteger('Wind Speed', itU8), // scaled 0..1 - wbByteArray('Unknown', 2), - wbInteger('Trans Delta', itU8), // scaled 0..0,25 - wbInteger('Sun Glare', itU8), // scaled 0..1 - wbInteger('Sun Damage', itU8), // scaled 0..1 - wbInteger('Precipitation - Begin Fade In', itU8), // scaled 0..1 - wbInteger('Precipitation - End Fade Out', itU8), // scaled 0..1 - wbInteger('Thunder/Lightning - Begin Fade In', itU8), - wbInteger('Thunder/Lightning - End Fade Out', itU8), - wbInteger('Thunder/Lightning - Frequency', itU8), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Weather - Pleasant', - {0x02} 'Weather - Cloudy', - {0x04} 'Weather - Rainy', - {0x08} 'Weather - Snow', - {0x10} 'Sky Statics - Always Visible', - {0x20} 'Sky Statics - Follows Sun Position', - {0x40} 'Rain Occlusion', - {0x80} 'HUD Rain Effects' - ])), - wbStruct('Lightning Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8) - ]), - wbInteger('Visual Effect - Begin', itU8), // scaled 0..1 - wbInteger('Visual Effect - End', itU8), // scaled 0..1 - wbInteger('Wind Direction', itU8), // scaled 0..360 - wbInteger('Wind Direction Range', itU8), // scaled 0..180 - wbInteger('Unknown', itU8) - ], cpNormal, True, nil, 16), - wbInteger(NAM1, 'Disabled Cloud Layers', itU32, wbFlags(['0','1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31'])), - wbRArray('Sounds', - wbStruct(SNAM, 'Sound', [ - wbFormIDCK('Sound', [SNDR, NULL]), - wbInteger('Type', itU32, wbEnum([ - {0x01} 'Default', - {0x02} 'Precipitation', - {0x04} 'Wind', - {0x08} 'Thunder' - ])) - ]) - ), - wbRArrayS('Sky Statics', wbFormIDCk(TNAM, 'Static', [STAT, NULL])), - wbStruct(IMSP, 'Image Spaces', [ - wbFormIDCK('Sunrise', [IMGS, NULL]), - wbFormIDCK('Day', [IMGS, NULL]), - wbFormIDCK('Sunset', [IMGS, NULL]), - wbFormIDCK('Night', [IMGS, NULL]), - wbFormIDCK('EarlySunrise', [IMGS, NULL]), - wbFormIDCK('LateSunrise', [IMGS, NULL]), - wbFormIDCK('EarlySunset', [IMGS, NULL]), - wbFormIDCK('LateSunset', [IMGS, NULL]) - ], cpNormal, True, nil, 4), - wbStruct(WGDR, 'God Rays', [ - wbFormIDCK('Sunrise', [GDRY, NULL]), - wbFormIDCK('Day', [GDRY, NULL]), - wbFormIDCK('Sunset', [GDRY, NULL]), - wbFormIDCK('Night', [GDRY, NULL]), - wbFormIDCK('EarlySunrise', [GDRY, NULL]), - wbFormIDCK('LateSunrise', [GDRY, NULL]), - wbFormIDCK('EarlySunset', [GDRY, NULL]), - wbFormIDCK('LateSunset', [GDRY, NULL]) - ]), - wbRStruct('Directional Ambient Lighting Colors', [ - wbAmbientColors(DALC, 'Sunrise'), - wbAmbientColors(DALC, 'Day'), - wbAmbientColors(DALC, 'Sunset'), - wbAmbientColors(DALC, 'Night'), - wbAmbientColors(DALC, 'EarlySunrise'), - wbAmbientColors(DALC, 'LateSunrise'), - wbAmbientColors(DALC, 'EarlySunset'), - wbAmbientColors(DALC, 'LateSunset') - ], [], cpNormal, True), - wbRStruct('Aurora', [wbMODL], []), - wbFormIDCk(GNAM, 'Sun Glare Lens Flare', [LENS]), - wbStruct(UNAM, 'Magic', [ - wbFormIDCk('On Lightning Strike - Spell', [SPEL, NULL]), - wbFloat('On Lightning Strike - Threshold'), - wbFormIDCk('On Weather Activate - Spell', [SPEL, NULL]), - wbFloat('On Weather Activate - Threshold'), - wbByteArray('Unknown', 4), // SPEL FormID for another context but unresolved in Fallout4.esm, legacy data - wbFloat('Unknown') - ], cpNormal, False, nil, 3), - wbFloat(VNAM, 'Volatility Mult'), - wbFloat(WNAM, 'Visibility Mult') - ]); -end; - -procedure DefineFO4p; -begin - {wbRecord(SCPT, 'SCPT', [ - wbEDID - ]);} -end; - -{>>> Start of new Fallout 4 Records <<<} - -procedure DefineFO4q; -begin - wbRecord(AECH, 'Audio Effect Chain', [ - wbEDID, - wbRArray('Effects', - wbRStruct('Effect', [ - wbInteger(KNAM, 'Type', itU32, wbEnum([], [ - Int64($864804BE), 'BSOverdrive', - Int64($EF575F7F), 'BSStateVariableFilter', - Int64($18837B4F), 'BSDelayEffect' - ]), cpNormal, False, False, nil, nil, Int64($864804BE)), - wbStruct(DNAM, 'Data', [ - wbInteger('Enabled', itU32, wbBoolEnum), - wbUnion('Value 1', wbAECHDataDecider, [ - wbFloat('Input Gain'), // exponentially(?) normalized from 0..10 to -80..20 - wbFloat('Center Freq'), - wbFloat('Feedback %') - ]), - wbUnion('Value 2', wbAECHDataDecider, [ - wbFloat('Output Gain'), // exponentially(?) normalized from 0..10 to -80..20 - wbFloat('Q Value'), - wbFloat('Wet Mix %') - ]), - wbUnion('Value 3', wbAECHDataDecider, [ - wbFloat('Upper Threshold'), // exponentially(?) normalized from 0..1 to -74..0 - wbInteger('Filter Mode', itU32, wbEnum([ - 'High Pass', - 'Low Pass', - 'Band Pass', - 'Notch' - ])), - wbInteger('Delay MS', itU32) - ]), - wbUnion('Value 4', wbAECHDataDecider, [ - wbFloat('Lower Threshold'), // exponentially(?) normalized from 0..1 to -80..0 - wbByteArray('Unused', 0), - wbByteArray('Unused', 0) - ]) - ]) - ], []) - ) - ]); - - wbRecord(AMDL, 'Aim Model', [ - wbEDID, - wbStruct(DNAM, 'Data', [ - wbFloat('Cone of Fire - Min Angle'), - wbFloat('Cone of Fire - Max Angle'), - wbFloat('Cone of Fire - Increase Per Shot'), - wbFloat('Cone of Fire - Decrease Per Sec'), - wbInteger('Cone of Fire - Decrease Delay MS', itU32), - wbFloat('Cone of Fire - Sneak Mult'), - wbFloat('Recoil - Diminish Spring Force'), - wbFloat('Recoil - Diminish Sights Mult'), - wbFloat('Recoil - Max Per Shot'), - wbFloat('Recoil - Min Per Shot'), - wbFloat('Recoil - Hip Mult'), - wbInteger('Runaway - Recoil Shots', itU32), - wbFloat('Recoil - Arc'), - wbFloat('Recoil - Arc Rotate'), - wbFloat('Cone of Fire - Iron Sights Mult'), - wbFloat('Stability - Base Stability') - ]) - ]); - - wbRecord(AORU, 'Attraction Rule', [ - wbEDID, - wbStruct(AOR2, 'Data', [ - wbFloat('Radius'), - wbFloat('Min Delay'), - wbFloat('Max Delay'), - wbInteger('Requires Line of Sight', itU8, wbBoolEnum), - wbInteger('Combat Target', itU8, wbBoolEnum), - wbByteArray('Unused', 2) - ], cpNormal, True) - ]); - - wbRecord(BNDS, 'Bendable Spline', [ - wbEDID, - wbOBND, - wbStruct(DNAM, 'Data', [ - wbFloat('Default Number of Tiles'), - wbInteger('Default Number of Slices', itU16), - wbInteger('Default Number of Tiles - Relative to Length', itU16, wbBoolEnum), - wbFloatColors('Default Color'), - wbFloat('Wind Settings - Sensibility'), - wbFloat('Wind Settings - Flexibility') - ]), - wbFormIDCk(TNAM, 'Texture', [TXST]) - ]); - - wbRecord(CMPO, 'Component', [ - wbEDID, - wbOBND, - wbFULL, - wbCUSD, - wbInteger(DATA, 'Auto Calc Value', itU32), - wbFormIDCk(MNAM, 'Scrap Item', [MISC]), - wbFormIDCk(GNAM, 'Mod Scrap Scalar', [GLOB]) - ]); - - wbRecord(DFOB, 'Default Object', [ - wbEDID, - wbFormID(DATA, 'Object') - ]); - - wbRecord(DMGT, 'Damage Type', [ - wbEDID, - // Before form version 78, it was an array of AVIF index, since then array of AVIF formID, coupled with a SPEL formID - wbUnion(DNAM, 'Data', wbFormVer78Decider, [ - wbArray('Damage Types', wbInteger('Actor Value Index', itU32)), - wbArray('Damage Types', wbStruct('Damage Type', [ - wbFormIDck('Actor Value', [AVIF, NULL]), - wbFormIDck('Spell', [SPEL, NULL]) - ])) - ]) - ]); - - wbRecord(GDRY, 'God Rays', [ - wbEDID, - wbStruct(DATA, 'Data', [ - wbFloatColors('Back Color'), - wbFloatColors('Fwd Color'), - wbFloat('Intensity'), - wbFloat('Air Color - Scale'), - wbFloat('Back Color - Scale'), - wbFloat('Fwd Color - Scale'), - wbFloat('Back Phase'), - wbFloatColors('Air Color'), - wbFloat('Fwd Phase') - ]) - ]); - -end; - -procedure DefineFO4r; -begin - wbRecord(INNR, 'Instance Naming Rules', [ - wbEDID, - wbInteger(UNAM, 'Target', itU32, wbEnum([], [ - 0, 'None', - $1D, 'Armor', - $2D, 'Actor', - $2A, 'Furniture', - $2B, 'Weapon' - ])), - wbRArray('Naming Rules', - wbRStruct('Ruleset', [ - wbInteger(VNAM, 'Count', itU32), - // should not be sorted - wbRArray('Names', - wbRStruct('Name', [ - wbLString(WNAM, 'Text', 0, cpTranslate), - wbKSIZ, - wbKWDAs, - wbStruct(XNAM, 'Property', [ - wbFloat('Value'), - wbInteger('Target', itU8, wbEnum([ - { 0} 'Enchantments', - { 1} 'BashImpactDataSet', - { 2} 'BlockMaterial', - { 3} 'Keywords', - { 4} 'Weight', - { 5} 'Value', - { 6} 'Rating', - { 7} 'AddonIndex', - { 8} 'BodyPart', - { 9} 'DamageTypeValues', - {10} 'ActorValues', - {11} 'Health', - {12} 'ColorRemappingIndex', - {13} 'MaterialSwaps' - ])), - wbInteger('Op', itU8, wbEnum([ - {0} '>=', - {1} '>', - {2} '<=', - {3} '<', - {4} '=' - ])) - ]), - wbInteger(YNAM, 'Index', itU16) - ], []), - cpNormal, False, nil, wbINNRAfterSet - ) - ], []) - ) - ]); - - wbRecord(KSSM, 'Sound Keyword Mapping', [ - wbEDID, - wbFormIDCk(DNAM, 'Primary Descriptor', [SNDR]), - wbFormIDCk(ENAM, 'Exterior Tail', [SNDR]), - wbFormIDCk(VNAM, 'VATS Descriptor', [SNDR]), - wbFloat(TNAM, 'VATS Threshold'), - wbRArray('Keywords', wbFormIDCk(KNAM, 'Keyword', [KYWD])), - wbRArrayS('Sounds', wbStructSK(RNAM, [0], 'Sound', [ - wbInteger('Reverb Class', itU32, wbReverbClassEnum), - wbFormIDCk('Descriptor', [SNDR]) - ])) - ]); - - wbRecord(LAYR, 'Layer', [ - wbEDID, - wbFormIDCk(PNAM, 'Parent', [LAYR]) - ]); - - wbRecord(LENS, 'Lens Flare', [ - wbEDID, - wbFloat(CNAM, 'Color Influence'), - wbFloat(DNAM, 'Fade Distance Radius Scale'), - wbInteger(LFSP, 'Count', itU32, nil, cpBenign), - wbRArrayS('Lens Flare Sprites', - wbRStructSK([0], 'Flare', [ - wbString(DNAM, 'Lens Flare Sprite ID'), - wbString(FNAM, 'Texture'), - wbStruct(LFSD, 'Lens Flare Data', [ - wbFloatColors('Tint'), - wbFloat('Width'), - wbFloat('Height'), - wbFloat('Position'), - wbFloat('Angular Fade'), - wbFloat('Opacity'), - wbInteger('Flags', itU32, wbFlags([ - {0x01} 'Rotates', - {0x02} 'Shrinks When Occluded' - ])) - ]) - ], []), - cpNormal, False, nil, wbLENSAfterSet - ) - ]); - - {wbRecord(LSPR, 'LSPR', [ - wbEDID - ]); - - wbRecord(MICN, 'MICN', [ - wbEDID - ]);} - - wbRecord(MSWP, 'Material Swap', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00010000} 16, 'Custom Swap' - ])), [ - wbEDID, - wbString(FNAM, 'Tree Folder'), {First FNAM} - wbRArrayS('Material Substitutions', - wbRStructSK([0], 'Substitution', [ - wbString(BNAM, 'Original Material'), - wbString(SNAM, 'Replacement Material'), - wbString(FNAM, 'Tree Folder (obsolete)'), {Unused, will be moved up to First FNAM} - wbFloat(CNAM, 'Color Remapping Index') - ], []) - ) - ]); - - wbRecord(NOCM, 'Navigation Mesh Obstacle Manager', [ - wbRArray('Unknown', - wbRStruct('Unknown', [ - wbInteger(INDX, 'Index', itU32), - wbRArray('Unknown', wbUnknown(DATA)), - wbUnknown(INTV), - wbString(NAM1, 'Model') - ], []) - ) - ]); - -end; - -procedure DefineFO4s; -begin - wbRecord(NOTE, 'Note', [ - wbEDID, - wbVMAD, - wbOBND, - wbPTRN, - wbFULL, - wbMODL, - wbICON, - wbYNAM, - wbZNAM, - wbInteger(DNAM, 'Type', itU8, wbEnum([ - 'Sound', - 'Voice', - 'Program', - 'Terminal' - ]), cpNormal, True), - wbStruct(DATA, '', [ // was DNAM before form version 65. Now holds value and weight - wbInteger('Value', itU32), - wbFloat('Weight') - ]), - wbUnion(SNAM, 'Data', wbNOTEDataDecider, [ - wbByteArray('Unused', 4), - wbFormIDCk('Sound', [SNDR]), - wbFormIDCk('Scene', [SCEN]), - wbFormIDCk('Terminal', [TERM]) - ]), - wbString(PNAM, 'Program File') - ]); - - wbRecord(OMOD, 'Object Modification', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000008} 4, 'Legendary Mod', - {0x00000040} 7, 'Mod Collection' - ])), [ - wbEDID, - wbFULL, - wbDESC, - wbMODL, - wbStruct(DATA, 'Data', [ - wbInteger('Include Count', itU32), - wbInteger('Property Count', itU32), - wbByteArray('Unused', 2, cpIgnore), - wbInteger('Form Type', itU32, wbEnum([], [ - Sig2Int(ARMO), 'Armor', - Sig2Int(NPC_), 'Non-player character', - Sig2Int(WEAP), 'Weapon', - Sig2Int(NONE), 'None' - ])), - wbByteArray('Unused', 2, cpIgnore), - wbFormIDCk('Attach Point', [KYWD, NULL]), - wbArray('Attach Parent Slots', wbFormIDCk('Keyword', [KYWD, NULL]), -1), - // no way to change these in CK, legacy data leftover? - wbArray('Items', wbStruct('Item', [ - wbByteArray('Value 1', 4), - wbByteArray('Value 2', 4) - ]), -1), - // should not be sorted - wbArray('Includes', wbStruct('Include', [ - wbFormIDCk('Mod', [OMOD]), - wbInteger('Minimum Level', itU8), - wbInteger('Optional', itU8, wbBoolEnum), - wbInteger('Don''t Use All', itU8, wbBoolEnum) - ]), wbOMODDataIncludeCounter, cpNormal, False, nil, wbOMODincludeAfterSet), - wbObjectModProperties - ], cpNormal, False, nil, -1, nil, wbOMODdataAfterSet), - wbArray(MNAM, 'Target OMOD Keywords', wbFormIDCk('Keyword', [KYWD])), - wbArray(FNAM, 'Filter Keywords', wbFormIDCk('Keyword', [KYWD])), - wbFormIDCk(LNAM, 'Loose Mod', sigBaseObjects), - wbInteger(NAM1, 'Priority', itU8), - wbFLTR - ]); - - wbRecord(OVIS, 'Object Visibility Manager', [ - wbRArray('Unknown', - wbRStruct('Unknown', [ - wbFormIDCk(INDX, 'Object', [STAT]), - wbStruct(DATA, 'Object Bounds', [ - wbFloat('X1'), - wbFloat('Y1'), - wbFloat('Z1'), - wbFloat('X2'), - wbFloat('Y2'), - wbFloat('Z2') - ]) - ], []) - ) - ]); - - wbRecord(PKIN, 'Pack-In', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000200} 9, 'Prefab' - ])), [ - wbEDID, - wbOBND, - wbFLTR, - wbFormIDCk(CNAM, 'Cell', [CELL]), - wbInteger(VNAM, 'Version', itU32) - ]); - - wbRecord(RFGP, 'Reference Group', [ - wbEDID, - wbString(NNAM, 'Name'), - wbFormIDCk(RNAM, 'Reference', sigReferences), - wbUnknown(PNAM) - ]); - - {wbRecord(RGDL, 'RGDL', [ - wbEDID - ]);} - - wbRecord(SCCO, 'Scene Collection', [ - wbEDID, - wbFormIDCk(QNAM, 'Quest', [QUST]), - wbRArray('Scenes', - wbRStruct('Scene', [ - wbFormIDCk(SNAM, 'Scene', [SCEN]), - wbStruct(XNAM, 'Unknown', [ - wbInteger('Unknown', itS32), - wbInteger('Unknown', itS32) - ]) - ], []) - ), - wbUnknown(VNAM, cpNormal, True), - wbRArray('Unknown', wbStruct(XNAM, 'Unknown', [ - wbInteger('Unknown', itS32), - wbInteger('Unknown', itS32) - ])), - wbUnknown(VNAM, cpNormal, True) - ]); - - wbRecord(SCOL, 'Static Collection', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 4, 'Non Occluder', - {0x00000200} 9, 'Hidden From Local Map', - {0x00000400} 10, 'Unknown 10', - {0x00000800} 11, 'Used as Platform', - {0x00008000} 15, 'Has Distant LOD', - {0x02000000} 25, 'Obstacle', - {0x04000000} 26, 'NavMesh Generation - Filter', - {0x08000000} 27, 'NavMesh Generation - Bounding Box', - {0x40000000} 30, 'NavMesh Generation - Ground' - ])), [ - wbEDID, - wbOBNDReq, - wbPTRN, - wbMODL, - wbFULL, - wbFLTR, - wbRStructsSK('Parts', 'Part', [0], [ - wbFormIDCk(ONAM, 'Static', [ACTI, ALCH, AMMO, BOOK, CONT, DOOR, FURN, MISC, MSTT, STAT, TERM, WEAP]), - wbArrayS(DATA, 'Placements', wbStruct('Placement', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]), - wbFloat('Scale') - ]), 0, cpNormal, True) - ], [], cpNormal, True) - ]); - - wbRecord(SCSN, 'Audio Category Snapshot', [ - wbEDID, - wbInteger(PNAM, 'Priority', itU16), - wbRArray('Category Multipliers', wbStruct(CNAM, 'Category Multiplier', [ - wbFormIDCk('Categoty', [SNCT]), - wbFloat('Multiplier') - ])) - ]); - -end; - -procedure DefineFO4t; -begin - {wbRecord(SKIL, 'SKIL', [ - wbEDID - ]);} - - wbRecord(STAG, 'Animation Sound Tag Set', [ - wbEDID, - wbRArray('Sounds', wbStruct(TNAM, 'Sound', [ - wbFormIDCk('Sound', [SNDR, NULL]), - wbString('Action') - ])) - ]); - - wbRecord(TERM, 'Terminal', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 4, 'Unknown 4', - {0x00002000} 13, 'Unknown 13', - {0x00008000} 15, 'Has Distant LOD', - {0x00010000} 16, 'Random Anim Start' - ])), [ - wbEDID, - wbVMADFragmentedPERK, // same fragments format as in PERK - wbOBNDReq, - wbPTRN, - wbLString(NAM0, 'Header Text'), - wbLString(WNAM, 'Welcome Text'), - wbFULL, - wbMODL, - wbKSIZ, - wbKWDAs, - wbPRPS, - wbUnknown(PNAM), - wbFormIDCk(SNAM, 'Looping Sound', [SNDR]), - wbUnknown(FNAM), - wbCOCT, - wbCNTOs, - wbMNAMFurnitureMarker, - wbByteArray(WBDT, 'Workbench Data (unused)', 0), - wbString(XMRK, 'Marker Model'), - wbSNAMMarkerParams, - wbInteger(BSIZ, 'Count', itU32, nil, cpBenign), - wbRArray('Body Text', - wbRStruct('Item', [ - wbLString(BTXT, 'Text', 0, cpTranslate), - wbCTDAs - ], []), - cpNormal, False, nil, wbTERMDisplayItemsAfterSet - ), - wbInteger(ISIZ, 'Count', itU32, nil, cpBenign), - wbRArray('Menu Items', - wbRStruct('Menu Item', [ - wbLString(ITXT, 'Item Text', 0, cpTranslate), - wbLString(RNAM, 'Response Text', 0, cpTranslate), - wbInteger(ANAM, 'Type', itU8, wbEnum([ - {0} 'Unknown 0', - {1} 'Unknown 1', - {2} 'Unknown 2', - {3} 'Unknown 3', - {4} 'Submenu - Terminal', - {5} 'Submenu - Return to Top Level', - {6} 'Submenu - Force Redraw', - {7} 'Unknown 7', - {8} 'Display Text' - ]), cpNormal, True), - wbInteger(ITID, 'Item ID', itU16), - wbLString(UNAM, 'Display Text', 0, cpTranslate), - wbString(VNAM, 'Show Image'), - wbFormIDCk(TNAM, 'Submenu', [TERM]), - wbCTDAs - ], []), - cpNormal, False, nil, wbTERMMenuItemsAfterSet - ) - ]); - - {wbRecord(TLOD, 'TLOD', [ - wbEDID - ]); - - wbRecord(TOFT, 'TOFT', [ - wbEDID - ]);} - - wbRecord(TRNS, 'Transform', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00008000} 16, 'Around Origin' - ])), [ - wbEDID, - wbStruct(DATA, 'Data', [ - wbPosRot, - wbFloat('Scale'), - wbFloat('Zoom Min'), - wbFloat('Zoom Max') - ], cpNormal, True, nil, 2) - ]); - - wbRecord(ZOOM, 'Zoom', [ - wbEDID, - wbStruct(GNAM, 'Data', [ - wbFloat('FOV Mult'), - wbInteger('Overlay', itU32, wbEnum([ - { 0} 'Default', - { 1} 'Fine', - { 2} 'Duplex', - { 3} 'German', - { 4} 'Dot', - { 5} 'Mil-Dot', - { 6} 'Circle', - { 7} 'Old Rangefind', - { 8} 'Modern Rangefind', - { 9} 'SVD', - {10} 'Hand Painted', - {11} 'Binoculars', - {12} 'Cross', - {13} 'Double Zero', - {14} 'Rangefinder 1', - {15} 'Rangefinder 2', - {16} 'Rectangle' - ])), - wbFormIDCk('Imagespace Modifier', [IMAD, NULL]), - wbStruct('Camera Offset', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]) - ]) - ]); - -end; - -procedure DefineFO4u; -begin - wbAddGroupOrder(GMST); - wbAddGroupOrder(KYWD); - wbAddGroupOrder(LCRT); - wbAddGroupOrder(AACT); - wbAddGroupOrder(TRNS); - wbAddGroupOrder(CMPO); - wbAddGroupOrder(TXST); - //wbAddGroupOrder(MICN); - wbAddGroupOrder(GLOB); - wbAddGroupOrder(DMGT); - wbAddGroupOrder(CLAS); - wbAddGroupOrder(FACT); - wbAddGroupOrder(HDPT); - //wbAddGroupOrder(EYES); - wbAddGroupOrder(RACE); - wbAddGroupOrder(SOUN); - wbAddGroupOrder(ASPC); - //wbAddGroupOrder(SKIL); - wbAddGroupOrder(MGEF); - //wbAddGroupOrder(SCPT);{>>> Unused in Skyrim, but contained in Skyrim.esm <<<} - wbAddGroupOrder(LTEX); - wbAddGroupOrder(ENCH); - wbAddGroupOrder(SPEL); - //wbAddGroupOrder(SCRL); - wbAddGroupOrder(ACTI); - wbAddGroupOrder(TACT); - wbAddGroupOrder(ARMO); - wbAddGroupOrder(BOOK); - wbAddGroupOrder(CONT); - wbAddGroupOrder(DOOR); - wbAddGroupOrder(INGR); - wbAddGroupOrder(LIGH); - wbAddGroupOrder(MISC); - wbAddGroupOrder(STAT); - wbAddGroupOrder(SCOL); - wbAddGroupOrder(MSTT); - wbAddGroupOrder(GRAS); - wbAddGroupOrder(TREE); - wbAddGroupOrder(FLOR); - wbAddGroupOrder(FURN); - wbAddGroupOrder(WEAP); - wbAddGroupOrder(AMMO); - wbAddGroupOrder(NPC_); - wbAddGroupOrder(LVLN); - wbAddGroupOrder(KEYM); - wbAddGroupOrder(ALCH); - wbAddGroupOrder(IDLM); - wbAddGroupOrder(NOTE); - wbAddGroupOrder(PROJ); - wbAddGroupOrder(HAZD); - wbAddGroupOrder(BNDS); - //wbAddGroupOrder(SLGM); - wbAddGroupOrder(TERM); - wbAddGroupOrder(LVLI); - wbAddGroupOrder(WTHR); - wbAddGroupOrder(CLMT); - wbAddGroupOrder(SPGD); - wbAddGroupOrder(RFCT); - wbAddGroupOrder(REGN); - wbAddGroupOrder(NAVI); - wbAddGroupOrder(CELL); - //wbAddGroupOrder(REFR); - //wbAddGroupOrder(ACHR); - //wbAddGroupOrder(PMIS); - //wbAddGroupOrder(PARW); - //wbAddGroupOrder(PGRE); - //wbAddGroupOrder(PBEA); - //wbAddGroupOrder(PFLA); - //wbAddGroupOrder(PCON); - //wbAddGroupOrder(PBAR); - //wbAddGroupOrder(PHZD); - wbAddGroupOrder(WRLD); - //wbAddGroupOrder(LAND); - //wbAddGroupOrder(NAVM); - //wbAddGroupOrder(TLOD); - //wbAddGroupOrder(DIAL); - //wbAddGroupOrder(INFO); - wbAddGroupOrder(QUST); - wbAddGroupOrder(IDLE); - wbAddGroupOrder(PACK); - wbAddGroupOrder(CSTY); - wbAddGroupOrder(LSCR); - wbAddGroupOrder(LVSP); - wbAddGroupOrder(ANIO); - wbAddGroupOrder(WATR); - wbAddGroupOrder(EFSH); - //wbAddGroupOrder(TOFT); - wbAddGroupOrder(EXPL); - wbAddGroupOrder(DEBR); - wbAddGroupOrder(IMGS); - wbAddGroupOrder(IMAD); - wbAddGroupOrder(FLST); - wbAddGroupOrder(PERK); - wbAddGroupOrder(BPTD); - wbAddGroupOrder(ADDN); - wbAddGroupOrder(AVIF); - wbAddGroupOrder(CAMS); - wbAddGroupOrder(CPTH); - wbAddGroupOrder(VTYP); - wbAddGroupOrder(MATT); - wbAddGroupOrder(IPCT); - wbAddGroupOrder(IPDS); - wbAddGroupOrder(ARMA); - wbAddGroupOrder(ECZN); - wbAddGroupOrder(LCTN); - wbAddGroupOrder(MESG); - //wbAddGroupOrder(RGDL);{>>> Unused in Skyrim, but contained in Skyrim.esm <<<} - wbAddGroupOrder(DOBJ); - wbAddGroupOrder(DFOB); - wbAddGroupOrder(LGTM); - wbAddGroupOrder(MUSC); - wbAddGroupOrder(FSTP); - wbAddGroupOrder(FSTS); - wbAddGroupOrder(SMBN); - wbAddGroupOrder(SMQN); - wbAddGroupOrder(SMEN); - wbAddGroupOrder(DLBR); - wbAddGroupOrder(MUST); - wbAddGroupOrder(DLVW); - //wbAddGroupOrder(WOOP); - //wbAddGroupOrder(SHOU); - wbAddGroupOrder(EQUP); - wbAddGroupOrder(RELA); - wbAddGroupOrder(SCEN); - wbAddGroupOrder(ASTP); - wbAddGroupOrder(OTFT); - wbAddGroupOrder(ARTO); - wbAddGroupOrder(MATO); - wbAddGroupOrder(MOVT); - wbAddGroupOrder(SNDR); - wbAddGroupOrder(DUAL); // doesn't exist but can be created in CK - wbAddGroupOrder(SNCT); - wbAddGroupOrder(SOPM); - wbAddGroupOrder(COLL); - wbAddGroupOrder(CLFM); - wbAddGroupOrder(REVB); - wbAddGroupOrder(PKIN); - wbAddGroupOrder(RFGP); - wbAddGroupOrder(AMDL); - wbAddGroupOrder(LAYR); - wbAddGroupOrder(COBJ); - wbAddGroupOrder(OMOD); - wbAddGroupOrder(MSWP); - wbAddGroupOrder(ZOOM); - wbAddGroupOrder(INNR); - wbAddGroupOrder(KSSM); - wbAddGroupOrder(AECH); - wbAddGroupOrder(SCCO); - wbAddGroupOrder(AORU); - wbAddGroupOrder(SCSN); - wbAddGroupOrder(STAG); - wbAddGroupOrder(NOCM); - wbAddGroupOrder(LENS); - //wbAddGroupOrder(LSPR); - wbAddGroupOrder(GDRY); - wbAddGroupOrder(OVIS); -end; - -procedure DefineFO4; -begin - DefineFO4a; - DefineFO4b; - DefineFO4c; - DefineFO4d; - DefineFO4e; - DefineFO4f; - DefineFO4g; - DefineFO4h; - DefineFO4i; - DefineFO4j; - DefineFO4k; - DefineFO4l; - DefineFO4m; - DefineFO4n; - DefineFO4o; - DefineFO4p; - DefineFO4q; - DefineFO4r; - DefineFO4s; - DefineFO4t; - DefineFO4u; - - SetLength(wbOfficialDLC, 6); - wbOfficialDLC[0] := 'DLCRobot.esm'; - wbOfficialDLC[1] := 'DLCWorkshop01.esm'; - wbOfficialDLC[2] := 'DLCCoast.esm'; - wbOfficialDLC[3] := 'DLCWorkshop02.esm'; - wbOfficialDLC[4] := 'DLCWorkshop03.esm'; - wbOfficialDLC[5] := 'DLCNukaWorld.esm'; -end; - -initialization -end. diff --git a/lib/xedit/wbDefinitionsTES3.pas b/lib/xedit/wbDefinitionsTES3.pas deleted file mode 100644 index ec867de..0000000 --- a/lib/xedit/wbDefinitionsTES3.pas +++ /dev/null @@ -1,4962 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} -//------------------------------------------------------------------------------ -// Placeholder for future expansion -//------------------------------------------------------------------------------ -unit wbDefinitionsTES3; - -interface - -uses - wbInterface; - -var - wbPKDTFlags: IwbFlagsDef; - wbServiceFlags: IwbFlagsDef; - - wbAxisEnum: IwbEnumDef; - wbBlendModeEnum: IwbEnumDef; - wbBlendOpEnum: IwbEnumDef; - wbCrimeTypeEnum: IwbEnumDef; - wbFormTypeEnum: IwbEnumDef; - wbFunctionsEnum: IwbEnumDef; - wbMagicSchoolEnum: IwbEnumDef; - wbMusicEnum: IwbEnumDef; - wbOBMEResolutionInfo: IwbEnumDef; - wbPKDTType: IwbEnumDef; - wbQuadrantEnum: IwbEnumDef; - wbSexEnum: IwbEnumDef; - wbSkillEnum: IwbEnumDef; - wbSoulGemEnum: IwbEnumDef; - wbSpecializationEnum: IwbEnumDef; - wbZTestFuncEnum: IwbEnumDef; - -procedure DefineTES3; - -implementation - -uses - Types, - Classes, - SysUtils, - Math, - Variants; - -const - ACBS : TwbSignature = 'ACBS'; - ACHR : TwbSignature = 'ACHR'; - ACRE : TwbSignature = 'ACRE'; - TRGT : TwbSignature = 'TRGT'; - ACTI : TwbSignature = 'ACTI'; - AIDT : TwbSignature = 'AIDT'; - ALCH : TwbSignature = 'ALCH'; - AMMO : TwbSignature = 'AMMO'; - ANAM : TwbSignature = 'ANAM'; - ANIO : TwbSignature = 'ANIO'; - APPA : TwbSignature = 'APPA'; - ARMO : TwbSignature = 'ARMO'; - ATTR : TwbSignature = 'ATTR'; - ATXT : TwbSignature = 'ATXT'; - BMDT : TwbSignature = 'BMDT'; - BNAM : TwbSignature = 'BNAM'; - BOOK : TwbSignature = 'BOOK'; - BSGN : TwbSignature = 'BSGN'; - BTXT : TwbSignature = 'BTXT'; - CELL : TwbSignature = 'CELL'; - CLAS : TwbSignature = 'CLAS'; - CLMT : TwbSignature = 'CLMT'; - CLOT : TwbSignature = 'CLOT'; - CNAM : TwbSignature = 'CNAM'; - CNTO : TwbSignature = 'CNTO'; - CONT : TwbSignature = 'CONT'; - CREA : TwbSignature = 'CREA'; - CSAD : TwbSignature = 'CSAD'; - CSCR : TwbSignature = 'CSCR'; - CSDC : TwbSignature = 'CSDC'; - CSDI : TwbSignature = 'CSDI'; - CSDT : TwbSignature = 'CSDT'; - CSTD : TwbSignature = 'CSTD'; - CSTY : TwbSignature = 'CSTY'; - CTDA : TwbSignature = 'CTDA'; - CTDT : TwbSignature = 'CTDT'; - DATA : TwbSignature = 'DATA'; - DATX : TwbSignature = 'DATX'; - DELE : TwbSignature = 'DELE'; - DESC : TwbSignature = 'DESC'; - DIAL : TwbSignature = 'DIAL'; - DNAM : TwbSignature = 'DNAM'; - DOOR : TwbSignature = 'DOOR'; - EDID : TwbSignature = 'EDID'; - EDDX : TwbSignature = 'EDDX'; - EFID : TwbSignature = 'EFID'; - EFIT : TwbSignature = 'EFIT'; - ACVA : TwbSignature = 'ACVA'; - EFII : TwbSignature = 'EFII'; - EFXX : TwbSignature = 'EFXX'; - EFIX : TwbSignature = 'EFIX'; - EFME : TwbSignature = 'EFME'; - EFSH : TwbSignature = 'EFSH'; - ENAM : TwbSignature = 'ENAM'; - ENCH : TwbSignature = 'ENCH'; - ENIT : TwbSignature = 'ENIT'; - ESCE : TwbSignature = 'ESCE'; - EYES : TwbSignature = 'EYES'; - FACT : TwbSignature = 'FACT'; - FGGA : TwbSignature = 'FGGA'; - FGGS : TwbSignature = 'FGGS'; - FGTS : TwbSignature = 'FGTS'; - FLOR : TwbSignature = 'FLOR'; - FLTV : TwbSignature = 'FLTV'; - FNAM : TwbSignature = 'FNAM'; - FULL : TwbSignature = 'FULL'; - FURN : TwbSignature = 'FURN'; - GLOB : TwbSignature = 'GLOB'; - GMST : TwbSignature = 'GMST'; - GNAM : TwbSignature = 'GNAM'; - GRAS : TwbSignature = 'GRAS'; - HAIR : TwbSignature = 'HAIR'; - HCLR : TwbSignature = 'HCLR'; - HEDR : TwbSignature = 'HEDR'; - HNAM : TwbSignature = 'HNAM'; - ICO2 : TwbSignature = 'ICO2'; - ICON : TwbSignature = 'ICON'; - IDLE : TwbSignature = 'IDLE'; - NULL : TwbSignature = 'NULL'; - INAM : TwbSignature = 'INAM'; - INDX : TwbSignature = 'INDX'; - INFO : TwbSignature = 'INFO'; - INGR : TwbSignature = 'INGR'; - JNAM : TwbSignature = 'JNAM'; - KEYM : TwbSignature = 'KEYM'; - KFFZ : TwbSignature = 'KFFZ'; - LAND : TwbSignature = 'LAND'; - LIGH : TwbSignature = 'LIGH'; - LNAM : TwbSignature = 'LNAM'; - LSCR : TwbSignature = 'LSCR'; - LTEX : TwbSignature = 'LTEX'; - LVLC : TwbSignature = 'LVLC'; - LVLD : TwbSignature = 'LVLD'; - LVLF : TwbSignature = 'LVLF'; - LVLI : TwbSignature = 'LVLI'; - LVLO : TwbSignature = 'LVLO'; - LVSP : TwbSignature = 'LVSP'; - MAST : TwbSignature = 'MAST'; - MGEF : TwbSignature = 'MGEF'; - MISC : TwbSignature = 'MISC'; - MNAM : TwbSignature = 'MNAM'; - MO2B : TwbSignature = 'MO2B'; - MO2T : TwbSignature = 'MO2T'; - MO3B : TwbSignature = 'MO3B'; - MO3T : TwbSignature = 'MO3T'; - MO4B : TwbSignature = 'MO4B'; - MO4T : TwbSignature = 'MO4T'; - MOD2 : TwbSignature = 'MOD2'; - MOD3 : TwbSignature = 'MOD3'; - MOD4 : TwbSignature = 'MOD4'; - MODB : TwbSignature = 'MODB'; - MODL : TwbSignature = 'MODL'; - MODT : TwbSignature = 'MODT'; - NAM0 : TwbSignature = 'NAM0'; - NAM1 : TwbSignature = 'NAM1'; - NAM2 : TwbSignature = 'NAM2'; - NAM9 : TwbSignature = 'NAM9'; - NAME : TwbSignature = 'NAME'; - NIFT : TwbSignature = 'NIFT'; - NIFZ : TwbSignature = 'NIFZ'; - NPC_ : TwbSignature = 'NPC_'; - OFST : TwbSignature = 'OFST'; - OBME : TwbSignature = 'OBME'; - ONAM : TwbSignature = 'ONAM'; - PACK : TwbSignature = 'PACK'; - PFIG : TwbSignature = 'PFIG'; - PFPC : TwbSignature = 'PFPC'; - PGAG : TwbSignature = 'PGAG'; - PGRD : TwbSignature = 'PGRD'; - PGRI : TwbSignature = 'PGRI'; - PGRL : TwbSignature = 'PGRL'; - PGRP : TwbSignature = 'PGRP'; - PGRR : TwbSignature = 'PGRR'; - PKDT : TwbSignature = 'PKDT'; - PKID : TwbSignature = 'PKID'; - PLDT : TwbSignature = 'PLDT'; - PNAM : TwbSignature = 'PNAM'; - PSDT : TwbSignature = 'PSDT'; - PTDT : TwbSignature = 'PTDT'; - QNAM : TwbSignature = 'QNAM'; - QSDT : TwbSignature = 'QSDT'; - QSTA : TwbSignature = 'QSTA'; - QSTI : TwbSignature = 'QSTI'; - QSTR : TwbSignature = 'QSTR'; - TPIC : TwbSignature = 'TPIC'; - QUST : TwbSignature = 'QUST'; - RACE : TwbSignature = 'RACE'; - RCLR : TwbSignature = 'RCLR'; - RDAT : TwbSignature = 'RDAT'; - RDGS : TwbSignature = 'RDGS'; - RDMD : TwbSignature = 'RDMD'; - RDMP : TwbSignature = 'RDMP'; - RDOT : TwbSignature = 'RDOT'; - RDSD : TwbSignature = 'RDSD'; - RDWT : TwbSignature = 'RDWT'; - REFR : TwbSignature = 'REFR'; - PLYR : TwbSignature = 'PLYR'; - REGN : TwbSignature = 'REGN'; - RNAM : TwbSignature = 'RNAM'; - ROAD : TwbSignature = 'ROAD'; - RPLD : TwbSignature = 'RPLD'; - RPLI : TwbSignature = 'RPLI'; - SBSP : TwbSignature = 'SBSP'; - SCDA : TwbSignature = 'SCDA'; - SCHD : TwbSignature = 'SCHD'; - SCHR : TwbSignature = 'SCHR'; - SCIT : TwbSignature = 'SCIT'; - SCPT : TwbSignature = 'SCPT'; - SCRI : TwbSignature = 'SCRI'; - SCRO : TwbSignature = 'SCRO'; - SCRV : TwbSignature = 'SCRV'; - SCTX : TwbSignature = 'SCTX'; - SCVR : TwbSignature = 'SCVR'; - SGST : TwbSignature = 'SGST'; - SKIL : TwbSignature = 'SKIL'; - SLCP : TwbSignature = 'SLCP'; - SLGM : TwbSignature = 'SLGM'; - SLSD : TwbSignature = 'SLSD'; - SNAM : TwbSignature = 'SNAM'; - SNDD : TwbSignature = 'SNDD'; - SNDX : TwbSignature = 'SNDX'; - SOUL : TwbSignature = 'SOUL'; - SOUN : TwbSignature = 'SOUN'; - SPEL : TwbSignature = 'SPEL'; - SPIT : TwbSignature = 'SPIT'; - SPLO : TwbSignature = 'SPLO'; - STAT : TwbSignature = 'STAT'; - TCLF : TwbSignature = 'TCLF'; - TCLT : TwbSignature = 'TCLT'; - TES3 : TwbSignature = 'TES3'; - TNAM : TwbSignature = 'TNAM'; - TRDT : TwbSignature = 'TRDT'; - TREE : TwbSignature = 'TREE'; - UNAM : TwbSignature = 'UNAM'; - VCLR : TwbSignature = 'VCLR'; - VHGT : TwbSignature = 'VHGT'; - VNAM : TwbSignature = 'VNAM'; - VNML : TwbSignature = 'VNML'; - VTEX : TwbSignature = 'VTEX'; - VTXT : TwbSignature = 'VTXT'; - WATR : TwbSignature = 'WATR'; - WEAP : TwbSignature = 'WEAP'; - WLST : TwbSignature = 'WLST'; - WNAM : TwbSignature = 'WNAM'; - WRLD : TwbSignature = 'WRLD'; - WTHR : TwbSignature = 'WTHR'; - XACT : TwbSignature = 'XACT'; - XCCM : TwbSignature = 'XCCM'; - XCHG : TwbSignature = 'XCHG'; - XCLC : TwbSignature = 'XCLC'; - XCLL : TwbSignature = 'XCLL'; - XCLR : TwbSignature = 'XCLR'; - XCLW : TwbSignature = 'XCLW'; - XCMT : TwbSignature = 'XCMT'; - XCNT : TwbSignature = 'XCNT'; - XCWT : TwbSignature = 'XCWT'; - XESP : TwbSignature = 'XESP'; - XGLB : TwbSignature = 'XGLB'; - XHLT : TwbSignature = 'XHLT'; - XHRS : TwbSignature = 'XHRS'; - XLCM : TwbSignature = 'XLCM'; - XLOC : TwbSignature = 'XLOC'; - XLOD : TwbSignature = 'XLOD'; - XMRC : TwbSignature = 'XMRC'; - XMRK : TwbSignature = 'XMRK'; - XNAM : TwbSignature = 'XNAM'; - XOWN : TwbSignature = 'XOWN'; - XPCI : TwbSignature = 'XPCI'; - XRGD : TwbSignature = 'XRGD'; - XRNK : TwbSignature = 'XRNK'; - XRTM : TwbSignature = 'XRTM'; - XSCL : TwbSignature = 'XSCL'; - XSED : TwbSignature = 'XSED'; - XSOL : TwbSignature = 'XSOL'; - XTEL : TwbSignature = 'XTEL'; - XTRG : TwbSignature = 'XTRG'; - XXXX : TwbSignature = 'XXXX'; - ZNAM : TwbSignature = 'ZNAM'; - -var - wbEDID: IwbSubRecordDef; - wbXOWN: IwbSubRecordDef; - wbXGLB: IwbSubRecordDef; - wbXRGD: IwbSubRecordDef; - wbSLSD: IwbSubRecordDef; - wbBodyDataIndex: IwbSubRecordDef; - wbSPLO: IwbSubRecordDef; - wbSPLOs: IwbSubRecordArrayDef; - wbCNTO: IwbSubRecordDef; - wbCNTOs: IwbSubRecordArrayDef; - wbCSDT: IwbSubRecordStructDef; - wbCSDTs: IwbSubRecordArrayDef; - wbFULL: IwbSubRecordDef; - wbFULLReq: IwbSubRecordDef; - wbXNAM: IwbSubRecordDef; - wbXNAMs: IwbSubRecordArrayDef; - wbDESC: IwbSubRecordDef; - wbXSCL: IwbSubRecordDef; - wbDATAPosRot : IwbSubRecordDef; - wbPosRot : IwbStructDef; - wbMODL: IwbSubRecordStructDef; - wbCTDA: IwbSubRecordUnionDef; - wbSCHR: IwbSubRecordUnionDef; - wbCTDAs: IwbSubRecordArrayDef; - wbSCROs: IwbSubRecordArrayDef; - wbPGRP: IwbSubRecordDef; - wbResultScript: IwbSubRecordStructDef; -// wbResultScriptOld: IwbSubRecordStructDef; - wbSCRI: IwbSubRecordDef; - wbFaceGen: IwbSubRecordStructDef; - wbENAM: IwbSubRecordDef; - wbFGGS: IwbSubRecordDef; - wbXLOD: IwbSubRecordDef; - wbXESP: IwbSubRecordDef; - wbICON: IwbSubRecordDef; - wbEFID: IwbSubRecordDef; - wbEFIDOBME: IwbSubRecordDef; - wbEFIT: IwbSubRecordDef; - wbEFITOBME: IwbSubRecordDef; - wbEFIX: IwbSubRecordDef; - wbSCIT: IwbSubRecordStructDef; - wbSCITOBME: IwbSubRecordStructDef; - wbEffects: IwbSubRecordUnionDef; - -function wbClmtMoonsPhaseLength(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - PhaseLength : Byte; - Masser : Boolean; - Secunda : Boolean; -begin - Result := ''; - if aType = ctToSortKey then begin - Result := IntToHex64(aInt, 2); - end else if aType = ctToStr then begin - PhaseLength := aInt mod 64; - Masser := (aInt and 64) <> 0; - Secunda := (aInt and 128) <> 0; - if Masser then - if Secunda then - Result := 'Masser, Secunda / ' - else - Result := 'Masser / ' - else - if Secunda then - Result := 'Secunda / ' - else - Result := 'No Moon / '; - Result := Result + IntToStr(PhaseLength); - end; -end; - -function wbClmtTime(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - Result := TimeToStr( EncodeTime(aInt div 6, (aInt mod 6) * 10, 0, 0) ); -end; - -var - wbCtdaTypeFlags : IwbFlagsDef; - -function wbCtdaType(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - s: string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt and $F0 of - $00 : Result := 'Equal to'; - $20 : Result := 'Not equal to'; - $40 : Result := 'Greater than'; - $60 : Result := 'Greater than or equal to'; - $80 : Result := 'Less than'; - $A0 : Result := 'Less than or equal to'; - else - Result := '' - end; - - if not Assigned(wbCtdaTypeFlags) then - wbCtdaTypeFlags := wbFlags([ - {0x01} 'Or', - {0x02} 'Run on target', - {0x04} 'Use global' - ]); - - s := wbCtdaTypeFlags.ToString(aInt and $0F, aElement); - - if s <> '' then - Result := Result + ' / ' + s; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - Exit; - end; - ctCheck: begin - case aInt and $F0 of - $00, $20, $40, $60, $80, $A0 : Result := ''; - else - Result := '' - end; - - if not Assigned(wbCtdaTypeFlags) then - wbCtdaTypeFlags := wbFlags([ - {0x01} 'Or', - {0x02} 'Run on target', - {0x04} 'Use global' - ]); - - s := wbCtdaTypeFlags.Check(aInt and $0F, aElement); - - if s <> '' then - Result := Result + ' / ' + s; - end; - end; -end; - -function wbIdleAnam(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt and not $80 of - 0: Result := 'Lower Body'; - 1: Result := 'Left Arm'; - 2: Result := 'Left Hand'; - 3: Result := 'Right Arm'; - 4: Result := 'Special Idle'; - 5: Result := 'Whole Body'; - 6: Result := 'Upper Body'; - else - Result := ''; - end; - - if (aInt and $80) = 0 then - Result := Result + ', Must return a file'; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - end; - ctCheck: begin - case aInt and not $80 of - 0..6: Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbScaledInt4ToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -const - PlusMinus : array[Boolean] of string = ('+', '-'); -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: Result := FloatToStrF(aInt / 10000, ffFixed, 99, 4); - ctToSortKey: begin - Result := FloatToStrF(aInt / 10000, ffFixed, 99, 4); - if Length(Result) < 22 then - Result := StringOfChar('0', 22 - Length(Result)) + Result; - Result := PlusMinus[aInt < 0] + Result; - end; - ctCheck: Result := ''; - end; -end; - -function wbScaledInt4ToInt(const aString: string; const aElement: IwbElement): Int64; -var - f: Extended; -begin - f := StrToFloat(aString); - f := f * 10000; - Result := Round(f); -end; - -function wbHideFFFF(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - if aInt = $FFFF then - Result := 'None' - else - Result := IntToStr(aInt); -end; - -function wbAtxtPosition(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt div 17, 2) + IntToHex64(aInt mod 17, 2) - else if aType = ctCheck then begin - if (aInt < 0) or (aInt > 288) then - Result := '' - else - Result := ''; - end else if aType = ctToStr then - Result := IntToStr(aInt) + ' -> ' + IntToStr(aInt div 17) + ':' + IntToStr(aInt mod 17); -end; - -function wbWthrDataClassification(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt and not 192 of - 0: Result := 'None'; - 1: Result := 'Pleasant'; - 2: Result := 'Cloudy'; - 3: Result := 'Rainy'; - 4: Result := 'Snow'; - else - Result := ''; - end; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2) - end; - ctCheck: begin - case aInt and not 192 of - 0..4: Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbGLOBFNAM(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt of - Ord('s'): Result := 'Short'; - Ord('l'): Result := 'Long'; - Ord('f'): Result := 'Float'; - else - Result := ''; - end; - end; - ctToSortKey: Result := Chr(aInt); - ctCheck: begin - case aInt of - Ord('s'), Ord('l'), Ord('f'): Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbPlacedAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec: IwbRecord; - Container: IwbContainer; - s: string; -begin - Result := ''; - - Rec := aMainRecord.RecordBySignature['NAME']; - if Assigned(Rec) then begin - s := Trim(Rec.Value); - if s <> '' then - Result := 'places ' + s; - end; - - Container := aMainRecord.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if Assigned(Container) then begin - s := Trim(Container.Name); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'in ' + s; - end; - end; -end; - -function wbCellAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec: IwbRecord; - Container: IwbContainer; - GroupRecord : IwbGroupRecord; - s: string; -begin - Result := ''; - - Rec := aMainRecord.RecordBySignature['XCLC']; - if Assigned(Rec) then - Result := 'at ' + Rec.Elements[0].Value + ',' + Rec.Elements[1].Value; - - Container := aMainRecord.Container; - while Assigned(Container) and not - (Supports(Container, IwbGroupRecord, GroupRecord) and (GroupRecord.GroupType = 1)) do - Container := Container.Container; - - if Assigned(Container) then begin - s := wbFormID.ToString(GroupRecord.GroupLabel, aMainRecord); - if s <> '' then begin - if Result <> '' then - s := s + ' '; - Result := 'in ' + s + Result; - end; - end; -end; - -function wbGMSTUnionDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rEDID: IwbRecord; - s: string; -begin - Result := 1; - rEDID := aElement.Container.RecordBySignature[EDID]; - if Assigned(rEDID) then begin - s := rEDID.Value; - if Length(s) > 0 then - case s[1] of - 's': Result := 0; - 'f': Result := 2; - end; - end; -end; - -function wbMISCActorValueDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - MainRecord : IwbMainRecord; -begin - Result := 0; - - if not Assigned(aElement) then - Exit; - - MainRecord := aElement.ContainingMainRecord; - if not Assigned(MainRecord) then - Exit; - - if (MainRecord.Flags._Flags and $000000C0) = $000000C0 then - Result := 1; -end; - -function wbXLOCFillerDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Container.DataSize = 16 then - Result := 1; -end; - -function wbPACKPKDTDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 1; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Container.DataSize = 4 then - Result := 0; -end; - -function wbREFRXSEDDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Container.DataSize = 4 then - Result := 1; -end; - - -type - TCTDAFunctionParamType = ( - ptNone, - ptInteger, - ptVariableName, //Integer - ptSex, //Enum: Male, Female - ptActorValue, //Enum: wbActorValue - ptCrimeType, //?? Enum - ptAxis, //?? Char - ptFormType, //?? Enum - ptQuestStage, - - ptObjectReference, //REFR, ACHR, ACRE, PGRE - ptInventoryObject, //ARMO, BOOK, MISC, WEAP, AMMO, KEYM, ALCH, NOTE, ARMA - ptActor, //ACHR, ACRE - ptQuest, //QUST - ptFaction, //FACT - ptCell, //CELL - ptClass, //CLAS - ptRace, //RACE - ptActorBase, //NPC_, CREA - ptGlobal, //GLOB - ptWeather, //WTHR - ptPackage, //PACK - ptOwnerOpt, //FACT, NPC_ - ptBirthsign, //BSGN - ptFurniture, //FURN - ptMagicItem, //SPEL - ptMagicEffect, //MGEF - ptWorldspace, //WRLD - ptReferencableObject - ); - - PCTDAFunction = ^TCTDAFunction; - TCTDAFunction = record - Index: Integer; - Name: string; - ParamType1: TCTDAFunctionParamType; - ParamType2: TCTDAFunctionParamType; - end; - -const - wbCTDAFunctions : array[0..168] of TCTDAFunction = ( - (Index: 1; Name: 'GetDistance'; ParamType1: ptObjectReference), - (Index: 5; Name: 'GetLocked'), - (Index: 6; Name: 'GetPos'; ParamType1: ptAxis), - (Index: 8; Name: 'GetAngle'; ParamType1: ptAxis), - (Index: 10; Name: 'GetStartingPos'; ParamType1: ptAxis), - (Index: 11; Name: 'GetStartingAngle'; ParamType1: ptAxis), - (Index: 12; Name: 'GetSecondsPassed'), - (Index: 14; Name: 'GetActorValue'; ParamType1: ptActorValue), - (Index: 18; Name: 'GetCurrentTime'), - (Index: 24; Name: 'GetScale'), - (Index: 27; Name: 'GetLineOfSight'; ParamType1: ptObjectReference), - (Index: 32; Name: 'GetInSameCell'; ParamType1: ptObjectReference), - (Index: 35; Name: 'GetDisabled'), - (Index: 36; Name: 'MenuMode'; ParamType1: ptInteger), - (Index: 39; Name: 'GetDisease'), - (Index: 40; Name: 'GetVampire'), - (Index: 41; Name: 'GetClothingValue'), - (Index: 42; Name: 'SameFaction'; ParamType1: ptActor), - (Index: 43; Name: 'SameRace'; ParamType1: ptActor), - (Index: 44; Name: 'SameSex'; ParamType1: ptActor), - (Index: 45; Name: 'GetDetected'; ParamType1: ptActor), - (Index: 46; Name: 'GetDead'), - (Index: 47; Name: 'GetItemCount'; ParamType1: ptInventoryObject), - (Index: 48; Name: 'GetGold'), - (Index: 49; Name: 'GetSleeping'), - (Index: 50; Name: 'GetTalkedToPC'), - (Index: 53; Name: 'GetScriptVariable'; ParamType1: ptObjectReference; ParamType2: ptVariableName), - (Index: 56; Name: 'GetQuestRunning'; ParamType1: ptQuest), - (Index: 58; Name: 'GetStage'; ParamType1: ptQuest), - (Index: 59; Name: 'GetStageDone'; ParamType1: ptQuest; ParamType2: ptQuestStage), - (Index: 60; Name: 'GetFactionRankDifference'; ParamType1: ptFaction; ParamType2: ptActor), - (Index: 61; Name: 'GetAlarmed'), - (Index: 62; Name: 'IsRaining'), - (Index: 63; Name: 'GetAttacked'), - (Index: 64; Name: 'GetIsCreature'), - (Index: 65; Name: 'GetLockLevel'), - (Index: 66; Name: 'GetShouldAttack'; ParamType1: ptActor), - (Index: 67; Name: 'GetInCell'; ParamType1: ptCell), - (Index: 68; Name: 'GetIsClass'; ParamType1: ptClass), - (Index: 69; Name: 'GetIsRace'; ParamType1: ptRace), - (Index: 70; Name: 'GetIsSex'; ParamType1: ptSex), - (Index: 71; Name: 'GetInFaction'; ParamType1: ptFaction), - (Index: 72; Name: 'GetIsID'; ParamType1: ptReferencableObject), - (Index: 73; Name: 'GetFactionRank'; ParamType1: ptFaction), - (Index: 74; Name: 'GetGlobalValue'; ParamType1: ptGlobal), - (Index: 75; Name: 'IsSnowing'), - (Index: 76; Name: 'GetDisposition'; ParamType1: ptActor), - (Index: 77; Name: 'GetRandomPercent'), - (Index: 79; Name: 'GetQuestVariable'; ParamType1: ptQuest; ParamType2: ptVariableName), - (Index: 80; Name: 'GetLevel'), - (Index: 81; Name: 'GetArmorRating'), - (Index: 84; Name: 'GetDeadCount'; ParamType1: ptActorBase), - (Index: 91; Name: 'GetIsAlerted'), - (Index: 98; Name: 'GetPlayerControlsDisabled'), - (Index: 99; Name: 'GetHeadingAngle'; ParamType1: ptObjectReference), - (Index: 101; Name: 'IsWeaponOut'), - (Index: 102; Name: 'IsTorchOut'), - (Index: 103; Name: 'IsShieldOut'), - (Index: 104; Name: 'IsYielding'), - (Index: 106; Name: 'IsFacingUp'), - (Index: 107; Name: 'GetKnockedState'), - (Index: 108; Name: 'GetWeaponAnimType'), - (Index: 109; Name: 'GetWeaponSkillType'), - (Index: 110; Name: 'GetCurrentAIPackage'), - (Index: 111; Name: 'IsWaiting'), - (Index: 112; Name: 'IsIdlePlaying'), - (Index: 116; Name: 'GetCrimeGold'), - (Index: 122; Name: 'GetCrime'; ParamType1: ptActor; ParamType2: ptCrimeType), - (Index: 125; Name: 'IsGuard'), - (Index: 127; Name: 'CanPayCrimeGold'), - (Index: 128; Name: 'GetFatiguePercentage'), - (Index: 129; Name: 'GetPCIsClass'; ParamType1: ptClass), - (Index: 130; Name: 'GetPCIsRace'; ParamType1: ptRace), - (Index: 131; Name: 'GetPCIsSex'; ParamType1: ptSex), - (Index: 132; Name: 'GetPCInFaction'; ParamType1: ptFaction), - (Index: 133; Name: 'SameFactionAsPC'), - (Index: 134; Name: 'SameRaceAsPC'), - (Index: 135; Name: 'SameSexAsPC'), - (Index: 136; Name: 'GetIsReference'; ParamType1: ptObjectReference), - (Index: 141; Name: 'IsTalking'), - (Index: 142; Name: 'GetWalkSpeed'), - (Index: 143; Name: 'GetCurrentAIProcedure'), - (Index: 144; Name: 'GetTrespassWarningLevel'), - (Index: 145; Name: 'IsTrespassing'), - (Index: 146; Name: 'IsInMyOwnedCell'), - (Index: 147; Name: 'GetWindSpeed'), - (Index: 148; Name: 'GetCurrentWeatherPercent'), - (Index: 149; Name: 'GetIsCurrentWeather'; ParamType1: ptWeather), - (Index: 150; Name: 'IsContinuingPackagePCNear'), - (Index: 153; Name: 'CanHaveFlames'), - (Index: 154; Name: 'HasFlames'), - (Index: 157; Name: 'GetOpenState'), - (Index: 159; Name: 'GetSitting'), - (Index: 160; Name: 'GetFurnitureMarkerID'), - (Index: 161; Name: 'GetIsCurrentPackage'; ParamType1: ptPackage), - (Index: 162; Name: 'IsCurrentFurnitureRef'; ParamType1: ptObjectReference), - (Index: 163; Name: 'IsCurrentFurnitureObj'; ParamType1: ptFurniture), - (Index: 170; Name: 'GetDayOfWeek'), - (Index: 171; Name: 'IsPlayerInJail'), - (Index: 172; Name: 'GetTalkedToPCParam'; ParamType1: ptActor), - (Index: 175; Name: 'IsPCSleeping'), - (Index: 176; Name: 'IsPCAMurderer'), - (Index: 180; Name: 'GetDetectionLevel'; ParamType1: ptActor), - (Index: 182; Name: 'GetEquipped'; ParamType1: ptInventoryObject), - (Index: 185; Name: 'IsSwimming'), - (Index: 190; Name: 'GetAmountSoldStolen'), - (Index: 193; Name: 'GetPCExpelled'; ParamType1: ptFaction), - (Index: 195; Name: 'GetPCFactionMurder'; ParamType1: ptFaction), - (Index: 197; Name: 'GetPCFactionSteal'; ParamType1: ptFaction), - (Index: 199; Name: 'GetPCFactionAttack'; ParamType1: ptFaction), - (Index: 201; Name: 'GetPCFactionSubmitAuthority'; ParamType1: ptFaction), - (Index: 203; Name: 'GetDestroyed'), - (Index: 214; Name: 'HasMagicEffect'; ParamType1: ptMagicEffect), - (Index: 215; Name: 'GetDoorDefaultOpen'), - (Index: 223; Name: 'IsSpellTarget'; ParamType1: ptMagicItem), - (Index: 224; Name: 'GetIsPlayerBirthsign'; ParamType1: ptBirthsign), - (Index: 225; Name: 'GetPersuasionNumber'), - (Index: 227; Name: 'HasVampireFed'), - (Index: 228; Name: 'GetIsClassDefault'; ParamType1: ptClass), - (Index: 229; Name: 'GetClassDefaultMatch'), - (Index: 230; Name: 'GetInCellParam'; ParamType1: ptCell; ParamType2: ptObjectReference), - (Index: 237; Name: 'GetIsGhost'), - (Index: 242; Name: 'GetUnconscious'), - (Index: 244; Name: 'GetRestrained'), - (Index: 246; Name: 'GetIsUsedItem'; ParamType1: ptReferencableObject), - (Index: 247; Name: 'GetIsUsedItemType'; ParamType1: ptFormType), - (Index: 249; Name: 'GetPCFame'), - (Index: 251; Name: 'GetPCInfamy'), - (Index: 254; Name: 'GetIsPlayableRace'), - (Index: 255; Name: 'GetOffersServicesNow'), - (Index: 258; Name: 'GetUsedItemLevel'), - (Index: 259; Name: 'GetUsedItemActivate'), - (Index: 264; Name: 'GetBarterGold'), - (Index: 265; Name: 'IsTimePassing'), - (Index: 266; Name: 'IsPleasant'), - (Index: 267; Name: 'IsCloudy'), - (Index: 274; Name: 'GetArmorRatingUpperBody'), - (Index: 277; Name: 'GetBaseActorValue'; ParamType1: ptActorValue), - (Index: 278; Name: 'IsOwner'; ParamType1: ptOwnerOpt), - (Index: 280; Name: 'IsCellOwner'; ParamType1: ptCell; ParamType2: ptOwnerOpt), - (Index: 282; Name: 'IsHorseStolen'), - (Index: 285; Name: 'IsLeftUp'), - (Index: 286; Name: 'IsSneaking'), - (Index: 287; Name: 'IsRunning'), - (Index: 288; Name: 'GetFriendHit'; ParamType1: ptActor), - (Index: 289; Name: 'IsInCombat'), - (Index: 300; Name: 'IsInInterior'), - (Index: 305; Name: 'GetInvestmentGold'), - (Index: 306; Name: 'IsActorUsingATorch'), - (Index: 309; Name: 'IsXBox'), - (Index: 310; Name: 'GetInWorldspace'; ParamType1: ptWorldSpace), - (Index: 312; Name: 'GetPCMiscStat'; ParamType1: ptInteger), - (Index: 313; Name: 'IsActorEvil'), - (Index: 314; Name: 'IsActorAVictim'), - (Index: 315; Name: 'GetTotalPersuasionNumber'), - (Index: 318; Name: 'GetIdleDoneOnce'), - (Index: 320; Name: 'GetNoRumors'), - (Index: 323; Name: 'WhichServiceMenu'), - (Index: 327; Name: 'IsRidingHorse'), - (Index: 329; Name: 'IsTurnArrest'), - (Index: 332; Name: 'IsInDangerousWater'), - (Index: 338; Name: 'GetIgnoreFriendlyHits'), - (Index: 339; Name: 'IsPlayersLastRiddenHorse'), - (Index: 353; Name: 'IsActor'), - (Index: 354; Name: 'IsEssential'), - (Index: 358; Name: 'IsPlayerMovingIntoNewSpace'), - (Index: 361; Name: 'GetTimeDead'), - (Index: 362; Name: 'GetPlayerHasLastRiddenHorse'), - (Index: 365; Name: 'GetPlayerInSEWorld') - ); - -var - wbCTDAFunctionEditInfo : string; - -function wbCTDAParamDescFromIndex(aIndex: Integer): PCTDAFunction; -var - L, H, I, C: Integer; -begin - Result := nil; - - L := Low(wbCTDAFunctions); - H := High(wbCTDAFunctions); - while L <= H do begin - I := (L + H) shr 1; - C := CmpW32(wbCTDAFunctions[I].Index, aIndex); - if C < 0 then - L := I + 1 - else begin - H := I - 1; - if C = 0 then begin - L := I; - Result := @wbCTDAFunctions[L]; - end; - end; - end; -end; - -function wbCTDACompValueDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Integer(Container.ElementByName['Type'].NativeValue) and $04 <> 0 then - Result := 1; -end; - -function wbEFITOBMEParamDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - ParamInfo: Variant; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - ParamInfo := Container.ElementNativeValues['..\EFME\EFIT Param Info']; - if VarIsNull(ParamInfo) or VarIsEmpty(ParamInfo) then - else - Result := ParamInfo; -end; - -function wbEFIXParamDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - ParamInfo: Variant; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - ParamInfo := Container.ElementNativeValues['..\EFME\EFIX Param Info']; - if VarIsNull(ParamInfo) or VarIsEmpty(ParamInfo) then - else - Result := ParamInfo; -end; - -function wbCTDAParam1Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Desc: PCTDAFunction; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Desc := wbCTDAParamDescFromIndex(Container.ElementByName['Function'].NativeValue); - if Assigned(Desc) then - Result := Succ(Integer(Desc.ParamType1)); -end; - -function wbCTDAParam2Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Desc: PCTDAFunction; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Desc := wbCTDAParamDescFromIndex(Container.ElementByName['Function'].NativeValue); - if Assigned(Desc) then - Result := Succ(Integer(Desc.ParamType2)); -end; -{ -function wbCTDAFunction(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Desc: PCTDAFunction; -begin - Result := ''; - case aType of - ctToStr: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := Desc.Name - else - Result := ''; - end; - ctToSortKey: Result := IntToHex(aInt, 8); - ctCheck: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := '' - else - Result := ''; - end; - end; -end; -} -function wbCTDAFunctionToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Desc : PCTDAFunction; - i : Integer; -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := Desc.Name - else if aType = ctToEditValue then - Result := IntToStr(aInt) - else - Result := ''; - end; - ctToSortKey: Result := IntToHex(aInt, 8); - ctCheck: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := '' - else - Result := ''; - end; - ctEditType: - Result := 'ComboBox'; - ctEditInfo: begin - Result := wbCTDAFunctionEditInfo; - if Result = '' then begin - with TStringList.Create do try - for i := Low(wbCTDAFunctions) to High(wbCTDAFunctions) do - Add(wbCTDAFunctions[i].Name); - Sort; - Result := CommaText; - finally - Free; - end; - wbCTDAFunctionEditInfo := Result; - end; - end; - end; -end; - -function wbCTDAFunctionToInt(const aString: string; const aElement: IwbElement): Int64; -var - i: Integer; -begin - for i := Low(wbCTDAFunctions) to High(wbCTDAFunctions) do - with wbCTDAFunctions[i] do - if SameText(Name, aString) then begin - Result := Index; - Exit; - end; - Result := StrToInt64(aString); -end; - -function wbCTDAParam2VariableNameToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - BaseRecord : IwbMainRecord; - ScriptRef : IwbElement; - Script : IwbMainRecord; - Variables : TStringList; - LocalVars : IwbContainerElementRef; - LocalVar : IwbContainerElementRef; - i, j : Integer; - s : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - Exit; - - MainRecord := nil; - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; -{ if Param1.NativeValue = 0 then - if Supports(Container.Container, IwbContainerElementRef, Container) then - for i := 0 to Pred(Container.ElementCount) do - if Supports(Container.Elements[i], IwbContainerElementRef, Container2) then - if SameText(Container2.ElementValues['Function'], 'GetIsID') then begin - Param1 := Container2.ElementByName['Parameter #1']; - if Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Break; - end;} - - if not Assigned(MainRecord) then - Exit; - - BaseRecord := MainRecord.BaseRecord; - if Assigned(BaseRecord) then - MainRecord := BaseRecord; - - ScriptRef := MainRecord.RecordBySignature['SCRI']; - - if not Assigned(ScriptRef) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - if not Supports(ScriptRef.LinksTo, IwbMainRecord, Script) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - Variables := TStringList.Create; - else - Variables := nil; - end; - try - if Supports(Script.ElementByName['Local Variables'], IwbContainerElementRef, LocalVars) then begin - for i := 0 to Pred(LocalVars.ElementCount) do - if Supports(LocalVars.Elements[i], IwbContainerElementRef, LocalVar) then begin - j := LocalVar.ElementNativeValues['SLSD\Index']; - s := LocalVar.ElementNativeValues['SCVR']; - if Assigned(Variables) then - Variables.AddObject(s, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := s; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - Variables.Sort; - Result := Variables.CommaText; - end; - end; - finally - FreeAndNil(Variables); - end; -end; - -function wbCTDAParam2VariableNameToInt(const aString: string; const aElement: IwbElement): Int64; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - BaseRecord : IwbMainRecord; - ScriptRef : IwbElement; - Script : IwbMainRecord; - LocalVars : IwbContainerElementRef; - LocalVar : IwbContainerElementRef; - i, j : Integer; - s : string; -begin - Result := StrToInt64Def(aString, Low(Cardinal)); - if Result <> Low(Cardinal) then - Exit; - - if not Assigned(aElement) then - raise Exception.Create('aElement not specified'); - - Container := GetContainerRefFromUnionOrValue(aElement); - - if not Assigned(Container) then - raise Exception.Create('Container not assigned'); - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - raise Exception.Create('Could not find "Parameter #1"'); - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - raise Exception.Create('"Parameter #1" does not reference a valid main record'); - - BaseRecord := MainRecord.BaseRecord; - if Assigned(BaseRecord) then - MainRecord := BaseRecord; - - ScriptRef := MainRecord.RecordBySignature['SCRI']; - - if not Assigned(ScriptRef) then - raise Exception.Create('"'+MainRecord.ShortName+'" does not contain a SCRI subrecord'); - - if not Supports(ScriptRef.LinksTo, IwbMainRecord, Script) then - raise Exception.Create('"'+MainRecord.ShortName+'" does not have a valid script'); - - if Supports(Script.ElementByName['Local Variables'], IwbContainerElementRef, LocalVars) then begin - for i := 0 to Pred(LocalVars.ElementCount) do - if Supports(LocalVars.Elements[i], IwbContainerElementRef, LocalVar) then begin - j := LocalVar.ElementNativeValues['SLSD\Index']; - s := LocalVar.ElementNativeValues['SCVR']; - if SameText(s, Trim(aString)) then begin - Result := j; - Exit; - end; - end; - end; - - raise Exception.Create('Variable "'+aString+'" was not found in "'+MainRecord.ShortName+'"'); -end; - -function wbCTDAParam2QuestStageToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Stages : IwbContainerElementRef; - Stage : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - Exit; - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - try - if Supports(MainRecord.ElementByName['Stages'], IwbContainerElementRef, Stages) then begin - for i := 0 to Pred(Stages.ElementCount) do - if Supports(Stages.Elements[i], IwbContainerElementRef, Stage) then begin - j := Stage.ElementNativeValues['INDX']; - s := Trim(Stage.ElementValues['Log Entries\Log Entry\CNAM']); - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.AddObject(t, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbCTDAParam2QuestStageToInt(const aString: string; const aElement: IwbElement): Int64; -var - i : Integer; - s : string; -begin - i := 1; - s := Trim(aString); - while (i <= Length(s)) and (s[i] in ['0'..'9']) do - Inc(i); - s := Copy(s, 1, Pred(i)); - - Result := StrToInt(s); -end; - -procedure wbRemoveOFST(const aElement: IwbElement); -var - Container: IwbContainer; - rOFST: IwbRecord; -begin - if Supports(aElement, IwbContainer, Container) then begin - rOFST := Container.RecordBySignature[OFST]; - if Assigned(rOFST) then - Container.RemoveElement(rOFST); - end; -end; - -procedure wbCELLAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - Container2 : IwbContainerElementRef; - MainRecord : IwbMainRecord; - i : Integer; - IsInterior : Boolean; - GroupRecord : IwbGroupRecord; - Removed : Boolean; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Container.ElementExists['DATA'] then - Exit; - - IsInterior := (Container.ElementNativeValues['DATA'] and 1) <> 0; - - if IsInterior then - Container.Add('XCLL') - else begin - Container.Add('XCLC'); - if (Container.ElementNativeValues['DATA'] and 2) = 0 then - if Supports(MainRecord.Container, IwbGroupRecord, GroupRecord) then - if GroupRecord.GroupType = 1 then - Container.ElementNativeValues['DATA'] := - Container.ElementNativeValues['DATA'] or 2; - end; - - Removed := False; - if Supports(Container.ElementBySignature[XCLR], IwbContainerElementRef, Container2) then begin - for i:= Pred(Container2.ElementCount) downto 0 do - if not Supports(Container2.Elements[i].LinksTo, IwbMainRecord, MainRecord) or (MainRecord.Signature <> 'REGN') then begin - if not Removed then begin - Removed := True; - Container2.MarkModifiedRecursive; - end; - Container2.RemoveElement(i); - end; - if Container2.ElementCount < 1 then - Container2.Remove; - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbMGEFAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - _File : IwbFile; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - _File := MainRecord._File; - - if not Assigned(_File) then - Exit; - - if not SameText(_File.FileName, 'Oblivion.esm') then - Exit; - - if SameText(MainRecord.EditorID, 'RSFI') or - SameText(MainRecord.EditorID, 'RSFR') or - SameText(MainRecord.EditorID, 'RSPA') or - SameText(MainRecord.EditorID, 'RSSH') then begin - - Container.ElementNativeValues['DATA - Data\Flags'] := - Cardinal(Container.ElementNativeValues['DATA - Data\Flags']) or $8; - - end; - - if SameText(MainRecord.EditorID, 'REAN') then begin - - Container.ElementNativeValues['DATA - Data\Flags'] := - Cardinal(Container.ElementNativeValues['DATA - Data\Flags']) and not $20000; - - end; - - finally - wbEndInternalEdit; - end; -end; - - -procedure wbEFITAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - Element : IwbElement; - ActorValue: Variant; - MainRecord: IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if Container.ElementCount < 1 then - Exit; - - Element := Container.ElementByName['Magic effect name']; - if not Assigned(Element) then - Exit; - if not Supports(Element.LinksTo, IwbMainRecord, MainRecord) then - Exit; - if MainRecord.Signature <> 'MGEF' then - Exit; - - if (MainRecord.ElementNativeValues['DATA - Data\Flags'] and $01000000) = 0 then - Exit; - - ActorValue := MainRecord.ElementNativeValues['DATA - Data\Assoc. Item']; - if VarIsNull(ActorValue) or VarIsClear(ActorValue) then - Exit; - if VarCompareValue(ActorValue, Container.ElementNativeValues['Actor Value']) <> vrEqual then - Container.ElementNativeValues['Actor Value'] := ActorValue; - finally - wbEndInternalEdit; - end; -end; - -procedure wbREFRAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if Container.ElementCount < 1 then - Exit; - - Container.RemoveElement('XPCI'); - finally - wbEndInternalEdit; - end; -end; - -procedure wbLIGHAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if Container.ElementExists['DATA'] then begin - if SameValue(Container.ElementNativeValues['DATA\Falloff Exponent'], 0.0) then - Container.ElementNativeValues['DATA\Falloff Exponent'] := 1.0; - if SameValue(Container.ElementNativeValues['DATA\FOV'], 0.0) then - Container.ElementNativeValues['DATA\FOV'] := 90.0; - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbLVLAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - Chance : Integer; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - Container.RemoveElement('DATA'); - - Chance := Container.ElementNativeValues['LVLD']; - if (Chance and $80) <> 0 then begin - Chance := Chance and not $80; - Container.ElementNativeValues['LVLD'] := Chance; - Container.ElementNativeValues['LVLF'] := Container.ElementNativeValues['LVLF'] or $01; - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbRPLDAfterLoad(const aElement: IwbElement); -var - Container : IwbContainer; - a, b : Single; - NeedsFlip : Boolean; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainer, Container) then - Exit; - - NeedsFlip := False; - if Container.ElementCount > 1 then begin - a := (Container.Elements[0] as IwbContainer).Elements[0].NativeValue; - b := (Container.Elements[Pred(Container.ElementCount)] as IwbContainer).Elements[0].NativeValue; - case CompareValue(a, b) of - EqualsValue: begin - a := (Container.Elements[0] as IwbContainer).Elements[1].NativeValue; - b := (Container.Elements[Pred(Container.ElementCount)] as IwbContainer).Elements[1].NativeValue; - NeedsFlip := CompareValue(a, b) = GreaterThanValue; - end; - GreaterThanValue: - NeedsFlip := True; - end; - end; - if NeedsFlip then - Container.ReverseElements; - finally - wbEndInternalEdit; - end; -end; - -procedure wbPGRDAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - Points : IwbContainerElementRef; - Connections : IwbContainerElementRef; - i, j : Integer; - Point : IwbContainerElementRef; - Connection : IwbContainerElementRef; - Removed : Boolean; - FirstRemoved: Boolean; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Supports(Container.ElementBySignature['PGRP'], IwbContainerElementRef, Points) then - Exit; - - if not Container.ElementExists['PGAG'] then - Container.Add('PGAG').DataSize := (Points.ElementCount + 7) div 8; - - MainRecord.IsCompressed := True; - - if not Supports(Container.ElementBySignature['PGRR'], IwbContainerElementRef, Connections) then - Exit; - - if Points.ElementCount < Connections.ElementCount then - Exit; - - FirstRemoved := False; - for i := Pred(Connections.ElementCount) downto 0 do begin - Connection := Connections.Elements[i] as IwbContainerElementRef; - - Removed := False; - j := Connection.ElementCount; - while j > 0 do begin - Dec(j); - if Connection.Elements[j].NativeValue = 65535 then begin - if not FirstRemoved then begin - FirstRemoved := True; - Connections.MarkModifiedRecursive; - end; - Connection.Elements[j].Remove; - Removed := True; - end else - Break; - end; - - if Removed then begin - Point := Points.Elements[i] as IwbContainerElementRef; - Point.ElementNativeValues['Connections'] := Connection.ElementCount; - end; - - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbPGRRPointAfterLoad(const aElement: IwbElement); -var - Connections : IwbContainerElementRef; - i : Integer; -// Index : Integer; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Connections) then - Exit; - for i := Pred(Connections.ElementCount) downto 0 do - if Connections.Elements[i].NativeValue = 65535 then begin - Connections.RemoveElement(i); - end; -{ if Removed then begin - Index := aElement.Container.ElementCount; - (aElement.ContainingMainRecord.RecordBySignature['PGRP'].Elements[Index] as IwbContainer).Elements[3].NativeValue := Connections.ElementCount; - end;} - finally - wbEndInternalEdit; - end; -end; - -procedure wbPGRIPointerAfterLoad(const aElement: IwbElement); -var - Connections : IwbContainerElementRef; - i, j : Integer; - s : string; - Keys : TStringList; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Connections) then - Exit; - - Keys := TStringList.Create; - try - Keys.Sorted := True; - Keys.Duplicates := dupError; - for i := Pred(Connections.ElementCount) downto 0 do begin - s := Connections.Elements[i].SortKey[True]; - if Keys.Find(s, j) then - Connections.RemoveElement(i, True) - else - Keys.Add(s); - end; - finally - Keys.Free; - end; - finally - wbEndInternalEdit; - end; -end; - -{ -function wbPGRPConnectionsCallback(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Point : IwbContainerElementRef; - s : string; - i : Integer; - PGRP : IwbContainerElementRef; - PGRD : IwbMainRecord; - PGRR : IwbContainerElementRef; - Cons : IwbContainerElementRef; -begin - Result := ''; - if aType = ctCheck then - Exit; - - if wbFixupPGRD and (aInt > 0) and Assigned(aElement) and (aElement.ElementStates * [esModified] = []) then begin - Point := aElement.Container as IwbContainerElementRef; - if Assigned(Point) then begin - s := Trim(Point.Name); - i := Pos('#', s); - if i > 0 then begin - i := StrToIntDef(Copy(s, i+1, High(Integer)), -1); - if i >= 0 then begin - PGRP := Point.Container as IwbContainerElementRef; - if Assigned(PGRP) then begin - if Supports(PGRP.Container, IwbMainRecord, PGRD) then begin - if (csInitDone in PGRD.ContainerStates) and (PGRD.Signature = 'PGRD') then begin - PGRR := PGRD.RecordBySignature['PGRR'] as IwbContainerElementRef; - if Assigned(PGRR) and (PGRR.ElementCount > 0) and (csInitDone in PGRR.ContainerStates) then begin - if (i < PGRR.ElementCount) then begin - if Supports(PGRR.Elements[i], IwbContainer, Cons) then begin - aInt := Cons.ElementCount; - end; - end; - end; - PGRR := nil; - end; - end; - end; - end; - end; - end; - end; - - if aType = ctToSortKey then - Result := IntToHex64(aInt, 2) - else if aType = ctToStr then - Result := IntToStr(aInt); -end; -} - -function wbPxDTLocationDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Result := Container.ElementByName['Type'].NativeValue; -end; - -function wbCalcPGRRSize(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Index: Integer; -begin - Index := aElement.Container.ElementCount; - Result := ((aElement.Container.Container as IwbMainRecord).RecordBySignature['PGRP'].Elements[Pred(Index)] as IwbContainer).Elements[3].NativeValue; -end; - -function wbMGEFFAssocItemDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - s: string; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - s := Container.ElementByName['Flags'].SortKey[False]; - if s[17] = '1' then - Result := 1 - else if s[18] = '1' then - Result := 2 - else if s[19] = '1' then - Result := 3 - else if s[25] = '1' then - Result := 4; -end; - -function wbEDDXDontShow(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - Result := True; - - if Supports(aElement.Container, IwbMainRecord, MainRecord) then - Result := not Assigned(MainRecord.ElementBySignature[OBME]); -end; - -function wbOBMEDontShow(const aElement: IwbElement): Boolean; -var - _File: IwbFile; -begin - if not Assigned(aElement) then begin - Result := True; - Exit; - end; - - Result := False; - - _File := aElement._File; - if Assigned(_File) and SameText(_File.FileName, 'Oblivion.esm') then - Result := True; -end; - -procedure DefineTES3; -begin - wbHeaderSignature := 'TES3'; - - wbRecordFlags := wbInteger('Record Flags', itU32, wbFlags([ - {0x00000001}'ESM', - {0x00000002}'', - {0x00000004}'', - {0x00000008}'', - {0x00000010}'', - {0x00000020}'Deleted', - {0x00000040}'Border Region / Actor Value', - {0x00000080}'Turn Off Fire / Actor Value', - {0x00000100}'', - {0x00000200}'Casts shadows', - {0x00000400}'Quest item / Persistent reference / Show in Menu', - {0x00000800}'Initially disabled', - {0x00001000}'Ignored', - {0x00002000}'', - {0x00004000}'', - {0x00008000}'Visible when distant', - {0x00010000}'', - {0x00020000}'Dangerous / Off limits (Interior cell)', - {0x00040000}'Compressed ', - {0x00080000}'Can''t wait' - ])); - - wbMainRecordHeader := wbStruct('Record Header', [ - wbString('Signature', 4, cpCritical), - wbInteger('Data Size', itU32, nil, cpIgnore), - wbRecordFlags, - wbFormID('FormID', cpFormID), - wbByteArray('Unknown', 4, cpIgnore) - ]); - - wbSizeOfMainRecordStruct := 20; - - wbIgnoreRecords.Add(XXXX); - - wbXRGD := wbByteArray(XRGD, 'Ragdoll Data'); - - wbMusicEnum := wbEnum(['Default', 'Public', 'Dungeon']); - - wbEDID := wbString(EDID, 'Editor ID', 0, cpBenign); - wbFULL := wbString(FULL, 'Name', 0, cpTranslate); - wbFULLReq := wbString(FULL, 'Name', 0, cpNormal, True); - wbDESC := wbString(DESC, 'Description', 0, cpTranslate); - wbXSCL := wbFloat(XSCL, 'Scale'); - - wbPosRot := - wbStruct('Position/Rotation', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ]); - - wbDATAPosRot := - wbStruct(DATA, 'Position/Rotation', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ], cpNormal, True); - - wbMODL := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename'), - wbFloat(MODB, 'Bound Radius', cpBenign), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore) -// wbArray(MODT, 'Unknown', -// wbByteArray('Unknown', 24, cpBenign), -// 0, nil, cpBenign) - ], []); - - wbSCRI := wbFormIDCk(SCRI, 'Script', [SCPT]); - wbENAM := wbFormIDCk(ENAM, 'Enchantment', [ENCH]); - - wbXLOD := wbArray(XLOD, 'Distant LOD Data', wbFloat('Unknown'), 3); - wbXESP := wbStruct(XESP, 'Enable Parent', [ - wbFormIDCk('Reference', [PLYR, REFR, ACRE, ACHR]), - wbInteger('Flags', itU8, wbFlags([ - 'Set Enable State to Opposite of Parent' - ])), - wbByteArray('Unused', 3) - ]); - - wbRecord(ACHR, 'Placed NPC', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [NPC_], False, cpNormal, True), - wbRStruct('Unused', [ - wbFormIDCk(XPCI, 'Unused', [CELL]), - wbString(FULL, 'Unused') - ], []), - wbXLOD, - wbXESP, - wbFormIDCk(XMRC, 'Merchant container', [REFR], True), - wbFormIDCk(XHRS, 'Horse', [ACRE], True), - wbXRGD, - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo, cpNormal, False, wbREFRAfterLoad); - - wbXOWN := wbFormIDCk(XOWN, 'Owner', [FACT, NPC_]); - wbXGLB := wbFormIDCk(XGLB, 'Global variable', [GLOB]); - - wbRecord(ACRE, 'Placed Creature', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [CREA], False, cpNormal, True), - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32), - wbXGLB - ], []), - wbXESP, - wbXRGD, - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbRecord(ACTI, 'Activator', [ - wbEDID, - wbFULL, - wbMODL, - wbSCRI, - wbFormIDCk(SNAM, 'Sound', [SOUN]) - ]); - - wbICON := wbString(ICON, 'Icon filename'); - - wbActorValueEnum := - wbEnum([ - 'Strength', - 'Intelligence', - 'Willpower', - 'Agility', - 'Speed', - 'Endurance', - 'Personality', - 'Luck', - 'Health', - 'Magicka', - 'Fatigue', - 'Encumbrance', - 'Armorer', - 'Athletics', - 'Blade', - 'Block', - 'Blunt', - 'Hand To Hand', - 'Heavy Armor', - 'Alchemy', - 'Alteration', - 'Conjuration', - 'Destruction', - 'Illusion', - 'Mysticism', - 'Restoration', - 'Acrobatics', - 'Light Armor', - 'Marksman', - 'Mercantile', - 'Security', - 'Sneak', - 'Speechcraft', - {33} 'Aggression', - {34} 'Confidence', - {35} 'Energy', - {36} 'Responsibility', - {37} 'Bounty', - {38} 'Fame', - {39} 'Infamy', - {40} 'Magicka Multiplier', - {41} 'Night Eye Bonus', - {42} 'Attack Bonus', - {43} 'Defend Bonus', - {44} 'Casting Penalty', - {45} 'Blindness', - {46} 'Chameleon', - {47} 'Invisibility', - {48} 'Paralysis', - {49} 'Silence', - {50} 'Confusion', - {51} 'Detect Item Range', - {52} 'Spell Absorb Chance', - {53} 'Spell Reflect Chance', - {54} 'Swim Speed Multiplier', - {55} 'Water Breathing', - {56} 'Water Walking', - {57} 'Stunted Magicka', - {58} 'Detect Life Range', - {59} 'Reflect Damage', - {60} 'Telekinesis', - {61} 'Resist Fire', - {62} 'Resist Frost', - {63} 'Resist Disease', - {64} 'Resist Magic', - {65} 'Resist Normal Weapons', - {66} 'Resist Paralysis', - {67} 'Resist Poison', - {68} 'Resist Shock', - {69} 'Vampirism', - {70} 'Darkness', - {71} 'Resist Water Damage' - ], [ - -1, 'None' - ]); - - wbSkillEnum := - wbEnum([ - 'Armorer', - 'Athletics', - 'Blade', - 'Block', - 'Blunt', - 'Hand To Hand', - 'Heavy Armor', - 'Alchemy', - 'Alteration', - 'Conjuration', - 'Destruction', - 'Illusion', - 'Mysticism', - 'Restoration', - 'Acrobatics', - 'Light Armor', - 'Marksman', - 'Mercantile', - 'Security', - 'Sneak', - 'Speechcraft' - ], [ - -1, 'None' - ]); - - - wbEFID := wbInteger(EFID, 'Magic effect name', itU32, wbChar4, cpNormal, True); - - wbEFIDOBME := wbStringMgefCode(EFID, 'Magic Effect Code', 4, cpNormal, True); - - wbEFIT := - wbStructSK(EFIT, [4, 5], '', [ - wbInteger('Magic effect name', itU32, wbChar4), - wbInteger('Magnitude', itU32), - wbInteger('Area', itU32), - wbInteger('Duration', itU32), - wbInteger('Type', itU32, wbEnum(['Self', 'Touch', 'Target'])), - wbInteger('Actor Value', itS32, wbActorValueEnum) - ], cpNormal, True, nil, -1, wbEFITAfterLoad); - - wbEFITOBME := - wbStructSK(EFIT, [4, 5], '', [ - wbStringMgefCode('Magic Effect Code', 4), - wbInteger('Magnitude', itU32), - wbInteger('Area', itU32), - wbInteger('Duration', itU32), - wbInteger('Type', itU32, wbEnum(['Self', 'Touch', 'Target'])), - wbUnion('Param #1', wbEFITOBMEParamDecider, [ - wbByteArray('Param #1 - Unknown Type', 4), - wbFormID('Param #1 - FormID'), - wbStringMgefCode('Param #1 - Magic Effect Code', 4), - wbFormIDCk('Param #1 - Actor Value', [ACVA]) - ]) - ], cpNormal, True, nil, -1{, wbEFITAfterLoad}); - - wbEFIX := - wbStructSK(EFIX, [3], '', [ - wbInteger('Override Mask', itU32, wbFlags([])), - wbInteger('Flags', itU32, wbFlags([])), - wbFloat('Base Cost'), - wbUnion('Param #2', wbEFIXParamDecider, [ - wbByteArray('Param #2 - Unknown Type', 4), - wbFormID('Param #2 - FormID'), - wbStringMgefCode('Param #2 - Magic Effect Code', 4), - wbFormIDCk('Param #2 - Actor Value', [ACVA]) - ]) - ], cpNormal, True, nil, -1, wbEFITAfterLoad); - - wbMagicSchoolEnum := - wbEnum([ - 'Alteration', - 'Conjuration', - 'Destruction', - 'Illusion', - 'Mysticism', - 'Restoration' - ]); - - wbSCIT := - wbRStructSK([0], 'Script effect', [ - wbStructSK(SCIT, [0], 'Script effect data', [ - wbFormIDCk('Script effect', [NULL, SCPT]), - wbInteger('Magic school', itU32, wbMagicSchoolEnum), - wbInteger('Visual effect name', itU32, wbChar4), - wbInteger('Flags', itU8, wbFlags(['Hostile'])), - wbByteArray('Unused', 3) - ], cpNormal, True, nil, 1), - wbFULLReq - ], []); - - wbSCITOBME := - wbRStructSK([0], 'Script effect', [ - wbStructSK(SCIT, [0], 'Script effect data', [ - wbFormIDCk('Script effect', [NULL, SCPT]), - wbInteger('Magic school', itU32, wbMagicSchoolEnum), - wbStringMgefCode('Visual Effect Code', 4), - wbInteger('Flags', itU8, wbFlags(['Hostile'])), - wbByteArray('Unused', 3) - ], cpNormal, True, nil, 1), - wbFULLReq - ], []); - - - wbOBMEResolutionInfo := wbEnum(['None', 'FormID', 'Magic Effect Code', 'Actor Value']); - - wbEffects := - wbRUnion('Effects', [ - wbRStruct('Effects', [ - wbRStructs('Effects','Effect', [ - wbEFID, - wbEFIT, - wbSCIT - ], []) - ], []), - wbRStruct('Effects', [ - wbRStructs('Effects','Effect', [ - wbStruct(EFME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbInteger('EFIT Param Info', itU8, wbOBMEResolutionInfo), - wbInteger('EFIX Param Info', itU8, wbOBMEResolutionInfo), - wbByteArray('Unused', $0A) - ]), - wbEFIDOBME, - wbEFITOBME, - wbSCITOBME, - wbString(EFII, 'Icon'), - wbEFIX - ], []), - wbEmpty(EFXX, 'Effects End Marker', cpNormal, True), - wbFULLReq - ], []) - ], []); - - wbRecord(ALCH, 'Potion', [ - wbEDID, - wbStruct(OBME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbByteArray('Unused', $1C) - ], cpNormal, False, wbOBMEDontShow), - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbFloat(DATA, 'Weight', cpNormal, True), - wbStruct(ENIT, '', [ - wbInteger('Value', itS32), - wbInteger('Flags', itU8, wbFlags(['No auto-calculation', 'Food item'])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffects - ]); - - wbRecord(AMMO, 'Ammunition', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbFormIDCk(ENAM, 'Enchantment', [ENCH]), - wbInteger(ANAM, 'Enchantment Points', itU16), - wbStruct(DATA, '', [ - wbFloat('Speed'), - wbInteger('Flags', itU8, wbFlags(['Ignores Normal Weapon Resistance'])), - wbByteArray('Unused', 3), - wbInteger('Value', itU32), - wbFloat('Weight'), - wbInteger('Damage', itU16) - ], cpNormal, True) - ]); - - wbRecord(ANIO, 'Animated Object', [ - wbEDID, - wbMODL, - wbFormIDCk(DATA, 'IDLE animation', [IDLE], False, cpNormal, True) - ]); - - wbRecord(APPA, 'Alchemical Apparatus', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbStruct(DATA, '', [ - wbInteger('Type', itU8, wbEnum(['Mortar and Pestle', 'Alembic', 'Calcinator', 'Retort'])), - wbInteger('Value', itU32), - wbFloat('Weight'), - wbFloat('Quality') - ], cpNormal, True) - ]); - - wbRecord(ARMO, 'Armor', [ - wbEDID, - wbFULL, - wbSCRI, - wbENAM, - wbInteger(ANAM, 'Enchantment Points', itU16), - wbStruct(BMDT, '', [ - wbInteger('Biped Flags', itU16, wbFlags([ - {0x00000001} 'Head', - {0x00000002} 'Hair', - {0x00000004} 'Upper Body', - {0x00000008} 'Lower Body', - {0x00000010} 'Hand', - {0x00000020} 'Foot', - {0x00000040} 'Right Ring', - {0x00000080} 'Left Ring', - {0x00000100} 'Amulet', - {0x00000200} 'Weapon', - {0x00000400} 'Back Weapon', - {0x00000800} 'Side Weapon', - {0x00001000} 'Quiver', - {0x00002000} 'Shield', - {0x00004000} 'Torch', - {0x00008000} 'Tail' - ])), - wbInteger('General Flags', itU8, wbFlags([ - {0x0001} 'Hide Rings', - {0x0002} 'Hide Amulets', - {0x0004} '', - {0x0008} '', - {0x0010} '', - {0x0020} '', - {0x0040} 'Non-Playable', - {0x0080} 'Heavy armor' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbRStruct('Male biped model', [ - wbString(MODL, 'Model Filename'), - wbFloat(MODB, 'Bound Radius', cpBenign), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbRStruct('Male world model', [ - wbString(MOD2, 'Model Filename'), - wbFloat(MO2B, 'Bound Radius', cpBenign), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbString(ICON, 'Male icon filename'), - wbRStruct('Female biped model', [ - wbString(MOD3, 'Model Filename'), - wbFloat(MO3B, 'Bound Radius', cpBenign), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbRStruct('Female world model', [ - wbString(MOD4, 'Model Filename'), - wbFloat(MO4B, 'Bound Radius', cpBenign), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbString(ICO2, 'Female icon filename'), - wbStruct(DATA, '', [ - wbInteger('Armor', itU16, wbDiv(100)), - wbInteger('Value', itU32), - wbInteger('Health', itU32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbRecord(BOOK, 'Book', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbENAM, - wbInteger(ANAM, 'Enchantment Points', itU16), - wbDESC, - wbStruct(DATA, '', [ - wbInteger('Flags', itU8, wbFlags(['Scroll', 'Can''t be taken'])), - wbInteger('Teaches', itS8, wbSkillEnum), - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True) - ], True); - - wbSPLO := wbFormIDCk(SPLO, 'Spell', [SPEL, LVSP]); - wbSPLOs := wbRArrayS('Spells', wbSPLO); - - wbRecord(BSGN, 'Birthsign', [ - wbEDID, - wbFULL, - wbICON, - wbDESC, - wbSPLOs - ]); - - wbRecord(CELL, 'Cell', [ - wbEDID, - wbFULL, - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Is Interior Cell', - {0x02} 'Has water', - {0x04} 'Invert Fast Travel behavior', - {0x08} 'Force hide land (exterior cell) / Oblivion interior (interior cell)', - {0x10} '', - {0x20} 'Public place', - {0x40} 'Hand changed', - {0x80} 'Behave like exterior' - ]), cpNormal, True), - wbStruct(XCLC, 'Grid', [ - wbInteger('X', itS32), - wbInteger('Y', itS32) - ]), - wbStruct(XCLL, 'Lighting', [ - wbStruct('Ambient Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Directional Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Fog Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Fog Near'), - wbFloat('Fog Far'), - wbInteger('Directional Rotation XY', itS32), - wbInteger('Directional Rotation Z', itS32), - wbFloat('Directional Fade', cpNormal, False, 1, -1, nil, nil, 1.0), - wbFloat('Fog Clip Dist') - ]), - wbArrayS(XCLR, 'Regions', wbFormIDCk('Region', [REGN])), - wbInteger(XCMT, 'Music', itU8, wbMusicEnum), - wbFloat(XCLW, 'Water Height', cpBenign), - wbFormIDCk(XCCM, 'Climate', [CLMT]), - wbFormIDCk(XCWT, 'Water', [WATR]), - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32), - wbXGLB - ], [XCLW, XCMT]) - ], True, wbCellAddInfo, cpNormal, False, wbCELLAfterLoad); - - wbServiceFlags := - wbFlags([ - {0x00000001} 'Weapons', - {0x00000002} 'Armor', - {0x00000004} 'Clothing', - {0x00000008} 'Books', - {0x00000010} 'Ingredients', - {0x00000020} '', - {0x00000040} '', - {0x00000080} 'Lights', - {0x00000100} 'Apparatus', - {0x00000200} '', - {0x00000400} 'Miscellaneous', - {0x00000800} 'Spells', - {0x00001000} 'Magic Items', - {0x00002000} 'Potions', - {0x00004000} 'Training', - {0x00008000} '', - {0x00010000} 'Recharge', - {0x00020000} 'Repair' - ]); - - wbSpecializationEnum := wbEnum(['Combat', 'Magic', 'Stealth']); - - wbRecord(CLAS, 'Class', [ - wbEDID, - wbFULL, - wbDESC, - wbICON, - wbStruct(DATA, '', [ - wbArrayS('Primary Attributes', wbInteger('Primary Attribute', itS32, wbActorValueEnum), 2), - wbInteger('Specialization', itU32, wbSpecializationEnum), - wbArrayS('Major Skills', wbInteger('Major Skill', itS32, wbActorValueEnum), 7), - wbInteger('Flags', itU32, wbFlags(['Playable', 'Guard'])), - wbInteger('Buys/Sells and Services', itU32, wbServiceFlags), - wbInteger('Teaches', itS8, wbSkillEnum), - wbInteger('Maximum training level', itU8), - wbInteger('Unused', itU16) - ], cpNormal, True, nil, 5) - ]); - - wbRecord(CLMT, 'Climate', [ - wbEDID, - wbArrayS(WLST, 'Weather Types', wbStructSK([0], 'Weather Type', [ - wbFormIDCk('Weather', [WTHR]), - wbInteger('Chance', itS32) - ])), - wbString(FNAM, 'Sun Texture'), - wbString(GNAM, 'Sun Glare Texture'), - wbMODL, - wbStruct(TNAM, 'Timing', [ - wbStruct('Sunrise', [ - wbInteger('Begin', itU8, wbClmtTime), - wbInteger('End', itU8, wbClmtTime) - ]), - wbStruct('Sunset', [ - wbInteger('Begin', itU8, wbClmtTime), - wbInteger('End', itU8, wbClmtTime) - ]), - wbInteger('Volatility', itU8), - wbInteger('Moons / Phase Length', itU8, wbClmtMoonsPhaseLength) - ], cpNormal, True) - ]); - - wbRecord(CLOT, 'Clothing', [ - wbEDID, - wbFULL, - wbSCRI, - wbENAM, - wbInteger(ANAM, 'Enchantment Points', itU16), - wbStruct(BMDT, '', [ - wbInteger('Biped Flags', itU16, wbFlags([ - {0x00000001} 'Head', - {0x00000002} 'Hair', - {0x00000004} 'Upper Body', - {0x00000008} 'Lower Body', - {0x00000010} 'Hand', - {0x00000020} 'Foot', - {0x00000040} 'Right Ring', - {0x00000080} 'Left Ring', - {0x00000100} 'Amulet', - {0x00000200} 'Weapon', - {0x00000400} 'Back Weapon', - {0x00000800} 'Side Weapon', - {0x00001000} 'Quiver', - {0x00002000} 'Shield', - {0x00004000} 'Torch', - {0x00008000} 'Tail' - ])), - wbInteger('General Flags', itU8, wbFlags([ - {0x0001} 'Hide Rings', - {0x0002} 'Hide Amulets', - {0x0004} '', - {0x0008} '', - {0x0010} '', - {0x0020} '', - {0x0040} 'Non-Playable', - {0x0080} '' {Heavy armor} - ])), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbRStruct('Male biped model', [ - wbString(MODL, 'Model Filename'), - wbFloat(MODB, 'Bound Radius', cpBenign), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbRStruct('Male world model', [ - wbString(MOD2, 'Model Filename'), - wbFloat(MO2B, 'Bound Radius', cpBenign), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbString(ICON, 'Male icon filename'), - wbRStruct('Female biped model', [ - wbString(MOD3, 'Model Filename'), - wbFloat(MO3B, 'Bound Radius', cpBenign), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbRStruct('Female world model', [ - wbString(MOD4, 'Model Filename'), - wbFloat(MO4B, 'Bound Radius', cpBenign), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbString(ICO2, 'Female icon filename'), - wbStruct(DATA, '', [ - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbCNTO := - wbStructSK(CNTO, [0], 'Item', [ - wbFormIDCk('Item', [ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, LVLI, KEYM, CLOT, ALCH, APPA, LIGH]), - wbInteger('Count', itS32) - ]); - - wbCNTOs := wbRArrayS('Items', wbCNTO); - - wbRecord(CONT, 'Container', [ - wbEDID, - wbFULL, - wbMODL, - wbSCRI, - wbCNTOs, - wbStruct(DATA, '', [ - wbInteger('Flags', itU8, wbFlags(['', 'Respawns'])), - wbFloat('Weight') - ], cpNormal, True), - wbFormIDCk(SNAM, 'Open sound', [SOUN]), - wbFormIDCk(QNAM, 'Close sound', [SOUN]) - ]); - - wbCSDT := wbRStructSK([0], 'Sound Type', [ - wbInteger(CSDT, 'Type', itU32,wbEnum([ - {0x00} 'Left Foot', - {0x01} 'Right Foot', - {0x02} 'Left Back Foot', - {0x03} 'Right Back Foot', - {0x04} 'Idle', - {0x05} 'Aware', - {0x06} 'Attack', - {0x07} 'Hit', - {0x08} 'Death', - {0x09} 'Weapon' - ])), - wbRArrayS('Sounds', wbRStructSK([0], 'Sound', [ - wbFormIDCk(CSDI, 'Sound', [SOUN], False, cpNormal, True), - wbInteger(CSDC, 'Sound Chance', itU8, nil, cpNormal, True) - ], []), cpNormal, True) - ], []); - - wbCSDTs := wbRArrayS('Sound Types', wbCSDT); - - wbSoulGemEnum := wbEnum([ - {0} 'None', - {1} 'Petty', - {2} 'Lesser', - {3} 'Common', - {4} 'Greater', - {5} 'Grand' - ]); - - wbRecord(CREA, 'Creature', [ - wbEDID, - wbFULL, - wbMODL, - wbCNTOs, - wbSPLOs, - wbArrayS(NIFZ, 'Models', wbStringLC('Model')), - wbByteArray(NIFT, 'Texture Files Hashes', 0, cpIgnore), - wbStruct(ACBS, 'Configuration', [ - wbInteger('Flags', itU32, wbFlags([ - {0x000001} 'Biped', - {0x000002} 'Essential', - {0x000004} 'Weapon & Shield', - {0x000008} 'Respawn', - {0x000010} 'Swims', - {0x000020} 'Flies', - {0x000040} 'Walks', - {0x000080} 'PC Level Offset', - {0x000100} 'Unused', //?? - {0x000200} 'No Low Level Processing', - {0x000400} 'Unused', //?? - {0x000800} 'No Blood Spray', - {0x001000} 'No Blood Decal', - {0x002000} '', - {0x004000} '', - {0x008000} 'No Head', - {0x010000} 'No Right Arm', - {0x020000} 'No Left Arm', - {0x040000} 'No Combat in Water', - {0x080000} 'No Shadow', - {0x100000} 'No Corpse Check' - ])), - wbInteger('Base spell points', itU16), - wbInteger('Fatigue', itU16), - wbInteger('Barter gold', itU16), - wbInteger('Level (offset)', itS16), - wbInteger('Calc min', itU16), - wbInteger('Calc max', itU16) - ], cpNormal, True), - wbRArrayS('Factions', - wbStructSK(SNAM, [0], 'Faction', [ - wbFormIDCk('Faction', [FACT]), - wbInteger('Rank', itU8), - wbByteArray('Unused', 3) - ]) - ), - wbFormIDCk(INAM, 'Death item', [LVLI]), - wbSCRI, - wbStruct(AIDT, 'AI Data', [ - wbInteger('Aggression', itU8), - wbInteger('Confidence', itU8), - wbInteger('Energy Level', itU8), - wbInteger('Responsibility', itU8), - wbInteger('Buys/Sells and Services', itU32, wbServiceFlags), - wbInteger('Teaches', itS8, wbSkillEnum), - wbInteger('Maximum training level', itU8), - wbByteArray('Unused', 2) - ], cpNormal, True), - wbRArray('AI Packages', wbFormIDCk(PKID, 'AI Package', [PACK])), - wbArrayS(KFFZ, 'Animations', wbStringLC('Animation')), - wbStruct(DATA, 'Creature Data', [ - wbInteger('Type', itU8, wbEnum([ - 'Creature', - 'Daedra', - 'Undead', - 'Humanoid', - 'Horse', - 'Giant' - ])), - wbInteger('Combat Skill', itU8), - wbInteger('Magic Skill', itU8), - wbInteger('Stealth Skill', itU8), - wbInteger('Soul', itU8, wbSoulGemEnum), - wbByteArray('Unused', 1), - wbInteger('Health', itU16), - wbByteArray('Unused', 2), - wbInteger('Attack Damage', itU16), - wbInteger('Strength', itU8), - wbInteger('Intelligence', itU8), - wbInteger('Willpower', itU8), - wbInteger('Agility', itU8), - wbInteger('Speed', itU8), - wbInteger('Endurance', itU8), - wbInteger('Personality', itU8), - wbInteger('Luck', itU8) - ], cpNormal, True), - wbInteger(RNAM, 'Attack reach', itU8, nil, cpNormal, True), - wbFormIDCk(ZNAM, 'Combat Style', [CSTY]), - wbFloat(TNAM, 'Turning Speed', cpNormal, True), - wbFloat(BNAM, 'Base Scale', cpNormal, True), - wbFloat(WNAM, 'Foot Weight', cpNormal, True), - wbString(NAM0, 'Blood Spray'), - wbString(NAM1, 'Blood Decal'), - wbFormIDCk(CSCR, 'Inherits Sounds from', [CREA]), - wbCSDTs - ], True); - - wbRecord(CSTY, 'Combat Style', [ - wbEDID, - wbStruct(CSTD, 'Standard', [ - {000}wbInteger('Dodge % Chance', itU8), - {001}wbInteger('Left/Right % Chance', itU8), - {002}wbByteArray('Unused', 2), - {004}wbFloat('Dodge L/R Timer (min)'), - {008}wbFloat('Dodge L/R Timer (max)'), - {012}wbFloat('Dodge Forward Timer (min)'), - {016}wbFloat('Dodge Forward Timer (max)'), - {020}wbFloat('Dodge Back Timer Min'), - {024}wbFloat('Dodge Back Timer Max'), - {028}wbFloat('Idle Timer min'), - {032}wbFloat('Idle Timer max'), - {036}wbInteger('Block % Chance', itU8), - {037}wbInteger('Attack % Chance', itU8), - {038}wbByteArray('Unused', 2), - {040}wbFloat('Recoil/Stagger Bonus to Attack'), - {044}wbFloat('Unconscious Bonus to Attack'), - {048}wbFloat('Hand-To-Hand Bonus to Attack'), - {052}wbInteger('Power Attack % Chance', itU8), - {053}wbByteArray('Unused', 3), - {056}wbFloat('Recoil/Stagger Bonus to Power'), - {060}wbFloat('Unconscious Bonus to Power Attack'), - {064}wbInteger('Power Attack - Normal', itU8), - {065}wbInteger('Power Attack - Forward', itU8), - {066}wbInteger('Power Attack - Back', itU8), - {067}wbInteger('Power Attack - Left', itU8), - {068}wbInteger('Power Attack - Right', itU8), - {069}wbByteArray('Unused', 3), - {072}wbFloat('Hold Timer (min)'), - {076}wbFloat('Hold Timer (max)'), - {080}wbInteger('Flags 1', itU8, wbFlags([ - 'Advanced', - 'Choose Attack using % Chance', - 'Ignore Allies in Area', - 'Will Yield', - 'Rejects Yields', - 'Fleeing Disabled', - 'Prefers Ranged', - 'Melee Alert OK' - ])), - {081}wbInteger('Acrobatic Dodge % Chance', itU8), - {082}wbByteArray('Unused', 2), - {084}wbFloat('Range Mult (Optimal)'), - {088}wbFloat('Range Mult (Max)'), - {092}wbFloat('Switch Distance (Melee)'), - {096}wbFloat('Switch Distance (Ranged)'), - {100}wbFloat('Buff standoff Distance'), - {104}wbFloat('Ranged standoff Distance'), - {108}wbFloat('Group standoff Distance'), - {112}wbInteger('Rushing Attack % Chance', itU8), - {113}wbByteArray('Unused', 3), - {116}wbFloat('Rushing Attack Distance Mult'), - {120}wbInteger('Flags 2', itU32, wbFlags([ - 'Do Not Acquire' - ])) - ], cpNormal, True, nil, 31), - wbStruct(CSAD, 'Advanced', [ - wbFloat('Dodge Fatigue Mod Mult'), - wbFloat('Dodge Fatigue Mod Base'), - wbFloat('Encumb. Speed Mod Base'), - wbFloat('Encumb. Speed Mod Mult'), - wbFloat('Dodge While Under Attack Mult'), - wbFloat('Dodge Not Under Attack Mult'), - wbFloat('Dodge Back While Under Attack Mult'), - wbFloat('Dodge Back Not Under Attack Mult'), - wbFloat('Dodge Forward While Attacking Mult'), - wbFloat('Dodge Forward Not Attacking Mult'), - wbFloat('Block Skill Modifier Mult'), - wbFloat('Block Skill Modifier Base'), - wbFloat('Block While Under Attack Mult'), - wbFloat('Block Not Under Attack Mult'), - wbFloat('Attack Skill Modifier Mult'), - wbFloat('Attack Skill Modifier Base'), - wbFloat('Attack While Under Attack Mult'), - wbFloat('Attack Not Under Attack Mult'), - wbFloat('Attack During Block Mult'), - wbFloat('Power Att. Fatigue Mod Base'), - wbFloat('Power Att. Fatigue Mod Mult') - ]) - ]); - - wbRecord(DIAL, 'Dialog Topic', [ - wbEDID, - wbRArrayS('Quests', wbFormIDCk(QSTI, 'Quest', [QUST], False, cpBenign)), - wbRArrayS('Quests?', wbFormIDCk(QSTR, 'Quest?', [QUST], False, cpBenign)), - wbFULL, - wbInteger(DATA, 'Type', itU8, wbEnum([ - {0} 'Topic', - {1} 'Conversation', - {2} 'Combat', - {3} 'Persuasion', - {4} 'Detection', - {5} 'Service', - {6} 'Miscellaneous' - ]), cpNormal, True) - ], True); - - wbRecord(DOOR, 'Door', [ - wbEDID, - wbFULL, - wbMODL, - wbSCRI, - wbFormIDCk(SNAM, 'Open sound', [SOUN]), - wbFormIDCk(ANAM, 'Close sound', [SOUN]), - wbFormIDCk(BNAM, 'Loop sound', [SOUN]), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - {0x01} 'Oblivion gate', - {0x02} 'Automatic door', - {0x04} 'Hidden', - {0x08} 'Minimal use' - ]), cpNormal, True), - wbRArrayS('Random teleport destinations', wbFormIDCk(TNAM, 'Destination', [CELL, WRLD])) - ]); - - wbBlendModeEnum := wbEnum([ - '', - 'Zero', - 'One', - 'Source Color', - 'Source Inverse Color', - 'Source Alpha', - 'Source Inverted Alpha', - 'Dest Alpha', - 'Dest Inverted Alpha', - 'Dest Color', - 'Dest Inverse Color', - 'Source Alpha SAT' - ]); - - wbBlendOpEnum := wbEnum([ - '', - 'Add', - 'Subtract', - 'Reverse Subtract', - 'Minimum', - 'Maximum' - ]); - wbZTestFuncEnum := wbEnum([ - '', - '', - '', - 'Equal To', - 'Normal', - 'Greater Than', - '', - 'Greater Than or Equal Than', - 'Always Show' - ]); - - wbRecord(EFSH, 'Effect Shader', [ - wbEDID, - wbString(ICON, 'Fill Texture'), - wbString(ICO2, 'Particle Shader Texture'), - wbStruct(DATA, '', [ - wbInteger('Flags', itU8, wbFlags([ - {0} 'No Membrane Shader', - {1} '', - {2} '', - {3} 'No Particle Shader', - {4} 'Edge Effect - Inverse', - {5} 'Membrane Shader - Affect Skin Only' - ])), - wbByteArray('Unused', 3), - wbInteger('Membrane Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Membrane Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Membrane Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbStruct('Fill/Texture Effect - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Fill/Texture Effect - Alpha Fade In Time'), - wbFloat('Fill/Texture Effect - Full Alpha Time'), - wbFloat('Fill/Texture Effect - Alpha Fade Out Time'), - wbFloat('Fill/Texture Effect - Presistent Alpha Ratio'), - wbFloat('Fill/Texture Effect - Alpha Pulse Amplitude'), - wbFloat('Fill/Texture Effect - Alpha Pulse Frequency'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (U)'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (V)'), - wbFloat('Edge Effect - Fall Off'), - wbStruct('Edge Effect - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Edge Effect - Alpha Fade In Time'), - wbFloat('Edge Effect - Full Alpha Time'), - wbFloat('Edge Effect - Alpha Fade Out Time'), - wbFloat('Edge Effect - Persistent Alpha Ratio'), - wbFloat('Edge Effect - Alpha Pulse Amplitude'), - wbFloat('Edge Effect - Alpha Pusle Frequence'), - wbFloat('Fill/Texture Effect - Full Alpha Ratio'), - wbFloat('Edge Effect - Full Alpha Ratio'), - wbInteger('Membrane Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Particle Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Particle Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Particle Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbInteger('Particle Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbFloat('Particle Shader - Particle Birth Ramp Up Time'), - wbFloat('Particle Shader - Full Particle Birth Time'), - wbFloat('Particle Shader - Particle Birth Ramp Down Time'), - wbFloat('Particle Shader - Full Particle Birth Ratio'), - wbFloat('Particle Shader - Persistant Particle Birth Ratio'), - wbFloat('Particle Shader - Particle Lifetime'), - wbFloat('Particle Shader - Particle Lifetime +/-'), - wbFloat('Particle Shader - Initial Speed Along Normal'), - wbFloat('Particle Shader - Acceleration Along Normal'), - wbFloat('Particle Shader - Initial Velocity #1'), - wbFloat('Particle Shader - Initial Velocity #2'), - wbFloat('Particle Shader - Initial Velocity #3'), - wbFloat('Particle Shader - Acceleration #1'), - wbFloat('Particle Shader - Acceleration #2'), - wbFloat('Particle Shader - Acceleration #3'), - wbFloat('Particle Shader - Scale Key 1'), - wbFloat('Particle Shader - Scale Key 2'), - wbFloat('Particle Shader - Scale Key 1 Time'), - wbFloat('Particle Shader - Scale Key 2 Time'), - wbStruct('Color Key 1 - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Color Key 2 - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Color Key 3 - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Color Key 1 - Color Alpha'), - wbFloat('Color Key 2 - Color Alpha'), - wbFloat('Color Key 3 - Color Alpha'), - wbFloat('Color Key 1 - Color Key Time'), - wbFloat('Color Key 2 - Color Key Time'), - wbFloat('Color Key 3 - Color Key Time') - ], cpNormal, True, nil, 25) - ]); - - wbRecord(ENCH, 'Enchantment', [ - wbEDID, - wbStruct(OBME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbByteArray('Unused', $1C) - ], cpNormal, False, wbOBMEDontShow), - wbFULL, - wbStruct(ENIT, '', [ - wbInteger('Type', itU32, wbEnum([ - {0} 'Scroll', - {1} 'Staff', - {2} 'Weapon', - {3} 'Apparel' - ])), - wbInteger('Charge Amount', itU32), - wbInteger('Enchant Cost', itU32), - wbInteger('Flags', itU8, wbFlags(['Manual Enchant Cost (Autocalc Off)'])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffects - ]); - - wbRecord(EYES, 'Eyes', [ - wbEDID, - wbFULL, - wbString(ICON, 'Texture', 0, cpNormal, True), - wbInteger(DATA, 'Flags', itU8, wbFlags(['Playable']), cpNormal, True) - ]); - - wbXNAM := - wbStructSK(XNAM, [0], 'Relation', [ - wbFormIDCk('Faction', [FACT, RACE]), - wbInteger('Modifier', itS32) - ]); - - wbXNAMs := wbRArrayS('Relations', wbXNAM); - - wbRecord(FACT, 'Faction', [ - wbEDID, - wbFULL, - wbXNAMs, - wbInteger(DATA, 'Flags', itU8, wbFlags(['Hidden from Player', 'Evil', 'Special Combat']), cpNormal, True), - wbFloat(CNAM, 'Crime Gold Multiplier', cpNormal, True, 1, -1, nil, nil, 1.0), - wbRStructsSK('Ranks', 'Rank', [0], [ - wbInteger(RNAM, 'Rank#', itS32), - wbString(MNAM, 'Male', 0, cpTranslate), - wbString(FNAM, 'Female', 0, cpTranslate), - wbString(INAM, 'Insignia') - ], []) - ]); - - wbRecord(FLOR, 'Flora', [ - wbEDID, - wbFULL, - wbMODL, - wbSCRI, - wbFormIDCk(PFIG, 'Ingredient', [INGR]), - wbStruct(PFPC, 'Seasonal ingredient production', [ - wbInteger('Spring', itU8), - wbInteger('Summer ', itU8), - wbInteger('Fall', itU8), - wbInteger('Winter', itU8) - ], cpNormal, True) - ]); - - wbRecord(FURN, 'Furniture', [ - wbEDID, - wbFULL, - wbMODL, - wbSCRI, - wbByteArray(MNAM, 'Marker Flags', 0, cpNormal, True) - ]); - - wbRecord(GLOB, 'Global', [ - wbEDID, - wbInteger(FNAM, 'Type', itU8, wbGLOBFNAM, nil, cpNormal, True), - wbFloat(FLTV, 'Value', cpNormal, True) - ]); - - wbRecord(GMST, 'Game Setting', [ - wbEDID, - wbUnion(DATA, 'Value', wbGMSTUnionDecider, [ - wbString('', 0, cpTranslate), - wbInteger('', itS32), - wbFloat('') - ], cpNormal, True) - ]); - - wbRecord(GRAS, 'Grass', [ - wbEDID, - wbMODL, - wbStruct(DATA, '', [ - wbInteger('Density', itU8), - wbInteger('Min Slope', itU8), - wbInteger('Max Slope', itU8), - wbByteArray('Unused', 1), - wbInteger('Unit from water amount', itU16), - wbByteArray('Unused', 2), - wbInteger('Unit from water type', itU32, wbEnum([ - 'Above - At Least', - 'Above - At Most', - 'Below - At Least', - 'Below - At Most', - 'Either - At Least', - 'Either - At Most', - 'Either - At Most Above', - 'Either - At Most Below' - ])), - wbFloat('Position Range'), - wbFloat('Height Range'), - wbFloat('Color Range'), - wbFloat('Wave Period'), - wbInteger('Flags', itU8, wbFlags([ - 'Vertex Lighting', - 'Uniform Scaling', - 'Fit to Slope' - ])), - wbByteArray('Unused', 3) - ], cpNormal, True) - ]); - - wbRecord(HAIR, 'Hair', [ - wbEDID, - wbFULL, - wbMODL, - wbString(ICON, 'Texture', 0, cpNormal, True), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - 'Playable', - 'Not Male', - 'Not Female', - 'Fixed' - ]), cpNormal, True) - ]); - - wbCrimeTypeEnum := - wbEnum([ - 'Steal', - 'Pickpocket', - 'Trespass', - 'Attack', - 'Murder', - 'Steal Horse' - ], [ - -1, 'None' - ]); - - wbFormTypeEnum := - wbEnum([], [ - $03, 'Game Setting', - $04, 'Global', - $05, 'Class', - $06, 'Faction', - $07, 'Hair', - $08, 'Eyes', - $09, 'Race', - $0A, 'Sound', - $0B, 'Skill', - $0C, 'Magic Effect', - $0D, 'Script', - $0E, 'Land Texture', - $0F, 'Enchantment', - $10, 'Spell', - $11, 'BirthSign', - $12, 'Activator', - $13, 'Apparatus', - $14, 'Armor', - $15, 'Book', - $16, 'Clothing', - $17, 'Container', - $18, 'Door', - $19, 'Ingredient', - $1A, 'Light', - $1B, 'Misc', - $1C, 'Static', - $1D, 'Grass', - $1E, 'Tree', - $1F, 'Flora', - $20, 'Furniture', - $21, 'Weapon', - $22, 'Ammi', - $23, 'NPC', - $24, 'Creature', - $25, 'Leveled Creature', - $26, 'Soul Gem', - $27, 'Key', - $28, 'Alchemy', - $29, 'SubSpace', - $2A, 'Sigil Stone', - $2B, 'Leveled Item', - $2D, 'Weather', - $2E, 'Climate', - $2F, 'Region', - $30, 'Cell', - $31, 'Placed Object', - $32, 'Placed NPC', - $33, 'Placed Creature', - $34, 'Path Grid', - $35, 'Worldspace', - $36, 'Landscape', - $38, 'Road', - $39, 'Dialog Topic', - $3A, 'Dialog Response', - $3B, 'Quest', - $3C, 'Idle Animation', - $3D, 'Package', - $3E, 'Combat Style', - $3F, 'Load Screen', - $40, 'Leveled Spell', - $41, 'Animated Object', - $42, 'Water', - $43, 'Effect Shader' - ]); - - wbSexEnum := - wbEnum(['Male','Female']); - - wbAxisEnum := - wbEnum([], [ - 88, 'X', - 89, 'Y', - 90, 'Z' - ]); - - wbCTDA := - wbRUnion('Condition', [ - wbStruct(CTDA, 'Condition', [ - wbInteger('Type', itU8, wbCtdaType), - wbByteArray('Unused', 3), - wbUnion('Comparison Value', wbCTDACompValueDecider, [ - wbFloat('Comparison Value - Float'), - wbFormIDCk('Comparison Value - Global', [GLOB]) - ]), - wbInteger('Function', itU32, wbCTDAFunctionToStr, wbCTDAFunctionToInt), - wbUnion('Parameter #1', wbCTDAParam1Decider, [ - {00} wbByteArray('Unknown', 4), - {01} wbByteArray('None', 4, cpIgnore), - {02} wbInteger('Integer', itS32), - {03} wbInteger('Variable Name (INVALID)', itS32), - {04} wbInteger('Sex', itU32, wbSexEnum), - {05} wbFormIDCk('Actor Value', [ACVA]), -// {05} wbInteger('Actor Value', itS32, wbActorValueEnum), - {06} wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {07} wbInteger('Axis', itU32, wbAxisEnum), - {08} wbInteger('Form Type', itU32, wbFormTypeEnum), - {09} wbInteger('Quest Stage (INVALID)', itS32), - {10} wbFormIDCk('Object Reference', [PLYR, REFR, ACHR, ACRE, TRGT]), - {12} wbFormIDCk('Inventory Object', [ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH]), - {13} wbFormIDCk('Actor', [PLYR, ACHR, ACRE, TRGT]), - {14} wbFormIDCk('Quest', [QUST]), - {15} wbFormIDCk('Faction', [FACT]), - {16} wbFormIDCk('Cell', [CELL]), - {17} wbFormIDCk('Class', [CLAS]), - {18} wbFormIDCk('Race', [RACE]), - {19} wbFormIDCk('Actor Base', [NPC_, CREA, ACTI]), - {20} wbFormIDCk('Global', [GLOB]), - {21} wbFormIDCk('Weather', [WTHR]), - {22} wbFormIDCk('Package', [PACK]), - {23} wbFormIDCk('Owner', [FACT, NPC_]), - {24} wbFormIDCk('Birthsign', [BSGN]), - {25} wbFormIDCk('Furniture', [FURN]), - {26} wbFormIDCk('Magic Item', [SPEL]), - {27} wbFormIDCk('Magic Effect', [MGEF]), - {28} wbFormIDCk('Worldspace', [WRLD]), - {29} wbFormIDCk('Referenceable Object', [CREA, NPC_, TREE, SBSP, LVLC, SOUN, ACTI, DOOR, FLOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH, GRAS]) - ]), - wbUnion('Parameter #2', wbCTDAParam2Decider, [ - {00} wbByteArray('Unknown', 4), - {01} wbByteArray('None', 4, cpIgnore), - {02} wbInteger('Integer', itS32), - {03} wbInteger('Variable Name', itS32, wbCTDAParam2VariableNameToStr, wbCTDAParam2VariableNameToInt), - {04} wbInteger('Sex', itU32, wbSexEnum), - {05} wbFormIDCk('Actor Value', [ACVA]), -// {05} wbInteger('Actor Value', itS32, wbActorValueEnum), - {06} wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {07} wbInteger('Axis', itU32, wbAxisEnum), - {08} wbInteger('Form Type', itU32, wbFormTypeEnum), - {09} wbInteger('Quest Stage', itS32, wbCTDAParam2QuestStageToStr, wbCTDAParam2QuestStageToInt), - {10} wbFormIDCk('Object Reference', [PLYR, REFR, ACHR, ACRE, TRGT]), - {12} wbFormIDCk('Inventory Object', [ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH]), - {13} wbFormIDCk('Actor', [PLYR, ACHR, ACRE, TRGT]), - {14} wbFormIDCk('Quest', [QUST]), - {15} wbFormIDCk('Faction', [FACT]), - {16} wbFormIDCk('Cell', [CELL]), - {17} wbFormIDCk('Class', [CLAS]), - {18} wbFormIDCk('Race', [RACE]), - {19} wbFormIDCk('Actor Base', [NPC_, CREA, ACTI]), - {20} wbFormIDCk('Global', [GLOB]), - {21} wbFormIDCk('Weather', [WTHR]), - {22} wbFormIDCk('Package', [PACK]), - {23} wbFormIDCk('Owner', [FACT, NPC_]), - {24} wbFormIDCk('Birthsign', [BSGN]), - {25} wbFormIDCk('Furniture', [FURN]), - {26} wbFormIDCk('Magic Item', [SPEL]), - {27} wbFormIDCk('Magic Effect', [MGEF]), - {28} wbFormIDCk('Worldspace', [WRLD]), - {29} wbFormIDCk('Referenceable Object', [CREA, NPC_, TREE, SBSP, LVLC, SOUN, ACTI, DOOR, FLOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH, GRAS]) - ]), - wbInteger('Unused', itU32, nil, cpIgnore) - ], cpNormal, False, nil, 6), - wbStruct(CTDT, 'Condition (old format)', [ - wbInteger('Type', itU8, wbCtdaType), - wbByteArray('Unused', 3), - wbUnion('Comparison Value', wbCTDACompValueDecider, [ - wbFloat('Comparison Value - Float'), - wbFormIDCk('Comparison Value - Global', [GLOB]) - ]), - wbInteger('Function', itU32, wbCTDAFunctionToStr, wbCTDAFunctionToInt), - wbUnion('Parameter #1', wbCTDAParam1Decider, [ - {00} wbByteArray('Unknown', 4), - {01} wbByteArray('None', 4, cpIgnore), - {02} wbInteger('Integer', itS32), - {03} wbInteger('Variable Name (INVALID)', itS32), - {04} wbInteger('Sex', itU32, wbSexEnum), - {05} wbFormIDCk('Actor Value', [ACVA]), -// {05} wbInteger('Actor Value', itS32, wbActorValueEnum), - {06} wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {07} wbInteger('Axis', itU32, wbAxisEnum), - {08} wbInteger('Form Type', itU32, wbFormTypeEnum), - {09} wbInteger('Quest Stage (INVALID)', itS32), - {10} wbFormIDCk('Object Reference', [PLYR, REFR, ACHR, ACRE, TRGT]), - {12} wbFormIDCk('Inventory Object', [ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH]), - {13} wbFormIDCk('Actor', [PLYR, ACHR, ACRE, TRGT]), - {14} wbFormIDCk('Quest', [QUST]), - {15} wbFormIDCk('Faction', [FACT]), - {16} wbFormIDCk('Cell', [CELL]), - {17} wbFormIDCk('Class', [CLAS]), - {18} wbFormIDCk('Race', [RACE]), - {19} wbFormIDCk('Actor Base', [NPC_, CREA, ACTI]), - {20} wbFormIDCk('Global', [GLOB]), - {21} wbFormIDCk('Weather', [WTHR]), - {22} wbFormIDCk('Package', [PACK]), - {23} wbFormIDCk('Owner', [FACT, NPC_]), - {24} wbFormIDCk('Birthsign', [BSGN]), - {25} wbFormIDCk('Furniture', [FURN]), - {26} wbFormIDCk('Magic Item', [SPEL]), - {27} wbFormIDCk('Magic Effect', [MGEF]), - {28} wbFormIDCk('Worldspace', [WRLD]), - {29} wbFormIDCk('Referenceable Object', [CREA, NPC_, TREE, SBSP, LVLC, SOUN, ACTI, DOOR, FLOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH, GRAS]) - ]), - wbUnion('Parameter #2', wbCTDAParam2Decider, [ - {00} wbByteArray('Unknown', 4), - {01} wbByteArray('None', 4, cpIgnore), - {02} wbInteger('Integer', itS32), - {03} wbInteger('Variable Name', itS32, wbCTDAParam2VariableNameToStr, wbCTDAParam2VariableNameToInt), - {04} wbInteger('Sex', itU32, wbSexEnum), - {05} wbFormIDCk('Actor Value', [ACVA]), -// {05} wbInteger('Actor Value', itS32, wbActorValueEnum), - {06} wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {07} wbInteger('Axis', itU32, wbAxisEnum), - {08} wbInteger('Form Type', itU32, wbFormTypeEnum), - {09} wbInteger('Quest Stage', itS32, wbCTDAParam2QuestStageToStr, wbCTDAParam2QuestStageToInt), - {10} wbFormIDCk('Object Reference', [PLYR, REFR, ACHR, ACRE, TRGT]), - {12} wbFormIDCk('Inventory Object', [ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH]), - {13} wbFormIDCk('Actor', [PLYR, ACHR, ACRE, TRGT]), - {14} wbFormIDCk('Quest', [QUST]), - {15} wbFormIDCk('Faction', [FACT]), - {16} wbFormIDCk('Cell', [CELL]), - {17} wbFormIDCk('Class', [CLAS]), - {18} wbFormIDCk('Race', [RACE]), - {19} wbFormIDCk('Actor Base', [NPC_, CREA, ACTI]), - {20} wbFormIDCk('Global', [GLOB]), - {21} wbFormIDCk('Weather', [WTHR]), - {22} wbFormIDCk('Package', [PACK]), - {23} wbFormIDCk('Owner', [FACT, NPC_]), - {24} wbFormIDCk('Birthsign', [BSGN]), - {25} wbFormIDCk('Furniture', [FURN]), - {26} wbFormIDCk('Magic Item', [SPEL]), - {27} wbFormIDCk('Magic Effect', [MGEF]), - {28} wbFormIDCk('Worldspace', [WRLD]), - {29} wbFormIDCk('Referenceable Object', [CREA, NPC_, TREE, SBSP, LVLC, SOUN, ACTI, DOOR, FLOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH, GRAS]) - ]), - wbEmpty('Unused', cpIgnore) - ]) - ], []); - - wbCTDAs := wbRArray('Conditions', wbCTDA); - - wbSCHR := - wbRUnion('Basic Script Data', [ - wbStruct(SCHR, 'Basic Script Data', [ - wbByteArray('Unused', 4), - wbInteger('RefCount', itU32), - wbInteger('CompiledSize', itU32), - wbInteger('VariableCount', itU32), - wbInteger('Type', itU32, wbEnum([ - 'Object', - 'Quest' - ], [ - $100, 'Magic Effect' - ])) - ]), - wbStruct(SCHD, 'Basic Script Data', [ - wbByteArray('Unused', 4), - wbInteger('RefCount', itU32), - wbInteger('CompiledSize', itU32), - wbInteger('VariableCount', itU32), - wbInteger('Type', itU32, wbEnum([ - 'Object', - 'Quest' - ], [ - $100, 'Magic Effect' - ])) - ]) - ], []); - - wbSCROs := - wbRArray('References', - wbRUnion('', [ - wbFormIDCk(SCRO, 'Global Reference', - [ACTI, DOOR, FLOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, - INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH, QUST, PLYR, PACK, LVLI, - FACT, ACHR, REFR, ACRE, GLOB, DIAL, CELL, SOUN, MGEF, WTHR, CLAS, EFSH, RACE, - LVLC, CSTY, WRLD, SCPT, BSGN, TREE, NULL]), - wbInteger(SCRV, 'Local Variable', itU32) - ], []) - ); - - wbResultScript := wbRStruct('Result Script', [ - wbSCHR, - wbByteArray(SCDA, 'Compiled result script'), - wbStringScript(SCTX, 'Result script source'), - wbSCROs - ], []); -{ - wbResultScriptOld := wbRStruct('Result Script (Old Format?)', [ - wbByteArray(SCHD, 'Unknown (Script Header?)'), - wbByteArray(SCDA, 'Compiled result script'), - wbStringScript(SCTX, 'Result script source'), - wbSCROs - ], []); -} - wbRecord(IDLE, 'Idle Animation', [ - wbEDID, - wbMODL, - wbCTDAs, - wbInteger(ANAM, 'Animation Group Section', itU8, wbIdleAnam, nil, cpNormal, True), - wbArray(DATA, 'Related Idle Animations', wbFormIDCk('Related Idle Animation', [IDLE, NULL]), ['Parent', 'Previous Sibling'], cpNormal, True) - ]); - - wbRecord(INFO, 'Dialog response', [ - wbStruct(DATA, '', [ - wbInteger('Type', itU8, wbEnum([ - {0} 'Topic', - {1} 'Conversation', - {2} 'Combat', - {3} 'Persuasion', - {4} 'Detection', - {5} 'Service', - {6} 'Miscellaneous' - ])), - wbInteger('Flags', itU8, wbFlags([ - {0x0001} 'Goodbye', - {0x0002} 'Random', - {0x0004} 'Say Once', - {0x0008} '', - {0x0010} 'Info Refusal', - {0x0020} 'Random End', - {0x0040} 'Run for Rumors' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbFormIDCk(QSTI, 'Quest', [QUST], False, cpNormal, True), - wbFormIDCk(TPIC, 'Topic', [DIAL]), - wbFormIDCk(PNAM, 'Previous INFO', [INFO, NULL]), - wbRArray('Add topics', wbFormIDCk(NAME, 'Topic', [DIAL])), - wbRArray('Responses', - wbRStruct('Response', [ - wbStruct(TRDT, 'Response Data', [ - wbInteger('Emotion Type', itU32, wbEnum([ - {0} 'Neutral', - {1} 'Anger', - {2} 'Disgust', - {3} 'Fear', - {4} 'Sad', - {5} 'Happy', - {6} 'Surprise' - ])), - wbInteger('Emotion Value', itS32), - wbByteArray('Unused', 4), - wbInteger('Response number', itU8), - wbByteArray('Unused', 3) - ]), - wbString(NAM1, 'Response Text', 0, cpTranslate), - wbString(NAM2, 'Actor notes', 0, cpTranslate) - ], []) - ), - wbCTDAs, - wbRArray('Choices', wbFormIDCk(TCLT, 'Choice', [DIAL])), - wbRArray('Link From', wbFormIDCk(TCLF, 'Topic', [DIAL])), - wbResultScript - ]); - - wbRecord(INGR, 'Ingredient', [ - wbEDID, - wbStruct(OBME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbByteArray('Unused', $1C) - ], cpNormal, False, wbOBMEDontShow), - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbFloat(DATA, 'Weight', cpNormal, True), - wbStruct(ENIT, '', [ - wbInteger('Value', itS32), - wbInteger('Flags', itU8, wbFlags(['No auto-calculation', 'Food item'])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffects - ]); - - wbRecord(KEYM, 'Key', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbQuadrantEnum := wbEnum([ - {0} 'Bottom Left', - {1} 'Bottom Right', - {2} 'Top Left', - {3} 'Top Right' - ]); - - if wbSimpleRecords then begin - - wbRecord(LAND, 'Landscape', [ - wbByteArray(DATA, 'Unknown'), - wbByteArray(VNML, 'Vertex Normals'), - wbByteArray(VHGT, 'Vertext Height Map'), - wbByteArray(VCLR, 'Vertex Colours'), - - wbRArrayS('Layers', wbRUnion('Layer', [ - wbRStructSK([0],'Base Layer', [ - wbStructSK(BTXT, [1, 3], 'Base Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]) - ], []), - wbRStructSK([0],'Alpha Layer', [ - wbStructSK(ATXT, [1, 3], 'Alpha Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]), - wbByteArray(VTXT, 'Alpha Layer Data') - ], []) - ], [])), - - wbArray(VTEX, 'Textures', wbFormIDCk('Texture', [LTEX, NULL])) - ]); - - end else begin - - wbRecord(LAND, 'Landscape', [ - wbByteArray(DATA, 'Unknown'), -// wbStruct(DATA, '', [ -// wbInteger('Flags', itU8, wbFlags([])), -// wbByteArray('Unknown') -// ]), - wbArray(VNML, 'Vertex Normals', wbStruct('Row', [ - wbArray('Columns', wbStruct('Column', [ - wbInteger('X', itU8), - wbInteger('Y', itU8), - wbInteger('Z', itU8) - ]), 33) - ]), 33), - wbStruct(VHGT, 'Vertext Height Map', [ - wbFloat('Offset'), - wbArray('Rows', wbStruct('Row', [ - wbArray('Columns', wbInteger('Column', itU8), 33) - ]), 33), - wbByteArray('Unused', 3) - ]), - wbArray(VCLR, 'Vertex Colours', wbStruct('Row', [ - wbArray('Columns', wbStruct('Column', [ - wbInteger('X', itU8), - wbInteger('Y', itU8), - wbInteger('Z', itU8) - ]), 33) - ]), 33), - - wbRArrayS('Layers', wbRUnion('Layer', [ - wbRStructSK([0],'Base Layer', [ - wbStructSK(BTXT, [1, 3], 'Base Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]) - ], []), - wbRStructSK([0],'Alpha Layer', [ - wbStructSK(ATXT, [1, 3], 'Alpha Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]), - wbArrayS(VTXT, 'Alpha Layer Data', wbStructSK([0], 'Cell', [ - wbInteger('Position', itU16, wbAtxtPosition), - wbByteArray('Unused', 2), - wbFloat('Opacity') - ])) - ], []) - ], [])), - - wbArray(VTEX, 'Textures', wbFormIDCk('Texture', [LTEX, NULL])) - ]); - - end; - - wbRecord(LIGH, 'Light', [ - wbEDID, - wbMODL, - wbSCRI, - wbFULL, - wbICON, - wbStruct(DATA, '', [ - wbInteger('Time', itS32), - wbInteger('Radius', itU32), - wbStruct('Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbInteger('Unused', itU8) - ]), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Dynamic', - {0x00000002} 'Can be Carried', - {0x00000004} 'Negative', - {0x00000008} 'Flicker', - {0x00000010} 'Unused', - {0x00000020} 'Off By Default', - {0x00000040} 'Flicker Slow', - {0x00000080} 'Pulse', - {0x00000100} 'Pulse Slow', - {0x00000200} 'Spot Light', - {0x00000400} 'Spot Shadow' - ])), - wbFloat('Falloff Exponent'), - wbFloat('FOV'), - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True, nil, 6), - wbFloat(FNAM, 'Fade value', cpNormal, True, 1, -1, nil, nil, 1.0), - wbFormIDCk(SNAM, 'Sound', [SOUN]) - ], False, nil, cpNormal, False, wbLIGHAfterLoad); - - wbRecord(LSCR, 'Load Screen', [ - wbEDID, - wbICON, - wbDESC, - wbRArrayS('Locations', wbStructSK(LNAM, [0, 1], 'Location', [ - wbFormIDCk('Direct', [CELL, WRLD, NULL]), - wbStructSK([0, 1], 'Indirect', [ - wbFormIDCk('World', [NULL, WRLD]), - wbStructSK([0,1], 'Grid', [ - wbInteger('Y', itS16), - wbInteger('X', itS16) - ]) - ]) - ])) - ]); - - wbRecord(LTEX, 'Landscape Texture', [ - wbEDID, - wbICON, - wbStruct(HNAM, 'Havok Data', [ - wbInteger('Material Type', itU8, wbEnum([ - {00} 'STONE', - {01} 'CLOTH', - {02} 'DIRT', - {03} 'GLASS', - {04} 'GRASS', - {05} 'METAL', - {06} 'ORGANIC', - {07} 'SKIN', - {08} 'WATER', - {09} 'WOOD', - {10} 'HEAVY STONE', - {11} 'HEAVY METAL', - {12} 'HEAVY WOOD', - {13} 'CHAIN', - {14} 'SNOW' - ]), cpNormal, True, nil, nil, 2), - wbInteger('Friction', itU8, nil, cpNormal, True, nil, nil, 30), - wbInteger('Restitution', itU8, nil, cpNormal, True, nil, nil, 30) - ], cpNormal, True), - wbInteger(SNAM, 'Texture Specular Exponent', itU8, nil, cpNormal, True, False, nil, nil, 30), - wbRArrayS('Grasses', wbFormIDCk(GNAM, 'Grass', [GRAS])) - ]); - - wbRecord(LVLC, 'Leveled Creature', [ - wbEDID, - wbInteger(LVLD, 'Chance none', itU8, nil, cpNormal, True), - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count' - ]), cpNormal, True), - wbRArrayS('Leveled List Entries', - wbStructExSK(LVLO , [0, 2], [3], 'Leveled List Entry', [ - wbInteger('Level', itS16), - wbByteArray('Unused', 2), - wbFormIDCk('Reference', [NPC_, CREA, LVLC]), - wbInteger('Count', itS16), - wbByteArray('Unused', 2) - ], cpNormal, False, nil, 3), - cpNormal, True), - wbSCRI, - wbFormIDCk(TNAM, 'Creature template', [NPC_, CREA]) - ], True, nil, cpNormal, False, wbLVLAfterLoad); - - wbRecord(LVLI, 'Leveled Item', [ - wbEDID, - wbInteger(LVLD, 'Chance none', itU8, nil, cpNormal, True), - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count' - ]), cpNormal, True), - wbRArrayS('Leveled List Entries', - wbStructExSK(LVLO , [0, 2], [3], 'Leveled List Entry', [ - wbInteger('Level', itS16), - wbByteArray('Unused', 2), - wbFormIDCk('Reference', [ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, LVLI, KEYM, CLOT, ALCH, APPA, LIGH]), - wbInteger('Count', itS16), - wbByteArray('Unused', 2) - ], cpNormal, False, nil, 3), - cpNormal, True), - wbByteArray(DATA, 'Unused', 1) - ], False, nil, cpNormal, False, wbLVLAfterLoad); - - wbRecord(LVSP, 'Leveled Spell', [ - wbEDID, - wbInteger(LVLD, 'Chance none', itU8, nil, cpNormal, True), - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count', - {0x04} 'Use all spells' - ]), cpNormal, True), - wbRArrayS('Leveled List Entries', - wbStructExSK(LVLO , [0, 2], [3], 'Leveled List Entry', [ - wbInteger('Level', itS16), - wbByteArray('Unused', 2), - wbFormIDCk('Reference', [SPEL, LVSP]), - wbInteger('Count', itS16), - wbByteArray('Unused', 2) - ], cpNormal, False, nil, 3), - cpNormal, True) - ], False, nil, cpNormal, False, wbLVLAfterLoad); - - wbRecord(MGEF, 'Magic Effect', [ - wbStringMgefCode(EDID, 'Magic Effect Code'), - wbStruct(OBME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbInteger('Param A Info', itU8, wbOBMEResolutionInfo), - wbInteger('Param B Info', itU8, wbOBMEResolutionInfo), - wbByteArray('Unused', 2), - wbString('Handler', 4), - wbInteger('Flag Overrides', itU32, wbFlags([ - { 0} '', - { 1} '', - { 2} 'ParamFlagA', - { 3} 'Beneficial', - { 4} '', - { 5} '', - { 6} '', - { 7} '', - { 8} '', - { 9} '', - {10} '', - {11} '', - {12} '', - {13} '', - {14} '', - {15} '', - {16} 'ParamFlagB', - {17} 'Magnitude Is Range', - {18} 'Atomic Resistance', - {19} 'ParamFlagC', - {20} 'ParamFlagD', - {21} '', - {22} '', - {23} '', - {24} '', - {25} '', - {26} '', - {27} '', - {28} '', - {29} '', - {30} 'Hidden' - ])), - wbByteArray('ParamB', 4), - wbByteArray('Unused', $1C) - ], cpNormal, False, wbOBMEDontShow), - wbString(EDDX, 'EditorID', 0, cpNormal, False, wbEDDXDontShow), - wbFULL, - wbDESC, - wbICON, - wbMODL, - wbStruct(DATA, 'Data', [ - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Hostile', - {0x00000002} 'Recover', - {0x00000004} 'Detrimental', - {0x00000008} 'Magnitude %', - {0x00000010} 'Self', - {0x00000020} 'Touch', - {0x00000040} 'Target', - {0x00000080} 'No duration', - {0x00000100} 'No magnitude', - {0x00000200} 'No area', - {0x00000400} 'FX persist', - {0x00000800} 'Spellmaking', - {0x00001000} 'Enchanting', - {0x00002000} 'No Ingredient', - {0x00004000} '', - {0x00008000} '', - {0x00010000} 'Use weapon', - {0x00020000} 'Use armor', - {0x00040000} 'Use creature', - {0x00080000} 'Use skill', - {0x00100000} 'Use attribute', - {0x00200000} '', - {0x00400000} '', - {0x00800000} '', - {0x01000000} 'Use actor value', - {0x02000000} 'Spray projectile type (or Fog if Bolt is specified as well)', - {0x04000000} 'Bolt projectile type', - {0x08000000} 'No hit effect' - ])), - wbFloat('Base cost'), - wbUnion('Assoc. Item', wbMGEFFAssocItemDecider, [ - wbFormIDCk('Unused', [NULL]), - wbFormIDCk('Assoc. Weapon', [WEAP]), - wbFormIDCk('Assoc. Armor', [ARMO, NULL{?}]), - wbFormIDCk('Assoc. Creature', [CREA, LVLC, NPC_]), - wbInteger('Assoc. Actor Value', itS32, wbActorValueEnum) - ]), - wbInteger('Magic School', itS32, wbMagicSchoolEnum), - wbInteger('Resist value', itS32, wbActorValueEnum), - wbInteger('Counter Effect Count', itU16), //!!! must be updated automatically when ESCE length changes! - wbByteArray('Unused', 2), - wbFormIDCk('Light', [LIGH, NULL]), - wbFloat('Projectile speed'), - wbFormIDCk('Effect Shader', [EFSH, NULL]), - wbFormIDCk('Enchant effect', [EFSH, NULL]), - wbFormIDCk('Casting sound', [NULL, SOUN]), - wbFormIDCk('Bolt sound', [NULL, SOUN]), - wbFormIDCk('Hit sound', [NULL, SOUN]), - wbFormIDCk('Area sound', [NULL, SOUN]), - wbFloat('Constant Effect enchantment factor'), - wbFloat('Constant Effect barter factor') - ], cpNormal, True, nil, 10), - wbArrayS(ESCE, 'Counter Effects', wbStringMgefCode('Counter Effect Code', 4){wbInteger('Counter Effect', itU32, wbChar4)}) - ], False, nil, cpNormal, False, wbMGEFAfterLoad); - - wbRecord(MISC, 'Misc. Item', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbStruct(DATA, '', [ - wbUnion('', wbMISCActorValueDecider, [ - wbInteger('Value', itS32), - wbFormIDCk('Actor Value', [ACVA]) - ]), - wbUnion('', wbMISCActorValueDecider, [ - wbFloat('Weight'), - wbInteger('Group', itU32, wbEnum([], [ - $40E00000, ' [NONE]', - $40400000, 'AI', - $00000000, 'Attribute', - $40C00000, 'Combat', - $40A00000, 'Misc', - $40000000, 'Skill', - $40800000, 'Social', - $3F800000, 'Stat' - ])) - ]) - ], cpNormal, True) - ]); - - wbFaceGen := wbRStruct('FaceGen Data', [ - wbByteArray(FGGS, 'FaceGen Geometry-Symmetric', 0, cpNormal, True), - wbByteArray(FGGA, 'FaceGen Geometry-Asymmetric', 0, cpNormal, True), - wbByteArray(FGTS, 'FaceGen Texture-Symmetric', 0, cpNormal, True) - ], [], cpNormal, True); - - wbRecord(NPC_, 'Non-Player Character', [ - wbEDID, - wbFULL, - wbMODL, - wbStruct(ACBS, 'Configuration', [ - wbInteger('Flags', itU32, wbFlags([ - {0x000001} 'Female', - {0x000002} 'Essential', - {0x000004} '', - {0x000008} 'Respawn', - {0x000010} 'Auto-calc stats', - {0x000020} '', - {0x000040} '', - {0x000080} 'PC Level Offset', - {0x000100} '', - {0x000200} 'No Low Level Processing', - {0x000400} '', - {0x000800} '', - {0x001000} '', - {0x002000} 'No Rumors', - {0x004000} 'Summonable', - {0x008000} 'No Persuasion', - {0x010000} '', - {0x020000} '', - {0x040000} '', - {0x080000} '', - {0x100000} 'Can Corpse Check' - ])), - wbInteger('Base spell points', itU16), - wbInteger('Fatigue', itU16), - wbInteger('Barter gold', itU16), - wbInteger('Level (offset)', itS16), - wbInteger('Calc min', itU16), - wbInteger('Calc max', itU16) - ], cpNormal, True), - wbRArrayS('Factions', - wbStructSK(SNAM, [0], 'Faction', [ - wbFormIDCk('Faction', [FACT]), - wbInteger('Rank', itU8), - wbByteArray('Unused', 3) - ]) - ), - wbFormIDCk(INAM, 'Death item', [LVLI]), - wbFormIDCk(RNAM, 'Race', [RACE], False, cpNormal, True), - wbCNTOs, - wbSPLOs, - wbSCRI, - wbStruct(AIDT, 'AI Data', [ - wbInteger('Aggression', itU8), - wbInteger('Confidence', itU8), - wbInteger('Energy Level', itU8), - wbInteger('Responsibility', itU8), - wbInteger('Buys/Sells and Services', itU32, wbServiceFlags), - wbInteger('Teaches', itS8, wbSkillEnum), - wbInteger('Maximum training level', itU8), - wbByteArray('Unused', 2) - ], cpNormal, True), - wbRArray('AI Packages', wbFormIDCk(PKID, 'AI Package', [PACK])), - wbArrayS(KFFZ, 'Animations', wbString('Animation')), - wbFormIDCk(CNAM, 'Class', [CLAS], False, cpNormal, True), - wbStruct(DATA, 'Stats', [ - wbInteger('Armorer', itU8), - wbInteger('Athletics', itU8), - wbInteger('Blade', itU8), - wbInteger('Block', itU8), - wbInteger('Blunt', itU8), - wbInteger('Hand to Hand', itU8), - wbInteger('Heavy Armor', itU8), - wbInteger('Alchemy', itU8), - wbInteger('Alteration', itU8), - wbInteger('Conjuration', itU8), - wbInteger('Destruction', itU8), - wbInteger('Illusion', itU8), - wbInteger('Mysticism', itU8), - wbInteger('Restoration', itU8), - wbInteger('Acrobatics', itU8), - wbInteger('Light Armor', itU8), - wbInteger('Marksman', itU8), - wbInteger('Mercantile', itU8), - wbInteger('Security', itU8), - wbInteger('Sneak', itU8), - wbInteger('Speechcraft', itU8), - wbInteger('Health', itU16), - wbByteArray('Unused', 2), - wbInteger('Strength', itU8), - wbInteger('Intelligence', itU8), - wbInteger('Willpower', itU8), - wbInteger('Agility', itU8), - wbInteger('Speed', itU8), - wbInteger('Endurance', itU8), - wbInteger('Personality', itU8), - wbInteger('Luck', itU8) - ], cpNormal, True), - wbFormIDCk(HNAM, 'Hair', [HAIR]), - wbFloat(LNAM, 'Hair length'), - wbArray(ENAM, 'Eyes', wbFormIDCk('Eyes', [EYES])), - wbStruct(HCLR, 'Hair color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbFormIDCk(ZNAM, 'Combat Style', [CSTY]), - wbFaceGen, - wbByteArray(FNAM, 'Unknown', 0, cpBenign) - ], True); - - wbPKDTFlags := wbFlags([ - {0x00000001} 'Offers services', - {0x00000002} 'Must reach location', - {0x00000004} 'Must complete', - {0x00000008} 'Lock doors at package start', - {0x00000010} 'Lock doors at package end', - {0x00000020} 'Lock doors at location', - {0x00000040} 'Unlock doors at package start', - {0x00000080} 'Unlock doors at package end', - {0x00000100} 'Unlock doors at location', - {0x00000200} 'Continue if PC near', - {0x00000400} 'Once per day', - {0x00000800} 'Unused', - {0x00001000} 'Skip fallout behavior', - {0x00002000} 'Always run', - {0x00004000} '', - {0x00008000} '', - {0x00010000} '', - {0x00020000} 'Always sneak', - {0x00040000} 'Allow swimming', - {0x00080000} 'Allow falls', - {0x00100000} 'Armor unequipped', - {0x00200000} 'Weapons unequipped', - {0x00400000} 'Defensive combat', - {0x00800000} 'Use horse', - {0x01000000} 'No idle anims', - {0x02000000} '', - {0x04000000} '', - {0x08000000} '', - {0x10000000} '', - {0x20000000} '', - {0x40000000} '', - {0x80000000} '' - ]); - - wbPKDTType := wbEnum([ - {0} 'Find', - {1} 'Follow', - {2} 'Escort', - {3} 'Eat', - {4} 'Sleep', - {5} 'Wander', - {6} 'Travel', - {7} 'Accompany', - {8} 'Use item at', - {9} 'Ambush', - {10} 'Flee not combat', - {11} 'Cast magic' - ]); - - wbRecord(PACK, 'AI Package', [ - wbEDID, - wbUnion(PKDT, 'General', wbPACKPKDTDecider, [ - wbStruct('General', [ - wbInteger('Flags', itU16, wbPKDTFlags), - wbInteger('Type', itU8, wbPKDTType), - wbByteArray('Unused', 1) - ]), - wbStruct('General', [ - wbInteger('Flags', itU32, wbPKDTFlags), - wbInteger('Type', itU8, wbPKDTType), - wbByteArray('Unused', 3) - ]) - ]), - wbStruct(PLDT, 'Location', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Near reference', - {1} 'In cell', - {2} 'Near current location', - {3} 'Near editor location', - {4} 'Object ID', - {5} 'Object type' - ])), - wbUnion('Location', wbPxDTLocationDecider, [ - wbFormIDCk('Reference', [REFR, ACHR, ACRE, PLYR], True), - wbFormIDCk('Cell', [CELL]), - wbFormIDCk('Unused', [NULL]), - wbFormIDCk('Unused', [NULL]), - wbFormIDCk('Object ID', [ACTI, DOOR, FLOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH]), - wbInteger('Object type', itU32) - ]), - wbInteger('Radius', itS32) - ]), - wbStruct(PSDT, 'Schedule', [ - wbInteger('Month', itS8), - wbInteger('Day of week', itS8, wbEnum([ - 'Sundas', - 'Morndas', - 'Tirdas', - 'Middas', - 'Turdas', - 'Fredas', - 'Loredas', - 'Morndas to Fredas', - 'Loredas, Sundas', - 'Morndas, Middas, Fredas', - 'Tirdas, Turdas' - ], [ - -1, 'Any' - ])), - wbInteger('Date', itU8), - wbInteger('Time', itS8), - wbInteger('Duration', itS32) - ]), - wbStruct(PTDT, 'Target', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Specific reference', - {1} 'Object ID', - {2} 'Object type' - ])), - wbUnion('Target', wbPxDTLocationDecider, [ - wbFormIDCk('Reference', [ACHR, ACRE, REFR, PLYR], True), - wbFormIDCk('Object ID', [ACTI, DOOR, FLOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH]), - wbInteger('Object type', itU32) - ]), - wbInteger('Count', itS32) - ]), - wbCTDAs - ]); - - wbPGRP := - wbArray(PGRP, 'Points', wbStruct('Point', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z (Even = Red/Orange, Odd = Blue)'), - wbInteger('Connections', itU8{, wbPGRPConnectionsCallback}), - wbByteArray('Unused', 3) - ]), 0, nil, nil, cpNormal, True); - - {The Connection Count in the PGRP record specifies how many entries in this - array belong to each point. If the first 4 points in the PGRP array have - Connection Counts 2, 5, 2, 4 then the first 2 entries are the connections - of point 0, then next 5 are the connections of point 1, the next 2 of point 2, - the next 4 of point 3 and so on..., this can currently not be represented - declaratively } - - wbRecord(PGRD, 'Path Grid', [ - wbInteger(DATA, 'Point Count', itU16, nil, cpNormal, True), - wbPGRP, - wbByteArray(PGAG, 'Unknown'), - wbArray(PGRR, 'Point-to-Point Connections', - wbArrayS('Point', wbInteger('Point', itU16), wbCalcPGRRSize{, cpNormal, False, wbPGRRPointAfterLoad}) - ), - wbArrayS(PGRI, 'Inter-Cell Connections', wbStructSK([0,2,3,4], 'Inter-Cell Connection', [ - wbInteger('Point', itU16), - wbByteArray('Unused', 2), - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), 0, cpNormal, False, wbPGRIPointerAfterLoad), - wbRArrayS('Point-to-Reference Mappings', - wbStructSK(PGRL, [0], 'Point-to-Reference Mapping', [ - wbFormIDCk('Reference', [REFR]), - wbArrayS('Points', wbInteger('Point', itU32)) - ]) - ) - ], False, nil, cpNormal, False, wbPGRDAfterLoad); - - wbRecord(QUST, 'Quest', [ - wbEDID, - wbSCRI, - wbFULL, - wbICON, - wbStruct(DATA, 'General', [ - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Start game enabled', - {0x02} '', - {0x04} 'Allow repeated conversation topics', - {0x08} 'Allow repeated stages' - ])), - wbInteger('Priority', itU8) - ], cpNormal, True), - wbCTDAs, - wbRArrayS('Stages', wbRStructSK([0], 'Stage', [ - wbInteger(INDX, 'Stage index', itS16), - wbRArray('Log Entries', wbRStruct('Log Entry', [ - wbInteger(QSDT, 'Stage Flags', itU8, wbFlags([ - {0x01} 'Complete quest' - ])), - wbCTDAs, - wbString(CNAM, 'Log Entry', 0, cpTranslate), - wbResultScript - ], [])) - ], [])), - wbRArray('Targets', wbRStruct('Target', [ - wbStruct(QSTA, 'Target', [ - wbFormIDCk('Target', [REFR, ACRE, ACHR], True), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Compass marker ignores locks' - ])), - wbByteArray('Unused', 3) - ]), - wbCTDAs - ], [])) - ]); - - wbBodyDataIndex := - wbInteger(INDX, 'Index', itU32, wbEnum([ - 'Upper Body', - 'Lower Body', - 'Hand', - 'Foot', - 'Tail' - ])); - - wbRecord(RACE, 'Race', [ - wbEDID, - wbFULL, - wbDESC, - wbSPLOs, - wbXNAMs, - wbStruct(DATA, '', [ - wbArrayS('Skill Boosts', wbStructSK([0], 'Skill Boost', [ - wbInteger('Skill', itS8, wbActorValueEnum), - wbInteger('Boost', itS8) - ]), 7), - wbByteArray('Unused', 2), - wbFloat('Male Height'), - wbFloat('Female Height'), - wbFloat('Male Weight'), - wbFloat('Female Weight'), - wbInteger('Flags', itU32, wbFlags([ - 'Playable' - ])) - ], cpNormal, True), - wbStruct(VNAM, 'Voice', [ - wbFormIDCk('Male', [RACE, NULL]), - wbFormIDCk('Female', [RACE, NULL]) - ]), - wbStruct(DNAM, 'Default Hair', [ - wbFormIDCk('Male', [HAIR]), - wbFormIDCk('Female', [HAIR]) - ]), - wbInteger(CNAM, 'Default Hair Color', itU8, nil, cpNormal, True), - wbFloat(PNAM, 'FaceGen - Main clamp', cpNormal, True), - wbFloat(UNAM, 'FaceGen - Face clamp', cpNormal, True), - wbStruct(ATTR, 'Base Attributes', [ - wbStruct('Male', [ - wbInteger('Strength', itU8), - wbInteger('Intelligence', itU8), - wbInteger('Willpower', itU8), - wbInteger('Agility', itU8), - wbInteger('Speed', itU8), - wbInteger('Endurance', itU8), - wbInteger('Personality', itU8), - wbInteger('Luck', itU8) - ]), - wbStruct('Female', [ - wbInteger('Strength', itU8), - wbInteger('Intelligence', itU8), - wbInteger('Willpower', itU8), - wbInteger('Agility', itU8), - wbInteger('Speed', itU8), - wbInteger('Endurance', itU8), - wbInteger('Personality', itU8), - wbInteger('Luck', itU8) - ]) - ]), - wbRStruct('Face Data', [ - wbEmpty(NAM0, 'Face Data Marker'), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbEnum([ - 'Head', - 'Ear (Male)', - 'Ear (Female)', - 'Mouth', - 'Teeth (Lower)', - 'Teeth (Upper)', - 'Tongue', - 'Eye (Left)', - 'Eye (Right)' - ])), - wbMODL, - wbICON - ], [])) - ], [], cpNormal, True), - wbEmpty(NAM1, 'Body Data Marker', cpNormal, True), - wbRStruct('Male Body Data', [ - wbEmpty(MNAM, 'Male Body Data Marker'), - wbMODL, - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbBodyDataIndex, - wbICON - ], [])) - ], [], cpNormal, True), - wbRStruct('Female Body Data', [ - wbEmpty(FNAM, 'Female Body Data Marker'), - wbMODL, - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbBodyDataIndex, - wbICON - ], [])) - ], [], cpNormal, True), - wbArrayS(HNAM, 'Hairs', wbFormIDCk('Hair', [HAIR]), 0, cpNormal, True), - wbArrayS(ENAM, 'Eyes', wbFormIDCk('Eye', [EYES]), 0, cpNormal, True), - wbFaceGen, - wbByteArray(SNAM, 'Unknown', 2, cpNormal, True) - ], True); - - wbRecord(REFR, 'Placed Object', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [TREE, SBSP, LVLC, SOUN, ACTI, DOOR, FLOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH, GRAS], False, cpNormal, True), - wbStruct(XTEL, 'Teleport Destination', [ - wbFormIDCk('Door', [REFR], True), - wbPosRot - ]), - wbStruct(XLOC, 'Lock information', [ - wbInteger('Lock Level', itU8), - wbByteArray('Unused', 3), - wbFormIDCk('Key', [KEYM, NULL]), - wbUnion('Unused', wbXLOCFillerDecider, [ - wbEmpty('Unused'), - wbByteArray('Unused', 4) - ]), - wbInteger('Flags', itU8, wbFlags(['', '', 'Leveled Lock'])), - wbByteArray('Unused', 3) - ]), - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32), - wbXGLB - ], [XLOC]), - wbXESP, - wbFormIDCk(XTRG, 'Target', [REFR, ACHR, ACRE], True), - wbUnion(XSED, '', wbREFRXSEDDecider, [ - wbInteger('SpeedTree Seed', itU8), - wbInteger('SpeedTree Seed (old format)', itU8{itU32 CS just cuts it off...}) - ]), - wbXLOD, - wbFloat(XCHG, 'Charge'), - wbInteger(XHLT, 'Health', itS32), - wbRStruct('Unused', [ - wbFormIDCk(XPCI, 'Unused', [CELL]), - wbString(FULL, 'Unused') - ], []), - wbInteger(XLCM, 'Level Modifier', itS32), - wbFormIDCk(XRTM, 'Unknown', [REFR]), - wbInteger(XACT, 'Action Flag', itU32, wbFlags([ - 'Use Default', - 'Activate', - 'Open', - 'Open by Default' - ])), - wbInteger(XCNT, 'Count', itS32), - wbRStruct('Map Marker', [ - wbEmpty(XMRK, 'Map Marker Start Marker'), - wbInteger(FNAM, 'Map Flags', itU8, wbFlags([ - {0x01} 'Visible', - {0x02} 'Can Travel To' - ]), cpNormal, True), - wbFULLReq, - wbStruct(TNAM, '', [ - wbInteger('Type', itU8, wbEnum([ - {0x00} 'None?', - {0x01} 'Camp', - {0x02} 'Cave', - {0x03} 'City', - {0x04} 'Elven Ruin', - {0x05} 'Fort Ruin', - {0x06} 'Mine', - {0x07} 'Landmark', - {0x08} 'Tavern', - {0x09} 'Settlement', - {0x0A} 'Daedric Shrine', - {0x0B} 'Oblivion Gate', - {0x0C} 'Unknown? (door icon)' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True) - ], []), - wbEmpty(ONAM, 'Open by Default'), - wbXSCL, - wbInteger(XSOL, 'Contained Soul', itU8, wbSoulGemEnum), - wbDATAPosRot - ], True, wbPlacedAddInfo, cpNormal, False, wbREFRAfterLoad); - - wbRecord(REGN, 'Region', [ - wbEDID, - wbICON, - wbStruct(RCLR, 'Map Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbFormIDCk(WNAM, 'Worldspace', [WRLD]), - - wbRArray('Region Areas', wbRStruct('Region Area', [ - wbInteger(RPLI, 'Edge Fall-off', itU32), - wbArray(RPLD, 'Region Point List Data', wbStruct('Point', [ - wbFloat('X'), - wbFloat('Y') - ]), 0, wbRPLDAfterLoad) - ], []), cpNormal, True), - - wbRArrayS('Region Data Entries', wbRStructSK([0], 'Region Data Entry', [ - {always starts with an RDAT} - wbStructSK(RDAT, [0], 'Data Header', [ - wbInteger('Type', itU32, wbEnum([ - {0}'', - {1}'', - {2}'Objects', - {3}'Weather', - {4}'Map', - {5}'', - {6}'Grass', - {7}'Sound', - {8}'', - {9}'' - ])), - wbInteger('Flags', itU8, wbFlags([ - 'Override' - ])), - wbInteger('Priority', itU8), - wbByteArray('Unused', 2) - ], cpNormal, True, nil, 3), - - {followed by one of these: } - - {--- Objects ---} - wbArray(RDOT, 'Objects', wbStruct('Object', [ - wbFormIDCk('Object', [TREE, FLOR, STAT, LTEX]), - wbInteger('Parent Index', itU16, wbHideFFFF), - wbByteArray('Unused', 2), - wbFloat('Density'), - wbInteger('Clustering', itU8), - wbInteger('Min Slope', itU8), - wbInteger('Max Slope', itU8), - wbInteger('Flags', itU8, wbFlags([ - {0}'Conform to slope', - {1}'Paint Vertices', - {2}'Size Variance +/-', - {3}'X +/-', - {4}'Y +/-', - {5}'Z +/-', - {6}'Tree', - {7}'Huge Rock' - ])), - wbInteger('Radius wrt Parent', itU16), - wbInteger('Radius', itU16), - wbByteArray('Unknown', 4), - wbFloat('Max Height'), - wbFloat('Sink'), - wbFloat('Sink Variance'), - wbFloat('Size Variance'), - wbStruct('Angle Variance', [ - wbInteger('X', itU16), - wbInteger('Y', itU16), - wbInteger('Z', itU16) - ]), - wbByteArray('Unused', 2), - wbByteArray('Unknown', 4) - ])), - - {--- Map ---} - wbString(RDMP, 'Map Name', 0, cpTranslate), - - {--- Grass ---} - wbArrayS(RDGS, 'Grasses', wbStructSK([0], 'Grass', [ - wbFormIDCk('Grass', [GRAS]), - wbByteArray('Unused', 4) - ])), - - {--- Sound ---} - wbInteger(RDMD, 'Music Type', itU32, wbMusicEnum), - wbArrayS(RDSD, 'Sounds', wbStructSK([0], 'Sound', [ - wbFormIDCk('Sound', [SOUN]), - wbInteger('Flags', itU32, wbFlags([ - 'Pleasant', - 'Cloudy', - 'Rainy', - 'Snowy' - ])), - wbInteger('Chance', itU32, wbScaledInt4ToStr, wbScaledInt4ToInt) - ])), - - {--- Weather ---} - wbArrayS(RDWT, 'Weather Types', wbStructSK([0], 'Weather Type', [ - wbFormIDCk('Weather', [WTHR]), - wbInteger('Chance', itU32) - ])) - ], [])) - ], True); - - wbRecord(ROAD, 'Road', [ - wbPGRP, - wbArray(PGRR, 'Point-to-Point Connections (complex structure can''t be represented, see source)', - {The Connection Count in the PGRP record specifies how many entries in this - array belong to each point. If the first 4 points in the PGRP array have - Connection Counts 2, 5, 2, 4 then the first 2 entries are the connections - of point 0, then next 5 are the connections of point 1, the next 2 of point 2, - the next 4 of point 3 and so on..., this can currently not be represented - declaratively } - wbStruct('Point', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), 0, nil, nil, cpNormal, True) - ]); - - wbRecord(SBSP, 'Subspace', [ - wbEDID, - wbStruct(DNAM, '', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ], cpNormal, True) - ]); - - wbSLSD := wbStructSK(SLSD, [0], 'Local Variable Data', [ - wbInteger('Index', itU32), - wbByteArray('Unused', 12), - wbInteger('Flags', itU8, wbFlags(['IsLongOrShort']), cpCritical), - wbByteArray('Unused') - ]); - - wbRecord(SCPT, 'Script', [ - wbEDID, - wbByteArray(SCHD, 'Unknown (Script Header?)'), - wbSCHR, - wbByteArray(SCDA, 'Compiled Script'), - wbStringScript(SCTX, 'Script Source', 0, cpNormal, True), - wbRArrayS('Local Variables', wbRStructSK([0], 'Local Variable', [ - wbSLSD, - wbString(SCVR, 'Name', 0, cpCritical) - ], [])), - wbSCROs - ]); - - wbRecord(SGST, 'Sigil Stone', [ - wbEDID, - wbStruct(OBME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbByteArray('Unused', $1C) - ], cpNormal, False, wbOBMEDontShow), - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbEffects, - wbStruct(DATA, '', [ - wbInteger('Uses ', itU8), - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbRecord(SKIL, 'Skill', [ - wbEDID, - wbInteger(INDX, 'Skill', itS32, wbActorValueEnum, cpNormal, True), - wbDESC, - wbICON, - wbStruct(DATA, 'Skill Data', [ - wbInteger('Action', itS32, wbActorValueEnum), - wbInteger('Attribute', itS32, wbActorValueEnum), - wbInteger('Specialization', itU32, wbSpecializationEnum), - wbArray('Use Values', wbFloat('Use Value'), 2) - ], cpNormal, True), - wbString(ANAM, 'Apprentice Text', 0, cpTranslate, True), - wbString(JNAM, 'Journeyman Text', 0, cpTranslate, True), - wbString(ENAM, 'Expert Text', 0, cpTranslate, True), - wbString(MNAM, 'Master Text', 0, cpTranslate, True) - ]); - - wbRecord(SLGM, 'Soul Gem', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbStruct(DATA, '', [ - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True), - wbInteger(SOUL, 'Contained Soul', itU8, wbSoulGemEnum, cpNormal, True), - wbInteger(SLCP, 'Maximum Capacity', itU8, wbSoulGemEnum, cpNormal, True) - ]); - - wbRecord(SOUN, 'Sound', [ - wbEDID, - wbString(FNAM, 'Sound Filename'), - wbRUnion('Sound Data', [ - wbStruct(SNDX, 'Sound Data', [ - wbInteger('Minimum attentuation distance', itU8, wbMul(5)), - wbInteger('Maximum attentuation distance', itU8, wbMul(100)), - wbInteger('Frequency adjustment %', itS8), - wbByteArray('Unused', 1), - wbInteger('Flags', itU16, wbFlags([ - {0x0001} 'Random Frequency Shift', - {0x0002} 'Play At Random', - {0x0004} 'Environment Ignored', - {0x0008} 'Random Location', - {0x0010} 'Loop', - {0x0020} 'Menu Sound', - {0x0040} '2D', - {0x0080} '360 LFE' - ])), - wbByteArray('Unused', 2), - wbInteger('Static attentuation cdB', itS16), - wbInteger('Stop time ', itU8), - wbInteger('Start time ', itU8) - ], cpNormal, True), - wbStruct(SNDD, 'Sound Data', [ - wbInteger('Minimum attentuation distance', itU8, wbMul(5)), - wbInteger('Maximum attentuation distance', itU8, wbMul(100)), - wbInteger('Frequency adjustment %', itS8), - wbByteArray('Unused', 1), - wbInteger('Flags', itU16, wbFlags([ - {0x0001} 'Random Frequency Shift', - {0x0002} 'Play At Random', - {0x0004} 'Environment Ignored', - {0x0008} 'Random Location', - {0x0010} 'Loop', - {0x0020} 'Menu Sound', - {0x0040} '2D', - {0x0080} '360 LFE' - ])), - wbByteArray('Unused', 2), - wbEmpty('Unused'), - wbEmpty('Unused'), - wbEmpty('Unused') - ], cpNormal, True) - ], [], cpNormal, True) - ]); - - wbRecord(SPEL, 'Spell', [ - wbEDID, - wbStruct(OBME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbByteArray('Unused', $1C) - ], cpNormal, False, wbOBMEDontShow), - wbFULL, - wbStruct(SPIT, '', [ - wbInteger('Type', itU32, wbEnum([ - {0} 'Spell', - {1} 'Disease', - {2} 'Power', - {3} 'Lesser Power', - {4} 'Ability', - {5} 'Poison' - ])), - wbInteger('Cost', itU32), - wbInteger('Level', itU32, wbEnum([ - {0} 'Novice', - {1} 'Apprentice', - {2} 'Journeyman', - {3} 'Expert', - {4} 'Master' - ])), - wbInteger('Flags', itU8, wbFlags([ - {0x00000001} 'Manual Spell Cost', - {0x00000002} 'Immune to Silence 1', - {0x00000004} 'Player Start Spell', - {0x00000008} 'Immune to Silence 2', - {0x00000010} 'Area Effect Ignores LOS', - {0x00000020} 'Script Effect Always Applies', - {0x00000040} 'Disallow Spell Absorb/Reflect', - {0x00000080} 'Touch Spell Explodes w/ no Target' - ])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffects - ]); - - wbRecord(STAT, 'Static', [ - wbEDID, - wbMODL - ]); - - wbRecord(TES3, 'Main File Header', [ - wbStruct(HEDR, 'Header', [ - wbFloat('Version'), - wbInteger('Number of Records', itU32), - wbInteger('Next Object ID', itU32) - ], cpNormal, True), - wbByteArray(OFST, 'Unknown', 0, cpIgnore), - wbByteArray(DELE, 'Unknown', 0, cpIgnore), - wbString(CNAM, 'Author', 0, cpTranslate, True), - wbString(SNAM, 'Description', 0, cpTranslate), - wbRArray('Master Files', wbRStruct('Master File', [ - wbString(MAST, 'Filename', 0, cpNormal, True), - wbByteArray(DATA, 'Unused', 8, cpIgnore, True) - ], [])) - ], False, nil, cpNormal, True, wbRemoveOFST); - - wbRecord(TREE, 'Tree', [ - wbEDID, - wbMODL, - wbICON, - wbArrayS(SNAM, 'SpeedTree Seeds', wbInteger('SpeedTree Seed', itU32)), - wbStruct(CNAM, 'Tree Data', [ - wbFloat('Leaf Curvature'), - wbFloat('Minimum Leaf Angle'), - wbFloat('Maximum Leaf Angle'), - wbFloat('Branch Dimming Value'), - wbFloat('Leaf Dimming Value'), - wbInteger('Shadow Radius', itS32), - wbFloat('Rock Speed'), - wbFloat('Rustle Speed') - ], cpNormal, True), - wbStruct(BNAM, 'Billboard Dimensions', [ - wbFloat('Width'), - wbFloat('Height') - ], cpNormal, True) - ]); - - wbRecord(WATR, 'Water', [ - wbEDID, - wbString(TNAM, 'Texture', 0, cpNormal, True), - wbInteger(ANAM, 'Opacity', itU8, nil, cpNormal, True), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - {0}'Causes Damage', - {1}'Reflective' - ]), cpNormal, True), - wbString(MNAM, 'Material ID'), - wbFormIDCk(SNAM, 'Sound', [SOUN]), - wbStruct(DATA, '', [ - wbFloat('Wind Velocity'), - wbFloat('Wind Direction'), - wbFloat('Wave Amplitude'), - wbFloat('Wave Frequency'), - wbFloat('Sun Power'), - wbFloat('Reflectivity Amount'), - wbFloat('Fresnel Amount'), - wbFloat('Scroll X Speed'), - wbFloat('Scroll Y Speed'), - wbFloat('Fog Distance - Near Plane'), - wbFloat('Fog Distance - Far Plane'), - wbStruct('Shallow Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Deep Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Reflection Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbInteger('Texture Blend', itU8), - wbByteArray('Unused', 3), - wbFloat('Rain Simulator - Force'), - wbFloat('Rain Simulator - Velocity'), - wbFloat('Rain Simulator - Falloff'), - wbFloat('Rain Simulator - Dampner'), - wbFloat('Rain Simulator - Starting Size'), - wbFloat('Displacement Simulator - Force'), - wbFloat('Displacement Simulator - Velocity'), - wbFloat('Displacement Simulator - Falloff'), - wbFloat('Displacement Simulator - Dampner'), - wbFloat('Displacement Simulator - Starting Size'), - wbInteger('Damage', itU16) - ], cpNormal, True, nil, 0), - wbStruct(GNAM, 'Related Waters', [ - wbFormIDCk('Daytime', [WATR, NULL]), - wbFormIDCk('Nighttime', [WATR, NULL]), - wbFormIDCk('Underwater', [WATR, NULL]) - ], cpNormal, True) - ]); - - wbRecord(WEAP, 'Weapon', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbENAM, - wbInteger(ANAM, 'Enchantment Points', itU16), - wbStruct(DATA, '', [ - wbInteger('Type', itU32, wbEnum([ - {0} 'Blade One Hand', - {1} 'Blade Two Hand', - {2} 'Blunt One Hand', - {3} 'Blunt Two Hand', - {4} 'Staff', - {5} 'Bow' - ])), - wbFloat('Speed'), - wbFloat('Reach'), - wbInteger('Flags', itU32, wbFlags(['Ignores Normal Weapon Resistance'])), - wbInteger('Value', itU32), - wbInteger('Health', itU32), - wbFloat('Weight'), - wbInteger('Damage', itU16) - ], cpNormal, True) - ]); - - wbRecord(WRLD, 'Worldspace', [ - wbEDID, - wbFULL, - wbFormIDCk(WNAM, 'Parent Worldspace', [WRLD]), - wbFormIDCk(CNAM, 'Climate', [CLMT]), - wbFormIDCk(NAM2, 'Water', [WATR]), - wbICON, - wbStruct(MNAM, 'Map Data', [ - wbStruct('Uable Dimensions', [ - wbInteger('X', itS32), - wbInteger('Y', itS32) - ]), - wbStruct('Cell Coordinates', [ - wbStruct('NW Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbStruct('SE Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]) - ]) - ]), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Small world', - {0x02} 'Can''t fast travel', - {0x04} 'Oblivion worldspace', - {0x08} '', - {0x10} 'No LOD water' - ]), cpNormal, True), - wbArray(NAM0, 'Unknown', wbFloat(''), 0, nil, nil, cpNormal, True), - wbArray(NAM9, 'Unknown', wbFloat(''), 0, nil, nil, cpNormal, True), - wbInteger(SNAM, 'Music', itU32, wbMusicEnum), - wbByteArray(OFST, 'Unknown') - ], False, nil, cpNormal, False, wbRemoveOFST); - - wbRecord(WTHR, 'Weather', [ - wbEDID, - wbString(CNAM, 'Texture Lower Layer'), - wbString(DNAM, 'Texture Upper Layer'), - wbMODL, - wbArray(NAM0, 'Colors by Types/Times', - wbArray('Type', - wbStruct('Time', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - ['Sunrise', 'Day', 'Sunset', 'Night'] - ), - ['Sky-Upper','Fog','Clouds-Lower','Ambient','Sunlight','Sun','Stars','Sky-Lower','Horizon','Clouds-Upper'] - , cpNormal, True), - wbStruct(FNAM, 'Fog Distance', [ - wbFloat('Day Near'), - wbFloat('Day Far'), - wbFloat('Night Near'), - wbFloat('Night Far') - ], cpNormal, True), - wbStruct(HNAM, 'HDR Data', [ - wbFloat('Eye Adapt Speed'), - wbFloat('Blur Radius'), - wbFloat('Blur Passes'), - wbFloat('Emissive Mult'), - wbFloat('Target LUM'), - wbFloat('Upper LUM Clamp'), - wbFloat('Bright Scale'), - wbFloat('Bright Clamp'), - wbFloat('LUM Ramp No Tex'), - wbFloat('LUM Ramp Min'), - wbFloat('LUM Ramp Max'), - wbFloat('Sunlight Dimmer'), - wbFloat('Grass Dimmer'), - wbFloat('Tree Dimmer') - ], cpNormal, True), - wbStruct(DATA, '', [ - wbInteger('Wind Speed', itU8), - wbInteger('Cloud Speed (Lower)', itU8), - wbInteger('Cloud Speed (Upper)', itU8), - wbInteger('Trans Delta', itU8), - wbInteger('Sun Glare', itU8), - wbInteger('Sun Damage', itU8), - wbInteger('Precipitation - Begin Fade In', itU8), - wbInteger('Precipitation - End Fade Out', itU8), - wbInteger('Thunder/Lightning - Begin Fade In', itU8), - wbInteger('Thunder/Lightning - End Fade Out', itU8), - wbInteger('Thunder/Lightning - Frequency', itU8), - wbInteger('Weather Classification', itU8, wbWthrDataClassification), - wbStruct('Lightning Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8) - ]) - ], cpNormal, True), - wbRArray('Sounds', wbStruct(SNAM, 'Sound', [ - wbFormIDCk('Sound', [SOUN]), - wbInteger('Type', itU32, wbEnum([ - {0}'Default', - {1}'Precip', - {2}'Wind', - {3}'Thunder' - ])) - ])) - ]); - - wbAddGroupOrder(GMST); - wbAddGroupOrder(GLOB); - wbAddGroupOrder(CLAS); - wbAddGroupOrder(FACT); - wbAddGroupOrder(HAIR); - wbAddGroupOrder(EYES); - wbAddGroupOrder(RACE); - wbAddGroupOrder(SOUN); - wbAddGroupOrder(SKIL); - wbAddGroupOrder(MGEF); - wbAddGroupOrder(SCPT); - wbAddGroupOrder(LTEX); - wbAddGroupOrder(ENCH); - wbAddGroupOrder(SPEL); - wbAddGroupOrder(BSGN); - wbAddGroupOrder(ACTI); - wbAddGroupOrder(APPA); - wbAddGroupOrder(ARMO); - wbAddGroupOrder(BOOK); - wbAddGroupOrder(CLOT); - wbAddGroupOrder(CONT); - wbAddGroupOrder(DOOR); - wbAddGroupOrder(INGR); - wbAddGroupOrder(LIGH); - wbAddGroupOrder(MISC); - wbAddGroupOrder(STAT); - wbAddGroupOrder(GRAS); - wbAddGroupOrder(TREE); - wbAddGroupOrder(FLOR); - wbAddGroupOrder(FURN); - wbAddGroupOrder(WEAP); - wbAddGroupOrder(AMMO); - wbAddGroupOrder(NPC_); - wbAddGroupOrder(CREA); - wbAddGroupOrder(LVLC); - wbAddGroupOrder(SLGM); - wbAddGroupOrder(KEYM); - wbAddGroupOrder(ALCH); - wbAddGroupOrder(SBSP); - wbAddGroupOrder(SGST); - wbAddGroupOrder(LVLI); - wbAddGroupOrder(WTHR); - wbAddGroupOrder(CLMT); - wbAddGroupOrder(REGN); - wbAddGroupOrder(CELL); - wbAddGroupOrder(WRLD); - wbAddGroupOrder(DIAL); - wbAddGroupOrder(QUST); - wbAddGroupOrder(IDLE); - wbAddGroupOrder(PACK); - wbAddGroupOrder(CSTY); - wbAddGroupOrder(LSCR); - wbAddGroupOrder(LVSP); - wbAddGroupOrder(ANIO); - wbAddGroupOrder(WATR); - wbAddGroupOrder(EFSH); -end; - -initialization -end. diff --git a/lib/xedit/wbDefinitionsTES4.pas b/lib/xedit/wbDefinitionsTES4.pas deleted file mode 100644 index 546f29e..0000000 --- a/lib/xedit/wbDefinitionsTES4.pas +++ /dev/null @@ -1,5174 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} - -unit wbDefinitionsTES4; - -{$I wbDefines.inc} - -interface - -uses - wbInterface; - -var - wbPKDTFlags: IwbFlagsDef; - wbServiceFlags: IwbFlagsDef; - - wbAxisEnum: IwbEnumDef; - wbBlendModeEnum: IwbEnumDef; - wbBlendOpEnum: IwbEnumDef; - wbCrimeTypeEnum: IwbEnumDef; - wbFormTypeEnum: IwbEnumDef; - wbFunctionsEnum: IwbEnumDef; - wbMagicSchoolEnum: IwbEnumDef; - wbMusicEnum: IwbEnumDef; - wbOBMEResolutionInfo: IwbEnumDef; - wbPKDTType: IwbEnumDef; - wbQuadrantEnum: IwbEnumDef; - wbSexEnum: IwbEnumDef; - wbSkillEnum: IwbEnumDef; - wbSoulGemEnum: IwbEnumDef; - wbSpecializationEnum: IwbEnumDef; - wbZTestFuncEnum: IwbEnumDef; - -procedure DefineTES4; - -implementation - -uses - Types, - Classes, - SysUtils, - Math, - Variants, - wbHelpers; - -const - ACBS : TwbSignature = 'ACBS'; - ACHR : TwbSignature = 'ACHR'; - ACRE : TwbSignature = 'ACRE'; - TRGT : TwbSignature = 'TRGT'; - ACTI : TwbSignature = 'ACTI'; - AIDT : TwbSignature = 'AIDT'; - ALCH : TwbSignature = 'ALCH'; - AMMO : TwbSignature = 'AMMO'; - ANAM : TwbSignature = 'ANAM'; - ANIO : TwbSignature = 'ANIO'; - APPA : TwbSignature = 'APPA'; - ARMO : TwbSignature = 'ARMO'; - ATTR : TwbSignature = 'ATTR'; - ATXT : TwbSignature = 'ATXT'; - BMDT : TwbSignature = 'BMDT'; - BNAM : TwbSignature = 'BNAM'; - BOOK : TwbSignature = 'BOOK'; - BSGN : TwbSignature = 'BSGN'; - BTXT : TwbSignature = 'BTXT'; - CELL : TwbSignature = 'CELL'; - CLAS : TwbSignature = 'CLAS'; - CLMT : TwbSignature = 'CLMT'; - CLOT : TwbSignature = 'CLOT'; - CNAM : TwbSignature = 'CNAM'; - CNTO : TwbSignature = 'CNTO'; - CONT : TwbSignature = 'CONT'; - CREA : TwbSignature = 'CREA'; - CSAD : TwbSignature = 'CSAD'; - CSCR : TwbSignature = 'CSCR'; - CSDC : TwbSignature = 'CSDC'; - CSDI : TwbSignature = 'CSDI'; - CSDT : TwbSignature = 'CSDT'; - CSTD : TwbSignature = 'CSTD'; - CSTY : TwbSignature = 'CSTY'; - CTDA : TwbSignature = 'CTDA'; - CTDT : TwbSignature = 'CTDT'; - DATA : TwbSignature = 'DATA'; - DATX : TwbSignature = 'DATX'; - DELE : TwbSignature = 'DELE'; - DESC : TwbSignature = 'DESC'; - DIAL : TwbSignature = 'DIAL'; - DNAM : TwbSignature = 'DNAM'; - DOOR : TwbSignature = 'DOOR'; - EDID : TwbSignature = 'EDID'; - EDDX : TwbSignature = 'EDDX'; - EFID : TwbSignature = 'EFID'; - EFIT : TwbSignature = 'EFIT'; - ACVA : TwbSignature = 'ACVA'; - EFII : TwbSignature = 'EFII'; - EFXX : TwbSignature = 'EFXX'; - EFIX : TwbSignature = 'EFIX'; - EFME : TwbSignature = 'EFME'; - EFSH : TwbSignature = 'EFSH'; - ENAM : TwbSignature = 'ENAM'; - ENCH : TwbSignature = 'ENCH'; - ENIT : TwbSignature = 'ENIT'; - ESCE : TwbSignature = 'ESCE'; - EYES : TwbSignature = 'EYES'; - FACT : TwbSignature = 'FACT'; - FGGA : TwbSignature = 'FGGA'; - FGGS : TwbSignature = 'FGGS'; - FGTS : TwbSignature = 'FGTS'; - FLOR : TwbSignature = 'FLOR'; - FLTV : TwbSignature = 'FLTV'; - FNAM : TwbSignature = 'FNAM'; - FULL : TwbSignature = 'FULL'; - FURN : TwbSignature = 'FURN'; - GLOB : TwbSignature = 'GLOB'; - GMST : TwbSignature = 'GMST'; - GNAM : TwbSignature = 'GNAM'; - GRAS : TwbSignature = 'GRAS'; - HAIR : TwbSignature = 'HAIR'; - HCLR : TwbSignature = 'HCLR'; - HEDR : TwbSignature = 'HEDR'; - HNAM : TwbSignature = 'HNAM'; - ICO2 : TwbSignature = 'ICO2'; - ICON : TwbSignature = 'ICON'; - IDLE : TwbSignature = 'IDLE'; - NULL : TwbSignature = 'NULL'; - INAM : TwbSignature = 'INAM'; - INDX : TwbSignature = 'INDX'; - INFO : TwbSignature = 'INFO'; - INGR : TwbSignature = 'INGR'; - JNAM : TwbSignature = 'JNAM'; - KEYM : TwbSignature = 'KEYM'; - KFFZ : TwbSignature = 'KFFZ'; - LAND : TwbSignature = 'LAND'; - LIGH : TwbSignature = 'LIGH'; - LNAM : TwbSignature = 'LNAM'; - LSCR : TwbSignature = 'LSCR'; - LTEX : TwbSignature = 'LTEX'; - LVLC : TwbSignature = 'LVLC'; - LVLD : TwbSignature = 'LVLD'; - LVLF : TwbSignature = 'LVLF'; - LVLI : TwbSignature = 'LVLI'; - LVLO : TwbSignature = 'LVLO'; - LVSP : TwbSignature = 'LVSP'; - MAST : TwbSignature = 'MAST'; - MGEF : TwbSignature = 'MGEF'; - MISC : TwbSignature = 'MISC'; - MNAM : TwbSignature = 'MNAM'; - MO2B : TwbSignature = 'MO2B'; - MO2T : TwbSignature = 'MO2T'; - MO3B : TwbSignature = 'MO3B'; - MO3T : TwbSignature = 'MO3T'; - MO4B : TwbSignature = 'MO4B'; - MO4T : TwbSignature = 'MO4T'; - MOD2 : TwbSignature = 'MOD2'; - MOD3 : TwbSignature = 'MOD3'; - MOD4 : TwbSignature = 'MOD4'; - MODB : TwbSignature = 'MODB'; - MODL : TwbSignature = 'MODL'; - MODT : TwbSignature = 'MODT'; - NAM0 : TwbSignature = 'NAM0'; - NAM1 : TwbSignature = 'NAM1'; - NAM2 : TwbSignature = 'NAM2'; - NAM9 : TwbSignature = 'NAM9'; - NAME : TwbSignature = 'NAME'; - NIFT : TwbSignature = 'NIFT'; - NIFZ : TwbSignature = 'NIFZ'; - NPC_ : TwbSignature = 'NPC_'; - OFST : TwbSignature = 'OFST'; - OBME : TwbSignature = 'OBME'; - ONAM : TwbSignature = 'ONAM'; - PACK : TwbSignature = 'PACK'; - PFIG : TwbSignature = 'PFIG'; - PFPC : TwbSignature = 'PFPC'; - PGAG : TwbSignature = 'PGAG'; - PGRD : TwbSignature = 'PGRD'; - PGRI : TwbSignature = 'PGRI'; - PGRL : TwbSignature = 'PGRL'; - PGRP : TwbSignature = 'PGRP'; - PGRR : TwbSignature = 'PGRR'; - PKDT : TwbSignature = 'PKDT'; - PKID : TwbSignature = 'PKID'; - PLDT : TwbSignature = 'PLDT'; - PNAM : TwbSignature = 'PNAM'; - PSDT : TwbSignature = 'PSDT'; - PTDT : TwbSignature = 'PTDT'; - QNAM : TwbSignature = 'QNAM'; - QSDT : TwbSignature = 'QSDT'; - QSTA : TwbSignature = 'QSTA'; - QSTI : TwbSignature = 'QSTI'; - QSTR : TwbSignature = 'QSTR'; - TPIC : TwbSignature = 'TPIC'; - QUST : TwbSignature = 'QUST'; - RACE : TwbSignature = 'RACE'; - RCLR : TwbSignature = 'RCLR'; - RDAT : TwbSignature = 'RDAT'; - RDGS : TwbSignature = 'RDGS'; - RDMD : TwbSignature = 'RDMD'; - RDMP : TwbSignature = 'RDMP'; - RDOT : TwbSignature = 'RDOT'; - RDSD : TwbSignature = 'RDSD'; - RDWT : TwbSignature = 'RDWT'; - REFR : TwbSignature = 'REFR'; - PLYR : TwbSignature = 'PLYR'; - REGN : TwbSignature = 'REGN'; - RNAM : TwbSignature = 'RNAM'; - ROAD : TwbSignature = 'ROAD'; - RPLD : TwbSignature = 'RPLD'; - RPLI : TwbSignature = 'RPLI'; - SBSP : TwbSignature = 'SBSP'; - SCDA : TwbSignature = 'SCDA'; - SCHD : TwbSignature = 'SCHD'; - SCHR : TwbSignature = 'SCHR'; - SCIT : TwbSignature = 'SCIT'; - SCPT : TwbSignature = 'SCPT'; - SCRI : TwbSignature = 'SCRI'; - SCRO : TwbSignature = 'SCRO'; - SCRV : TwbSignature = 'SCRV'; - SCTX : TwbSignature = 'SCTX'; - SCVR : TwbSignature = 'SCVR'; - SGST : TwbSignature = 'SGST'; - SKIL : TwbSignature = 'SKIL'; - SLCP : TwbSignature = 'SLCP'; - SLGM : TwbSignature = 'SLGM'; - SLSD : TwbSignature = 'SLSD'; - SNAM : TwbSignature = 'SNAM'; - SNDD : TwbSignature = 'SNDD'; - SNDX : TwbSignature = 'SNDX'; - SOUL : TwbSignature = 'SOUL'; - SOUN : TwbSignature = 'SOUN'; - SPEL : TwbSignature = 'SPEL'; - SPIT : TwbSignature = 'SPIT'; - SPLO : TwbSignature = 'SPLO'; - STAT : TwbSignature = 'STAT'; - TCLF : TwbSignature = 'TCLF'; - TCLT : TwbSignature = 'TCLT'; - TES4 : TwbSignature = 'TES4'; - TNAM : TwbSignature = 'TNAM'; - TRDT : TwbSignature = 'TRDT'; - TREE : TwbSignature = 'TREE'; - UNAM : TwbSignature = 'UNAM'; - VCLR : TwbSignature = 'VCLR'; - VHGT : TwbSignature = 'VHGT'; - VNAM : TwbSignature = 'VNAM'; - VNML : TwbSignature = 'VNML'; - VTEX : TwbSignature = 'VTEX'; - VTXT : TwbSignature = 'VTXT'; - WATR : TwbSignature = 'WATR'; - WEAP : TwbSignature = 'WEAP'; - WLST : TwbSignature = 'WLST'; - WNAM : TwbSignature = 'WNAM'; - WRLD : TwbSignature = 'WRLD'; - WTHR : TwbSignature = 'WTHR'; - XACT : TwbSignature = 'XACT'; - XCCM : TwbSignature = 'XCCM'; - XCHG : TwbSignature = 'XCHG'; - XCLC : TwbSignature = 'XCLC'; - XCLL : TwbSignature = 'XCLL'; - XCLR : TwbSignature = 'XCLR'; - XCLW : TwbSignature = 'XCLW'; - XCMT : TwbSignature = 'XCMT'; - XCNT : TwbSignature = 'XCNT'; - XCWT : TwbSignature = 'XCWT'; - XESP : TwbSignature = 'XESP'; - XGLB : TwbSignature = 'XGLB'; - XHLT : TwbSignature = 'XHLT'; - XHRS : TwbSignature = 'XHRS'; - XLCM : TwbSignature = 'XLCM'; - XLOC : TwbSignature = 'XLOC'; - XLOD : TwbSignature = 'XLOD'; - XMRC : TwbSignature = 'XMRC'; - XMRK : TwbSignature = 'XMRK'; - XNAM : TwbSignature = 'XNAM'; - XOWN : TwbSignature = 'XOWN'; - XPCI : TwbSignature = 'XPCI'; - XRGD : TwbSignature = 'XRGD'; - XRNK : TwbSignature = 'XRNK'; - XRTM : TwbSignature = 'XRTM'; - XSCL : TwbSignature = 'XSCL'; - XSED : TwbSignature = 'XSED'; - XSOL : TwbSignature = 'XSOL'; - XTEL : TwbSignature = 'XTEL'; - XTRG : TwbSignature = 'XTRG'; - XXXX : TwbSignature = 'XXXX'; - ZNAM : TwbSignature = 'ZNAM'; - -var - wbEDID: IwbSubRecordDef; - wbXOWN: IwbSubRecordDef; - wbXGLB: IwbSubRecordDef; - wbXRGD: IwbSubRecordDef; - wbSLSD: IwbSubRecordDef; - wbBodyDataIndex: IwbSubRecordDef; - wbSPLO: IwbSubRecordDef; - wbSPLOs: IwbSubRecordArrayDef; - wbCNTO: IwbSubRecordDef; - wbCNTOs: IwbSubRecordArrayDef; - wbCSDT: IwbSubRecordStructDef; - wbCSDTs: IwbSubRecordArrayDef; - wbFULL: IwbSubRecordDef; - wbFULLReq: IwbSubRecordDef; - wbXNAM: IwbSubRecordDef; - wbXNAMs: IwbSubRecordArrayDef; - wbDESC: IwbSubRecordDef; - wbXSCL: IwbSubRecordDef; - wbDATAPosRot : IwbSubRecordDef; - wbPosRot : IwbStructDef; - wbMODL: IwbSubRecordStructDef; - wbCTDA: IwbSubRecordUnionDef; - wbSCHR: IwbSubRecordUnionDef; - wbCTDAs: IwbSubRecordArrayDef; - wbSCROs: IwbSubRecordArrayDef; - wbPGRP: IwbSubRecordDef; - wbResultScript: IwbSubRecordStructDef; -// wbResultScriptOld: IwbSubRecordStructDef; - wbSCRI: IwbSubRecordDef; - wbFaceGen: IwbSubRecordStructDef; - wbENAM: IwbSubRecordDef; - wbFGGS: IwbSubRecordDef; - wbXLOD: IwbSubRecordDef; - wbXESP: IwbSubRecordDef; - wbICON: IwbSubRecordDef; - wbEFID: IwbSubRecordDef; - wbEFIDOBME: IwbSubRecordDef; - wbEFIT: IwbSubRecordDef; - wbEFITOBME: IwbSubRecordDef; - wbEFIX: IwbSubRecordDef; - wbSCIT: IwbSubRecordStructDef; - wbSCITOBME: IwbSubRecordStructDef; -// wbEffects: IwbSubRecordUnionDef; - wbEffects: IwbSubRecordArrayDef; - -function wbClmtMoonsPhaseLength(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - PhaseLength : Byte; - Masser : Boolean; - Secunda : Boolean; -begin - Result := ''; - if aType = ctToSortKey then begin - Result := IntToHex64(aInt, 2); - end else if aType = ctToStr then begin - PhaseLength := aInt mod 64; - Masser := (aInt and 64) <> 0; - Secunda := (aInt and 128) <> 0; - if Masser then - if Secunda then - Result := 'Masser, Secunda / ' - else - Result := 'Masser / ' - else - if Secunda then - Result := 'Secunda / ' - else - Result := 'No Moon / '; - Result := Result + IntToStr(PhaseLength); - end; -end; - -function wbClmtTime(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - Result := TimeToStr( EncodeTime(aInt div 6, (aInt mod 6) * 10, 0, 0) ); -end; - -var - wbCtdaTypeFlags : IwbFlagsDef; - -function wbCtdaType(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - s: string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt and $F0 of - $00 : Result := 'Equal to'; - $20 : Result := 'Not equal to'; - $40 : Result := 'Greater than'; - $60 : Result := 'Greater than or equal to'; - $80 : Result := 'Less than'; - $A0 : Result := 'Less than or equal to'; - else - Result := '' - end; - - if not Assigned(wbCtdaTypeFlags) then - wbCtdaTypeFlags := wbFlags([ - {0x01} 'Or', - {0x02} 'Run on target', - {0x04} 'Use global' - ]); - - s := wbCtdaTypeFlags.ToString(aInt and $0F, aElement); - - if s <> '' then - Result := Result + ' / ' + s; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - Exit; - end; - ctCheck: begin - case aInt and $F0 of - $00, $20, $40, $60, $80, $A0 : Result := ''; - else - Result := '' - end; - - if not Assigned(wbCtdaTypeFlags) then - wbCtdaTypeFlags := wbFlags([ - {0x01} 'Or', - {0x02} 'Run on target', - {0x04} 'Use global' - ]); - - s := wbCtdaTypeFlags.Check(aInt and $0F, aElement); - - if s <> '' then - Result := Result + ' / ' + s; - end; - end; -end; - -function wbIdleAnam(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt and not $80 of - 0: Result := 'Lower Body'; - 1: Result := 'Left Arm'; - 2: Result := 'Left Hand'; - 3: Result := 'Right Arm'; - 4: Result := 'Special Idle'; - 5: Result := 'Whole Body'; - 6: Result := 'Upper Body'; - else - Result := ''; - end; - - if (aInt and $80) = 0 then - Result := Result + ', Must return a file'; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - end; - ctCheck: begin - case aInt and not $80 of - 0..6: Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbScaledInt4ToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -const - PlusMinus : array[Boolean] of string = ('+', '-'); -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: Result := FloatToStrF(aInt / 10000, ffFixed, 99, 4); - ctToSortKey: begin - Result := FloatToStrF(aInt / 10000, ffFixed, 99, 4); - if Length(Result) < 22 then - Result := StringOfChar('0', 22 - Length(Result)) + Result; - Result := PlusMinus[aInt < 0] + Result; - end; - ctCheck: Result := ''; - end; -end; - -function wbScaledInt4ToInt(const aString: string; const aElement: IwbElement): Int64; -var - f: Extended; -begin - f := StrToFloat(aString); - f := f * 10000; - Result := Round(f); -end; - -function wbHideFFFF(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - if aInt = $FFFF then - Result := 'None' - else - Result := IntToStr(aInt); -end; - -function wbAtxtPosition(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt div 17, 2) + IntToHex64(aInt mod 17, 2) - else if aType = ctCheck then begin - if (aInt < 0) or (aInt > 288) then - Result := '' - else - Result := ''; - end else if aType = ctToStr then - Result := IntToStr(aInt) + ' -> ' + IntToStr(aInt div 17) + ':' + IntToStr(aInt mod 17); -end; - -function wbWthrDataClassification(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt and not 192 of - 0: Result := 'None'; - 1: Result := 'Pleasant'; - 2: Result := 'Cloudy'; - 3: Result := 'Unknown 3'; - 4: Result := 'Rainy'; - 8: Result := 'Snow'; - else - Result := ''; - end; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2) - end; - ctCheck: begin - case aInt and not 192 of - 0..4, 8: Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbGLOBFNAM(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt of - Ord('s'): Result := 'Short'; - Ord('l'): Result := 'Long'; - Ord('f'): Result := 'Float'; - else - Result := ''; - end; - end; - ctToSortKey: Result := Chr(aInt); - ctCheck: begin - case aInt of - Ord('s'), Ord('l'), Ord('f'): Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbPlacedAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec: IwbRecord; - Container: IwbContainer; - s: string; - Cell: IwbMainRecord; - Position: TwbVector; - Grid: TwbGridCell; -begin - Result := ''; - - Rec := aMainRecord.RecordBySignature['NAME']; - if Assigned(Rec) then begin - s := Trim(Rec.Value); - if s <> '' then - Result := 'places ' + s; - end; - - Container := aMainRecord.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if Assigned(Container) then begin - s := Trim(Container.Name); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'in ' + s; - - // grid position of persistent reference in exterior persistent cell (interior cells are not persistent) - if Supports(aMainRecord.Container, IwbGroupRecord, Container) then - Cell := IwbGroupRecord(Container).ChildrenOf; - if Assigned(Cell) and Cell.IsPersistent and (Cell.Signature = 'CELL') then - if aMainRecord.GetPosition(Position) then begin - Grid := wbPositionToGridCell(Position); - Result := Result + ' at ' + IntToStr(Grid.x) + ',' + IntToStr(Grid.y); - end; - end; - end; -end; - -function wbCellAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec: IwbRecord; - Container: IwbContainer; - GroupRecord : IwbGroupRecord; - s: string; -begin - Result := ''; - - if not aMainRecord.IsPersistent then begin - Rec := aMainRecord.RecordBySignature['XCLC']; - if Assigned(Rec) then - Result := 'at ' + Rec.Elements[0].Value + ',' + Rec.Elements[1].Value; - end; - - Container := aMainRecord.Container; - while Assigned(Container) and not - (Supports(Container, IwbGroupRecord, GroupRecord) and (GroupRecord.GroupType = 1)) do - Container := Container.Container; - - if Assigned(Container) then begin - s := wbFormID.ToString(GroupRecord.GroupLabel, aMainRecord); - if s <> '' then begin - if Result <> '' then - s := s + ' '; - Result := 'in ' + s + Result; - end; - end; -end; - -function wbGMSTUnionDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rEDID: IwbRecord; - s: string; -begin - Result := 1; - rEDID := aElement.Container.RecordBySignature[EDID]; - if Assigned(rEDID) then begin - s := rEDID.Value; - if Length(s) > 0 then - case s[1] of - 's': Result := 0; - 'f': Result := 2; - end; - end; -end; - -function wbMISCActorValueDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - MainRecord : IwbMainRecord; -begin - Result := 0; - - if not Assigned(aElement) then - Exit; - - MainRecord := aElement.ContainingMainRecord; - if not Assigned(MainRecord) then - Exit; - - if (MainRecord.Flags._Flags and $000000C0) = $000000C0 then - Result := 1; -end; - -function wbXLOCFillerDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbSubRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Supports(Container, IwbSubRecord, SubRecord) then - if SubRecord.SubRecordHeaderSize = 16 then - Result := 1; -end; - -function wbPACKPKDTDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbSubRecord; -begin - Result := 1; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - if Supports(Container, IwbSubRecord, SubRecord) then - if SubRecord.SubRecordHeaderSize = 4 then - Result := 0; -end; - -function wbREFRXSEDDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbSubRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Supports(Container, IwbSubRecord, SubRecord) then - if SubRecord.SubRecordHeaderSize = 4 then - Result := 1; -end; - - -type - TCTDAFunctionParamType = ( - ptNone, - ptInteger, - ptVariableName, //Integer - ptSex, //Enum: Male, Female - ptActorValue, //Enum: wbActorValue - ptCrimeType, //?? Enum - ptAxis, //?? Char - ptFormType, //?? Enum - ptQuestStage, - - ptObjectReference, //REFR, ACHR, ACRE, PGRE - ptInventoryObject, //ARMO, BOOK, MISC, WEAP, AMMO, KEYM, ALCH, NOTE, ARMA - ptActor, //ACHR, ACRE - ptQuest, //QUST - ptFaction, //FACT - ptCell, //CELL - ptClass, //CLAS - ptRace, //RACE - ptActorBase, //NPC_, CREA - ptGlobal, //GLOB - ptWeather, //WTHR - ptPackage, //PACK - ptOwnerOpt, //FACT, NPC_ - ptBirthsign, //BSGN - ptFurniture, //FURN - ptMagicItem, //SPEL - ptMagicEffect, //MGEF - ptWorldspace, //WRLD - ptReferencableObject - ); - - PCTDAFunction = ^TCTDAFunction; - TCTDAFunction = record - Index: Integer; - Name: string; - ParamType1: TCTDAFunctionParamType; - ParamType2: TCTDAFunctionParamType; - end; - -const - wbCTDAFunctions : array[0..191] of TCTDAFunction = ( - (Index: 1; Name: 'GetDistance'; ParamType1: ptObjectReference), - (Index: 5; Name: 'GetLocked'), - (Index: 6; Name: 'GetPos'; ParamType1: ptAxis), - (Index: 8; Name: 'GetAngle'; ParamType1: ptAxis), - (Index: 10; Name: 'GetStartingPos'; ParamType1: ptAxis), - (Index: 11; Name: 'GetStartingAngle'; ParamType1: ptAxis), - (Index: 12; Name: 'GetSecondsPassed'), - (Index: 14; Name: 'GetActorValue'; ParamType1: ptActorValue), - (Index: 18; Name: 'GetCurrentTime'), - (Index: 24; Name: 'GetScale'), - (Index: 27; Name: 'GetLineOfSight'; ParamType1: ptObjectReference), - (Index: 32; Name: 'GetInSameCell'; ParamType1: ptObjectReference), - (Index: 35; Name: 'GetDisabled'), - (Index: 36; Name: 'MenuMode'; ParamType1: ptInteger), - (Index: 39; Name: 'GetDisease'), - (Index: 40; Name: 'GetVampire'), - (Index: 41; Name: 'GetClothingValue'), - (Index: 42; Name: 'SameFaction'; ParamType1: ptActor), - (Index: 43; Name: 'SameRace'; ParamType1: ptActor), - (Index: 44; Name: 'SameSex'; ParamType1: ptActor), - (Index: 45; Name: 'GetDetected'; ParamType1: ptActor), - (Index: 46; Name: 'GetDead'), - (Index: 47; Name: 'GetItemCount'; ParamType1: ptInventoryObject), - (Index: 48; Name: 'GetGold'), - (Index: 49; Name: 'GetSleeping'), - (Index: 50; Name: 'GetTalkedToPC'), - (Index: 53; Name: 'GetScriptVariable'; ParamType1: ptObjectReference; ParamType2: ptVariableName), - (Index: 56; Name: 'GetQuestRunning'; ParamType1: ptQuest), - (Index: 58; Name: 'GetStage'; ParamType1: ptQuest), - (Index: 59; Name: 'GetStageDone'; ParamType1: ptQuest; ParamType2: ptQuestStage), - (Index: 60; Name: 'GetFactionRankDifference'; ParamType1: ptFaction; ParamType2: ptActor), - (Index: 61; Name: 'GetAlarmed'), - (Index: 62; Name: 'IsRaining'), - (Index: 63; Name: 'GetAttacked'), - (Index: 64; Name: 'GetIsCreature'), - (Index: 65; Name: 'GetLockLevel'), - (Index: 66; Name: 'GetShouldAttack'; ParamType1: ptActor), - (Index: 67; Name: 'GetInCell'; ParamType1: ptCell), - (Index: 68; Name: 'GetIsClass'; ParamType1: ptClass), - (Index: 69; Name: 'GetIsRace'; ParamType1: ptRace), - (Index: 70; Name: 'GetIsSex'; ParamType1: ptSex), - (Index: 71; Name: 'GetInFaction'; ParamType1: ptFaction), - (Index: 72; Name: 'GetIsID'; ParamType1: ptReferencableObject), - (Index: 73; Name: 'GetFactionRank'; ParamType1: ptFaction), - (Index: 74; Name: 'GetGlobalValue'; ParamType1: ptGlobal), - (Index: 75; Name: 'IsSnowing'), - (Index: 76; Name: 'GetDisposition'; ParamType1: ptActor), - (Index: 77; Name: 'GetRandomPercent'), - (Index: 79; Name: 'GetQuestVariable'; ParamType1: ptQuest; ParamType2: ptVariableName), - (Index: 80; Name: 'GetLevel'), - (Index: 81; Name: 'GetArmorRating'), - (Index: 84; Name: 'GetDeadCount'; ParamType1: ptActorBase), - (Index: 91; Name: 'GetIsAlerted'), - (Index: 98; Name: 'GetPlayerControlsDisabled'), - (Index: 99; Name: 'GetHeadingAngle'; ParamType1: ptObjectReference), - (Index: 101; Name: 'IsWeaponOut'), - (Index: 102; Name: 'IsTorchOut'), - (Index: 103; Name: 'IsShieldOut'), - (Index: 104; Name: 'IsYielding'), - (Index: 106; Name: 'IsFacingUp'), - (Index: 107; Name: 'GetKnockedState'), - (Index: 108; Name: 'GetWeaponAnimType'), - (Index: 109; Name: 'GetWeaponSkillType'), - (Index: 110; Name: 'GetCurrentAIPackage'), - (Index: 111; Name: 'IsWaiting'), - (Index: 112; Name: 'IsIdlePlaying'), - (Index: 116; Name: 'GetCrimeGold'), - (Index: 122; Name: 'GetCrime'; ParamType1: ptActor; ParamType2: ptCrimeType), - (Index: 125; Name: 'IsGuard'), - (Index: 127; Name: 'CanPayCrimeGold'), - (Index: 128; Name: 'GetFatiguePercentage'), - (Index: 129; Name: 'GetPCIsClass'; ParamType1: ptClass), - (Index: 130; Name: 'GetPCIsRace'; ParamType1: ptRace), - (Index: 131; Name: 'GetPCIsSex'; ParamType1: ptSex), - (Index: 132; Name: 'GetPCInFaction'; ParamType1: ptFaction), - (Index: 133; Name: 'SameFactionAsPC'), - (Index: 134; Name: 'SameRaceAsPC'), - (Index: 135; Name: 'SameSexAsPC'), - (Index: 136; Name: 'GetIsReference'; ParamType1: ptObjectReference), - (Index: 141; Name: 'IsTalking'), - (Index: 142; Name: 'GetWalkSpeed'), - (Index: 143; Name: 'GetCurrentAIProcedure'), - (Index: 144; Name: 'GetTrespassWarningLevel'), - (Index: 145; Name: 'IsTrespassing'), - (Index: 146; Name: 'IsInMyOwnedCell'), - (Index: 147; Name: 'GetWindSpeed'), - (Index: 148; Name: 'GetCurrentWeatherPercent'), - (Index: 149; Name: 'GetIsCurrentWeather'; ParamType1: ptWeather), - (Index: 150; Name: 'IsContinuingPackagePCNear'), - (Index: 153; Name: 'CanHaveFlames'), - (Index: 154; Name: 'HasFlames'), - (Index: 157; Name: 'GetOpenState'), - (Index: 159; Name: 'GetSitting'), - (Index: 160; Name: 'GetFurnitureMarkerID'), - (Index: 161; Name: 'GetIsCurrentPackage'; ParamType1: ptPackage), - (Index: 162; Name: 'IsCurrentFurnitureRef'; ParamType1: ptObjectReference), - (Index: 163; Name: 'IsCurrentFurnitureObj'; ParamType1: ptFurniture), - (Index: 170; Name: 'GetDayOfWeek'), - (Index: 171; Name: 'IsPlayerInJail'), - (Index: 172; Name: 'GetTalkedToPCParam'; ParamType1: ptActor), - (Index: 175; Name: 'IsPCSleeping'), - (Index: 176; Name: 'IsPCAMurderer'), - (Index: 180; Name: 'GetDetectionLevel'; ParamType1: ptActor), - (Index: 182; Name: 'GetEquipped'; ParamType1: ptInventoryObject), - (Index: 185; Name: 'IsSwimming'), - (Index: 190; Name: 'GetAmountSoldStolen'), - (Index: 193; Name: 'GetPCExpelled'; ParamType1: ptFaction), - (Index: 195; Name: 'GetPCFactionMurder'; ParamType1: ptFaction), - (Index: 197; Name: 'GetPCFactionSteal'; ParamType1: ptFaction), - (Index: 199; Name: 'GetPCFactionAttack'; ParamType1: ptFaction), - (Index: 201; Name: 'GetPCFactionSubmitAuthority'; ParamType1: ptFaction), - (Index: 203; Name: 'GetDestroyed'), - (Index: 214; Name: 'HasMagicEffect'; ParamType1: ptMagicEffect), - (Index: 215; Name: 'GetDoorDefaultOpen'), - (Index: 223; Name: 'IsSpellTarget'; ParamType1: ptMagicItem), - (Index: 224; Name: 'GetIsPlayerBirthsign'; ParamType1: ptBirthsign), - (Index: 225; Name: 'GetPersuasionNumber'), - (Index: 227; Name: 'HasVampireFed'), - (Index: 228; Name: 'GetIsClassDefault'; ParamType1: ptClass), - (Index: 229; Name: 'GetClassDefaultMatch'), - (Index: 230; Name: 'GetInCellParam'; ParamType1: ptCell; ParamType2: ptObjectReference), - (Index: 237; Name: 'GetIsGhost'), - (Index: 242; Name: 'GetUnconscious'), - (Index: 244; Name: 'GetRestrained'), - (Index: 246; Name: 'GetIsUsedItem'; ParamType1: ptReferencableObject), - (Index: 247; Name: 'GetIsUsedItemType'; ParamType1: ptFormType), - (Index: 249; Name: 'GetPCFame'), - (Index: 251; Name: 'GetPCInfamy'), - (Index: 254; Name: 'GetIsPlayableRace'), - (Index: 255; Name: 'GetOffersServicesNow'), - (Index: 258; Name: 'GetUsedItemLevel'), - (Index: 259; Name: 'GetUsedItemActivate'), - (Index: 264; Name: 'GetBarterGold'), - (Index: 265; Name: 'IsTimePassing'), - (Index: 266; Name: 'IsPleasant'), - (Index: 267; Name: 'IsCloudy'), - (Index: 274; Name: 'GetArmorRatingUpperBody'), - (Index: 277; Name: 'GetBaseActorValue'; ParamType1: ptActorValue), - (Index: 278; Name: 'IsOwner'; ParamType1: ptOwnerOpt), - (Index: 280; Name: 'IsCellOwner'; ParamType1: ptCell; ParamType2: ptOwnerOpt), - (Index: 282; Name: 'IsHorseStolen'), - (Index: 285; Name: 'IsLeftUp'), - (Index: 286; Name: 'IsSneaking'), - (Index: 287; Name: 'IsRunning'), - (Index: 288; Name: 'GetFriendHit'; ParamType1: ptActor), - (Index: 289; Name: 'IsInCombat'), - (Index: 300; Name: 'IsInInterior'), - (Index: 305; Name: 'GetInvestmentGold'), - (Index: 306; Name: 'IsActorUsingATorch'), - (Index: 309; Name: 'IsXBox'), - (Index: 310; Name: 'GetInWorldspace'; ParamType1: ptWorldSpace), - (Index: 312; Name: 'GetPCMiscStat'; ParamType1: ptInteger), - (Index: 313; Name: 'IsActorEvil'), - (Index: 314; Name: 'IsActorAVictim'), - (Index: 315; Name: 'GetTotalPersuasionNumber'), - (Index: 318; Name: 'GetIdleDoneOnce'), - (Index: 320; Name: 'GetNoRumors'), - (Index: 323; Name: 'WhichServiceMenu'), - (Index: 327; Name: 'IsRidingHorse'), - (Index: 329; Name: 'IsTurnArrest'), - (Index: 332; Name: 'IsInDangerousWater'), - (Index: 338; Name: 'GetIgnoreFriendlyHits'), - (Index: 339; Name: 'IsPlayersLastRiddenHorse'), - (Index: 353; Name: 'IsActor'), - (Index: 354; Name: 'IsEssential'), - (Index: 358; Name: 'IsPlayerMovingIntoNewSpace'), - (Index: 361; Name: 'GetTimeDead'), - (Index: 362; Name: 'GetPlayerHasLastRiddenHorse'), - (Index: 365; Name: 'GetPlayerInSEWorld'), - - // Added by OBSE: - (Index: 1107; Name: 'IsAmmo,'; ParamType1: ptInteger), - (Index: 1884; Name: 'GetPCTrainingSessionsUsed'; ParamType1: ptPackage), - (Index: 2213; Name: 'GetPackageOffersServices'; ParamType1: ptPackage), - (Index: 2214; Name: 'GetPackageMustReachLocation'; ParamType1: ptPackage), - (Index: 2215; Name: 'GetPackageMustComplete'; ParamType1: ptPackage), - (Index: 2216; Name: 'GetPackageLockDoorsAtStart'; ParamType1: ptPackage), - (Index: 2217; Name: 'GetPackageLockDoorsAtEnd'; ParamType1: ptPackage), - (Index: 2218; Name: 'GetPackageLockDoorsAtLocation'; ParamType1: ptPackage), - (Index: 2219; Name: 'GetPackageUnlockDoorsAtStart'; ParamType1: ptPackage), - (Index: 2220; Name: 'GetPackageUnlockDoorsAtEnd'; ParamType1: ptPackage), - (Index: 2221; Name: 'GetPackageUnlockDoorsAtLocation'; ParamType1: ptPackage), - (Index: 2222; Name: 'GetPackageContinueIfPCNear'; ParamType1: ptPackage), - (Index: 2223; Name: 'GetPackageOncePerDay'; ParamType1: ptPackage), - (Index: 2224; Name: 'GetPackageSkipFalloutBehavior'; ParamType1: ptPackage), - (Index: 2225; Name: 'GetPackageAlwaysRun'; ParamType1: ptPackage), - (Index: 2226; Name: 'GetPackageAlwaysSneak'; ParamType1: ptPackage), - (Index: 2227; Name: 'GetPackageAllowSwimming'; ParamType1: ptPackage), - (Index: 2228; Name: 'GetPackageAllowFalls'; ParamType1: ptPackage), - (Index: 2229; Name: 'GetPackageArmorUnequipped'; ParamType1: ptPackage), - (Index: 2230; Name: 'GetPackageWeaponsUnequipped'; ParamType1: ptPackage), - (Index: 2231; Name: 'GetPackageDefensiveCombat'; ParamType1: ptPackage), - (Index: 2232; Name: 'GetPackageUseHorse'; ParamType1: ptPackage), - (Index: 2233; Name: 'GetPackageNoIdleAnims'; ParamType1: ptPackage) - ); - -var - wbCTDAFunctionEditInfo : string; - -function wbCTDAParamDescFromIndex(aIndex: Integer): PCTDAFunction; -var - L, H, I, C: Integer; -begin - Result := nil; - - L := Low(wbCTDAFunctions); - H := High(wbCTDAFunctions); - while L <= H do begin - I := (L + H) shr 1; - C := CmpW32(wbCTDAFunctions[I].Index, aIndex); - if C < 0 then - L := I + 1 - else begin - H := I - 1; - if C = 0 then begin - L := I; - Result := @wbCTDAFunctions[L]; - end; - end; - end; -end; - -function wbCTDACompValueDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Integer(Container.ElementByName['Type'].NativeValue) and $04 <> 0 then - Result := 1; -end; - -function wbEFITOBMEParamDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - ParamInfo: Variant; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - ParamInfo := Container.ElementNativeValues['..\EFME\EFIT Param Info']; - if VarIsNull(ParamInfo) or VarIsEmpty(ParamInfo) then - else - Result := ParamInfo; -end; - -function wbEFIXParamDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - ParamInfo: Variant; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - ParamInfo := Container.ElementNativeValues['..\EFME\EFIX Param Info']; - if VarIsNull(ParamInfo) or VarIsEmpty(ParamInfo) then - else - Result := ParamInfo; -end; - -function wbCTDAParam1Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Desc: PCTDAFunction; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Desc := wbCTDAParamDescFromIndex(Container.ElementByName['Function'].NativeValue); - if Assigned(Desc) then - Result := Succ(Integer(Desc.ParamType1)); -end; - -function wbCTDAParam2Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Desc: PCTDAFunction; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Desc := wbCTDAParamDescFromIndex(Container.ElementByName['Function'].NativeValue); - if Assigned(Desc) then - Result := Succ(Integer(Desc.ParamType2)); -end; -{ -function wbCTDAFunction(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Desc: PCTDAFunction; -begin - Result := ''; - case aType of - ctToStr: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := Desc.Name - else - Result := ''; - end; - ctToSortKey: Result := IntToHex(aInt, 8); - ctCheck: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := '' - else - Result := ''; - end; - end; -end; -} -function wbCTDAFunctionToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Desc : PCTDAFunction; - i : Integer; -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := Desc.Name - else if aType = ctToEditValue then - Result := IntToStr(aInt) - else - Result := ''; - end; - ctToSortKey: Result := IntToHex(aInt, 8); - ctCheck: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := '' - else - Result := ''; - end; - ctEditType: - Result := 'ComboBox'; - ctEditInfo: begin - Result := wbCTDAFunctionEditInfo; - if Result = '' then begin - with TStringList.Create do try - for i := Low(wbCTDAFunctions) to High(wbCTDAFunctions) do - Add(wbCTDAFunctions[i].Name); - Sort; - Result := CommaText; - finally - Free; - end; - wbCTDAFunctionEditInfo := Result; - end; - end; - end; -end; - -function wbCTDAFunctionToInt(const aString: string; const aElement: IwbElement): Int64; -var - i: Integer; -begin - for i := Low(wbCTDAFunctions) to High(wbCTDAFunctions) do - with wbCTDAFunctions[i] do - if SameText(Name, aString) then begin - Result := Index; - Exit; - end; - Result := StrToInt64(aString); -end; - -function wbCTDAParam2VariableNameToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - BaseRecord : IwbMainRecord; - ScriptRef : IwbElement; - Script : IwbMainRecord; - Variables : TStringList; - LocalVars : IwbContainerElementRef; - LocalVar : IwbContainerElementRef; - i, j : Integer; - s : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - Exit; - - MainRecord := nil; - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; -{ if Param1.NativeValue = 0 then - if Supports(Container.Container, IwbContainerElementRef, Container) then - for i := 0 to Pred(Container.ElementCount) do - if Supports(Container.Elements[i], IwbContainerElementRef, Container2) then - if SameText(Container2.ElementValues['Function'], 'GetIsID') then begin - Param1 := Container2.ElementByName['Parameter #1']; - if Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Break; - end;} - - if not Assigned(MainRecord) then - Exit; - - BaseRecord := MainRecord.BaseRecord; - if Assigned(BaseRecord) then - MainRecord := BaseRecord; - - ScriptRef := MainRecord.RecordBySignature['SCRI']; - - if not Assigned(ScriptRef) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - if not Supports(ScriptRef.LinksTo, IwbMainRecord, Script) then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - Variables := TStringList.Create; - else - Variables := nil; - end; - try - if Supports(Script.ElementByName['Local Variables'], IwbContainerElementRef, LocalVars) then begin - for i := 0 to Pred(LocalVars.ElementCount) do - if Supports(LocalVars.Elements[i], IwbContainerElementRef, LocalVar) then begin - j := LocalVar.ElementNativeValues['SLSD\Index']; - s := LocalVar.ElementNativeValues['SCVR']; - if Assigned(Variables) then - Variables.AddObject(s, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := s; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - Variables.Sort; - Result := Variables.CommaText; - end; - end; - finally - FreeAndNil(Variables); - end; -end; - -function wbCTDAParam2VariableNameToInt(const aString: string; const aElement: IwbElement): Int64; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - BaseRecord : IwbMainRecord; - ScriptRef : IwbElement; - Script : IwbMainRecord; - LocalVars : IwbContainerElementRef; - LocalVar : IwbContainerElementRef; - i, j : Integer; - s : string; -begin - Result := StrToInt64Def(aString, Low(Cardinal)); - if Result <> Low(Cardinal) then - Exit; - - if not Assigned(aElement) then - raise Exception.Create('aElement not specified'); - - Container := GetContainerRefFromUnionOrValue(aElement); - - if not Assigned(Container) then - raise Exception.Create('Container not assigned'); - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - raise Exception.Create('Could not find "Parameter #1"'); - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - raise Exception.Create('"Parameter #1" does not reference a valid main record'); - - BaseRecord := MainRecord.BaseRecord; - if Assigned(BaseRecord) then - MainRecord := BaseRecord; - - ScriptRef := MainRecord.RecordBySignature['SCRI']; - - if not Assigned(ScriptRef) then - raise Exception.Create('"'+MainRecord.ShortName+'" does not contain a SCRI subrecord'); - - if not Supports(ScriptRef.LinksTo, IwbMainRecord, Script) then - raise Exception.Create('"'+MainRecord.ShortName+'" does not have a valid script'); - - if Supports(Script.ElementByName['Local Variables'], IwbContainerElementRef, LocalVars) then begin - for i := 0 to Pred(LocalVars.ElementCount) do - if Supports(LocalVars.Elements[i], IwbContainerElementRef, LocalVar) then begin - j := LocalVar.ElementNativeValues['SLSD\Index']; - s := LocalVar.ElementNativeValues['SCVR']; - if SameText(s, Trim(aString)) then begin - Result := j; - Exit; - end; - end; - end; - - raise Exception.Create('Variable "'+aString+'" was not found in "'+MainRecord.ShortName+'"'); -end; - -function wbCTDAParam2QuestStageToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Stages : IwbContainerElementRef; - Stage : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - Exit; - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - try - if Supports(MainRecord.ElementByName['Stages'], IwbContainerElementRef, Stages) then begin - for i := 0 to Pred(Stages.ElementCount) do - if Supports(Stages.Elements[i], IwbContainerElementRef, Stage) then begin - j := Stage.ElementNativeValues['INDX']; - s := Trim(Stage.ElementValues['Log Entries\Log Entry\CNAM']); - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.AddObject(t, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbCTDAParam2QuestStageToInt(const aString: string; const aElement: IwbElement): Int64; -var - i : Integer; - s : string; -begin - i := 1; - s := Trim(aString); - while (i <= Length(s)) and (s[i] in ['0'..'9']) do - Inc(i); - s := Copy(s, 1, Pred(i)); - - Result := StrToInt(s); -end; - -procedure wbRemoveOFST(const aElement: IwbElement); -var - Container: IwbContainer; - rOFST: IwbRecord; -begin - if not wbRemoveOffsetData then - Exit; - - if Supports(aElement, IwbContainer, Container) then begin - rOFST := Container.RecordBySignature[OFST]; - if Assigned(rOFST) then - Container.RemoveElement(rOFST); - end; -end; - -procedure wbCELLAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; -// Container2 : IwbContainerElementRef; - MainRecord : IwbMainRecord; -// i : Integer; - IsInterior : Boolean; - GroupRecord : IwbGroupRecord; -// Removed : Boolean; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Container.ElementExists['DATA'] then - Exit; - - IsInterior := (Container.ElementNativeValues['DATA'] and 1) <> 0; - - if IsInterior then - Container.Add('XCLL') - else begin - Container.Add('XCLC'); - if (Container.ElementNativeValues['DATA'] and 2) = 0 then - if Supports(MainRecord.Container, IwbGroupRecord, GroupRecord) then - if GroupRecord.GroupType = 1 then - Container.ElementNativeValues['DATA'] := - Container.ElementNativeValues['DATA'] or 2; - end; - -// Removed := False; -// if Supports(Container.ElementBySignature[XCLR], IwbContainerElementRef, Container2) then begin -// for i:= Pred(Container2.ElementCount) downto 0 do -// if not Supports(Container2.Elements[i].LinksTo, IwbMainRecord, MainRecord) or (MainRecord.Signature <> 'REGN') then begin -// if not Removed then begin -// Removed := True; -// Container2.MarkModifiedRecursive; -// end; -// Container2.RemoveElement(i); -// end; -// if Container2.ElementCount < 1 then -// Container2.Remove; -// end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbMGEFAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - _File : IwbFile; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - _File := MainRecord._File; - - if not Assigned(_File) then - Exit; - - if not SameText(_File.FileName, 'Oblivion.esm') then - Exit; - - if SameText(MainRecord.EditorID, 'RSFI') or - SameText(MainRecord.EditorID, 'RSFR') or - SameText(MainRecord.EditorID, 'RSPA') or - SameText(MainRecord.EditorID, 'RSSH') then begin - - Container.ElementNativeValues['DATA - Data\Flags'] := - Cardinal(Container.ElementNativeValues['DATA - Data\Flags']) or $8; - - end; - - if SameText(MainRecord.EditorID, 'REAN') then begin - - Container.ElementNativeValues['DATA - Data\Flags'] := - Cardinal(Container.ElementNativeValues['DATA - Data\Flags']) and not $20000; - - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbCounterEffectsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterByPathAfterSet('DATA - Data\Counter effect count', aElement); -end; - -procedure wbMGEFAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerByPathAfterSet('DATA - Data\Counter effect count', 'ESCE - Counter Effects', aElement); -end; - -procedure wbEFITAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - Element : IwbElement; - ActorValue: Variant; - MainRecord: IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if Container.ElementCount < 1 then - Exit; - - Element := Container.ElementByName['Magic effect name']; - if not Assigned(Element) then - Exit; - if not Supports(Element.LinksTo, IwbMainRecord, MainRecord) then - Exit; - if MainRecord.Signature <> 'MGEF' then - Exit; - - if (MainRecord.ElementNativeValues['DATA - Data\Flags'] and $01000000) = 0 then - Exit; - - ActorValue := MainRecord.ElementNativeValues['DATA - Data\Assoc. Item']; - if VarIsNull(ActorValue) or VarIsClear(ActorValue) then - Exit; - if VarCompareValue(ActorValue, Container.ElementNativeValues['Actor Value']) <> vrEqual then - Container.ElementNativeValues['Actor Value'] := ActorValue; - finally - wbEndInternalEdit; - end; -end; - -procedure wbREFRAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if Container.ElementCount < 1 then - Exit; - - Container.RemoveElement('XPCI'); - finally - wbEndInternalEdit; - end; -end; - -procedure wbLIGHAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if Container.ElementExists['DATA'] then begin - if SameValue(Container.ElementNativeValues['DATA\Falloff Exponent'], 0.0) then - Container.ElementNativeValues['DATA\Falloff Exponent'] := 1.0; - if SameValue(Container.ElementNativeValues['DATA\FOV'], 0.0) then - Container.ElementNativeValues['DATA\FOV'] := 90.0; - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbLVLAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - Chance : Integer; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - Container.RemoveElement('DATA'); - - Chance := Container.ElementNativeValues['LVLD']; - if (Chance and $80) <> 0 then begin - Chance := Chance and not $80; - Container.ElementNativeValues['LVLD'] := Chance; - Container.ElementNativeValues['LVLF'] := Container.ElementNativeValues['LVLF'] or $01; - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbRPLDAfterLoad(const aElement: IwbElement); -var - Container : IwbContainer; - a, b : Single; - NeedsFlip : Boolean; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainer, Container) then - Exit; - - NeedsFlip := False; - if Container.ElementCount > 1 then begin - a := (Container.Elements[0] as IwbContainer).Elements[0].NativeValue; - b := (Container.Elements[Pred(Container.ElementCount)] as IwbContainer).Elements[0].NativeValue; - case CompareValue(a, b) of - EqualsValue: begin - a := (Container.Elements[0] as IwbContainer).Elements[1].NativeValue; - b := (Container.Elements[Pred(Container.ElementCount)] as IwbContainer).Elements[1].NativeValue; - NeedsFlip := CompareValue(a, b) = GreaterThanValue; - end; - GreaterThanValue: - NeedsFlip := True; - end; - end; - if NeedsFlip then - Container.ReverseElements; - finally - wbEndInternalEdit; - end; -end; - -procedure wbPGRDAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - Points : IwbContainerElementRef; - Connections : IwbContainerElementRef; - i, j : Integer; - Point : IwbContainerElementRef; - Connection : IwbContainerElementRef; - Removed : Boolean; - FirstRemoved: Boolean; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Supports(Container.ElementBySignature['PGRP'], IwbContainerElementRef, Points) then - Exit; - - if not Container.ElementExists['PGAG'] then - Container.Add('PGAG').DataSize := (Points.ElementCount + 7) div 8; - - MainRecord.IsCompressed := True; - - if not Supports(Container.ElementBySignature['PGRR'], IwbContainerElementRef, Connections) then - Exit; - - if Points.ElementCount < Connections.ElementCount then - Exit; - - FirstRemoved := False; - for i := Pred(Connections.ElementCount) downto 0 do begin - Connection := Connections.Elements[i] as IwbContainerElementRef; - - Removed := False; - j := Connection.ElementCount; - while j > 0 do begin - Dec(j); - if Connection.Elements[j].NativeValue = 65535 then begin - if not FirstRemoved then begin - FirstRemoved := True; - Connections.MarkModifiedRecursive; - end; - Connection.Elements[j].Remove; - Removed := True; - end else - Break; - end; - - if Removed then begin - Point := Points.Elements[i] as IwbContainerElementRef; - Point.ElementNativeValues['Connections'] := Connection.ElementCount; - end; - - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbPGRRPointAfterLoad(const aElement: IwbElement); -var - Connections : IwbContainerElementRef; - i : Integer; -// Index : Integer; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Connections) then - Exit; - for i := Pred(Connections.ElementCount) downto 0 do - if Connections.Elements[i].NativeValue = 65535 then begin - Connections.RemoveElement(i); - end; -{ if Removed then begin - Index := aElement.Container.ElementCount; - (aElement.ContainingMainRecord.RecordBySignature['PGRP'].Elements[Index] as IwbContainer).Elements[3].NativeValue := Connections.ElementCount; - end;} - finally - wbEndInternalEdit; - end; -end; - -procedure wbPGRIPointerAfterLoad(const aElement: IwbElement); -var - Connections : IwbContainerElementRef; - i, j : Integer; - s : string; - Keys : TStringList; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Connections) then - Exit; - - Keys := TStringList.Create; - try - Keys.Sorted := True; - Keys.Duplicates := dupError; - for i := Pred(Connections.ElementCount) downto 0 do begin - s := Connections.Elements[i].SortKey[True]; - if Keys.Find(s, j) then - Connections.RemoveElement(i, True) - else - Keys.Add(s); - end; - finally - Keys.Free; - end; - finally - wbEndInternalEdit; - end; -end; - -{ -function wbPGRPConnectionsCallback(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Point : IwbContainerElementRef; - s : string; - i : Integer; - PGRP : IwbContainerElementRef; - PGRD : IwbMainRecord; - PGRR : IwbContainerElementRef; - Cons : IwbContainerElementRef; -begin - Result := ''; - if aType = ctCheck then - Exit; - - if wbFixupPGRD and (aInt > 0) and Assigned(aElement) and (aElement.ElementStates * [esModified] = []) then begin - Point := aElement.Container as IwbContainerElementRef; - if Assigned(Point) then begin - s := Trim(Point.Name); - i := Pos('#', s); - if i > 0 then begin - i := StrToIntDef(Copy(s, i+1, High(Integer)), -1); - if i >= 0 then begin - PGRP := Point.Container as IwbContainerElementRef; - if Assigned(PGRP) then begin - if Supports(PGRP.Container, IwbMainRecord, PGRD) then begin - if (csInitDone in PGRD.ContainerStates) and (PGRD.Signature = 'PGRD') then begin - PGRR := PGRD.RecordBySignature['PGRR'] as IwbContainerElementRef; - if Assigned(PGRR) and (PGRR.ElementCount > 0) and (csInitDone in PGRR.ContainerStates) then begin - if (i < PGRR.ElementCount) then begin - if Supports(PGRR.Elements[i], IwbContainer, Cons) then begin - aInt := Cons.ElementCount; - end; - end; - end; - PGRR := nil; - end; - end; - end; - end; - end; - end; - end; - - if aType = ctToSortKey then - Result := IntToHex64(aInt, 2) - else if aType = ctToStr then - Result := IntToStr(aInt); -end; -} - -function wbPxDTLocationDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Result := Container.ElementByName['Type'].NativeValue; -end; - -function wbCalcPGRRSize(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Index: Integer; - - function ExtractCountFromLabel(const aElement: IwbElement; aCount: Integer): Integer; - var - i: Integer; - begin - i := Pos('#', aElement.Name); - if i = 0 then - Result := aCount - else try - Result := StrToInt(Trim(Copy(aElement.Name, i+1, Length(aElement.Name))))+1; - except - Result := aCount; - end; - - end; - -begin - Index := ExtractCountFromLabel(aElement, aElement.Container.ElementCount); - Result := ((aElement.Container.Container as IwbMainRecord).RecordBySignature['PGRP'].Elements[Pred(Index)] as IwbContainer).Elements[3].NativeValue; -end; - -function wbMGEFFAssocItemDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - s: string; - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - s := Container.ElementByName['Flags'].SortKey[False]; - if s[17] = '1' then - Result := 1 - else if s[18] = '1' then - Result := 2 - else if s[19] = '1' then - Result := 3 - else if s[25] = '1' then - Result := 4; -end; - -function wbEDDXDontShow(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - Result := True; - - if Supports(aElement.Container, IwbMainRecord, MainRecord) then - Result := not Assigned(MainRecord.ElementBySignature[OBME]); -end; - -function wbOBMEDontShow(const aElement: IwbElement): Boolean; -var - _File: IwbFile; -begin - if not Assigned(aElement) then begin - Result := True; - Exit; - end; - - Result := False; - - _File := aElement._File; - if Assigned(_File) and SameText(_File.FileName, 'Oblivion.esm') then - Result := True; -end; - -function wbOffsetDataColsCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbDataContainer; - Element : IwbElement; - fResult : Extended; -begin - Result := 0; - - if Supports(aElement.Container, IwbDataContainer, Container) and (Container.Name = 'OFST - Offset Data') and - Supports(Container.Container, IwbDataContainer, Container) then begin - Element := Container.ElementByPath['Object Bounds\NAM0 - Min\X']; - if Assigned(Element) then begin - fResult := Element.NativeValue; - if fResult >= MaxInt then - Result := 0 - else - Result := Trunc(fResult); - Element := Container.ElementByPath['Object Bounds\NAM9 - Max\X']; - if Assigned(Element) then begin - fResult := Element.NativeValue; - if fResult >= MaxInt then - Result := 1 - else - Result := Trunc(fResult) - Result + 1; - end; - end; - end; -end; - -procedure DefineTES4; -begin - wbRecordFlags := wbInteger('Record Flags', itU32, wbFlags([ - {0x00000001}'ESM', - {0x00000002}'', - {0x00000004}'', - {0x00000008}'', - {0x00000010}'', - {0x00000020}'Deleted', - {0x00000040}'Border Region / Actor Value', - {0x00000080}'Turn Off Fire / Actor Value', - {0x00000100}'', - {0x00000200}'Casts shadows', - {0x00000400}'Quest item / Persistent reference / Show in Menu', - {0x00000800}'Initially disabled', - {0x00001000}'Ignored', - {0x00002000}'', - {0x00004000}'', - {0x00008000}'Visible when distant', - {0x00010000}'', - {0x00020000}'Dangerous / Off limits (Interior cell)', - {0x00040000}'Compressed ', - {0x00080000}'Can''t wait' - ])); - - wbMainRecordHeader := wbStruct('Record Header', [ - wbString('Signature', 4, cpCritical), - wbInteger('Data Size', itU32, nil, cpIgnore), - wbRecordFlags, - wbFormID('FormID', cpFormID), - wbByteArray('Unknown', 4, cpIgnore) - ]); - - wbSizeOfMainRecordStruct := 20; - - wbIgnoreRecords.Add(XXXX); - - wbXRGD := wbByteArray(XRGD, 'Ragdoll Data'); - - wbMusicEnum := wbEnum(['Default', 'Public', 'Dungeon']); - - wbEDID := wbString(EDID, 'Editor ID', 0, cpNormal); // not cpBenign according to Arthmoor - wbFULL := wbStringKC(FULL, 'Name', 0, cpTranslate); - wbFULLReq := wbStringKC(FULL, 'Name', 0, cpNormal, True); - wbDESC := wbStringKC(DESC, 'Description', 0, cpTranslate); - wbXSCL := wbFloat(XSCL, 'Scale'); - - wbPosRot := - wbStruct('Position/Rotation', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ]); - - wbDATAPosRot := - wbStruct(DATA, 'Position/Rotation', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ], cpNormal, True); - - wbMODL := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename'), - wbFloat(MODB, 'Bound Radius', cpBenign), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore) -// wbArray(MODT, 'Unknown', -// wbByteArray('Unknown', 24, cpBenign), -// 0, nil, cpBenign) - ], []); - - wbSCRI := wbFormIDCk(SCRI, 'Script', [SCPT]); - wbENAM := wbFormIDCk(ENAM, 'Enchantment', [ENCH]); - - wbXLOD := wbArray(XLOD, 'Distant LOD Data', wbFloat('Unknown'), 3); - wbXESP := wbStruct(XESP, 'Enable Parent', [ - wbFormIDCk('Reference', [PLYR, REFR, ACRE, ACHR]), - wbInteger('Flags', itU8, wbFlags([ - 'Set Enable State to Opposite of Parent' - ])), - wbByteArray('Unused', 3) - ]); - - wbRecord(ACHR, 'Placed NPC', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [NPC_], False, cpNormal, True), - wbRStruct('Unused', [ - wbFormIDCk(XPCI, 'Unused', [CELL]), - wbString(FULL, 'Unused') - ], []), - wbXLOD, - wbXESP, - wbFormIDCk(XMRC, 'Merchant container', [REFR], True), - wbFormIDCk(XHRS, 'Horse', [ACRE], True), - wbXRGD, - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo, cpNormal, False, wbREFRAfterLoad); - - wbXOWN := wbFormIDCk(XOWN, 'Owner', [FACT, NPC_]); - wbXGLB := wbFormIDCk(XGLB, 'Global variable', [GLOB]); - - wbRecord(ACRE, 'Placed Creature', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [CREA], False, cpNormal, True), - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32), - wbXGLB - ], []), - wbXESP, - wbXRGD, - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbRecord(ACTI, 'Activator', [ - wbEDID, - wbFULL, - wbMODL, - wbSCRI, - wbFormIDCk(SNAM, 'Sound', [SOUN]) - ]); - - wbICON := wbString(ICON, 'Icon filename'); - - wbActorValueEnum := - wbEnum([ - 'Strength', - 'Intelligence', - 'Willpower', - 'Agility', - 'Speed', - 'Endurance', - 'Personality', - 'Luck', - 'Health', - 'Magicka', - 'Fatigue', - 'Encumbrance', - 'Armorer', - 'Athletics', - 'Blade', - 'Block', - 'Blunt', - 'Hand To Hand', - 'Heavy Armor', - 'Alchemy', - 'Alteration', - 'Conjuration', - 'Destruction', - 'Illusion', - 'Mysticism', - 'Restoration', - 'Acrobatics', - 'Light Armor', - 'Marksman', - 'Mercantile', - 'Security', - 'Sneak', - 'Speechcraft', - {33} 'Aggression', - {34} 'Confidence', - {35} 'Energy', - {36} 'Responsibility', - {37} 'Bounty', - {38} 'Fame', - {39} 'Infamy', - {40} 'Magicka Multiplier', - {41} 'Night Eye Bonus', - {42} 'Attack Bonus', - {43} 'Defend Bonus', - {44} 'Casting Penalty', - {45} 'Blindness', - {46} 'Chameleon', - {47} 'Invisibility', - {48} 'Paralysis', - {49} 'Silence', - {50} 'Confusion', - {51} 'Detect Item Range', - {52} 'Spell Absorb Chance', - {53} 'Spell Reflect Chance', - {54} 'Swim Speed Multiplier', - {55} 'Water Breathing', - {56} 'Water Walking', - {57} 'Stunted Magicka', - {58} 'Detect Life Range', - {59} 'Reflect Damage', - {60} 'Telekinesis', - {61} 'Resist Fire', - {62} 'Resist Frost', - {63} 'Resist Disease', - {64} 'Resist Magic', - {65} 'Resist Normal Weapons', - {66} 'Resist Paralysis', - {67} 'Resist Poison', - {68} 'Resist Shock', - {69} 'Vampirism', - {70} 'Darkness', - {71} 'Resist Water Damage' - ], [ - -1, 'None' - ]); - - wbSkillEnum := - wbEnum([ - 'Armorer', - 'Athletics', - 'Blade', - 'Block', - 'Blunt', - 'Hand To Hand', - 'Heavy Armor', - 'Alchemy', - 'Alteration', - 'Conjuration', - 'Destruction', - 'Illusion', - 'Mysticism', - 'Restoration', - 'Acrobatics', - 'Light Armor', - 'Marksman', - 'Mercantile', - 'Security', - 'Sneak', - 'Speechcraft' - ], [ - -1, 'None' - ]); - - - wbEFID := wbInteger(EFID, 'Magic effect name', itU32, wbChar4, cpNormal, True); - - wbEFIDOBME := wbStringMgefCode(EFID, 'Magic Effect Code', 4, cpNormal, True); - - wbEFIT := - wbStructSK(EFIT, [4, 5], '', [ - wbInteger('Magic effect name', itU32, wbChar4), - wbInteger('Magnitude', itU32), - wbInteger('Area', itU32), - wbInteger('Duration', itU32), - wbInteger('Type', itU32, wbEnum(['Self', 'Touch', 'Target'])), - wbInteger('Actor Value', itS32, wbActorValueEnum) - ], cpNormal, True, nil, -1, wbEFITAfterLoad); - - wbEFITOBME := - wbStructSK(EFIT, [4, 5], '', [ - wbStringMgefCode('Magic Effect Code', 4), - wbInteger('Magnitude', itU32), - wbInteger('Area', itU32), - wbInteger('Duration', itU32), - wbInteger('Type', itU32, wbEnum(['Self', 'Touch', 'Target'])), - wbUnion('Param #1', wbEFITOBMEParamDecider, [ - wbByteArray('Param #1 - Unknown Type', 4), - wbFormID('Param #1 - FormID'), - wbStringMgefCode('Param #1 - Magic Effect Code', 4), - wbFormIDCk('Param #1 - Actor Value', [ACVA]) - ]) - ], cpNormal, True, nil, -1{, wbEFITAfterLoad}); - - wbEFIX := - wbStructSK(EFIX, [3], '', [ - wbInteger('Override Mask', itU32, wbFlags([])), - wbInteger('Flags', itU32, wbFlags([])), - wbFloat('Base Cost'), - wbUnion('Param #2', wbEFIXParamDecider, [ - wbByteArray('Param #2 - Unknown Type', 4), - wbFormID('Param #2 - FormID'), - wbStringMgefCode('Param #2 - Magic Effect Code', 4), - wbFormIDCk('Param #2 - Actor Value', [ACVA]) - ]) - ], cpNormal, True, nil, -1, wbEFITAfterLoad); - - wbMagicSchoolEnum := - wbEnum([ - 'Alteration', - 'Conjuration', - 'Destruction', - 'Illusion', - 'Mysticism', - 'Restoration' - ]); - - wbSCIT := - wbRStructSK([0], 'Script effect', [ - wbStructSK(SCIT, [0], 'Script effect data', [ - wbFormIDCk('Script effect', [NULL, SCPT]), - wbInteger('Magic school', itU32, wbMagicSchoolEnum), - wbInteger('Visual effect name', itU32, wbChar4), - wbInteger('Flags', itU8, wbFlags(['Hostile'])), - wbByteArray('Unused', 3) - ], cpNormal, True, nil, 1), - wbFULLReq - ], []); - - wbSCITOBME := - wbRStructSK([0], 'Script effect', [ - wbStructSK(SCIT, [0], 'Script effect data', [ - wbFormIDCk('Script effect', [NULL, SCPT]), - wbInteger('Magic school', itU32, wbMagicSchoolEnum), - wbStringMgefCode('Visual Effect Code', 4), - wbInteger('Flags', itU8, wbFlags(['Hostile'])), - wbByteArray('Unused', 3) - ], cpNormal, True, nil, 1), - wbFULLReq - ], []); - - - wbOBMEResolutionInfo := wbEnum(['None', 'FormID', 'Magic Effect Code', 'Actor Value']); - - wbEffects := wbRArray('Effects', - wbRUnion('Effects', [ - wbRStruct('Effect', [ - wbEFID, - wbEFIT, - wbSCIT - ], []), - wbRStruct('Effects', [ - wbRStructs('Effects','Effect', [ - wbStruct(EFME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbInteger('EFIT Param Info', itU8, wbOBMEResolutionInfo), - wbInteger('EFIX Param Info', itU8, wbOBMEResolutionInfo), - wbByteArray('Unused', $0A) - ]), - wbEFIDOBME, - wbEFITOBME, - wbSCITOBME, - wbString(EFII, 'Icon'), - wbEFIX - ], []), - wbEmpty(EFXX, 'Effects End Marker', cpNormal, True), - wbFULLReq - ], []) - ], []) - ); - -// wbEffects := -// wbRUnion('Effects', [ -// wbRStruct('Effects', [ -// wbRStructs('Effects','Effect', [ -// wbEFID, -// wbEFIT, -// wbSCIT -// ], []) -// ], []), -// wbRStruct('Effects', [ -// wbRStructs('Effects','Effect', [ -// wbStruct(EFME, 'Oblivion Magic Extender', [ -// wbInteger('Record Version', itU8), -// wbStruct('OBME Version', [ -// wbInteger('Beta', itU8), -// wbInteger('Minor', itU8), -// wbInteger('Major', itU8) -// ]), -// wbInteger('EFIT Param Info', itU8, wbOBMEResolutionInfo), -// wbInteger('EFIX Param Info', itU8, wbOBMEResolutionInfo), -// wbByteArray('Unused', $0A) -// ]), -// wbEFIDOBME, -// wbEFITOBME, -// wbSCITOBME, -// wbString(EFII, 'Icon'), -// wbEFIX -// ], []), -// wbEmpty(EFXX, 'Effects End Marker', cpNormal, True), -// wbFULLReq -// ], []) -// ], []); - - wbRecord(ALCH, 'Potion', [ - wbEDID, - wbStruct(OBME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbByteArray('Unused', $1C) - ], cpNormal, False, wbOBMEDontShow), - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbFloat(DATA, 'Weight', cpNormal, True), - wbStruct(ENIT, '', [ - wbInteger('Value', itS32), - wbInteger('Flags', itU8, wbFlags(['No auto-calculation', 'Food item'])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffects - ]); - - wbRecord(AMMO, 'Ammunition', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbFormIDCk(ENAM, 'Enchantment', [ENCH]), - wbInteger(ANAM, 'Enchantment Points', itU16), - wbStruct(DATA, '', [ - wbFloat('Speed'), - wbInteger('Flags', itU8, wbFlags(['Ignores Normal Weapon Resistance'])), - wbByteArray('Unused', 3), - wbInteger('Value', itU32), - wbFloat('Weight'), - wbInteger('Damage', itU16) - ], cpNormal, True) - ]); - - wbRecord(ANIO, 'Animated Object', [ - wbEDID, - wbMODL, - wbFormIDCk(DATA, 'IDLE animation', [IDLE], False, cpNormal, True) - ]); - - wbRecord(APPA, 'Alchemical Apparatus', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbStruct(DATA, '', [ - wbInteger('Type', itU8, wbEnum(['Mortar and Pestle', 'Alembic', 'Calcinator', 'Retort'])), - wbInteger('Value', itU32), - wbFloat('Weight'), - wbFloat('Quality') - ], cpNormal, True) - ]); - - wbRecord(ARMO, 'Armor', [ - wbEDID, - wbFULL, - wbSCRI, - wbENAM, - wbInteger(ANAM, 'Enchantment Points', itU16), - wbStruct(BMDT, '', [ - wbInteger('Biped Flags', itU16, wbFlags([ - {0x00000001} 'Head', - {0x00000002} 'Hair', - {0x00000004} 'Upper Body', - {0x00000008} 'Lower Body', - {0x00000010} 'Hand', - {0x00000020} 'Foot', - {0x00000040} 'Right Ring', - {0x00000080} 'Left Ring', - {0x00000100} 'Amulet', - {0x00000200} 'Weapon', - {0x00000400} 'Back Weapon', - {0x00000800} 'Side Weapon', - {0x00001000} 'Quiver', - {0x00002000} 'Shield', - {0x00004000} 'Torch', - {0x00008000} 'Tail' - ])), - wbInteger('General Flags', itU8, wbFlags([ - {0x0001} 'Hide Rings', - {0x0002} 'Hide Amulets', - {0x0004} '', - {0x0008} '', - {0x0010} '', - {0x0020} '', - {0x0040} 'Non-Playable', - {0x0080} 'Heavy armor' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbRStruct('Male biped model', [ - wbString(MODL, 'Model Filename'), - wbFloat(MODB, 'Bound Radius', cpBenign), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbRStruct('Male world model', [ - wbString(MOD2, 'Model Filename'), - wbFloat(MO2B, 'Bound Radius', cpBenign), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbString(ICON, 'Male icon filename'), - wbRStruct('Female biped model', [ - wbString(MOD3, 'Model Filename'), - wbFloat(MO3B, 'Bound Radius', cpBenign), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbRStruct('Female world model', [ - wbString(MOD4, 'Model Filename'), - wbFloat(MO4B, 'Bound Radius', cpBenign), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbString(ICO2, 'Female icon filename'), - wbStruct(DATA, '', [ - wbInteger('Armor', itU16, wbDiv(100)), - wbInteger('Value', itU32), - wbInteger('Health', itU32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbRecord(BOOK, 'Book', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbENAM, - wbInteger(ANAM, 'Enchantment Points', itU16), - wbDESC, - wbStruct(DATA, '', [ - wbInteger('Flags', itU8, wbFlags(['Scroll', 'Can''t be taken'])), - wbInteger('Teaches', itS8, wbSkillEnum), - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True) - ], True); - - wbSPLO := wbFormIDCk(SPLO, 'Spell', [SPEL, LVSP]); - wbSPLOs := wbRArrayS('Spells', wbSPLO); - - wbRecord(BSGN, 'Birthsign', [ - wbEDID, - wbFULL, - wbICON, - wbDESC, - wbSPLOs - ]); - - wbRecord(CELL, 'Cell', [ - wbEDID, - wbFULL, - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Is Interior Cell', - {0x02} 'Has water', - {0x04} 'Invert Fast Travel behavior', - {0x08} 'Force hide land (exterior cell) / Oblivion interior (interior cell)', - {0x10} '', - {0x20} 'Public place', - {0x40} 'Hand changed', - {0x80} 'Behave like exterior' - ]), cpNormal, True), - wbStruct(XCLC, 'Grid', [ - wbInteger('X', itS32), - wbInteger('Y', itS32) - ]), - wbStruct(XCLL, 'Lighting', [ - wbStruct('Ambient Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Directional Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Fog Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Fog Near'), - wbFloat('Fog Far'), - wbInteger('Directional Rotation XY', itS32), - wbInteger('Directional Rotation Z', itS32), - wbFloat('Directional Fade', cpNormal, False, 1, -1, nil, nil, 1.0), - wbFloat('Fog Clip Dist') - ]), - wbArrayS(XCLR, 'Regions', wbFormIDCk('Region', [REGN])), - wbInteger(XCMT, 'Music', itU8, wbMusicEnum), - wbFloat(XCLW, 'Water Height', cpBenign), - wbFormIDCk(XCCM, 'Climate', [CLMT]), - wbFormIDCk(XCWT, 'Water', [WATR]), - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32), - wbXGLB - ], [XCLW, XCMT, XCCM]) - ], True, wbCellAddInfo, cpNormal, False, wbCELLAfterLoad); - - wbServiceFlags := - wbFlags([ - {0x00000001} 'Weapons', - {0x00000002} 'Armor', - {0x00000004} 'Clothing', - {0x00000008} 'Books', - {0x00000010} 'Ingredients', - {0x00000020} '', - {0x00000040} '', - {0x00000080} 'Lights', - {0x00000100} 'Apparatus', - {0x00000200} '', - {0x00000400} 'Miscellaneous', - {0x00000800} 'Spells', - {0x00001000} 'Magic Items', - {0x00002000} 'Potions', - {0x00004000} 'Training', - {0x00008000} '', - {0x00010000} 'Recharge', - {0x00020000} 'Repair' - ]); - - wbSpecializationEnum := wbEnum(['Combat', 'Magic', 'Stealth']); - - wbRecord(CLAS, 'Class', [ - wbEDID, - wbFULL, - wbDESC, - wbICON, - wbStruct(DATA, '', [ - wbArrayS('Primary Attributes', wbInteger('Primary Attribute', itS32, wbActorValueEnum), 2), - wbInteger('Specialization', itU32, wbSpecializationEnum), - wbArrayS('Major Skills', wbInteger('Major Skill', itS32, wbActorValueEnum), 7), - wbInteger('Flags', itU32, wbFlags(['Playable', 'Guard'])), - wbInteger('Buys/Sells and Services', itU32, wbServiceFlags), - wbInteger('Teaches', itS8, wbSkillEnum), - wbInteger('Maximum training level', itU8), - wbInteger('Unused', itU16) - ], cpNormal, True, nil, 5) - ]); - - wbRecord(CLMT, 'Climate', [ - wbEDID, - wbArrayS(WLST, 'Weather Types', wbStructSK([0], 'Weather Type', [ - wbFormIDCk('Weather', [WTHR]), - wbInteger('Chance', itS32) - ])), - wbString(FNAM, 'Sun Texture'), - wbString(GNAM, 'Sun Glare Texture'), - wbMODL, - wbStruct(TNAM, 'Timing', [ - wbStruct('Sunrise', [ - wbInteger('Begin', itU8, wbClmtTime), - wbInteger('End', itU8, wbClmtTime) - ]), - wbStruct('Sunset', [ - wbInteger('Begin', itU8, wbClmtTime), - wbInteger('End', itU8, wbClmtTime) - ]), - wbInteger('Volatility', itU8), - wbInteger('Moons / Phase Length', itU8, wbClmtMoonsPhaseLength) - ], cpNormal, True) - ]); - - wbRecord(CLOT, 'Clothing', [ - wbEDID, - wbFULL, - wbSCRI, - wbENAM, - wbInteger(ANAM, 'Enchantment Points', itU16), - wbStruct(BMDT, '', [ - wbInteger('Biped Flags', itU16, wbFlags([ - {0x00000001} 'Head', - {0x00000002} 'Hair', - {0x00000004} 'Upper Body', - {0x00000008} 'Lower Body', - {0x00000010} 'Hand', - {0x00000020} 'Foot', - {0x00000040} 'Right Ring', - {0x00000080} 'Left Ring', - {0x00000100} 'Amulet', - {0x00000200} 'Weapon', - {0x00000400} 'Back Weapon', - {0x00000800} 'Side Weapon', - {0x00001000} 'Quiver', - {0x00002000} 'Shield', - {0x00004000} 'Torch', - {0x00008000} 'Tail' - ])), - wbInteger('General Flags', itU8, wbFlags([ - {0x0001} 'Hide Rings', - {0x0002} 'Hide Amulets', - {0x0004} '', - {0x0008} '', - {0x0010} '', - {0x0020} '', - {0x0040} 'Non-Playable', - {0x0080} '' {Heavy armor} - ])), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbRStruct('Male biped model', [ - wbString(MODL, 'Model Filename'), - wbFloat(MODB, 'Bound Radius', cpBenign), - wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbRStruct('Male world model', [ - wbString(MOD2, 'Model Filename'), - wbFloat(MO2B, 'Bound Radius', cpBenign), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbString(ICON, 'Male icon filename'), - wbRStruct('Female biped model', [ - wbString(MOD3, 'Model Filename'), - wbFloat(MO3B, 'Bound Radius', cpBenign), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbRStruct('Female world model', [ - wbString(MOD4, 'Model Filename'), - wbFloat(MO4B, 'Bound Radius', cpBenign), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore) - ], []), - wbString(ICO2, 'Female icon filename'), - wbStruct(DATA, '', [ - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbCNTO := - wbStructSK(CNTO, [0], 'Item', [ - wbFormIDCk('Item', [ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, LVLI, KEYM, CLOT, ALCH, APPA, LIGH]), - wbInteger('Count', itS32) - ]); - - wbCNTOs := wbRArrayS('Items', wbCNTO); - - wbRecord(CONT, 'Container', [ - wbEDID, - wbFULL, - wbMODL, - wbSCRI, - wbCNTOs, - wbStruct(DATA, '', [ - wbInteger('Flags', itU8, wbFlags(['', 'Respawns'])), - wbFloat('Weight') - ], cpNormal, True), - wbFormIDCk(SNAM, 'Open sound', [SOUN]), - wbFormIDCk(QNAM, 'Close sound', [SOUN]) - ]); - - wbCSDT := wbRStructSK([0], 'Sound Type', [ - wbInteger(CSDT, 'Type', itU32,wbEnum([ - {0x00} 'Left Foot', - {0x01} 'Right Foot', - {0x02} 'Left Back Foot', - {0x03} 'Right Back Foot', - {0x04} 'Idle', - {0x05} 'Aware', - {0x06} 'Attack', - {0x07} 'Hit', - {0x08} 'Death', - {0x09} 'Weapon' - ])), - wbRArrayS('Sounds', wbRStructSK([0], 'Sound', [ - wbFormIDCk(CSDI, 'Sound', [SOUN, NULL], False, cpNormal, True), - wbInteger(CSDC, 'Sound Chance', itU8, nil, cpNormal, True) - ], []), cpNormal, True) - ], []); - - wbCSDTs := wbRArrayS('Sound Types', wbCSDT); - - wbSoulGemEnum := wbEnum([ - {0} 'None', - {1} 'Petty', - {2} 'Lesser', - {3} 'Common', - {4} 'Greater', - {5} 'Grand' - ]); - - wbRecord(CREA, 'Creature', [ - wbEDID, - wbFULL, - wbMODL, - wbCNTOs, - wbSPLOs, - wbArrayS(NIFZ, 'Models', wbStringLC('Model')), - wbByteArray(NIFT, 'Texture Files Hashes', 0, cpIgnore), - wbStruct(ACBS, 'Configuration', [ - wbInteger('Flags', itU32, wbFlags([ - {0x000001} 'Biped', - {0x000002} 'Essential', - {0x000004} 'Weapon & Shield', - {0x000008} 'Respawn', - {0x000010} 'Swims', - {0x000020} 'Flies', - {0x000040} 'Walks', - {0x000080} 'PC Level Offset', - {0x000100} 'Unused', //?? - {0x000200} 'No Low Level Processing', - {0x000400} 'Unused', //?? - {0x000800} 'No Blood Spray', - {0x001000} 'No Blood Decal', - {0x002000} '', - {0x004000} '', - {0x008000} 'No Head', - {0x010000} 'No Right Arm', - {0x020000} 'No Left Arm', - {0x040000} 'No Combat in Water', - {0x080000} 'No Shadow', - {0x100000} 'No Corpse Check' - ])), - wbInteger('Base spell points', itU16), - wbInteger('Fatigue', itU16), - wbInteger('Barter gold', itU16), - wbInteger('Level (offset)', itS16), - wbInteger('Calc min', itU16), - wbInteger('Calc max', itU16) - ], cpNormal, True), - wbRArrayS('Factions', - wbStructSK(SNAM, [0], 'Faction', [ - wbFormIDCk('Faction', [FACT]), - wbInteger('Rank', itU8), - wbByteArray('Unused', 3) - ]) - ), - wbFormIDCk(INAM, 'Death item', [LVLI]), - wbSCRI, - wbStruct(AIDT, 'AI Data', [ - wbInteger('Aggression', itU8), - wbInteger('Confidence', itU8), - wbInteger('Energy Level', itU8), - wbInteger('Responsibility', itU8), - wbInteger('Buys/Sells and Services', itU32, wbServiceFlags), - wbInteger('Teaches', itS8, wbSkillEnum), - wbInteger('Maximum training level', itU8), - wbByteArray('Unused', 2) - ], cpNormal, True), - wbRArray('AI Packages', wbFormIDCk(PKID, 'AI Package', [PACK])), - wbArrayS(KFFZ, 'Animations', wbStringLC('Animation')), - wbStruct(DATA, 'Creature Data', [ - wbInteger('Type', itU8, wbEnum([ - 'Creature', - 'Daedra', - 'Undead', - 'Humanoid', - 'Horse', - 'Giant' - ])), - wbInteger('Combat Skill', itU8), - wbInteger('Magic Skill', itU8), - wbInteger('Stealth Skill', itU8), - wbInteger('Soul', itU8, wbSoulGemEnum), - wbByteArray('Unused', 1), - wbInteger('Health', itU16), - wbByteArray('Unused', 2), - wbInteger('Attack Damage', itU16), - wbInteger('Strength', itU8), - wbInteger('Intelligence', itU8), - wbInteger('Willpower', itU8), - wbInteger('Agility', itU8), - wbInteger('Speed', itU8), - wbInteger('Endurance', itU8), - wbInteger('Personality', itU8), - wbInteger('Luck', itU8) - ], cpNormal, True), - wbInteger(RNAM, 'Attack reach', itU8, nil, cpNormal, True), - wbFormIDCk(ZNAM, 'Combat Style', [CSTY]), - wbFloat(TNAM, 'Turning Speed', cpNormal, True), - wbFloat(BNAM, 'Base Scale', cpNormal, True), - wbFloat(WNAM, 'Foot Weight', cpNormal, True), - wbString(NAM0, 'Blood Spray'), - wbString(NAM1, 'Blood Decal'), - wbFormIDCk(CSCR, 'Inherits Sounds from', [CREA]), - wbCSDTs - ], True); - - wbRecord(CSTY, 'Combat Style', [ - wbEDID, - wbStruct(CSTD, 'Standard', [ - {000}wbInteger('Dodge % Chance', itU8), - {001}wbInteger('Left/Right % Chance', itU8), - {002}wbByteArray('Unused', 2), - {004}wbFloat('Dodge L/R Timer (min)'), - {008}wbFloat('Dodge L/R Timer (max)'), - {012}wbFloat('Dodge Forward Timer (min)'), - {016}wbFloat('Dodge Forward Timer (max)'), - {020}wbFloat('Dodge Back Timer Min'), - {024}wbFloat('Dodge Back Timer Max'), - {028}wbFloat('Idle Timer min'), - {032}wbFloat('Idle Timer max'), - {036}wbInteger('Block % Chance', itU8), - {037}wbInteger('Attack % Chance', itU8), - {038}wbByteArray('Unused', 2), - {040}wbFloat('Recoil/Stagger Bonus to Attack'), - {044}wbFloat('Unconscious Bonus to Attack'), - {048}wbFloat('Hand-To-Hand Bonus to Attack'), - {052}wbInteger('Power Attack % Chance', itU8), - {053}wbByteArray('Unused', 3), - {056}wbFloat('Recoil/Stagger Bonus to Power'), - {060}wbFloat('Unconscious Bonus to Power Attack'), - {064}wbInteger('Power Attack - Normal', itU8), - {065}wbInteger('Power Attack - Forward', itU8), - {066}wbInteger('Power Attack - Back', itU8), - {067}wbInteger('Power Attack - Left', itU8), - {068}wbInteger('Power Attack - Right', itU8), - {069}wbByteArray('Unused', 3), - {072}wbFloat('Hold Timer (min)'), - {076}wbFloat('Hold Timer (max)'), - {080}wbInteger('Flags 1', itU8, wbFlags([ - 'Advanced', - 'Choose Attack using % Chance', - 'Ignore Allies in Area', - 'Will Yield', - 'Rejects Yields', - 'Fleeing Disabled', - 'Prefers Ranged', - 'Melee Alert OK' - ])), - {081}wbInteger('Acrobatic Dodge % Chance', itU8), - {082}wbByteArray('Unused', 2), - {084}wbFloat('Range Mult (Optimal)'), - {088}wbFloat('Range Mult (Max)'), - {092}wbFloat('Switch Distance (Melee)'), - {096}wbFloat('Switch Distance (Ranged)'), - {100}wbFloat('Buff standoff Distance'), - {104}wbFloat('Ranged standoff Distance'), - {108}wbFloat('Group standoff Distance'), - {112}wbInteger('Rushing Attack % Chance', itU8), - {113}wbByteArray('Unused', 3), - {116}wbFloat('Rushing Attack Distance Mult'), - {120}wbInteger('Flags 2', itU32, wbFlags([ - 'Do Not Acquire' - ])) - ], cpNormal, True, nil, 31), - wbStruct(CSAD, 'Advanced', [ - wbFloat('Dodge Fatigue Mod Mult'), - wbFloat('Dodge Fatigue Mod Base'), - wbFloat('Encumb. Speed Mod Base'), - wbFloat('Encumb. Speed Mod Mult'), - wbFloat('Dodge While Under Attack Mult'), - wbFloat('Dodge Not Under Attack Mult'), - wbFloat('Dodge Back While Under Attack Mult'), - wbFloat('Dodge Back Not Under Attack Mult'), - wbFloat('Dodge Forward While Attacking Mult'), - wbFloat('Dodge Forward Not Attacking Mult'), - wbFloat('Block Skill Modifier Mult'), - wbFloat('Block Skill Modifier Base'), - wbFloat('Block While Under Attack Mult'), - wbFloat('Block Not Under Attack Mult'), - wbFloat('Attack Skill Modifier Mult'), - wbFloat('Attack Skill Modifier Base'), - wbFloat('Attack While Under Attack Mult'), - wbFloat('Attack Not Under Attack Mult'), - wbFloat('Attack During Block Mult'), - wbFloat('Power Att. Fatigue Mod Base'), - wbFloat('Power Att. Fatigue Mod Mult') - ]) - ]); - - wbRecord(DIAL, 'Dialog Topic', [ - wbEDID, - wbRArrayS('Quests', wbFormIDCk(QSTI, 'Quest', [QUST], False, cpBenign)), - wbRArrayS('Quests?', wbFormIDCk(QSTR, 'Quest?', [QUST], False, cpBenign)), - wbFULL, - wbInteger(DATA, 'Type', itU8, wbEnum([ - {0} 'Topic', - {1} 'Conversation', - {2} 'Combat', - {3} 'Persuasion', - {4} 'Detection', - {5} 'Service', - {6} 'Miscellaneous' - ]), cpNormal, True) - ], True); - - wbRecord(DOOR, 'Door', [ - wbEDID, - wbFULL, - wbMODL, - wbSCRI, - wbFormIDCk(SNAM, 'Open sound', [SOUN]), - wbFormIDCk(ANAM, 'Close sound', [SOUN]), - wbFormIDCk(BNAM, 'Loop sound', [SOUN]), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - {0x01} 'Oblivion gate', - {0x02} 'Automatic door', - {0x04} 'Hidden', - {0x08} 'Minimal use' - ]), cpNormal, True), - wbRArrayS('Random teleport destinations', wbFormIDCk(TNAM, 'Destination', [CELL, WRLD])) - ]); - - wbBlendModeEnum := wbEnum([ - '', - 'Zero', - 'One', - 'Source Color', - 'Source Inverse Color', - 'Source Alpha', - 'Source Inverted Alpha', - 'Dest Alpha', - 'Dest Inverted Alpha', - 'Dest Color', - 'Dest Inverse Color', - 'Source Alpha SAT' - ]); - - wbBlendOpEnum := wbEnum([ - '', - 'Add', - 'Subtract', - 'Reverse Subtract', - 'Minimum', - 'Maximum' - ]); - wbZTestFuncEnum := wbEnum([ - '', - '', - '', - 'Equal To', - 'Normal', - 'Greater Than', - '', - 'Greater Than or Equal Than', - 'Always Show' - ]); - - wbRecord(EFSH, 'Effect Shader', [ - wbEDID, - wbString(ICON, 'Fill Texture'), - wbString(ICO2, 'Particle Shader Texture'), - wbStruct(DATA, '', [ - wbInteger('Flags', itU8, wbFlags([ - {0} 'No Membrane Shader', - {1} '', - {2} '', - {3} 'No Particle Shader', - {4} 'Edge Effect - Inverse', - {5} 'Membrane Shader - Affect Skin Only' - ])), - wbByteArray('Unused', 3), - wbInteger('Membrane Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Membrane Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Membrane Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbStruct('Fill/Texture Effect - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Fill/Texture Effect - Alpha Fade In Time'), - wbFloat('Fill/Texture Effect - Full Alpha Time'), - wbFloat('Fill/Texture Effect - Alpha Fade Out Time'), - wbFloat('Fill/Texture Effect - Presistent Alpha Ratio'), - wbFloat('Fill/Texture Effect - Alpha Pulse Amplitude'), - wbFloat('Fill/Texture Effect - Alpha Pulse Frequency'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (U)'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (V)'), - wbFloat('Edge Effect - Fall Off'), - wbStruct('Edge Effect - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Edge Effect - Alpha Fade In Time'), - wbFloat('Edge Effect - Full Alpha Time'), - wbFloat('Edge Effect - Alpha Fade Out Time'), - wbFloat('Edge Effect - Persistent Alpha Ratio'), - wbFloat('Edge Effect - Alpha Pulse Amplitude'), - wbFloat('Edge Effect - Alpha Pusle Frequence'), - wbFloat('Fill/Texture Effect - Full Alpha Ratio'), - wbFloat('Edge Effect - Full Alpha Ratio'), - wbInteger('Membrane Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Particle Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Particle Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Particle Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbInteger('Particle Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbFloat('Particle Shader - Particle Birth Ramp Up Time'), - wbFloat('Particle Shader - Full Particle Birth Time'), - wbFloat('Particle Shader - Particle Birth Ramp Down Time'), - wbFloat('Particle Shader - Full Particle Birth Ratio'), - wbFloat('Particle Shader - Persistant Particle Birth Ratio'), - wbFloat('Particle Shader - Particle Lifetime'), - wbFloat('Particle Shader - Particle Lifetime +/-'), - wbFloat('Particle Shader - Initial Speed Along Normal'), - wbFloat('Particle Shader - Acceleration Along Normal'), - wbFloat('Particle Shader - Initial Velocity #1'), - wbFloat('Particle Shader - Initial Velocity #2'), - wbFloat('Particle Shader - Initial Velocity #3'), - wbFloat('Particle Shader - Acceleration #1'), - wbFloat('Particle Shader - Acceleration #2'), - wbFloat('Particle Shader - Acceleration #3'), - wbFloat('Particle Shader - Scale Key 1'), - wbFloat('Particle Shader - Scale Key 2'), - wbFloat('Particle Shader - Scale Key 1 Time'), - wbFloat('Particle Shader - Scale Key 2 Time'), - wbStruct('Color Key 1 - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Color Key 2 - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Color Key 3 - Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbFloat('Color Key 1 - Color Alpha'), - wbFloat('Color Key 2 - Color Alpha'), - wbFloat('Color Key 3 - Color Alpha'), - wbFloat('Color Key 1 - Color Key Time'), - wbFloat('Color Key 2 - Color Key Time'), - wbFloat('Color Key 3 - Color Key Time') - ], cpNormal, True, nil, 25) - ]); - - wbRecord(ENCH, 'Enchantment', [ - wbEDID, - wbStruct(OBME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbByteArray('Unused', $1C) - ], cpNormal, False, wbOBMEDontShow), - wbFULL, - wbStruct(ENIT, '', [ - wbInteger('Type', itU32, wbEnum([ - {0} 'Scroll', - {1} 'Staff', - {2} 'Weapon', - {3} 'Apparel' - ])), - wbInteger('Charge Amount', itU32), - wbInteger('Enchant Cost', itU32), - wbInteger('Flags', itU8, wbFlags(['Manual Enchant Cost (Autocalc Off)'])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffects - ]); - - wbRecord(EYES, 'Eyes', [ - wbEDID, - wbFULL, - wbString(ICON, 'Texture', 0, cpNormal, True), - wbInteger(DATA, 'Flags', itU8, wbFlags(['Playable']), cpNormal, True) - ]); - - wbXNAM := - wbStructSK(XNAM, [0], 'Relation', [ - wbFormIDCk('Faction', [FACT, RACE]), - wbInteger('Modifier', itS32) - ]); - - wbXNAMs := wbRArrayS('Relations', wbXNAM); - - wbRecord(FACT, 'Faction', [ - wbEDID, - wbFULL, - wbXNAMs, - wbInteger(DATA, 'Flags', itU8, wbFlags(['Hidden from Player', 'Evil', 'Special Combat']), cpNormal, True), - wbFloat(CNAM, 'Crime Gold Multiplier', cpNormal, True, 1, -1, nil, nil, 1.0), - wbRStructsSK('Ranks', 'Rank', [0], [ - wbInteger(RNAM, 'Rank#', itS32), - wbString(MNAM, 'Male', 0, cpTranslate), - wbString(FNAM, 'Female', 0, cpTranslate), - wbString(INAM, 'Insignia') - ], []) - ]); - - wbRecord(FLOR, 'Flora', [ - wbEDID, - wbFULL, - wbMODL, - wbSCRI, - wbFormIDCk(PFIG, 'Ingredient', [INGR]), - wbStruct(PFPC, 'Seasonal ingredient production', [ - wbInteger('Spring', itU8), - wbInteger('Summer ', itU8), - wbInteger('Fall', itU8), - wbInteger('Winter', itU8) - ], cpNormal, True) - ]); - - wbRecord(FURN, 'Furniture', [ - wbEDID, - wbFULL, - wbMODL, - wbSCRI, - wbByteArray(MNAM, 'Marker Flags', 0, cpNormal, True) - ]); - - wbRecord(GLOB, 'Global', [ - wbEDID, - wbInteger(FNAM, 'Type', itU8, wbGLOBFNAM, nil, cpNormal, True), - wbFloat(FLTV, 'Value', cpNormal, True) - ]); - - wbRecord(GMST, 'Game Setting', [ - wbEDID, - wbUnion(DATA, 'Value', wbGMSTUnionDecider, [ - wbString('', 0, cpTranslate), - wbInteger('', itS32), - wbFloat('') - ], cpNormal, True) - ]); - - wbRecord(GRAS, 'Grass', [ - wbEDID, - wbMODL, - wbStruct(DATA, '', [ - wbInteger('Density', itU8), - wbInteger('Min Slope', itU8), - wbInteger('Max Slope', itU8), - wbByteArray('Unused', 1), - wbInteger('Unit from water amount', itU16), - wbByteArray('Unused', 2), - wbInteger('Unit from water type', itU32, wbEnum([ - 'Above - At Least', - 'Above - At Most', - 'Below - At Least', - 'Below - At Most', - 'Either - At Least', - 'Either - At Most', - 'Either - At Most Above', - 'Either - At Most Below' - ])), - wbFloat('Position Range'), - wbFloat('Height Range'), - wbFloat('Color Range'), - wbFloat('Wave Period'), - wbInteger('Flags', itU8, wbFlags([ - 'Vertex Lighting', - 'Uniform Scaling', - 'Fit to Slope' - ])), - wbByteArray('Unused', 3) - ], cpNormal, True) - ]); - - wbRecord(HAIR, 'Hair', [ - wbEDID, - wbFULL, - wbMODL, - wbString(ICON, 'Texture', 0, cpNormal, True), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - 'Playable', - 'Not Male', - 'Not Female', - 'Fixed' - ]), cpNormal, True) - ]); - - wbCrimeTypeEnum := - wbEnum([ - 'Steal', - 'Pickpocket', - 'Trespass', - 'Attack', - 'Murder', - 'Steal Horse' - ], [ - -1, 'None' - ]); - - wbFormTypeEnum := - wbEnum([], [ - $03, 'Game Setting', - $04, 'Global', - $05, 'Class', - $06, 'Faction', - $07, 'Hair', - $08, 'Eyes', - $09, 'Race', - $0A, 'Sound', - $0B, 'Skill', - $0C, 'Magic Effect', - $0D, 'Script', - $0E, 'Land Texture', - $0F, 'Enchantment', - $10, 'Spell', - $11, 'BirthSign', - $12, 'Activator', - $13, 'Apparatus', - $14, 'Armor', - $15, 'Book', - $16, 'Clothing', - $17, 'Container', - $18, 'Door', - $19, 'Ingredient', - $1A, 'Light', - $1B, 'Misc', - $1C, 'Static', - $1D, 'Grass', - $1E, 'Tree', - $1F, 'Flora', - $20, 'Furniture', - $21, 'Weapon', - $22, 'Ammi', - $23, 'NPC', - $24, 'Creature', - $25, 'Leveled Creature', - $26, 'Soul Gem', - $27, 'Key', - $28, 'Alchemy', - $29, 'SubSpace', - $2A, 'Sigil Stone', - $2B, 'Leveled Item', - $2D, 'Weather', - $2E, 'Climate', - $2F, 'Region', - $30, 'Cell', - $31, 'Placed Object', - $32, 'Placed NPC', - $33, 'Placed Creature', - $34, 'Path Grid', - $35, 'Worldspace', - $36, 'Landscape', - $38, 'Road', - $39, 'Dialog Topic', - $3A, 'Dialog Response', - $3B, 'Quest', - $3C, 'Idle Animation', - $3D, 'Package', - $3E, 'Combat Style', - $3F, 'Load Screen', - $40, 'Leveled Spell', - $41, 'Animated Object', - $42, 'Water', - $43, 'Effect Shader' - ]); - - wbSexEnum := - wbEnum(['Male','Female']); - - wbAxisEnum := - wbEnum([], [ - 88, 'X', - 89, 'Y', - 90, 'Z' - ]); - - wbCTDA := - wbRUnion('Condition', [ - wbStruct(CTDA, 'Condition', [ - wbInteger('Type', itU8, wbCtdaType), - wbByteArray('Unused', 3), - wbUnion('Comparison Value', wbCTDACompValueDecider, [ - wbFloat('Comparison Value - Float'), - wbFormIDCk('Comparison Value - Global', [GLOB]) - ]), - wbInteger('Function', itU32, wbCTDAFunctionToStr, wbCTDAFunctionToInt), - wbUnion('Parameter #1', wbCTDAParam1Decider, [ - {00} wbByteArray('Unknown', 4), - {01} wbByteArray('None', 4, cpIgnore), - {02} wbInteger('Integer', itS32), - {03} wbInteger('Variable Name (INVALID)', itS32), - {04} wbInteger('Sex', itU32, wbSexEnum), - {05} wbFormIDCk('Actor Value', [ACVA]), -// {05} wbInteger('Actor Value', itS32, wbActorValueEnum), - {06} wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {07} wbInteger('Axis', itU32, wbAxisEnum), - {08} wbInteger('Form Type', itU32, wbFormTypeEnum), - {09} wbInteger('Quest Stage (INVALID)', itS32), - {10} wbFormIDCk('Object Reference', [PLYR, REFR, ACHR, ACRE, TRGT]), - {12} wbFormIDCk('Inventory Object', [ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH]), - {13} wbFormIDCk('Actor', [PLYR, ACHR, ACRE, TRGT]), - {14} wbFormIDCk('Quest', [QUST]), - {15} wbFormIDCk('Faction', [FACT]), - {16} wbFormIDCk('Cell', [CELL]), - {17} wbFormIDCk('Class', [CLAS]), - {18} wbFormIDCk('Race', [RACE]), - {19} wbFormIDCk('Actor Base', [NPC_, CREA, ACTI]), - {20} wbFormIDCk('Global', [GLOB]), - {21} wbFormIDCk('Weather', [WTHR]), - {22} wbFormIDCk('Package', [PACK]), - {23} wbFormIDCk('Owner', [FACT, NPC_]), - {24} wbFormIDCk('Birthsign', [BSGN]), - {25} wbFormIDCk('Furniture', [FURN]), - {26} wbFormIDCk('Magic Item', [SPEL]), - {27} wbFormIDCk('Magic Effect', [MGEF]), - {28} wbFormIDCk('Worldspace', [WRLD]), - {29} wbFormIDCk('Referenceable Object', [CREA, NPC_, TREE, SBSP, LVLC, SOUN, ACTI, DOOR, FLOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH, GRAS]) - ]), - wbUnion('Parameter #2', wbCTDAParam2Decider, [ - {00} wbByteArray('Unknown', 4), - {01} wbByteArray('None', 4, cpIgnore), - {02} wbInteger('Integer', itS32), - {03} wbInteger('Variable Name', itS32, wbCTDAParam2VariableNameToStr, wbCTDAParam2VariableNameToInt), - {04} wbInteger('Sex', itU32, wbSexEnum), - {05} wbFormIDCk('Actor Value', [ACVA]), -// {05} wbInteger('Actor Value', itS32, wbActorValueEnum), - {06} wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {07} wbInteger('Axis', itU32, wbAxisEnum), - {08} wbInteger('Form Type', itU32, wbFormTypeEnum), - {09} wbInteger('Quest Stage', itS32, wbCTDAParam2QuestStageToStr, wbCTDAParam2QuestStageToInt), - {10} wbFormIDCk('Object Reference', [PLYR, REFR, ACHR, ACRE, TRGT]), - {12} wbFormIDCk('Inventory Object', [ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH]), - {13} wbFormIDCk('Actor', [PLYR, ACHR, ACRE, TRGT]), - {14} wbFormIDCk('Quest', [QUST]), - {15} wbFormIDCk('Faction', [FACT]), - {16} wbFormIDCk('Cell', [CELL]), - {17} wbFormIDCk('Class', [CLAS]), - {18} wbFormIDCk('Race', [RACE]), - {19} wbFormIDCk('Actor Base', [NPC_, CREA, ACTI]), - {20} wbFormIDCk('Global', [GLOB]), - {21} wbFormIDCk('Weather', [WTHR]), - {22} wbFormIDCk('Package', [PACK]), - {23} wbFormIDCk('Owner', [FACT, NPC_]), - {24} wbFormIDCk('Birthsign', [BSGN]), - {25} wbFormIDCk('Furniture', [FURN]), - {26} wbFormIDCk('Magic Item', [SPEL]), - {27} wbFormIDCk('Magic Effect', [MGEF]), - {28} wbFormIDCk('Worldspace', [WRLD]), - {29} wbFormIDCk('Referenceable Object', [CREA, NPC_, TREE, SBSP, LVLC, SOUN, ACTI, DOOR, FLOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH, GRAS]) - ]), - wbInteger('Unused', itU32, nil, cpIgnore) - ], cpNormal, False, nil, 6), - wbStruct(CTDT, 'Condition (old format)', [ - wbInteger('Type', itU8, wbCtdaType), - wbByteArray('Unused', 3), - wbUnion('Comparison Value', wbCTDACompValueDecider, [ - wbFloat('Comparison Value - Float'), - wbFormIDCk('Comparison Value - Global', [GLOB]) - ]), - wbInteger('Function', itU32, wbCTDAFunctionToStr, wbCTDAFunctionToInt), - wbUnion('Parameter #1', wbCTDAParam1Decider, [ - {00} wbByteArray('Unknown', 4), - {01} wbByteArray('None', 4, cpIgnore), - {02} wbInteger('Integer', itS32), - {03} wbInteger('Variable Name (INVALID)', itS32), - {04} wbInteger('Sex', itU32, wbSexEnum), - {05} wbFormIDCk('Actor Value', [ACVA]), -// {05} wbInteger('Actor Value', itS32, wbActorValueEnum), - {06} wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {07} wbInteger('Axis', itU32, wbAxisEnum), - {08} wbInteger('Form Type', itU32, wbFormTypeEnum), - {09} wbInteger('Quest Stage (INVALID)', itS32), - {10} wbFormIDCk('Object Reference', [PLYR, REFR, ACHR, ACRE, TRGT]), - {12} wbFormIDCk('Inventory Object', [ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH]), - {13} wbFormIDCk('Actor', [PLYR, ACHR, ACRE, TRGT]), - {14} wbFormIDCk('Quest', [QUST]), - {15} wbFormIDCk('Faction', [FACT]), - {16} wbFormIDCk('Cell', [CELL]), - {17} wbFormIDCk('Class', [CLAS]), - {18} wbFormIDCk('Race', [RACE]), - {19} wbFormIDCk('Actor Base', [NPC_, CREA, ACTI]), - {20} wbFormIDCk('Global', [GLOB]), - {21} wbFormIDCk('Weather', [WTHR]), - {22} wbFormIDCk('Package', [PACK]), - {23} wbFormIDCk('Owner', [FACT, NPC_]), - {24} wbFormIDCk('Birthsign', [BSGN]), - {25} wbFormIDCk('Furniture', [FURN]), - {26} wbFormIDCk('Magic Item', [SPEL]), - {27} wbFormIDCk('Magic Effect', [MGEF]), - {28} wbFormIDCk('Worldspace', [WRLD]), - {29} wbFormIDCk('Referenceable Object', [CREA, NPC_, TREE, SBSP, LVLC, SOUN, ACTI, DOOR, FLOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH, GRAS]) - ]), - wbUnion('Parameter #2', wbCTDAParam2Decider, [ - {00} wbByteArray('Unknown', 4), - {01} wbByteArray('None', 4, cpIgnore), - {02} wbInteger('Integer', itS32), - {03} wbInteger('Variable Name', itS32, wbCTDAParam2VariableNameToStr, wbCTDAParam2VariableNameToInt), - {04} wbInteger('Sex', itU32, wbSexEnum), - {05} wbFormIDCk('Actor Value', [ACVA]), -// {05} wbInteger('Actor Value', itS32, wbActorValueEnum), - {06} wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - {07} wbInteger('Axis', itU32, wbAxisEnum), - {08} wbInteger('Form Type', itU32, wbFormTypeEnum), - {09} wbInteger('Quest Stage', itS32, wbCTDAParam2QuestStageToStr, wbCTDAParam2QuestStageToInt), - {10} wbFormIDCk('Object Reference', [PLYR, REFR, ACHR, ACRE, TRGT]), - {12} wbFormIDCk('Inventory Object', [ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH]), - {13} wbFormIDCk('Actor', [PLYR, ACHR, ACRE, TRGT]), - {14} wbFormIDCk('Quest', [QUST]), - {15} wbFormIDCk('Faction', [FACT]), - {16} wbFormIDCk('Cell', [CELL]), - {17} wbFormIDCk('Class', [CLAS]), - {18} wbFormIDCk('Race', [RACE]), - {19} wbFormIDCk('Actor Base', [NPC_, CREA, ACTI]), - {20} wbFormIDCk('Global', [GLOB]), - {21} wbFormIDCk('Weather', [WTHR]), - {22} wbFormIDCk('Package', [PACK]), - {23} wbFormIDCk('Owner', [FACT, NPC_]), - {24} wbFormIDCk('Birthsign', [BSGN]), - {25} wbFormIDCk('Furniture', [FURN]), - {26} wbFormIDCk('Magic Item', [SPEL]), - {27} wbFormIDCk('Magic Effect', [MGEF]), - {28} wbFormIDCk('Worldspace', [WRLD]), - {29} wbFormIDCk('Referenceable Object', [CREA, NPC_, TREE, SBSP, LVLC, SOUN, ACTI, DOOR, FLOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH, GRAS]) - ]), - wbEmpty('Unused', cpIgnore) - ]) - ], []); - - wbCTDAs := wbRArray('Conditions', wbCTDA); - - wbSCHR := - wbRUnion('Basic Script Data', [ - wbStruct(SCHR, 'Basic Script Data', [ - wbByteArray('Unused', 4), - wbInteger('RefCount', itU32), - wbInteger('CompiledSize', itU32), - wbInteger('VariableCount', itU32), - wbInteger('Type', itU32, wbEnum([ - 'Object', - 'Quest' - ], [ - $100, 'Magic Effect' - ])) - ]), - wbStruct(SCHD, 'Basic Script Data', [ - wbByteArray('Unused', 4), - wbInteger('RefCount', itU32), - wbInteger('CompiledSize', itU32), - wbInteger('VariableCount', itU32), - wbInteger('Type', itU32, wbEnum([ - 'Object', - 'Quest' - ], [ - $100, 'Magic Effect' - ])), - wbByteArray('Unknown') - ]) - ], []); - - wbSCROs := - wbRArray('References', - wbRUnion('', [ - wbFormID(SCRO, 'Global Reference'), -// wbFormIDCk(SCRO, 'Global Reference', -// [ACTI, DOOR, FLOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, -// INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH, QUST, PLYR, PACK, LVLI, -// FACT, ACHR, REFR, ACRE, GLOB, DIAL, CELL, SOUN, MGEF, WTHR, CLAS, EFSH, RACE, -// LVLC, CSTY, WATR, WRLD, SCPT, BSGN, TREE, ENCH, NULL]), - wbInteger(SCRV, 'Local Variable', itU32) - ], []) - ); - - wbResultScript := wbRStruct('Result Script', [ - wbSCHR, - wbByteArray(SCDA, 'Compiled result script'), - wbStringScript(SCTX, 'Result script source'), - wbSCROs - ], []); -{ - wbResultScriptOld := wbRStruct('Result Script (Old Format?)', [ - wbByteArray(SCHD, 'Unknown (Script Header?)'), - wbByteArray(SCDA, 'Compiled result script'), - wbStringScript(SCTX, 'Result script source'), - wbSCROs - ], []); -} - wbRecord(IDLE, 'Idle Animation', [ - wbEDID, - wbMODL, - wbCTDAs, - wbInteger(ANAM, 'Animation Group Section', itU8, wbIdleAnam, nil, cpNormal, True), - wbArray(DATA, 'Related Idle Animations', wbFormIDCk('Related Idle Animation', [IDLE, NULL]), ['Parent', 'Previous Sibling'], cpNormal, True) - ]); - - wbRecord(INFO, 'Dialog response', [ - wbStruct(DATA, '', [ - wbInteger('Type', itU8, wbEnum([], [ - 0, 'Topic', - 1, 'Conversation', - 2, 'Combat', - 3, 'Persuasion', - 4, 'Detection', - 5, 'Service', - 6, 'Miscellaneous' - ])), - wbInteger('Next Speaker', itU8, wbEnum([ - {0} 'Target', - {1} 'Self', - {2} 'Either' - ])), - wbInteger('Flags', itU8, wbFlags([ - {0x0001} 'Goodbye', - {0x0002} 'Random', - {0x0004} 'Say Once', - {0x0008} 'Run Immediately', - {0x0010} 'Info Refusal', - {0x0020} 'Random End', - {0x0040} 'Run for Rumors' - ])) - ], cpNormal, True), - wbFormIDCk(QSTI, 'Quest', [QUST], False, cpNormal, True), - wbFormIDCk(TPIC, 'Topic', [DIAL]), - wbFormIDCk(PNAM, 'Previous INFO', [INFO, NULL]), - wbRArray('Add topics', wbFormIDCk(NAME, 'Topic', [DIAL])), - wbRArray('Responses', - wbRStruct('Response', [ - wbStruct(TRDT, 'Response Data', [ - wbInteger('Emotion Type', itU32, wbEnum([ - {0} 'Neutral', - {1} 'Anger', - {2} 'Disgust', - {3} 'Fear', - {4} 'Sad', - {5} 'Happy', - {6} 'Surprise' - ])), - wbInteger('Emotion Value', itS32), - wbByteArray('Unused', 4), - wbInteger('Response number', itU8), - wbByteArray('Unused', 3) - ]), - wbStringKC(NAM1, 'Response Text', 0, cpTranslate), - wbString(NAM2, 'Actor notes', 0, cpTranslate) - ], []) - ), - wbCTDAs, - wbRArray('Choices', wbFormIDCk(TCLT, 'Choice', [DIAL])), - wbRArray('Link From', wbFormIDCk(TCLF, 'Topic', [DIAL])), - wbResultScript - ]); - - wbRecord(INGR, 'Ingredient', [ - wbEDID, - wbStruct(OBME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbByteArray('Unused', $1C) - ], cpNormal, False, wbOBMEDontShow), - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbFloat(DATA, 'Weight', cpNormal, True), - wbStruct(ENIT, '', [ - wbInteger('Value', itS32), - wbInteger('Flags', itU8, wbFlags(['No auto-calculation', 'Food item'])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffects - ]); - - wbRecord(KEYM, 'Key', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbQuadrantEnum := wbEnum([ - {0} 'Bottom Left', - {1} 'Bottom Right', - {2} 'Top Left', - {3} 'Top Right' - ]); - - if wbSimpleRecords then begin - - wbRecord(LAND, 'Landscape', [ - wbByteArray(DATA, 'Unknown'), - wbByteArray(VNML, 'Vertex Normals'), - wbByteArray(VHGT, 'Vertext Height Map'), - wbByteArray(VCLR, 'Vertex Colours'), - - wbRArrayS('Layers', wbRUnion('Layer', [ - wbRStructSK([0],'Base Layer', [ - wbStructSK(BTXT, [1, 3], 'Base Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]) - ], []), - wbRStructSK([0],'Alpha Layer', [ - wbStructSK(ATXT, [1, 3], 'Alpha Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]), - wbByteArray(VTXT, 'Alpha Layer Data') - ], []) - ], [])), - - wbArray(VTEX, 'Textures', wbFormIDCk('Texture', [LTEX, NULL])) - ]); - - end else begin - - wbRecord(LAND, 'Landscape', [ - wbByteArray(DATA, 'Unknown'), -// wbStruct(DATA, '', [ -// wbInteger('Flags', itU8, wbFlags([])), -// wbByteArray('Unknown') -// ]), - wbArray(VNML, 'Vertex Normals', wbStruct('Row', [ - wbArray('Columns', wbStruct('Column', [ - wbInteger('X', itU8), - wbInteger('Y', itU8), - wbInteger('Z', itU8) - ]), 33) - ]), 33), - wbStruct(VHGT, 'Vertext Height Map', [ - wbFloat('Offset'), - wbArray('Rows', wbStruct('Row', [ - wbArray('Columns', wbInteger('Column', itU8), 33) - ]), 33), - wbByteArray('Unused', 3) - ]), - wbArray(VCLR, 'Vertex Colours', wbStruct('Row', [ - wbArray('Columns', wbStruct('Column', [ - wbInteger('X', itU8), - wbInteger('Y', itU8), - wbInteger('Z', itU8) - ]), 33) - ]), 33), - - wbRArrayS('Layers', wbRUnion('Layer', [ - wbRStructSK([0],'Base Layer', [ - wbStructSK(BTXT, [1, 3], 'Base Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]) - ], []), - wbRStructSK([0],'Alpha Layer', [ - wbStructSK(ATXT, [1, 3], 'Alpha Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unused', 1), - wbInteger('Layer', itS16) - ]), - wbArrayS(VTXT, 'Alpha Layer Data', wbStructSK([0], 'Cell', [ - wbInteger('Position', itU16, wbAtxtPosition), - wbByteArray('Unused', 2), - wbFloat('Opacity') - ])) - ], []) - ], [])), - - wbArray(VTEX, 'Textures', wbFormIDCk('Texture', [LTEX, NULL])) - ]); - - end; - - wbRecord(LIGH, 'Light', [ - wbEDID, - wbMODL, - wbSCRI, - wbFULL, - wbICON, - wbStruct(DATA, '', [ - wbInteger('Time', itS32), - wbInteger('Radius', itU32), - wbStruct('Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbInteger('Unused', itU8) - ]), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Dynamic', - {0x00000002} 'Can be Carried', - {0x00000004} 'Negative', - {0x00000008} 'Flicker', - {0x00000010} 'Unused', - {0x00000020} 'Off By Default', - {0x00000040} 'Flicker Slow', - {0x00000080} 'Pulse', - {0x00000100} 'Pulse Slow', - {0x00000200} 'Spot Light', - {0x00000400} 'Spot Shadow' - ])), - wbFloat('Falloff Exponent'), - wbFloat('FOV'), - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True, nil, 6), - wbFloat(FNAM, 'Fade value', cpNormal, True, 1, -1, nil, nil, 1.0), - wbFormIDCk(SNAM, 'Sound', [SOUN]) - ], False, nil, cpNormal, False, wbLIGHAfterLoad); - - wbRecord(LSCR, 'Load Screen', [ - wbEDID, - wbICON, - wbDESC, - wbRArrayS('Locations', wbStructSK(LNAM, [0, 1], 'Location', [ - wbFormIDCk('Direct', [CELL, WRLD, NULL]), - wbStructSK([0, 1], 'Indirect', [ - wbFormIDCk('World', [NULL, WRLD]), - wbStructSK([0,1], 'Grid', [ - wbInteger('Y', itS16), - wbInteger('X', itS16) - ]) - ]) - ])) - ]); - - wbRecord(LTEX, 'Landscape Texture', [ - wbEDID, - wbICON, - wbStruct(HNAM, 'Havok Data', [ - wbInteger('Material Type', itU8, wbEnum([ - {00} 'STONE', - {01} 'CLOTH', - {02} 'DIRT', - {03} 'GLASS', - {04} 'GRASS', - {05} 'METAL', - {06} 'ORGANIC', - {07} 'SKIN', - {08} 'WATER', - {09} 'WOOD', - {10} 'HEAVY STONE', - {11} 'HEAVY METAL', - {12} 'HEAVY WOOD', - {13} 'CHAIN', - {14} 'SNOW' - ]), cpNormal, True, nil, nil, 2), - wbInteger('Friction', itU8, nil, cpNormal, True, nil, nil, 30), - wbInteger('Restitution', itU8, nil, cpNormal, True, nil, nil, 30) - ], cpNormal, True), - wbInteger(SNAM, 'Texture Specular Exponent', itU8, nil, cpNormal, True, False, nil, nil, 30), - wbRArrayS('Grasses', wbFormIDCk(GNAM, 'Grass', [GRAS])) - ]); - - wbRecord(LVLC, 'Leveled Creature', [ - wbEDID, - wbInteger(LVLD, 'Chance none', itU8, nil, cpNormal, True), - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count' - ]), cpNormal, True), - wbRArrayS('Leveled List Entries', - wbStructExSK(LVLO , [0, 2], [3], 'Leveled List Entry', [ - wbInteger('Level', itS16), - wbByteArray('Unused', 2), - wbFormIDCk('Reference', [NPC_, CREA, LVLC]), - wbInteger('Count', itS16), - wbByteArray('Unused', 2) - ], cpNormal, False, nil, 3), - cpNormal, True), - wbSCRI, - wbFormIDCk(TNAM, 'Creature template', [NPC_, CREA]) - ], True, nil, cpNormal, False, wbLVLAfterLoad); - - wbRecord(LVLI, 'Leveled Item', [ - wbEDID, - wbInteger(LVLD, 'Chance none', itU8, nil, cpNormal, True), - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count' - ]), cpNormal, True), - wbRArrayS('Leveled List Entries', - wbStructExSK(LVLO , [0, 2], [3], 'Leveled List Entry', [ - wbInteger('Level', itS16), - wbByteArray('Unused', 2), - wbFormIDCk('Reference', [ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, LVLI, KEYM, CLOT, ALCH, APPA, LIGH]), - wbInteger('Count', itS16), - wbByteArray('Unused', 2) - ], cpNormal, False, nil, 3), - cpNormal, True), - wbByteArray(DATA, 'Unused', 1) - ], False, nil, cpNormal, False, wbLVLAfterLoad); - - wbRecord(LVSP, 'Leveled Spell', [ - wbEDID, - wbInteger(LVLD, 'Chance none', itU8, nil, cpNormal, True), - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count', - {0x04} 'Use all spells' - ]), cpNormal, True), - wbRArrayS('Leveled List Entries', - wbStructExSK(LVLO , [0, 2], [3], 'Leveled List Entry', [ - wbInteger('Level', itS16), - wbByteArray('Unused', 2), - wbFormIDCk('Reference', [SPEL, LVSP]), - wbInteger('Count', itS16), - wbByteArray('Unused', 2) - ], cpNormal, False, nil, 3), - cpNormal, True) - ], False, nil, cpNormal, False, wbLVLAfterLoad); - - wbRecord(MGEF, 'Magic Effect', [ - wbStringMgefCode(EDID, 'Magic Effect Code'), - wbStruct(OBME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbInteger('Param A Info', itU8, wbOBMEResolutionInfo), - wbInteger('Param B Info', itU8, wbOBMEResolutionInfo), - wbByteArray('Unused', 2), - wbString('Handler', 4), - wbInteger('Flag Overrides', itU32, wbFlags([ - { 0} '', - { 1} '', - { 2} 'ParamFlagA', - { 3} 'Beneficial', - { 4} '', - { 5} '', - { 6} '', - { 7} '', - { 8} '', - { 9} '', - {10} '', - {11} '', - {12} '', - {13} '', - {14} '', - {15} '', - {16} 'ParamFlagB', - {17} 'Magnitude Is Range', - {18} 'Atomic Resistance', - {19} 'ParamFlagC', - {20} 'ParamFlagD', - {21} '', - {22} '', - {23} '', - {24} '', - {25} '', - {26} '', - {27} '', - {28} '', - {29} '', - {30} 'Hidden' - ])), - wbByteArray('ParamB', 4), - wbByteArray('Unused', $1C) - ], cpNormal, False, wbOBMEDontShow), - wbString(EDDX, 'EditorID', 0, cpNormal, False, wbEDDXDontShow), - wbFULL, - wbDESC, - wbICON, - wbMODL, - wbStruct(DATA, 'Data', [ - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Hostile', - {0x00000002} 'Recover', - {0x00000004} 'Detrimental', - {0x00000008} 'Magnitude %', - {0x00000010} 'Self', - {0x00000020} 'Touch', - {0x00000040} 'Target', - {0x00000080} 'No duration', - {0x00000100} 'No magnitude', - {0x00000200} 'No area', - {0x00000400} 'FX persist', - {0x00000800} 'Spellmaking', - {0x00001000} 'Enchanting', - {0x00002000} 'No Ingredient', - {0x00004000} 'Unknown 14', - {0x00008000} 'Unknown 15', - {0x00010000} 'Use weapon', - {0x00020000} 'Use armor', - {0x00040000} 'Use creature', - {0x00080000} 'Use skill', - {0x00100000} 'Use attribute', - {0x00200000} 'Unknown 21', - {0x00400000} 'Unknown 22', - {0x00800000} 'Unknown 23', - {0x01000000} 'Use actor value', - {0x02000000} 'Spray projectile type (or Fog if Bolt is specified as well)', - {0x04000000} 'Bolt projectile type', - {0x08000000} 'No hit effect', - {0x10000000} 'Unknown 28', - {0x20000000} 'Unknown 29', - {0x40000000} 'Unknown 30', - {0x80000000} 'Unknown 31' - ])), - wbFloat('Base cost'), - wbUnion('Assoc. Item', wbMGEFFAssocItemDecider, [ - wbFormIDCk('Unused', [NULL]), - wbFormIDCk('Assoc. Weapon', [WEAP]), - wbFormIDCk('Assoc. Armor', [ARMO, NULL{?}]), - wbFormIDCk('Assoc. Creature', [CREA, LVLC, NPC_]), - wbInteger('Assoc. Actor Value', itS32, wbActorValueEnum) - ]), - wbInteger('Magic School', itS32, wbMagicSchoolEnum), - wbInteger('Resist value', itS32, wbActorValueEnum), - wbInteger('Counter Effect Count', itU16), //!!! must be updated automatically when ESCE length changes! - wbByteArray('Unused', 2), - wbFormIDCk('Light', [LIGH, NULL]), - wbFloat('Projectile speed'), - wbFormIDCk('Effect Shader', [EFSH, NULL]), - wbFormIDCk('Enchant effect', [EFSH, NULL]), - wbFormIDCk('Casting sound', [NULL, SOUN]), - wbFormIDCk('Bolt sound', [NULL, SOUN]), - wbFormIDCk('Hit sound', [NULL, SOUN]), - wbFormIDCk('Area sound', [NULL, SOUN]), - wbFloat('Constant Effect enchantment factor'), - wbFloat('Constant Effect barter factor') - ], cpNormal, True, nil, 10), - wbArrayS(ESCE, 'Counter Effects', wbStringMgefCode('Counter Effect Code', 4), - 0, cpNormal, False, nil, wbCounterEffectsAfterSet) - ], False, nil, cpNormal, False, wbMGEFAfterLoad, wbMGEFAfterSet); - - wbRecord(MISC, 'Misc. Item', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbStruct(DATA, '', [ - wbUnion('', wbMISCActorValueDecider, [ - wbInteger('Value', itS32), - wbFormIDCk('Actor Value', [ACVA]) - ]), - wbUnion('', wbMISCActorValueDecider, [ - wbFloat('Weight'), - wbInteger('Group', itU32, wbEnum([], [ - $40E00000, ' [NONE]', - $40400000, 'AI', - $00000000, 'Attribute', - $40C00000, 'Combat', - $40A00000, 'Misc', - $40000000, 'Skill', - $40800000, 'Social', - $3F800000, 'Stat' - ])) - ]) - ], cpNormal, True) - ]); - - wbFaceGen := wbRStruct('FaceGen Data', [ - wbByteArray(FGGS, 'FaceGen Geometry-Symmetric', 0, cpNormal, True), - wbByteArray(FGGA, 'FaceGen Geometry-Asymmetric', 0, cpNormal, True), - wbByteArray(FGTS, 'FaceGen Texture-Symmetric', 0, cpNormal, True) - ], [], cpNormal, True); - - wbRecord(NPC_, 'Non-Player Character', [ - wbEDID, - wbFULL, - wbMODL, - wbStruct(ACBS, 'Configuration', [ - wbInteger('Flags', itU32, wbFlags([ - {0x000001} 'Female', - {0x000002} 'Essential', - {0x000004} '', - {0x000008} 'Respawn', - {0x000010} 'Auto-calc stats', - {0x000020} '', - {0x000040} '', - {0x000080} 'PC Level Offset', - {0x000100} '', - {0x000200} 'No Low Level Processing', - {0x000400} '', - {0x000800} '', - {0x001000} '', - {0x002000} 'No Rumors', - {0x004000} 'Summonable', - {0x008000} 'No Persuasion', - {0x010000} '', - {0x020000} '', - {0x040000} '', - {0x080000} '', - {0x100000} 'Can Corpse Check' - ])), - wbInteger('Base spell points', itU16), - wbInteger('Fatigue', itU16), - wbInteger('Barter gold', itU16), - wbInteger('Level (offset)', itS16), - wbInteger('Calc min', itU16), - wbInteger('Calc max', itU16) - ], cpNormal, True), - wbRArrayS('Factions', - wbStructSK(SNAM, [0], 'Faction', [ - wbFormIDCk('Faction', [FACT]), - wbInteger('Rank', itU8), - wbByteArray('Unused', 3) - ]) - ), - wbFormIDCk(INAM, 'Death item', [LVLI]), - wbFormIDCk(RNAM, 'Race', [RACE], False, cpNormal, True), - wbCNTOs, - wbSPLOs, - wbSCRI, - wbStruct(AIDT, 'AI Data', [ - wbInteger('Aggression', itU8), - wbInteger('Confidence', itU8), - wbInteger('Energy Level', itU8), - wbInteger('Responsibility', itU8), - wbInteger('Buys/Sells and Services', itU32, wbServiceFlags), - wbInteger('Teaches', itS8, wbSkillEnum), - wbInteger('Maximum training level', itU8), - wbByteArray('Unused', 2) - ], cpNormal, True), - wbRArray('AI Packages', wbFormIDCk(PKID, 'AI Package', [PACK])), - wbArrayS(KFFZ, 'Animations', wbString('Animation')), - wbFormIDCk(CNAM, 'Class', [CLAS], False, cpNormal, True), - wbStruct(DATA, 'Stats', [ - wbInteger('Armorer', itU8), - wbInteger('Athletics', itU8), - wbInteger('Blade', itU8), - wbInteger('Block', itU8), - wbInteger('Blunt', itU8), - wbInteger('Hand to Hand', itU8), - wbInteger('Heavy Armor', itU8), - wbInteger('Alchemy', itU8), - wbInteger('Alteration', itU8), - wbInteger('Conjuration', itU8), - wbInteger('Destruction', itU8), - wbInteger('Illusion', itU8), - wbInteger('Mysticism', itU8), - wbInteger('Restoration', itU8), - wbInteger('Acrobatics', itU8), - wbInteger('Light Armor', itU8), - wbInteger('Marksman', itU8), - wbInteger('Mercantile', itU8), - wbInteger('Security', itU8), - wbInteger('Sneak', itU8), - wbInteger('Speechcraft', itU8), - wbInteger('Health', itU16), - wbByteArray('Unused', 2), - wbInteger('Strength', itU8), - wbInteger('Intelligence', itU8), - wbInteger('Willpower', itU8), - wbInteger('Agility', itU8), - wbInteger('Speed', itU8), - wbInteger('Endurance', itU8), - wbInteger('Personality', itU8), - wbInteger('Luck', itU8) - ], cpNormal, True), - wbFormIDCk(HNAM, 'Hair', [HAIR]), - wbFloat(LNAM, 'Hair length'), - wbArray(ENAM, 'Eyes', wbFormIDCk('Eyes', [EYES])), - wbStruct(HCLR, 'Hair color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbFormIDCk(ZNAM, 'Combat Style', [CSTY]), - wbFaceGen, - wbByteArray(FNAM, 'Unknown', 0, cpBenign) - ], True); - - wbPKDTFlags := wbFlags([ - {0x00000001} 'Offers services', - {0x00000002} 'Must reach location', - {0x00000004} 'Must complete', - {0x00000008} 'Lock doors at package start', - {0x00000010} 'Lock doors at package end', - {0x00000020} 'Lock doors at location', - {0x00000040} 'Unlock doors at package start', - {0x00000080} 'Unlock doors at package end', - {0x00000100} 'Unlock doors at location', - {0x00000200} 'Continue if PC near', - {0x00000400} 'Once per day', - {0x00000800} 'Unused', - {0x00001000} 'Skip fallout behavior', - {0x00002000} 'Always run', - {0x00004000} '', - {0x00008000} '', - {0x00010000} '', - {0x00020000} 'Always sneak', - {0x00040000} 'Allow swimming', - {0x00080000} 'Allow falls', - {0x00100000} 'Armor unequipped', - {0x00200000} 'Weapons unequipped', - {0x00400000} 'Defensive combat', - {0x00800000} 'Use horse', - {0x01000000} 'No idle anims', - {0x02000000} '', - {0x04000000} '', - {0x08000000} '', - {0x10000000} '', - {0x20000000} '', - {0x40000000} '', - {0x80000000} '' - ]); - - wbPKDTType := wbEnum([ - {0} 'Find', - {1} 'Follow', - {2} 'Escort', - {3} 'Eat', - {4} 'Sleep', - {5} 'Wander', - {6} 'Travel', - {7} 'Accompany', - {8} 'Use item at', - {9} 'Ambush', - {10} 'Flee not combat', - {11} 'Cast magic' - ]); - - wbRecord(PACK, 'AI Package', [ - wbEDID, - wbUnion(PKDT, 'General', wbPACKPKDTDecider, [ - wbStruct('General', [ - wbInteger('Flags', itU16, wbPKDTFlags), - wbInteger('Type', itU8, wbPKDTType), - wbByteArray('Unused', 1) - ]), - wbStruct('General', [ - wbInteger('Flags', itU32, wbPKDTFlags), - wbInteger('Type', itU8, wbPKDTType), - wbByteArray('Unused', 3) - ]) - ]), - wbStruct(PLDT, 'Location', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Near reference', - {1} 'In cell', - {2} 'Near current location', - {3} 'Near editor location', - {4} 'Object ID', - {5} 'Object type' - ])), - wbUnion('Location', wbPxDTLocationDecider, [ - wbFormIDCk('Reference', [REFR, ACHR, ACRE, PLYR], True), - wbFormIDCk('Cell', [CELL]), - wbFormIDCk('Unused', [NULL]), - wbFormIDCk('Unused', [NULL]), - wbFormIDCk('Object ID', [ACTI, DOOR, FLOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH]), - wbInteger('Object type', itU32) - ]), - wbInteger('Radius', itS32) - ]), - wbStruct(PSDT, 'Schedule', [ - wbInteger('Month', itS8), - wbInteger('Day of week', itS8, wbEnum([ - 'Sundas', - 'Morndas', - 'Tirdas', - 'Middas', - 'Turdas', - 'Fredas', - 'Loredas', - 'Morndas to Fredas', - 'Loredas, Sundas', - 'Morndas, Middas, Fredas', - 'Tirdas, Turdas' - ], [ - -1, 'Any' - ])), - wbInteger('Date', itU8), - wbInteger('Time', itS8), - wbInteger('Duration', itS32) - ]), - wbStruct(PTDT, 'Target', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Specific reference', - {1} 'Object ID', - {2} 'Object type' - ])), - wbUnion('Target', wbPxDTLocationDecider, [ - wbFormIDCk('Reference', [ACHR, ACRE, REFR, PLYR], True), - wbFormIDCk('Object ID', [ACTI, DOOR, FLOR, STAT, FURN, CREA, SPEL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH]), - wbInteger('Object type', itU32) - ]), - wbInteger('Count', itS32) - ]), - wbCTDAs - ]); - - wbPGRP := - wbArray(PGRP, 'Points', wbStruct('Point', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z (Even = Red/Orange, Odd = Blue)'), - wbInteger('Connections', itU8{, wbPGRPConnectionsCallback}), - wbByteArray('Unused', 3) - ]), 0, nil, nil, cpNormal, True); - - {The Connection Count in the PGRP record specifies how many entries in this - array belong to each point. If the first 4 points in the PGRP array have - Connection Counts 2, 5, 2, 4 then the first 2 entries are the connections - of point 0, then next 5 are the connections of point 1, the next 2 of point 2, - the next 4 of point 3 and so on..., this can currently not be represented - declaratively } - - wbRecord(PGRD, 'Path Grid', [ - wbInteger(DATA, 'Point Count', itU16, nil, cpNormal, True), - wbPGRP, - wbByteArray(PGAG, 'Unknown'), - wbArray(PGRR, 'Point-to-Point Connections', - wbArrayS('Point', wbInteger('Point', itS16), wbCalcPGRRSize{, cpNormal, False, wbPGRRPointAfterLoad}) - ), - wbArrayS(PGRI, 'Inter-Cell Connections', wbStructSK([0,2,3,4], 'Inter-Cell Connection', [ - wbInteger('Point', itU16), - wbByteArray('Unused', 2), - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), 0, cpNormal, False, wbPGRIPointerAfterLoad), - wbRArrayS('Point-to-Reference Mappings', - wbStructSK(PGRL, [0], 'Point-to-Reference Mapping', [ - wbFormIDCk('Reference', [REFR]), - wbArrayS('Points', wbInteger('Point', itU32)) - ]) - ) - ], False, nil, cpNormal, False, wbPGRDAfterLoad); - - wbRecord(QUST, 'Quest', [ - wbEDID, - wbSCRI, - wbFULL, - wbICON, - wbStruct(DATA, 'General', [ - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Start game enabled', - {0x02} '', - {0x04} 'Allow repeated conversation topics', - {0x08} 'Allow repeated stages' - ])), - wbInteger('Priority', itU8) - ], cpNormal, True), - wbCTDAs, - wbRArrayS('Stages', wbRStructSK([0], 'Stage', [ - wbInteger(INDX, 'Stage index', itS16), - wbRArray('Log Entries', wbRStruct('Log Entry', [ - wbInteger(QSDT, 'Stage Flags', itU8, wbFlags([ - {0x01} 'Complete quest' - ])), - wbCTDAs, - wbString(CNAM, 'Log Entry', 0, cpTranslate), - wbResultScript - ], [])) - ], [])), - wbRArray('Targets', wbRStruct('Target', [ - wbStruct(QSTA, 'Target', [ - wbFormIDCk('Target', [REFR, ACRE, ACHR], True), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Compass marker ignores locks' - ])), - wbByteArray('Unused', 3) - ]), - wbCTDAs - ], [])) - ]); - - wbBodyDataIndex := - wbInteger(INDX, 'Index', itU32, wbEnum([ - 'Upper Body', - 'Lower Body', - 'Hand', - 'Foot', - 'Tail' - ])); - - wbRecord(RACE, 'Race', [ - wbEDID, - wbFULL, - wbDESC, - wbSPLOs, - wbXNAMs, - wbStruct(DATA, '', [ - wbArrayS('Skill Boosts', wbStructSK([0], 'Skill Boost', [ - wbInteger('Skill', itS8, wbActorValueEnum), - wbInteger('Boost', itS8) - ]), 7), - wbByteArray('Unused', 2), - wbFloat('Male Height'), - wbFloat('Female Height'), - wbFloat('Male Weight'), - wbFloat('Female Weight'), - wbInteger('Flags', itU32, wbFlags([ - 'Playable' - ])) - ], cpNormal, True), - wbStruct(VNAM, 'Voice', [ - wbFormIDCk('Male', [RACE, NULL]), - wbFormIDCk('Female', [RACE, NULL]) - ]), - wbStruct(DNAM, 'Default Hair', [ - wbFormIDCk('Male', [HAIR]), - wbFormIDCk('Female', [HAIR]) - ]), - wbInteger(CNAM, 'Default Hair Color', itU8, nil, cpNormal, True), - wbFloat(PNAM, 'FaceGen - Main clamp', cpNormal, True), - wbFloat(UNAM, 'FaceGen - Face clamp', cpNormal, True), - wbStruct(ATTR, 'Base Attributes', [ - wbStruct('Male', [ - wbInteger('Strength', itU8), - wbInteger('Intelligence', itU8), - wbInteger('Willpower', itU8), - wbInteger('Agility', itU8), - wbInteger('Speed', itU8), - wbInteger('Endurance', itU8), - wbInteger('Personality', itU8), - wbInteger('Luck', itU8) - ]), - wbStruct('Female', [ - wbInteger('Strength', itU8), - wbInteger('Intelligence', itU8), - wbInteger('Willpower', itU8), - wbInteger('Agility', itU8), - wbInteger('Speed', itU8), - wbInteger('Endurance', itU8), - wbInteger('Personality', itU8), - wbInteger('Luck', itU8) - ]) - ]), - wbRStruct('Face Data', [ - wbEmpty(NAM0, 'Face Data Marker'), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbEnum([ - 'Head', - 'Ear (Male)', - 'Ear (Female)', - 'Mouth', - 'Teeth (Lower)', - 'Teeth (Upper)', - 'Tongue', - 'Eye (Left)', - 'Eye (Right)' - ])), - wbMODL, - wbICON - ], [])) - ], [], cpNormal, True), - wbEmpty(NAM1, 'Body Data Marker', cpNormal, True), - wbRStruct('Male Body Data', [ - wbEmpty(MNAM, 'Male Body Data Marker'), - wbMODL, - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbBodyDataIndex, - wbICON - ], [])) - ], [], cpNormal, True), - wbRStruct('Female Body Data', [ - wbEmpty(FNAM, 'Female Body Data Marker'), - wbMODL, - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbBodyDataIndex, - wbICON - ], [])) - ], [], cpNormal, True), - wbArrayS(HNAM, 'Hairs', wbFormIDCk('Hair', [HAIR]), 0, cpNormal, True), - wbArrayS(ENAM, 'Eyes', wbFormIDCk('Eye', [EYES]), 0, cpNormal, True), - wbFaceGen, - wbByteArray(SNAM, 'Unknown', 2, cpNormal, True) - ], True); - - wbRecord(REFR, 'Placed Object', [ - wbEDID, - wbFormIDCk(NAME, 'Base', [TREE, SBSP, LVLC, SOUN, ACTI, DOOR, FLOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, INGR, SLGM, SGST, BOOK, KEYM, CLOT, ALCH, APPA, LIGH, GRAS], False, cpNormal, True), - wbStruct(XTEL, 'Teleport Destination', [ - wbFormIDCk('Door', [REFR], True), - wbPosRot - ]), - wbStruct(XLOC, 'Lock information', [ - wbInteger('Lock Level', itU8), - wbByteArray('Unused', 3), - wbFormIDCk('Key', [KEYM, NULL]), - wbUnion('Unused', wbXLOCFillerDecider, [ - wbEmpty('Unused'), - wbByteArray('Unused', 4) - ]), - wbInteger('Flags', itU8, wbFlags(['', '', 'Leveled Lock'])), - wbByteArray('Unused', 3) - ]), - wbRStruct('Ownership', [ - wbXOWN, - wbInteger(XRNK, 'Faction rank', itS32), - wbXGLB - ], [XLOC]), - wbXESP, - wbFormIDCk(XTRG, 'Target', [REFR, ACHR, ACRE], True), - wbStruct(XSED, 'SpeedTree', [ - wbInteger('Seed', itU8), - wbUnion('Unused', wbREFRXSEDDecider, [ - wbEmpty('Unused', cpIgnore), - wbByteArray('Unused', 3, cpIgnore) - ]) - ]), - wbXLOD, - wbFloat(XCHG, 'Charge'), - wbInteger(XHLT, 'Health', itS32), - wbRStruct('Unused', [ - wbFormIDCk(XPCI, 'Unused', [CELL]), - wbString(FULL, 'Unused') - ], []), - wbInteger(XLCM, 'Level Modifier', itS32), - wbFormIDCk(XRTM, 'Unknown', [REFR]), - wbInteger(XACT, 'Action Flag', itU32, wbFlags([ - 'Use Default', - 'Activate', - 'Open', - 'Open by Default' - ])), - wbInteger(XCNT, 'Count', itS32), - wbRStruct('Map Marker', [ - wbEmpty(XMRK, 'Map Marker Data'), - wbInteger(FNAM, 'Map Flags', itU8, wbFlags([ - {0x01} 'Visible', - {0x02} 'Can Travel To' - ]), cpNormal, True), - wbFULLReq, - wbStruct(TNAM, '', [ - wbInteger('Type', itU8, wbEnum([ - {0x00} 'None', - {0x01} 'Camp', - {0x02} 'Cave', - {0x03} 'City', - {0x04} 'Elven Ruin', - {0x05} 'Fort Ruin', - {0x06} 'Mine', - {0x07} 'Landmark', - {0x08} 'Tavern', - {0x09} 'Settlement', - {0x0A} 'Daedric Shrine', - {0x0B} 'Oblivion Gate', - {0x0C} 'Unknown? (door icon)' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True) - ], []), - wbEmpty(ONAM, 'Open by Default'), - wbXRGD, - wbXSCL, - wbInteger(XSOL, 'Contained Soul', itU8, wbSoulGemEnum), - wbDATAPosRot - ], True, wbPlacedAddInfo, cpNormal, False, wbREFRAfterLoad); - - wbRecord(REGN, 'Region', [ - wbEDID, - wbICON, - wbStruct(RCLR, 'Map Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ], cpNormal, True), - wbFormIDCk(WNAM, 'Worldspace', [WRLD]), - - wbRArray('Region Areas', wbRStruct('Region Area', [ - wbInteger(RPLI, 'Edge Fall-off', itU32), - wbArray(RPLD, 'Region Point List Data', wbStruct('Point', [ - wbFloat('X'), - wbFloat('Y') - ]), 0, wbRPLDAfterLoad) - ], []), cpNormal, True), - - wbRArrayS('Region Data Entries', wbRStructSK([0], 'Region Data Entry', [ - {always starts with an RDAT} - wbStructSK(RDAT, [0], 'Data Header', [ - wbInteger('Type', itU32, wbEnum([ - {0}'', - {1}'', - {2}'Objects', - {3}'Weather', - {4}'Map', - {5}'Unknown 5', - {6}'Grass', - {7}'Sound', - {8}'', - {9}'' - ])), - wbInteger('Flags', itU8, wbFlags([ - 'Override' - ])), - wbInteger('Priority', itU8), - wbByteArray('Unused', 2) - ], cpNormal, True, nil, 3), - - {followed by one of these: } - - {--- Objects ---} - wbArray(RDOT, 'Objects', wbStruct('Object', [ - wbFormIDCk('Object', [TREE, FLOR, STAT, LTEX]), - wbInteger('Parent Index', itU16, wbHideFFFF), - wbByteArray('Unused', 2), - wbFloat('Density'), - wbInteger('Clustering', itU8), - wbInteger('Min Slope', itU8), - wbInteger('Max Slope', itU8), - wbInteger('Flags', itU8, wbFlags([ - {0}'Conform to slope', - {1}'Paint Vertices', - {2}'Size Variance +/-', - {3}'X +/-', - {4}'Y +/-', - {5}'Z +/-', - {6}'Tree', - {7}'Huge Rock' - ])), - wbInteger('Radius wrt Parent', itU16), - wbInteger('Radius', itU16), - wbFloat('Min Height'), - wbFloat('Max Height'), - wbFloat('Sink'), - wbFloat('Sink Variance'), - wbFloat('Size Variance'), - wbStruct('Angle Variance', [ - wbInteger('X', itU16), - wbInteger('Y', itU16), - wbInteger('Z', itU16) - ]), - wbByteArray('Unused', 2), - wbByteArray('Unknown', 4) - ])), - - {--- Map ---} - wbString(RDMP, 'Map Name', 0, cpTranslate), - - {--- Grass ---} - wbArrayS(RDGS, 'Grasses', wbStructSK([0], 'Grass', [ - wbFormIDCk('Grass', [GRAS]), - wbByteArray('Unused', 4) - ])), - - {--- Sound ---} - wbInteger(RDMD, 'Music Type', itU32, wbMusicEnum), - wbArrayS(RDSD, 'Sounds', wbStructSK([0], 'Sound', [ - wbFormIDCk('Sound', [SOUN]), - wbInteger('Flags', itU32, wbFlags([ - 'Pleasant', - 'Cloudy', - 'Rainy', - 'Snowy' - ])), - wbInteger('Chance', itU32, wbScaledInt4ToStr, wbScaledInt4ToInt) - ])), - - {--- Weather ---} - wbArrayS(RDWT, 'Weather Types', wbStructSK([0], 'Weather Type', [ - wbFormIDCk('Weather', [WTHR]), - wbInteger('Chance', itU32) - ])) - ], [])) - ], True); - - wbRecord(ROAD, 'Road', [ - wbPGRP, - wbArray(PGRR, 'Point-to-Point Connections (complex structure can''t be represented, see source)', - {The Connection Count in the PGRP record specifies how many entries in this - array belong to each point. If the first 4 points in the PGRP array have - Connection Counts 2, 5, 2, 4 then the first 2 entries are the connections - of point 0, then next 5 are the connections of point 1, the next 2 of point 2, - the next 4 of point 3 and so on..., this can currently not be represented - declaratively } - wbStruct('Point', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), 0, nil, nil, cpNormal, True) - ]); - - wbRecord(SBSP, 'Subspace', [ - wbEDID, - wbStruct(DNAM, '', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ], cpNormal, True) - ]); - - wbSLSD := wbStructSK(SLSD, [0], 'Local Variable Data', [ - wbInteger('Index', itU32), - wbByteArray('Unused', 12), - wbInteger('Flags', itU8, wbFlags(['IsLongOrShort']), cpCritical), - wbByteArray('Unused') - ]); - - wbRecord(SCPT, 'Script', [ - wbEDID, - wbByteArray(SCHD, 'Unknown (Script Header?)'), - wbSCHR, - wbByteArray(SCDA, 'Compiled Script'), - wbStringScript(SCTX, 'Script Source', 0, cpNormal, True), - wbRArrayS('Local Variables', wbRStructSK([0], 'Local Variable', [ - wbSLSD, - wbString(SCVR, 'Name', 0, cpCritical) - ], [])), - wbSCROs - ]); - - wbRecord(SGST, 'Sigil Stone', [ - wbEDID, - wbStruct(OBME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbByteArray('Unused', $1C) - ], cpNormal, False, wbOBMEDontShow), - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbEffects, - wbStruct(DATA, '', [ - wbInteger('Uses ', itU8), - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True) - ]); - - wbRecord(SKIL, 'Skill', [ - wbEDID, - wbInteger(INDX, 'Skill', itS32, wbActorValueEnum, cpNormal, True), - wbDESC, - wbICON, - wbStruct(DATA, 'Skill Data', [ - wbInteger('Action', itS32, wbActorValueEnum), - wbInteger('Attribute', itS32, wbActorValueEnum), - wbInteger('Specialization', itU32, wbSpecializationEnum), - wbArray('Use Values', wbFloat('Use Value'), 2) - ], cpNormal, True), - wbString(ANAM, 'Apprentice Text', 0, cpTranslate, True), - wbString(JNAM, 'Journeyman Text', 0, cpTranslate, True), - wbString(ENAM, 'Expert Text', 0, cpTranslate, True), - wbString(MNAM, 'Master Text', 0, cpTranslate, True) - ]); - - wbRecord(SLGM, 'Soul Gem', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbStruct(DATA, '', [ - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True), - wbInteger(SOUL, 'Contained Soul', itU8, wbSoulGemEnum, cpNormal, True), - wbInteger(SLCP, 'Maximum Capacity', itU8, wbSoulGemEnum, cpNormal, True) - ]); - - wbRecord(SOUN, 'Sound', [ - wbEDID, - wbString(FNAM, 'Sound Filename'), - wbRUnion('Sound Data', [ - wbStruct(SNDX, 'Sound Data', [ - wbInteger('Minimum attenuation distance', itU8, wbMul(5)), - wbInteger('Maximum attenuation distance', itU8, wbMul(100)), - wbInteger('Frequency adjustment %', itS8), - wbByteArray('Unused', 1), - wbInteger('Flags', itU16, wbFlags([ - {0x0001} 'Random Frequency Shift', - {0x0002} 'Play At Random', - {0x0004} 'Environment Ignored', - {0x0008} 'Random Location', - {0x0010} 'Loop', - {0x0020} 'Menu Sound', - {0x0040} '2D', - {0x0080} '360 LFE' - ])), - wbByteArray('Unused', 2), - wbInteger('Static Attenuation (db)', itU16, wbDiv(100)), - wbInteger('Stop time', itU8), - wbInteger('Start time', itU8) - ], cpNormal, True), - wbStruct(SNDD, 'Sound Data', [ - wbInteger('Minimum attenuation distance', itU8, wbMul(5)), - wbInteger('Maximum attenuation distance', itU8, wbMul(100)), - wbInteger('Frequency adjustment %', itS8), - wbByteArray('Unused', 1), - wbInteger('Flags', itU16, wbFlags([ - {0x0001} 'Random Frequency Shift', - {0x0002} 'Play At Random', - {0x0004} 'Environment Ignored', - {0x0008} 'Random Location', - {0x0010} 'Loop', - {0x0020} 'Menu Sound', - {0x0040} '2D', - {0x0080} '360 LFE' - ])), - wbByteArray('Unused', 2), - wbEmpty('Unused'), - wbEmpty('Unused'), - wbEmpty('Unused') - ], cpNormal, True) - ], [], cpNormal, True) - ]); - - wbRecord(SPEL, 'Spell', [ - wbEDID, - wbStruct(OBME, 'Oblivion Magic Extender', [ - wbInteger('Record Version', itU8), - wbStruct('OBME Version', [ - wbInteger('Beta', itU8), - wbInteger('Minor', itU8), - wbInteger('Major', itU8) - ]), - wbByteArray('Unused', $1C) - ], cpNormal, False, wbOBMEDontShow), - wbFULL, - wbStruct(SPIT, '', [ - wbInteger('Type', itU32, wbEnum([ - {0} 'Spell', - {1} 'Disease', - {2} 'Power', - {3} 'Lesser Power', - {4} 'Ability', - {5} 'Poison' - ])), - wbInteger('Cost', itU32), - wbInteger('Level', itU32, wbEnum([ - {0} 'Novice', - {1} 'Apprentice', - {2} 'Journeyman', - {3} 'Expert', - {4} 'Master' - ])), - wbInteger('Flags', itU8, wbFlags([ - {0x00000001} 'Manual Spell Cost', - {0x00000002} 'Immune to Silence 1', - {0x00000004} 'Player Start Spell', - {0x00000008} 'Immune to Silence 2', - {0x00000010} 'Area Effect Ignores LOS', - {0x00000020} 'Script Effect Always Applies', - {0x00000040} 'Disallow Spell Absorb/Reflect', - {0x00000080} 'Touch Spell Explodes w/ no Target' - ])), - wbByteArray('Unused', 3) - ], cpNormal, True), - wbEffects - ]); - - wbRecord(STAT, 'Static', [ - wbEDID, - wbMODL - ]); - - wbRecord(TES4, 'Main File Header', [ - wbStruct(HEDR, 'Header', [ - wbFloat('Version'), - wbInteger('Number of Records', itU32), - wbInteger('Next Object ID', itU32) - ], cpNormal, True), - wbByteArray(OFST, 'Unknown', 0, cpIgnore), - wbByteArray(DELE, 'Unknown', 0, cpIgnore), - wbString(CNAM, 'Author', 0, cpTranslate, True), - wbString(SNAM, 'Description', 0, cpTranslate), - wbRArray('Master Files', wbRStruct('Master File', [ - wbString(MAST, 'Filename', 0, cpNormal, True), - wbByteArray(DATA, 'Unused', 8, cpIgnore, True) - ], [])) - ], False, nil, cpNormal, True, wbRemoveOFST); - - wbRecord(TREE, 'Tree', [ - wbEDID, - wbMODL, - wbICON, - wbArrayS(SNAM, 'SpeedTree Seeds', wbInteger('SpeedTree Seed', itU32)), - wbStruct(CNAM, 'Tree Data', [ - wbFloat('Leaf Curvature'), - wbFloat('Minimum Leaf Angle'), - wbFloat('Maximum Leaf Angle'), - wbFloat('Branch Dimming Value'), - wbFloat('Leaf Dimming Value'), - wbInteger('Shadow Radius', itS32), - wbFloat('Rock Speed'), - wbFloat('Rustle Speed') - ], cpNormal, True), - wbStruct(BNAM, 'Billboard Dimensions', [ - wbFloat('Width'), - wbFloat('Height') - ], cpNormal, True) - ]); - - wbRecord(WATR, 'Water', [ - wbEDID, - wbString(TNAM, 'Texture', 0, cpNormal, True), - wbInteger(ANAM, 'Opacity', itU8, nil, cpNormal, True), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - {0}'Causes Damage', - {1}'Reflective' - ]), cpNormal, True), - wbString(MNAM, 'Material ID'{>>>}, 0, cpNormal, True{<<<}), - wbFormIDCk(SNAM, 'Sound', [SOUN]), - wbStruct(DATA, '', [ - wbFloat('Wind Velocity'), - wbFloat('Wind Direction'), - wbFloat('Wave Amplitude'), - wbFloat('Wave Frequency'), - wbFloat('Sun Power'), - wbFloat('Reflectivity Amount'), - wbFloat('Fresnel Amount'), - wbFloat('Scroll X Speed'), - wbFloat('Scroll Y Speed'), - wbFloat('Fog Distance - Near Plane'), - wbFloat('Fog Distance - Far Plane'), - wbStruct('Shallow Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Deep Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbStruct('Reflection Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - wbInteger('Texture Blend', itU8), - wbByteArray('Unused', 3), - wbFloat('Rain Simulator - Force'), - wbFloat('Rain Simulator - Velocity'), - wbFloat('Rain Simulator - Falloff'), - wbFloat('Rain Simulator - Dampner'), - wbFloat('Rain Simulator - Starting Size'), - wbFloat('Displacement Simulator - Force'), - wbFloat('Displacement Simulator - Velocity'), - wbFloat('Displacement Simulator - Falloff'), - wbFloat('Displacement Simulator - Dampner'), - wbFloat('Displacement Simulator - Starting Size'), - wbInteger('Damage', itU16) - ], cpNormal, True, nil, 0), - wbStruct(GNAM, 'Related Waters', [ - wbFormIDCk('Daytime', [WATR, NULL]), - wbFormIDCk('Nighttime', [WATR, NULL]), - wbFormIDCk('Underwater', [WATR, NULL]) - ], cpNormal{>>>, True<<<}) - ]); - - wbRecord(WEAP, 'Weapon', [ - wbEDID, - wbFULL, - wbMODL, - wbICON, - wbSCRI, - wbENAM, - wbInteger(ANAM, 'Enchantment Points', itU16), - wbStruct(DATA, '', [ - wbInteger('Type', itU32, wbEnum([ - {0} 'Blade One Hand', - {1} 'Blade Two Hand', - {2} 'Blunt One Hand', - {3} 'Blunt Two Hand', - {4} 'Staff', - {5} 'Bow' - ])), - wbFloat('Speed'), - wbFloat('Reach'), - wbInteger('Flags', itU32, wbFlags(['Ignores Normal Weapon Resistance'])), - wbInteger('Value', itU32), - wbInteger('Health', itU32), - wbFloat('Weight'), - wbInteger('Damage', itU16) - ], cpNormal, True) - ]); - - if wbSimpleRecords then - wbRecord(WRLD, 'Worldspace', [ - wbEDID, - wbFULL, - wbRStruct('Parent', [ - wbFormIDCk(WNAM, 'Worldspace', [WRLD]) - ], []), - wbFormIDCk(CNAM, 'Climate', [CLMT]), - wbFormIDCk(NAM2, 'Water', [WATR]), - wbICON, - wbStruct(MNAM, 'Map Data', [ - wbStruct('Usable Dimensions', [ - wbInteger('X', itS32), - wbInteger('Y', itS32) - ]), - wbStruct('Cell Coordinates', [ - wbStruct('NW Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbStruct('SE Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]) - ]) - ]), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Small world', - {0x02} 'Can''t fast travel', - {0x04} 'Oblivion worldspace', - {0x08} '', - {0x10} 'No LOD water' - ]), cpNormal, True), - //wbArray(NAM0, 'Unknown', wbFloat(''), 0, nil, nil, cpNormal, True), - //wbArray(NAM9, 'Unknown', wbFloat(''), 0, nil, nil, cpNormal, True), - wbRStruct('Object Bounds', [ - wbStruct(NAM0, 'Min', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True), - wbStruct(NAM9, 'Max', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True) - ], []), - wbInteger(SNAM, 'Music', itU32, wbMusicEnum), - wbByteArray(OFST, 'Offset Data') - ], False, nil, cpNormal, False, wbRemoveOFST) - else - wbRecord(WRLD, 'Worldspace', [ - wbEDID, - wbFULL, - wbRStruct('Parent', [ - wbFormIDCk(WNAM, 'Worldspace', [WRLD]) - ], []), - wbFormIDCk(CNAM, 'Climate', [CLMT]), - wbFormIDCk(NAM2, 'Water', [WATR]), - wbICON, - wbStruct(MNAM, 'Map Data', [ - wbStruct('Usable Dimensions', [ - wbInteger('X', itS32), - wbInteger('Y', itS32) - ]), - wbStruct('Cell Coordinates', [ - wbStruct('NW Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbStruct('SE Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]) - ]) - ]), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Small world', - {0x02} 'Can''t fast travel', - {0x04} 'Oblivion worldspace', - {0x08} '', - {0x10} 'No LOD water' - ]), cpNormal, True), - //wbArray(NAM0, 'Unknown', wbFloat(''), 0, nil, nil, cpNormal, True), - //wbArray(NAM9, 'Unknown', wbFloat(''), 0, nil, nil, cpNormal, True), - wbRStruct('Object Bounds', [ - wbStruct(NAM0, 'Min', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True), - wbStruct(NAM9, 'Max', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True) - ], []), - wbInteger(SNAM, 'Music', itU32, wbMusicEnum), - wbArray(OFST, 'Offset Data', wbArray('Rows', wbInteger('Offset', itU32), wbOffsetDataColsCounter), 0) - ], False, nil, cpNormal, False, wbRemoveOFST); - - wbRecord(WTHR, 'Weather', [ - wbEDID, - wbString(CNAM, 'Texture Lower Layer'), - wbString(DNAM, 'Texture Upper Layer'), - wbMODL, - wbArray(NAM0, 'Colors by Types/Times', - wbArray('Type', - wbStruct('Time', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]), - ['Sunrise', 'Day', 'Sunset', 'Night'] - ), - ['Sky-Upper','Fog','Clouds-Lower','Ambient','Sunlight','Sun','Stars','Sky-Lower','Horizon','Clouds-Upper'] - , cpNormal, True), - wbStruct(FNAM, 'Fog Distance', [ - wbFloat('Day Near'), - wbFloat('Day Far'), - wbFloat('Night Near'), - wbFloat('Night Far') - ], cpNormal, True), - wbStruct(HNAM, 'HDR Data', [ - wbFloat('Eye Adapt Speed'), - wbFloat('Blur Radius'), - wbFloat('Blur Passes'), - wbFloat('Emissive Mult'), - wbFloat('Target LUM'), - wbFloat('Upper LUM Clamp'), - wbFloat('Bright Scale'), - wbFloat('Bright Clamp'), - wbFloat('LUM Ramp No Tex'), - wbFloat('LUM Ramp Min'), - wbFloat('LUM Ramp Max'), - wbFloat('Sunlight Dimmer'), - wbFloat('Grass Dimmer'), - wbFloat('Tree Dimmer') - ], cpNormal, True), - wbStruct(DATA, '', [ - wbInteger('Wind Speed', itU8), - wbInteger('Cloud Speed (Lower)', itU8), - wbInteger('Cloud Speed (Upper)', itU8), - wbInteger('Trans Delta', itU8), - wbInteger('Sun Glare', itU8), - wbInteger('Sun Damage', itU8), - wbInteger('Precipitation - Begin Fade In', itU8), - wbInteger('Precipitation - End Fade Out', itU8), - wbInteger('Thunder/Lightning - Begin Fade In', itU8), - wbInteger('Thunder/Lightning - End Fade Out', itU8), - wbInteger('Thunder/Lightning - Frequency', itU8), - wbInteger('Weather Classification', itU8, wbWthrDataClassification), - wbStruct('Lightning Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8) - ]) - ], cpNormal, True), - wbRArray('Sounds', wbStruct(SNAM, 'Sound', [ - wbFormIDCk('Sound', [SOUN]), - wbInteger('Type', itU32, wbEnum([ - {0}'Default', - {1}'Precip', - {2}'Wind', - {3}'Thunder' - ])) - ])) - ]); - - wbAddGroupOrder(GMST); - wbAddGroupOrder(GLOB); - wbAddGroupOrder(CLAS); - wbAddGroupOrder(FACT); - wbAddGroupOrder(HAIR); - wbAddGroupOrder(EYES); - wbAddGroupOrder(RACE); - wbAddGroupOrder(SOUN); - wbAddGroupOrder(SKIL); - wbAddGroupOrder(MGEF); - wbAddGroupOrder(SCPT); - wbAddGroupOrder(LTEX); - wbAddGroupOrder(ENCH); - wbAddGroupOrder(SPEL); - wbAddGroupOrder(BSGN); - wbAddGroupOrder(ACTI); - wbAddGroupOrder(APPA); - wbAddGroupOrder(ARMO); - wbAddGroupOrder(BOOK); - wbAddGroupOrder(CLOT); - wbAddGroupOrder(CONT); - wbAddGroupOrder(DOOR); - wbAddGroupOrder(INGR); - wbAddGroupOrder(LIGH); - wbAddGroupOrder(MISC); - wbAddGroupOrder(STAT); - wbAddGroupOrder(GRAS); - wbAddGroupOrder(TREE); - wbAddGroupOrder(FLOR); - wbAddGroupOrder(FURN); - wbAddGroupOrder(WEAP); - wbAddGroupOrder(AMMO); - wbAddGroupOrder(NPC_); - wbAddGroupOrder(CREA); - wbAddGroupOrder(LVLC); - wbAddGroupOrder(SLGM); - wbAddGroupOrder(KEYM); - wbAddGroupOrder(ALCH); - wbAddGroupOrder(SBSP); - wbAddGroupOrder(SGST); - wbAddGroupOrder(LVLI); - wbAddGroupOrder(WTHR); - wbAddGroupOrder(CLMT); - wbAddGroupOrder(REGN); - wbAddGroupOrder(CELL); - wbAddGroupOrder(WRLD); - wbAddGroupOrder(DIAL); - wbAddGroupOrder(QUST); - wbAddGroupOrder(IDLE); - wbAddGroupOrder(PACK); - wbAddGroupOrder(CSTY); - wbAddGroupOrder(LSCR); - wbAddGroupOrder(LVSP); - wbAddGroupOrder(ANIO); - wbAddGroupOrder(WATR); - wbAddGroupOrder(EFSH); -end; - -initialization -end. diff --git a/lib/xedit/wbDefinitionsTES5.pas b/lib/xedit/wbDefinitionsTES5.pas deleted file mode 100644 index 0a7e6a0..0000000 --- a/lib/xedit/wbDefinitionsTES5.pas +++ /dev/null @@ -1,13667 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} - -unit wbDefinitionsTES5; - -{$I wbDefines.inc} - -interface - -uses - wbInterface; - -var - wbBipedObjectFlags: IwbFlagsDef; - wbEquipType: IwbFlagsDef; - wbFurnitureEntryTypeFlags: IwbFlagsDef; - wbPKDTFlags: IwbFlagsDef; - wbPKDTInterruptFlags: IwbFlagsDef; - wbSMNodeFlags: IwbFlagsDef; - - wbAdvanceActionEnum: IwbEnumDef; - wbAlignmentEnum: IwbEnumDef; - wbArmorTypeEnum: IwbEnumDef; - wbAttackAnimationEnum: IwbEnumDef; - wbAxisEnum: IwbEnumDef; - wbBipedObjectEnum: IwbEnumDef; - wbBlendModeEnum: IwbEnumDef; - wbBlendOpEnum: IwbEnumDef; - wbBodyPartIndexEnum: IwbEnumDef; - wbCastEnum: IwbEnumDef; - wbCastingSourceEnum: IwbEnumDef; - wbCrimeTypeEnum: IwbEnumDef; - wbCriticalStageEnum: IwbEnumDef; - wbEmotionTypeEnum: IwbEnumDef; - wbEntryPointsEnum: IwbEnumDef; - wbEventFunctionEnum: IwbEnumDef; - wbEventMemberEnum: IwbEnumDef; - wbFormTypeEnum: IwbEnumDef; - wbFunctionsEnum: IwbEnumDef; - wbFurnitureAnimTypeEnum: IwbEnumDef; - wbLocationEnum: IwbEnumDef; - wbMiscStatEnum: IwbEnumDef; - wbMusicEnum: IwbEnumDef; - wbObjectTypeEnum: IwbEnumDef; - wbPropTypeEnum: IwbEnumDef; - wbQuadrantEnum: IwbEnumDef; - wbSexEnum: IwbEnumDef; - wbSkillEnum: IwbEnumDef; - wbSoulGemEnum: IwbEnumDef; - wbSoundLevelEnum: IwbEnumDef; - wbTargetEnum: IwbEnumDef; - wbTintMaskTypeEnum: IwbEnumDef; - wbVatsValueFunctionEnum: IwbEnumDef; - wbWardStateEnum: IwbEnumDef; - wbWeaponAnimTypeEnum: IwbEnumDef; - wbZTestFuncEnum: IwbEnumDef; - -procedure DefineTES5; - -implementation - -uses - Types, - Classes, - SysUtils, - Math, - Variants, - wbHelpers; - -const - _00_IAD: TwbSignature = #$00'IAD'; - _01_IAD: TwbSignature = #$01'IAD'; - _02_IAD: TwbSignature = #$02'IAD'; - _03_IAD: TwbSignature = #$03'IAD'; - _04_IAD: TwbSignature = #$04'IAD'; - _05_IAD: TwbSignature = #$05'IAD'; - _06_IAD: TwbSignature = #$06'IAD'; - _07_IAD: TwbSignature = #$07'IAD'; - _08_IAD: TwbSignature = #$08'IAD'; - _09_IAD: TwbSignature = #$09'IAD'; - _0A_IAD: TwbSignature = #$0A'IAD'; - _0B_IAD: TwbSignature = #$0B'IAD'; - _0C_IAD: TwbSignature = #$0C'IAD'; - _0D_IAD: TwbSignature = #$0D'IAD'; - _0E_IAD: TwbSignature = #$0E'IAD'; - _0F_IAD: TwbSignature = #$0F'IAD'; - _10_IAD: TwbSignature = #$10'IAD'; - _11_IAD: TwbSignature = #$11'IAD'; - _12_IAD: TwbSignature = #$12'IAD'; - _13_IAD: TwbSignature = #$13'IAD'; - _14_IAD: TwbSignature = #$14'IAD'; - _40_IAD: TwbSignature = #$40'IAD'; - _41_IAD: TwbSignature = #$41'IAD'; - _42_IAD: TwbSignature = #$42'IAD'; - _43_IAD: TwbSignature = #$43'IAD'; - _44_IAD: TwbSignature = #$44'IAD'; - _45_IAD: TwbSignature = #$45'IAD'; - _46_IAD: TwbSignature = #$46'IAD'; - _47_IAD: TwbSignature = #$47'IAD'; - _48_IAD: TwbSignature = #$48'IAD'; - _49_IAD: TwbSignature = #$49'IAD'; - _4A_IAD: TwbSignature = #$4A'IAD'; - _4B_IAD: TwbSignature = #$4B'IAD'; - _4C_IAD: TwbSignature = #$4C'IAD'; - _4D_IAD: TwbSignature = #$4D'IAD'; - _4E_IAD: TwbSignature = #$4E'IAD'; - _4F_IAD: TwbSignature = #$4F'IAD'; - _50_IAD: TwbSignature = #$50'IAD'; - _51_IAD: TwbSignature = #$51'IAD'; - _52_IAD: TwbSignature = #$52'IAD'; - _53_IAD: TwbSignature = #$53'IAD'; - _54_IAD: TwbSignature = #$54'IAD'; - -{00TX} _00_0TX: TwbSignature = #$30'0TX'; -{10TX} _10_0TX: TwbSignature = #$31'0TX'; -{20TX} _20_0TX: TwbSignature = #$32'0TX'; -{30TX} _30_0TX: TwbSignature = #$33'0TX'; -{40TX} _40_0TX: TwbSignature = #$34'0TX'; -{50TX} _50_0TX: TwbSignature = #$35'0TX'; -{60TX} _60_0TX: TwbSignature = #$36'0TX'; -{70TX} _70_0TX: TwbSignature = #$37'0TX'; -{80TX} _80_0TX: TwbSignature = #$38'0TX'; -{90TX} _90_0TX: TwbSignature = #$39'0TX'; -{:0TX} _3A_0TX: TwbSignature = #$3A'0TX'; -{;0TX} _3B_0TX: TwbSignature = #$3B'0TX'; -{<0TX} _3C_0TX: TwbSignature = #$3C'0TX'; -{=0TX} _3D_0TX: TwbSignature = #$3D'0TX'; -{>0TX} _3E_0TX: TwbSignature = #$3E'0TX'; -{?0TX} _3F_0TX: TwbSignature = #$3F'0TX'; -{@0TX} _40h_0TX: TwbSignature = #$40'0TX'; -{A0TX} A0TX: TwbSignature = 'A0TX'; -{B0TX} B0TX: TwbSignature = 'B0TX'; -{C0TX} C0TX: TwbSignature = 'C0TX'; -{D0TX} D0TX: TwbSignature = 'D0TX'; -{E0TX} E0TX: TwbSignature = 'E0TX'; -{F0TX} F0TX: TwbSignature = 'F0TX'; -{G0TX} G0TX: TwbSignature = 'G0TX'; -{H0TX} H0TX: TwbSignature = 'H0TX'; -{I0TX} I0TX: TwbSignature = 'I0TX'; -{J0TX} J0TX: TwbSignature = 'J0TX'; -{K0TX} K0TX: TwbSignature = 'K0TX'; -{L0TX} L0TX: TwbSignature = 'L0TX'; - - AACT : TwbSignature = 'AACT'; - ACBS : TwbSignature = 'ACBS'; - ACEC : TwbSignature = 'ACEC'; { New To Dawnguard } - ACEP : TwbSignature = 'ACEP'; { New To Dawnguard } - ACHR : TwbSignature = 'ACHR'; - ACID : TwbSignature = 'ACID'; { New To Dawnguard } - ACPR : TwbSignature = 'ACPR'; { New To Skyrim } - ACSR : TwbSignature = 'ACSR'; { New To Dawnguard } - ACTI : TwbSignature = 'ACTI'; - ACUN : TwbSignature = 'ACUN'; { New To Dawnguard } - ADDN : TwbSignature = 'ADDN'; - AHCF : TwbSignature = 'AHCF'; { New To Skyrim } - AHCM : TwbSignature = 'AHCM'; { New To Skyrim } - AIDT : TwbSignature = 'AIDT'; - ALCA : TwbSignature = 'ALCA'; { New To Skyrim } - ALCH : TwbSignature = 'ALCH'; - ALCL : TwbSignature = 'ALCL'; { New To Skyrim } - ALCO : TwbSignature = 'ALCO'; { New To Skyrim } - ALDN : TwbSignature = 'ALDN'; { New To Skyrim } - ALEA : TwbSignature = 'ALEA'; { New To Skyrim } - ALED : TwbSignature = 'ALED'; { New To Skyrim } - ALEQ : TwbSignature = 'ALEQ'; { New To Skyrim } - ALFA : TwbSignature = 'ALFA'; { New To Skyrim } - ALFC : TwbSignature = 'ALFC'; { New To Skyrim } - ALFD : TwbSignature = 'ALFD'; { New To Skyrim } - ALFE : TwbSignature = 'ALFE'; { New To Skyrim } - ALFI : TwbSignature = 'ALFI'; { New To Skyrim } - ALFL : TwbSignature = 'ALFL'; { New To Skyrim } - ALFR : TwbSignature = 'ALFR'; { New To Skyrim } - ALID : TwbSignature = 'ALID'; { New To Skyrim } - ALLS : TwbSignature = 'ALLS'; { New To Skyrim } - ALNA : TwbSignature = 'ALNA'; { New To Skyrim } - ALNT : TwbSignature = 'ALNT'; { New To Skyrim } - ALPC : TwbSignature = 'ALPC'; { New To Skyrim } - ALRT : TwbSignature = 'ALRT'; { New To Skyrim } - ALSP : TwbSignature = 'ALSP'; { New To Skyrim } - ALST : TwbSignature = 'ALST'; { New To Skyrim } - ALUA : TwbSignature = 'ALUA'; { New To Skyrim } - AMMO : TwbSignature = 'AMMO'; - ANAM : TwbSignature = 'ANAM'; - ANIO : TwbSignature = 'ANIO'; - APPA : TwbSignature = 'APPA'; - ARMA : TwbSignature = 'ARMA'; - ARMO : TwbSignature = 'ARMO'; - ARTO : TwbSignature = 'ARTO'; - ASPC : TwbSignature = 'ASPC'; - ASTP : TwbSignature = 'ASTP'; - ATKD : TwbSignature = 'ATKD'; { New to Skyrim } - ATKE : TwbSignature = 'ATKE'; { New to Skyrim } - ATKR : TwbSignature = 'ATKR'; { New to Skyrim } - ATXT : TwbSignature = 'ATXT'; - AVIF : TwbSignature = 'AVIF'; - AVSK : TwbSignature = 'AVSK'; { New to Skyrim } - BAMT : TwbSignature = 'BAMT'; { New to Skyrim } - BIDS : TwbSignature = 'BIDS'; { New to Skyrim } - BIPL : TwbSignature = 'BIPL'; - BMCT : TwbSignature = 'BMCT'; - BNAM : TwbSignature = 'BNAM'; - BOD2 : TwbSignature = 'BOD2'; { New to Skyrim 1.6.91 CK} - BODT : TwbSignature = 'BODT'; { New to Skyrim } - BOOK : TwbSignature = 'BOOK'; - BPND : TwbSignature = 'BPND'; - BPNI : TwbSignature = 'BPNI'; - BPNN : TwbSignature = 'BPNN'; - BPNT : TwbSignature = 'BPNT'; - BPTD : TwbSignature = 'BPTD'; - BPTN : TwbSignature = 'BPTN'; - BTXT : TwbSignature = 'BTXT'; - CAMS : TwbSignature = 'CAMS'; - CELL : TwbSignature = 'CELL'; - CIS1 : TwbSignature = 'CIS1'; { New to Skyrim } - CIS2 : TwbSignature = 'CIS2'; { New to Skyrim } - CITC : TwbSignature = 'CITC'; { New to Skyrim } - CLAS : TwbSignature = 'CLAS'; - CLDC : TwbSignature = 'CLDC'; { New to Skyrim, but unused } - CLFM : TwbSignature = 'CLFM'; - CLMT : TwbSignature = 'CLMT'; - CNAM : TwbSignature = 'CNAM'; - CNTO : TwbSignature = 'CNTO'; - COBJ : TwbSignature = 'COBJ'; - COCT : TwbSignature = 'COCT'; { New to Skyrim 'Count'} - COED : TwbSignature = 'COED'; - COLL : TwbSignature = 'COLL'; - CONT : TwbSignature = 'CONT'; - CPTH : TwbSignature = 'CPTH'; - CRDT : TwbSignature = 'CRDT'; - CRGR : TwbSignature = 'CRGR'; { New to Skyrim } - CRIF : TwbSignature = 'CRIF'; { New to Skyrim } - CRVA : TwbSignature = 'CRVA'; { New to Skyrim } - CSCR : TwbSignature = 'CSCR'; - CSDC : TwbSignature = 'CSDC'; - CSDI : TwbSignature = 'CSDI'; - CSDT : TwbSignature = 'CSDT'; - CSFL : TwbSignature = 'CSFL'; { New to Skyrim } - CSGD : TwbSignature = 'CSGD'; { New to Skyrim } - CSLR : TwbSignature = 'CSLR'; { New to Skyrim } - CSMD : TwbSignature = 'CSMD'; { New to Skyrim } - CSME : TwbSignature = 'CSME'; { New to Skyrim } - CSTY : TwbSignature = 'CSTY'; - CTDA : TwbSignature = 'CTDA'; - DALC : TwbSignature = 'DALC'; { New to Skyrim } - DATA : TwbSignature = 'DATA'; - DEBR : TwbSignature = 'DEBR'; - DELE : TwbSignature = 'DELE'; - DEMO : TwbSignature = 'DEMO'; { New to Skyrim } - DESC : TwbSignature = 'DESC'; - DEST : TwbSignature = 'DEST'; - DEVA : TwbSignature = 'DEVA'; { New to Skyrim } - DFTF : TwbSignature = 'DFTF'; { New To Skyrim } - DFTM : TwbSignature = 'DFTM'; { New To Skyrim } - DIAL : TwbSignature = 'DIAL'; - DLBR : TwbSignature = 'DLBR'; - DLVW : TwbSignature = 'DLVW'; - DMAX : TwbSignature = 'DMAX'; { New to Skyrim } - DMDL : TwbSignature = 'DMDL'; - DMDS : TwbSignature = 'DMDS'; { New to Skyrim } - DMDT : TwbSignature = 'DMDT'; - DMIN : TwbSignature = 'DMIN'; { New to Skyrim } - DNAM : TwbSignature = 'DNAM'; - DOBJ : TwbSignature = 'DOBJ'; - DODT : TwbSignature = 'DODT'; - DOFT : TwbSignature = 'DOFT'; { New to Skyrim } - DOOR : TwbSignature = 'DOOR'; - DPLT : TwbSignature = 'DPLT'; { New to Skyrim } - DSTD : TwbSignature = 'DSTD'; - DSTF : TwbSignature = 'DSTF'; - DUAL : TwbSignature = 'DUAL'; - EAMT : TwbSignature = 'EAMT'; - ECOR : TwbSignature = 'ECOR'; { New to Skyrim } - ECZN : TwbSignature = 'ECZN'; - EDID : TwbSignature = 'EDID'; - EFID : TwbSignature = 'EFID'; - EFIT : TwbSignature = 'EFIT'; - EFSH : TwbSignature = 'EFSH'; - EITM : TwbSignature = 'EITM'; - ENAM : TwbSignature = 'ENAM'; - ENCH : TwbSignature = 'ENCH'; - ENIT : TwbSignature = 'ENIT'; - EPF2 : TwbSignature = 'EPF2'; - EPF3 : TwbSignature = 'EPF3'; - EPFD : TwbSignature = 'EPFD'; - EPFT : TwbSignature = 'EPFT'; - EQUP : TwbSignature = 'EQUP'; - ESCE : TwbSignature = 'ESCE'; - ETYP : TwbSignature = 'ETYP'; - EXPL : TwbSignature = 'EXPL'; - EYES : TwbSignature = 'EYES'; - FACT : TwbSignature = 'FACT'; - FCHT : TwbSignature = 'FCHT'; { New to Skyrim } - FLMV : TwbSignature = 'FLMV'; { New to Skyrim } - FLOR : TwbSignature = 'FLOR'; - FLST : TwbSignature = 'FLST'; - FLTR : TwbSignature = 'FLTR'; { New to Skyrim } - FLTV : TwbSignature = 'FLTV'; - FNAM : TwbSignature = 'FNAM'; - FNMK : TwbSignature = 'FNMK'; { New to Skyrim } - FNPR : TwbSignature = 'FNPR'; { New to Skyrim } - FPRT : TwbSignature = 'FPRT'; { New to Skyrim } - FSTP : TwbSignature = 'FSTP'; - FSTS : TwbSignature = 'FSTS'; - FTSF : TwbSignature = 'FTSF'; { New to Skyrim } - FTSM : TwbSignature = 'FTSM'; { New to Skyrim } - FTST : TwbSignature = 'FTST'; { New to Skyrim } - FULL : TwbSignature = 'FULL'; - FURN : TwbSignature = 'FURN'; - GLOB : TwbSignature = 'GLOB'; - GMST : TwbSignature = 'GMST'; - GNAM : TwbSignature = 'GNAM'; - GRAS : TwbSignature = 'GRAS'; - GWOR : TwbSignature = 'GWOR'; { New to Skyrim } - HAIR : TwbSignature = 'HAIR'; { Unused in Skyrim, but contained in Skyrim.esm } - HAZD : TwbSignature = 'HAZD'; - HCLF : TwbSignature = 'HCLF'; { New to Skyrim } - HDPT : TwbSignature = 'HDPT'; - HEAD : TwbSignature = 'HEAD'; { New to Skyrim } - HEDR : TwbSignature = 'HEDR'; - HNAM : TwbSignature = 'HNAM'; - HTID : TwbSignature = 'HTID'; { New to Skyrim } - ICO2 : TwbSignature = 'ICO2'; - ICON : TwbSignature = 'ICON'; - IDLA : TwbSignature = 'IDLA'; - IDLB : TwbSignature = 'IDLB'; - IDLC : TwbSignature = 'IDLC'; - IDLE : TwbSignature = 'IDLE'; - IDLF : TwbSignature = 'IDLF'; - IDLM : TwbSignature = 'IDLM'; - IDLT : TwbSignature = 'IDLT'; - IMAD : TwbSignature = 'IMAD'; - IMGS : TwbSignature = 'IMGS'; - IMSP : TwbSignature = 'IMSP'; { New to Skyrim } - INAM : TwbSignature = 'INAM'; - INCC : TwbSignature = 'INCC'; { New to Skyrim } - INDX : TwbSignature = 'INDX'; - INFO : TwbSignature = 'INFO'; - INGR : TwbSignature = 'INGR'; - INTV : TwbSignature = 'INTV'; - IPCT : TwbSignature = 'IPCT'; - IPDS : TwbSignature = 'IPDS'; - ITXT : TwbSignature = 'ITXT'; - JAIL : TwbSignature = 'JAIL'; { New To Skyrim } - JNAM : TwbSignature = 'JNAM'; - JOUT : TwbSignature = 'JOUT'; { New To Skyrim } - KEYM : TwbSignature = 'KEYM'; - KNAM : TwbSignature = 'KNAM'; - KSIZ : TwbSignature = 'KSIZ'; - KWDA : TwbSignature = 'KWDA'; - KYWD : TwbSignature = 'KYWD'; - LAND : TwbSignature = 'LAND'; - LCEC : TwbSignature = 'LCEC'; { New to Skyrim } - LCEP : TwbSignature = 'LCEP'; { New to Skyrim } - LCID : TwbSignature = 'LCID'; { New to Skyrim } - LCPR : TwbSignature = 'LCPR'; { New to Skyrim } - LCRT : TwbSignature = 'LCRT'; - LCSR : TwbSignature = 'LCSR'; { New to Skyrim } - LCTN : TwbSignature = 'LCTN'; - LCUN : TwbSignature = 'LCUN'; { New to Skyrim } - LENS : TwbSignature = 'LENS'; { New to SSE } - LFSD : TwbSignature = 'LFSD'; { New to SSE } - LFSP : TwbSignature = 'LFSP'; { New to SSE } - LGTM : TwbSignature = 'LGTM'; - LIGH : TwbSignature = 'LIGH'; - LLCT : TwbSignature = 'LLCT'; {New to Skyrim, part of LVLI 'Count'} - LNAM : TwbSignature = 'LNAM'; - LSCR : TwbSignature = 'LSCR'; - LTEX : TwbSignature = 'LTEX'; - LTMP : TwbSignature = 'LTMP'; - LVLC : TwbSignature = 'LVLC'; - LVLD : TwbSignature = 'LVLD'; - LVLF : TwbSignature = 'LVLF'; - LVLG : TwbSignature = 'LVLG'; - LVLI : TwbSignature = 'LVLI'; - LVLN : TwbSignature = 'LVLN'; - LVLO : TwbSignature = 'LVLO'; - LVSP : TwbSignature = 'LVSP'; - MAST : TwbSignature = 'MAST'; - MATO : TwbSignature = 'MATO'; - MATT : TwbSignature = 'MATT'; - MCHT : TwbSignature = 'MCHT'; { New to Skyrim } - MDOB : TwbSignature = 'MDOB'; - MESG : TwbSignature = 'MESG'; - MGEF : TwbSignature = 'MGEF'; - MHDT : TwbSignature = 'MHDT'; { New to Skyrim } - MIC2 : TwbSignature = 'MIC2'; - MICO : TwbSignature = 'MICO'; - MISC : TwbSignature = 'MISC'; - MNAM : TwbSignature = 'MNAM'; - MO2S : TwbSignature = 'MO2S'; - MO2T : TwbSignature = 'MO2T'; - MO3S : TwbSignature = 'MO3S'; - MO3T : TwbSignature = 'MO3T'; - MO4S : TwbSignature = 'MO4S'; - MO4T : TwbSignature = 'MO4T'; - MO5S : TwbSignature = 'MO5S'; { New to Skyrim } - MO5T : TwbSignature = 'MO5T'; { New to Skyrim } - MOD2 : TwbSignature = 'MOD2'; - MOD3 : TwbSignature = 'MOD3'; - MOD4 : TwbSignature = 'MOD4'; - MOD5 : TwbSignature = 'MOD5'; { New to Skyrim } - MODD : TwbSignature = 'MODD'; - MODL : TwbSignature = 'MODL'; - MODS : TwbSignature = 'MODS'; - MODT : TwbSignature = 'MODT'; - MOVT : TwbSignature = 'MOVT'; - MPAI : TwbSignature = 'MPAI'; { New To Skyrim } - MPAV : TwbSignature = 'MPAV'; { New To Skyrim } - MPRT : TwbSignature = 'MPRT'; { New to Skyrim } - MSTT : TwbSignature = 'MSTT'; - MTNM : TwbSignature = 'MTNM'; { New to Skyrim } - MTYP : TwbSignature = 'MTYP'; { New To Skyrim } - MUSC : TwbSignature = 'MUSC'; - MUST : TwbSignature = 'MUST'; - NAM0 : TwbSignature = 'NAM0'; - NAM1 : TwbSignature = 'NAM1'; - NAM2 : TwbSignature = 'NAM2'; - NAM3 : TwbSignature = 'NAM3'; - NAM4 : TwbSignature = 'NAM4'; - NAM5 : TwbSignature = 'NAM5'; - NAM6 : TwbSignature = 'NAM6'; - NAM7 : TwbSignature = 'NAM7'; - NAM8 : TwbSignature = 'NAM8'; - NAM9 : TwbSignature = 'NAM9'; - NAMA : TwbSignature = 'NAMA'; { New to Skyrim } - NAME : TwbSignature = 'NAME'; - NAVI : TwbSignature = 'NAVI'; - NAVM : TwbSignature = 'NAVM'; - NEXT : TwbSignature = 'NEXT'; - NNAM : TwbSignature = 'NNAM'; - NPC_ : TwbSignature = 'NPC_'; - NULL : TwbSignature = 'NULL'; - NVER : TwbSignature = 'NVER'; - NVMI : TwbSignature = 'NVMI'; - NVNM : TwbSignature = 'NVNM'; { New to Skyrim } - NVPP : TwbSignature = 'NVPP'; { New to Skyrim } - NVSI : TwbSignature = 'NVSI'; { New to Dawnguard } - OBND : TwbSignature = 'OBND'; - OCOR : TwbSignature = 'OCOR'; { New to Skyrim } - OFST : TwbSignature = 'OFST'; - ONAM : TwbSignature = 'ONAM'; - OTFT : TwbSignature = 'OTFT'; - PACK : TwbSignature = 'PACK'; - PARW : TwbSignature = 'PARW'; { New to Skyrim } - PBAR : TwbSignature = 'PBAR'; { New to Skyrim } - PBEA : TwbSignature = 'PBEA'; { New to Skyrim } - PCON : TwbSignature = 'PCON'; { New to Skyrim } - PDTO : TwbSignature = 'PDTO'; { New to Skyrim } - PERK : TwbSignature = 'PERK'; - PFIG : TwbSignature = 'PFIG'; - PFLA : TwbSignature = 'PFLA'; { New to Skyrim } - PFO2 : TwbSignature = 'PFO2'; { New to Skyrim } - PFOR : TwbSignature = 'PFOR'; { New to Skyrim } - PFPC : TwbSignature = 'PFPC'; - PGRE : TwbSignature = 'PGRE'; - PHTN : TwbSignature = 'PHTN'; { New to Skyrim } - PHWT : TwbSignature = 'PHWT'; { New to Skyrim } - PHZD : TwbSignature = 'PHZD'; - PKC2 : TwbSignature = 'PKC2'; { New to Skyrim } - PKCU : TwbSignature = 'PKCU'; { New to Skyrim } - PKDT : TwbSignature = 'PKDT'; - PKID : TwbSignature = 'PKID'; - PLCN : TwbSignature = 'PLCN'; { New to Skyrim } - PLDT : TwbSignature = 'PLDT'; - PLVD : TwbSignature = 'PLVD'; { New to Skyrim } - PLYR : TwbSignature = 'PLYR'; - PMIS : TwbSignature = 'PMIS'; - PNAM : TwbSignature = 'PNAM'; - POBA : TwbSignature = 'POBA'; - POCA : TwbSignature = 'POCA'; - POEA : TwbSignature = 'POEA'; - PRCB : TwbSignature = 'PRCB'; { New to Skyrim } - PRKC : TwbSignature = 'PRKC'; - PRKE : TwbSignature = 'PRKE'; - PRKF : TwbSignature = 'PRKF'; - PRKR : TwbSignature = 'PRKR'; { New to Skyrim } - PRKZ : TwbSignature = 'PRKZ'; { New to Skyrim } - PROJ : TwbSignature = 'PROJ'; - PSDT : TwbSignature = 'PSDT'; - PTDA : TwbSignature = 'PTDA'; { New to Skyrim } - PWAT : TwbSignature = 'PWAT'; { Unused in Skyrim, but contained in Skyrim.esm } - QNAM : TwbSignature = 'QNAM'; - QOBJ : TwbSignature = 'QOBJ'; - QSDT : TwbSignature = 'QSDT'; - QSTA : TwbSignature = 'QSTA'; - QTGL : TwbSignature = 'QTGL'; { New To Skyrim } - QUAL : TwbSignature = 'QUAL'; { New To Skyrim } - QUST : TwbSignature = 'QUST'; - RACE : TwbSignature = 'RACE'; - RCEC : TwbSignature = 'RCEC'; { New To Skyrim } - RCLR : TwbSignature = 'RCLR'; - RCPR : TwbSignature = 'RCPR'; { New to Dawnguard } - RCSR : TwbSignature = 'RCSR'; { New To Skyrim } - RCUN : TwbSignature = 'RCUN'; { New To Skyrim } - RDAT : TwbSignature = 'RDAT'; - RDGS : TwbSignature = 'RDGS'; - RDMO : TwbSignature = 'RDMO'; - RDMP : TwbSignature = 'RDMP'; - RDOT : TwbSignature = 'RDOT'; - RDSA : TwbSignature = 'RDSA'; { New to Skyrim } - RDWT : TwbSignature = 'RDWT'; - REFR : TwbSignature = 'REFR'; - REGN : TwbSignature = 'REGN'; - RELA : TwbSignature = 'RELA'; - REPL : TwbSignature = 'REPL'; - RGDL : TwbSignature = 'RGDL';{ Unused in Skyrim, but contained in Skyrim.esm } - REVB : TwbSignature = 'REVB'; - RFCT : TwbSignature = 'RFCT'; - RNAM : TwbSignature = 'RNAM'; - RNMV : TwbSignature = 'RNMV'; { New to Skyrim } - RPLD : TwbSignature = 'RPLD'; - RPLI : TwbSignature = 'RPLI'; - RPRF : TwbSignature = 'RPRF'; { New To Skyrim } - RPRM : TwbSignature = 'RPRM'; { New To Skyrim } - SCDA : TwbSignature = 'SCDA'; - SCEN : TwbSignature = 'SCEN'; - SCHR : TwbSignature = 'SCHR'; - SCOL : TwbSignature = 'SCOL'; { Unused in Skyrim, but contained in Skyrim.esm } - SCPT : TwbSignature = 'SCPT'; { Unused in Skyrim, but contained in Skyrim.esm } - SCRL : TwbSignature = 'SCRL'; - SCRN : TwbSignature = 'SCRN'; - SCRO : TwbSignature = 'SCRO'; - SCTX : TwbSignature = 'SCTX'; - SDSC : TwbSignature = 'SDSC'; { New to Skyrim } - SHOU : TwbSignature = 'SHOU'; - SHRT : TwbSignature = 'SHRT'; { New to Skyrim } - SLCP : TwbSignature = 'SLCP'; - SLGM : TwbSignature = 'SLGM'; - SMBN : TwbSignature = 'SMBN'; - SMEN : TwbSignature = 'SMEN'; - SMQN : TwbSignature = 'SMQN'; - SNAM : TwbSignature = 'SNAM'; - SNCT : TwbSignature = 'SNCT'; - SNDD : TwbSignature = 'SNDD'; - SNDR : TwbSignature = 'SNDR'; - SNMV : TwbSignature = 'SNMV'; { New to Skyrim } - SOFT : TwbSignature = 'SOFT'; { New to Skyrim } - SOPM : TwbSignature = 'SOPM'; - SOUL : TwbSignature = 'SOUL'; - SOUN : TwbSignature = 'SOUN'; - SPCT : TwbSignature = 'SPCT'; { New to Skyrim } - SPED : TwbSignature = 'SPED'; { New To Skyrim } - SPEL : TwbSignature = 'SPEL'; - SPGD : TwbSignature = 'SPGD'; - SPIT : TwbSignature = 'SPIT'; - SPLO : TwbSignature = 'SPLO'; - SPMV : TwbSignature = 'SPMV'; { New To Skyrim } - SPOR : TwbSignature = 'SPOR'; { New to Skyrim } - STAT : TwbSignature = 'STAT'; - STOL : TwbSignature = 'STOL'; { New to Skyrim } - SWMV : TwbSignature = 'SWMV'; { New to Skyrim } - TACT : TwbSignature = 'TACT'; - TCLT : TwbSignature = 'TCLT'; - TES4 : TwbSignature = 'TES4'; - TIAS : TwbSignature = 'TIAS'; { New to Skyrim } - TIFC : TwbSignature = 'TIFC'; { New To Skyrim } - TINC : TwbSignature = 'TINC'; { New to Skyrim } - TIND : TwbSignature = 'TIND'; { New to Skyrim } - TINI : TwbSignature = 'TINI'; { New to Skyrim } - TINL : TwbSignature = 'TINL'; { New to Skyrim } - TINP : TwbSignature = 'TINP'; { New to Skyrim } - TINT : TwbSignature = 'TINT'; { New to Skyrim } - TINV : TwbSignature = 'TINV'; { New to Skyrim } - TIRS : TwbSignature = 'TIRS'; { New to Skyrim } - TNAM : TwbSignature = 'TNAM'; - TPIC : TwbSignature = 'TPIC'; - TPLT : TwbSignature = 'TPLT'; - TRDT : TwbSignature = 'TRDT'; - TREE : TwbSignature = 'TREE'; - TVDT : TwbSignature = 'TVDT'; { New To Skyrim } - TWAT : TwbSignature = 'TWAT'; { New To Skyrim } - TX00 : TwbSignature = 'TX00'; - TX01 : TwbSignature = 'TX01'; - TX02 : TwbSignature = 'TX02'; - TX03 : TwbSignature = 'TX03'; - TX04 : TwbSignature = 'TX04'; - TX05 : TwbSignature = 'TX05'; - TX06 : TwbSignature = 'TX06'; { New To Skyrim } - TX07 : TwbSignature = 'TX07'; { New To Skyrim } - TXST : TwbSignature = 'TXST'; - UNAM : TwbSignature = 'UNAM'; - UNES : TwbSignature = 'UNES'; { New To Skyrim } - VATS : TwbSignature = 'VATS'; - VCLR : TwbSignature = 'VCLR'; - VENC : TwbSignature = 'VENC'; { New To Skyrim } - VEND : TwbSignature = 'VEND'; { New To Skyrim } - VENV : TwbSignature = 'VENV'; { New To Skyrim } - VHGT : TwbSignature = 'VHGT'; - VMAD : TwbSignature = 'VMAD'; - VNAM : TwbSignature = 'VNAM'; - VNML : TwbSignature = 'VNML'; - VOLI : TwbSignature = 'VOLI'; { New To SSE } - VTCK : TwbSignature = 'VTCK'; - VTEX : TwbSignature = 'VTEX'; - VTXT : TwbSignature = 'VTXT'; - VTYP : TwbSignature = 'VTYP'; - WAIT : TwbSignature = 'WAIT'; { New To Skyrim } - WATR : TwbSignature = 'WATR'; - WBDT : TwbSignature = 'WBDT'; { New to Skyrim } - WCTR : TwbSignature = 'WCTR'; { New To Skyrim } - WEAP : TwbSignature = 'WEAP'; - WKMV : TwbSignature = 'WKMV'; { New to Skyrim } - WLST : TwbSignature = 'WLST'; - WNAM : TwbSignature = 'WNAM'; - WOOP : TwbSignature = 'WOOP'; - WRLD : TwbSignature = 'WRLD'; - WTHR : TwbSignature = 'WTHR'; - XACT : TwbSignature = 'XACT'; - XALP : TwbSignature = 'XALP'; { New To Skyrim } - XAPD : TwbSignature = 'XAPD'; - XAPR : TwbSignature = 'XAPR'; - XATR : TwbSignature = 'XATR'; { New To Dawnguard } - XCAS : TwbSignature = 'XCAS'; - XCCM : TwbSignature = 'XCCM'; - XCHG : TwbSignature = 'XCHG'; - XCIM : TwbSignature = 'XCIM'; - XCLC : TwbSignature = 'XCLC'; - XCLL : TwbSignature = 'XCLL'; - XCLP : TwbSignature = 'XCLP'; - XCLR : TwbSignature = 'XCLR'; - XCLW : TwbSignature = 'XCLW'; - XCMO : TwbSignature = 'XCMO'; - XCNT : TwbSignature = 'XCNT'; - XCVL : TwbSignature = 'XCVL'; { New To Skyrim } - XCWT : TwbSignature = 'XCWT'; - XCZA : TwbSignature = 'XCZA'; { New To Skyrim } - XCZC : TwbSignature = 'XCZC'; { New To Skyrim } - XCZR : TwbSignature = 'XCZR'; { New To Skyrim } - XDCR : TwbSignature = 'XDCR'; - XEMI : TwbSignature = 'XEMI'; - XESP : TwbSignature = 'XESP'; - XEZN : TwbSignature = 'XEZN'; - XFVC : TwbSignature = 'XFVC'; { New To Skyrim } - XGLB : TwbSignature = 'XGLB'; - XHLP : TwbSignature = 'XHLP'; - XHOR : TwbSignature = 'XHOR'; { New To Skyrim } - XHTW : TwbSignature = 'XHTW'; { New To Skyrim } - XIBS : TwbSignature = 'XIBS'; - XILL : TwbSignature = 'XILL'; { New To Skyrim } - XIS2 : TwbSignature = 'XIS2'; { New To Skyrim } - XLCM : TwbSignature = 'XLCM'; - XLCN : TwbSignature = 'XLCN'; { New To Skyrim } - XLIB : TwbSignature = 'XLIB'; { New To Skyrim } - XLIG : TwbSignature = 'XLIG'; { New To Skyrim } - XLKR : TwbSignature = 'XLKR'; - XLOC : TwbSignature = 'XLOC'; - XLOD : TwbSignature = 'XLOD'; - XLRL : TwbSignature = 'XLRL'; { New To Skyrim } - XLRM : TwbSignature = 'XLRM'; - XLRT : TwbSignature = 'XLRT'; { New To Skyrim } - XLTW : TwbSignature = 'XLTW'; - XMBO : TwbSignature = 'XMBO'; - XMBP : TwbSignature = 'XMBP'; - XMBR : TwbSignature = 'XMBR'; - XMRC : TwbSignature = 'XMRC'; - XMRK : TwbSignature = 'XMRK'; - XNAM : TwbSignature = 'XNAM'; - XNDP : TwbSignature = 'XNDP'; - XOCP : TwbSignature = 'XOCP'; - XORD : TwbSignature = 'XORD'; - XOWN : TwbSignature = 'XOWN'; - XPOD : TwbSignature = 'XPOD'; - XPPA : TwbSignature = 'XPPA'; - XPRD : TwbSignature = 'XPRD'; - XPRM : TwbSignature = 'XPRM'; - XPTL : TwbSignature = 'XPTL'; - XPWR : TwbSignature = 'XPWR'; - XRDS : TwbSignature = 'XRDS'; - XRGB : TwbSignature = 'XRGB'; - XRGD : TwbSignature = 'XRGD'; - XRMR : TwbSignature = 'XRMR'; - XRNK : TwbSignature = 'XRNK'; - XSCL : TwbSignature = 'XSCL'; - XSPC : TwbSignature = 'XSPC'; { New To Skyrim } - XTEL : TwbSignature = 'XTEL'; - XTNM : TwbSignature = 'XTNM'; { New To Skyrim } - XTRI : TwbSignature = 'XTRI'; - XWEM : TwbSignature = 'XWEM'; { New To Skyrim } - XWCN : TwbSignature = 'XWCN'; { New To Skyrim } - XWCS : TwbSignature = 'XWCS'; { New To Skyrim } - XWCU : TwbSignature = 'XWCU'; { New To Skyrim } - XXXX : TwbSignature = 'XXXX'; - YNAM : TwbSignature = 'YNAM'; - ZNAM : TwbSignature = 'ZNAM'; - -var - wbPKDTSpecificFlagsUnused : Boolean; - wbEDID: IwbSubRecordDef; - wbCOED: IwbSubRecordDef; - wbXLCM: IwbSubRecordDef; - wbEITM: IwbSubRecordDef; - wbOBND: IwbSubRecordDef; - wbOBNDReq: IwbSubRecordDef; - wbDEST: IwbSubRecordStructDef; - wbDESTActor: IwbSubRecordStructDef; - wbDODT: IwbSubRecordDef; - wbXGLB: IwbSubRecordDef; - wbXRGD: IwbSubRecordDef; - wbXRGB: IwbSubRecordDef; - wbSPLO: IwbSubRecordDef; - wbSPLOs: IwbSubRecordArrayDef; - wbCNTO: IwbSubRecordStructDef; - wbCNTOs: IwbSubRecordArrayDef; - wbAIDT: IwbSubRecordDef; - wbCSDT: IwbSubRecordStructDef; - wbCSDTs: IwbSubRecordArrayDef; - wbFULL: IwbSubRecordDef; - wbFULLActor: IwbSubRecordDef; - wbFULLReq: IwbSubRecordDef; - wbDESC: IwbSubRecordDef; - wbDESCReq: IwbSubRecordDef; - wbXSCL: IwbSubRecordDef; - wbDATAPosRot: IwbSubRecordDef; - wbPosRot: IwbStructDef; - wbMODD: IwbSubRecordDef; - wbMODL: IwbSubRecordStructDef; - wbMODS: IwbSubRecordDef; - wbMO2S: IwbSubRecordDef; - wbMO3S: IwbSubRecordDef; - wbMO4S: IwbSubRecordDef; - wbMODLActor: IwbSubRecordStructDef; - wbMODLReq: IwbSubRecordStructDef; - wbCTDA: IwbSubRecordStructDef; - wbCTDAs: IwbSubRecordArrayDef; - wbCTDAsReq: IwbSubRecordArrayDef; - wbCTDAsCount: IwbSubRecordArrayDef; - wbCTDAsReqCount: IwbSubRecordArrayDef; - wbXLOD: IwbSubRecordDef; - wbXESP: IwbSubRecordDef; - wbICON: IwbSubRecordStructDef; - wbICONReq: IwbSubRecordStructDef; - wbICO2: IwbSubRecordStructDef; - wbActorValue: IwbIntegerDef; - wbETYP: IwbSubRecordDef; - wbETYPReq: IwbSubRecordDef; - wbEFID: IwbSubRecordDef; - wbEFIT: IwbSubRecordDef; - wbEffectsReq: IwbSubRecordArrayDef; - wbFirstPersonFlagsU32: IwbIntegerDef; - wbBODT: IwbSubRecordDef; - wbBOD2: IwbSubRecordDef; - wbBODTBOD2: IwbSubRecordUnionDef; - wbScriptEntry: IwbStructDef; - wbScriptFlags: IwbIntegerDef; - wbScriptPropertyObject: IwbUnionDef; - wbScriptProperties: IwbArrayDef; - wbScriptFragments: IwbStructDef; - wbScriptFragmentsQuest: IwbStructDef; - wbScriptFragmentsInfo: IwbStructDef; - wbScriptFragmentsPack: IwbStructDef; - wbScriptFragmentsScen: IwbStructDef; - wbPLDT: IwbSubRecordDef; - wbPLVD: IwbSubRecordDef; - wbTargetData: IwbStructDef; - wbAttackData: IwbSubRecordStructDef; - wbLLCT: IwbSubRecordDef; - wbLVLD: IwbSubRecordDef; - wbVMAD: IwbSubRecordDef; - wbVMADFragmentedPERK: IwbSubRecordDef; - wbVMADFragmentedPACK: IwbSubRecordDef; - wbVMADFragmentedQUST: IwbSubRecordDef; - wbVMADFragmentedSCEN: IwbSubRecordDef; - wbVMADFragmentedINFO: IwbSubRecordDef; - wbCOCT: IwbSubRecordDef; - wbKSIZ: IwbSubRecordDef; - wbKWDAs: IwbSubRecordDef; - wbReqKWDAs: IwbSubRecordDef; - wbKeywords: IwbSubRecordStructDef; - wbCNAM: IwbSubRecordDef; - wbCNAMReq: IwbSubRecordDef; - wbCITC: IwbSubRecordDef; - wbMGEFData: IwbSubRecordStructDef; - wbMGEFType: IwbIntegerDef; - wbMDOB: IwbSubRecordDef; - wbSPIT: IwbSubRecordDef; - wbDMDSs: IwbSubRecordDef; - wbMO5S: IwbSubRecordDef; - wbSPCT: IwbSubRecordDef; - wbTints: IwbSubRecordArrayDef; - wbMODT: IwbSubRecordDef; - wbDMDT: IwbSubRecordDef; - wbOwnership: IwbSubRecordStructDef; - wbRACE_DATAFlags01: IwbIntegerDef; - wbPhonemeTargets: IwbSubRecordDef; - wbNoseMorphFlags: IwbIntegerDef; - wbBrowMorphFlags: IwbIntegerDef; - wbEyesMorphFlags01: IwbIntegerDef; - wbEyesMorphFlags02: IwbIntegerDef; - wbLipMorphFlags: IwbIntegerDef; - wbPHWT: IwbSubRecordStructDef; - wbMorphs: IwbSubRecordStructDef; - wbHeadPart: IwbSubRecordStructDef; - wbQUSTAliasFlags: IwbSubRecordDef; - wbPDTO: IwbSubRecordDef; - wbPDTOs: IwbSubRecordArrayDef; - wbUNAMs: IwbSubRecordArrayDef; - wbNull: IwbValueDef; - wbTimeInterpolator: IwbStructDef; - wbColorInterpolator: IwbStructDef; - wbYNAM: IwbSubRecordDef; - wbZNAM: IwbSubRecordDef; - wbMaxHeightDataCELL: IwbSubRecordDef; - wbMaxHeightDataWRLD: IwbSubRecordDef; - wbTVDT: IwbSubRecordDef; - wbOFST: IwbSubRecordDef; - wbNVNM: IwbSubRecordDef; - wbNAVIslandData: IwbStructDef; - - -function IsSSE: Boolean; inline; overload; -begin - Result := wbGameMode = gmSSE; -end; - -function IsSSE(const aDef1, aDef2: String): String; inline; overload; -begin - if IsSSE then - Result := aDef1 - else - Result := aDef2; -end; - -function IsSSE(const aDef1, aDef2: IwbSubRecordDef): IwbSubRecordDef; inline; overload; -begin - if IsSSE then - Result := aDef1 - else - Result := aDef2; -end; - - -function Sig2Int(aSignature: TwbSignature): Cardinal; inline; -begin - Result := PCardinal(@aSignature)^; -end; - -function wbEPFDActorValueToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - AsCardinal : Cardinal; - AsFloat : Single; -begin - AsCardinal := aInt; - AsFloat := PSingle(@AsCardinal)^; - aInt := Round(AsFloat); - case aType of - ctToStr: Result := wbActorValueEnum.ToString(aInt, aElement); - ctToSortKey: Result := wbActorValueEnum.ToSortKey(aInt, aElement); - ctCheck: Result := wbActorValueEnum.Check(aInt, aElement); - ctToEditValue: Result := wbActorValueEnum.ToEditValue(aInt, aElement); - ctEditType: Result := 'ComboBox'; - ctEditInfo: Result := wbActorValueEnum.EditInfo[aInt, aElement]; - end; -end; - -function wbEPFDActorValueToInt(const aString: string; const aElement: IwbElement): Int64; -var - AsCardinal : Cardinal; - AsFloat : Single; -begin - AsFloat := wbActorValueEnum.FromEditValue(aString, aElement); - PSingle(@AsCardinal)^ := AsFloat; - Result := AsCardinal; -end; - -function wbCTDAParam2QuestStageToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Stages : IwbContainerElementRef; - Stage : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Parameter #1']; - - if not Assigned(Param1) then - Exit; - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - try - if Supports(MainRecord.ElementByName['Stages'], IwbContainerElementRef, Stages) then begin - for i := 0 to Pred(Stages.ElementCount) do - if Supports(Stages.Elements[i], IwbContainerElementRef, Stage) then begin - j := Stage.ElementNativeValues['INDX\Stage Index']; - s := Trim(Stage.ElementValues['Log Entries\Log Entry\CNAM']); - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.AddObject(t, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbPerkDATAQuestStageToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Param1 : IwbElement; - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Stages : IwbContainerElementRef; - Stage : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Param1 := Container.ElementByName['Quest']; - - if not Assigned(Param1) then - Exit; - - if not Supports(Param1.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - try - if Supports(MainRecord.ElementByName['Stages'], IwbContainerElementRef, Stages) then begin - for i := 0 to Pred(Stages.ElementCount) do - if Supports(Stages.Elements[i], IwbContainerElementRef, Stage) then begin - j := Stage.ElementNativeValues['INDX\Stage Index']; - s := Trim(Stage.ElementValues['Log Entries\Log Entry\CNAM']); - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.AddObject(t, TObject(j)) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbCTDAParam2QuestStageToInt(const aString: string; const aElement: IwbElement): Int64; -var - i : Integer; - s : string; -begin - i := 1; - s := Trim(aString); - while (i <= Length(s)) and (s[i] in ['0'..'9']) do - Inc(i); - s := Copy(s, 1, Pred(i)); - - Result := StrToInt(s); -end; - -function wbREFRNavmeshTriangleToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; - Navmesh : IwbElement; - MainRecord : IwbMainRecord; - Triangles : IwbContainerElementRef; -begin - case aType of - ctToStr: Result := IntToStr(aInt); - ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if not Assigned(aElement) then Exit; - Container := GetContainerRefFromUnionOrValue(aElement); - if not Assigned(Container) then Exit; - - Navmesh := Container.Elements[0]; - - if not Assigned(Navmesh) then - Exit; - - if not Supports(Navmesh.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> NAVM then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - if Supports(MainRecord.ElementByPath['NVNM\Triangles'], IwbContainerElementRef, Triangles) and (aType = ctCheck) then - if aInt >= Triangles.ElementCount then - Result := ''; -end; - -function wbStringToInt(const aString: string; const aElement: IwbElement): Int64; -begin - Result := StrToIntDef(aString, 0); -end; - - -{ Alias to string conversion, requires quest reference or quest record specific to record that references alias } -function wbAliasToStr(aInt: Int64; const aQuestRef: IwbElement; aType: TwbCallbackType): string; -var - MainRecord : IwbMainRecord; - EditInfos : TStringList; - Aliases : IwbContainerElementRef; - Alias : IwbContainerElementRef; - i, j : Integer; - s, t : string; -begin - case aType of - ctToStr: if aInt = -1 then Result := 'None' else - Result := IntToStr(aInt) + ' '; - ctToEditValue: if aInt = -1 then Result := 'None' else - Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: if aInt = -1 then Result := '' else - Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - if (aInt = -1) and (aType <> ctEditType) and (aType <> ctEditInfo) then - Exit; - - if not Assigned(aQuestRef) then - Exit; - - // aQuestRef can be a QUST record or reference to QUST record - if not Supports(aQuestRef, IwbMainRecord, MainRecord) then - if not Supports(aQuestRef.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - MainRecord := MainRecord.WinningOverride; - - if MainRecord.Signature <> QUST then begin - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - end; - Exit; - end; - - case aType of - ctEditType: begin - Result := 'ComboBox'; - Exit; - end; - ctEditInfo: - EditInfos := TStringList.Create; - else - EditInfos := nil; - end; - - try - if Supports(MainRecord.ElementByName['Aliases'], IwbContainerElementRef, Aliases) then begin - for i := 0 to Pred(Aliases.ElementCount) do - if Supports(Aliases.Elements[i], IwbContainerElementRef, Alias) then begin - j := Alias.Elements[0].NativeValue; - s := Alias.ElementEditValues['ALID']; - t := IntToStr(j); - while Length(t) < 3 do - t := '0' + t; - if s <> '' then - t := t + ' ' + s; - if Assigned(EditInfos) then - EditInfos.Add(t) - else if j = aInt then begin - case aType of - ctToStr, ctToEditValue: Result := t; - ctCheck: Result := ''; - end; - Exit; - end; - end; - end; - - case aType of - ctToStr: Result := IntToStr(aInt) + ' '; - ctCheck: Result := ''; - ctEditInfo: begin - EditInfos.Add('None'); - EditInfos.Sort; - Result := EditInfos.CommaText; - end; - end; - finally - FreeAndNil(EditInfos); - end; -end; - -function wbStrToAlias(const aString: string; const aElement: IwbElement): Int64; -var - i : Integer; - s : string; -begin - Result := -1; - - if aString = 'None' then - Exit; - - i := 1; - s := Trim(aString); - while (i <= Length(s)) and (s[i] in ['-', '0'..'9']) do - Inc(i); - s := Copy(s, 1, Pred(i)); - - Result := StrToIntDef(s, -1); -end; - -function wbScriptObjectAliasToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainerElementRef; -begin - if not wbResolveAlias then begin - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: Result := IntToHex64(aInt, 8); - else - Result := ''; - end; - Exit; - end; - - if not Assigned(aElement) then - Exit; - - Container := GetContainerRefFromUnionOrValue(aElement); - - if not Assigned(Container) then - Exit; - - Result := wbAliasToStr(aInt, Container.ElementByName['FormID'], aType); -end; - -function wbPackageLocationAliasToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainer; -begin - if not wbResolveAlias then begin - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: Result := IntToHex64(aInt, 8); - else - Result := ''; - end; - Exit; - end; - - if not Assigned(aElement) then - Exit; - - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.ElementType <> etMainRecord) do - Container := Container.Container; - - if not Assigned(Container) then - Exit; - - Result := wbAliasToStr(aInt, Container.ElementBySignature['QNAM'], aType); -end; - -function wbQuestAliasToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainer; -begin - if not wbResolveAlias then begin - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: Result := IntToHex64(aInt, 8); - else - Result := ''; - end; - Exit; - end; - - if not Assigned(aElement) then - Exit; - - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.ElementType <> etMainRecord) do - Container := Container.Container; - - if not Assigned(Container) then - Exit; - - Result := wbAliasToStr(aInt, Container, aType); -end; - -function wbQuestExternalAliasToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainer; -begin - if not wbResolveAlias then begin - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: Result := IntToHex64(aInt, 8); - else - Result := ''; - end; - Exit; - end; - - if not Assigned(aElement) then - Exit; - - Container := aElement.Container; - - if not Assigned(Container) then - Exit; - - Result := wbAliasToStr(aInt, Container.ElementBySignature['ALEQ'] , aType); -end; - -function wbConditionAliasToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Container : IwbContainer; - MainRecord : IwbMainRecord; - GroupRecord : IwbGroupRecord; -begin - if not wbResolveAlias then begin - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: Result := IntToHex64(aInt, 8); - else - Result := ''; - end; - Exit; - end; - - if not Assigned(aElement) then - Exit; - - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.ElementType <> etMainRecord) do - Container := Container.Container; - - if not Assigned(Container) then - Exit; - - if not Supports(Container, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.Signature = QUST then - Result := wbAliasToStr(aInt, Container, aType) - else if MainRecord.Signature = SCEN then - Result := wbAliasToStr(aInt, Container.ElementBySignature['PNAM'], aType) - else if MainRecord.Signature = PACK then - Result := wbAliasToStr(aInt, Container.ElementBySignature['QNAM'], aType) - else if MainRecord.Signature = INFO then begin - // get DIAL for INFO - if Supports(MainRecord.Container, IwbGroupRecord, GroupRecord) then - if Supports(GroupRecord.ChildrenOf, IwbMainRecord, MainRecord) then - Result := wbAliasToStr(aInt, MainRecord.ElementBySignature['QNAM'], aType); - end else - // this should never be called since aliases in conditions can be in the forms above only - // but just in case - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: Result := IntToHex64(aInt, 8); - else - Result := ''; - end; -end; - -function wbClmtMoonsPhaseLength(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - PhaseLength : Byte; - Masser : Boolean; - Secunda : Boolean; -begin - Result := ''; - if aType = ctToSortKey then begin - Result := IntToHex64(aInt, 2); - end else if aType = ctToStr then begin - PhaseLength := aInt mod 64; - Masser := (aInt and 64) <> 0; - Secunda := (aInt and 128) <> 0; - if Masser then - if Secunda then - Result := 'Masser, Secunda / ' - else - Result := 'Masser / ' - else - if Secunda then - Result := 'Secunda / ' - else - Result := 'No Moon / '; - Result := Result + IntToStr(PhaseLength); - end; -end; - -function wbClmtTime(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - try - Result := TimeToStr( EncodeTime(aInt div 6, (aInt mod 6) * 10, 0, 0) ) - except - Result := IntToStr(aInt) - end - else - Result := ''; -end; - - -var - wbCtdaTypeFlags : IwbFlagsDef; - -function wbCtdaTypeToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - s: string; -begin - Result := ''; - - if not Assigned(wbCtdaTypeFlags) then - wbCtdaTypeFlags := wbFlags([ - {0x01} 'Or', - {0x02} 'Use aliases', - {0x04} 'Use global', - {0x08} 'Use packdata', - {0x10} 'Swap Subject and Target' - ]); -{ - Compare operator (upper 3 bits) - LGE - 000 0=Equal to - 001 1=Not equal to - 010 2=Greater than - 011 3=Greater than or equal to - 100 4=Less than - 101 5=Less than or equal to - - Flags (lower 5 bits) - 0x01=OR (default is to AND conditions together) - 0x02=Parameters (use aliases) : Force function parameters to use quest alias data (exclusive with "use pack data") - 0x04=Use global - 0x08=Use Pack Data : Force function parameters to use pack data (exclusive with "use aliases") - 0x10=Swap Subject and Target -} - case aType of - ctEditType: - Result := 'CheckComboBox'; - ctEditInfo: - Result := 'Equal,Greater,Lesser,Or,"Use Aliases","Use Global","Use Packdata","Swap Subject and Target"'; - ctToEditValue: begin - Result := '00000000'; - case aInt and $E0 of - $00 : Result[1] := '1'; - $40 : Result[2] := '1'; - $60 : begin - Result[1] := '1'; - Result[2] := '1'; - end; - $80 : Result[3] := '1'; - $A0 : begin - Result[1] := '1'; - Result[3] := '1'; - end; - end; - if (aInt and $01) <> 0 then // Or - Result[4] := '1'; - if (aInt and $02) <> 0 then // Use aliases - Result[5] := '1'; - if (aInt and $04) <> 0 then // Use global - Result[6] := '1'; - if (aInt and $08) <> 0 then // Use packdata - Result[7] := '1'; - if (aInt and $10) <> 0 then // Swap Subject and Target - Result[8] := '1'; - end; - ctToStr: begin - case aInt and $E0 of - $00 : Result := 'Equal to'; - $20 : Result := 'Not equal to'; - $40 : Result := 'Greater than'; - $60 : Result := 'Greater than or equal to'; - $80 : Result := 'Less than'; - $A0 : Result := 'Less than or equal to'; - else - Result := '' - end; - s := wbCtdaTypeFlags.ToString(aInt and $1F, aElement); - if s <> '' then - Result := Result + ' / ' + s; - end; - ctToSortKey: begin - Result := IntToHex64(aInt, 2); - Exit; - end; - ctCheck: begin - case aInt and $E0 of - $00, $20, $40, $60, $80, $A0 : Result := ''; - else - Result := '' - end; - s := wbCtdaTypeFlags.Check(aInt and $1F, aElement); - if s <> '' then - Result := Result + ' / ' + s; - end; - end; -end; - -function wbCtdaTypeToInt(const aString: string; const aElement: IwbElement): Int64; -var - s: string; -begin - s := aString + '00000000'; - if s[1] = '1' then begin - if s[2] = '1' then begin - if s[3] = '1' then begin - Result := $00; - end else begin - Result := $60; - end; - end else begin - if s[3] = '1' then begin - Result := $A0; - end else begin - Result := $00; - end; - end; - end else begin - if s[2] = '1' then begin - if s[3] = '1' then begin - Result := $20; - end else begin - Result := $40; - end; - end else begin - if s[3] = '1' then begin - Result := $80; - end else begin - Result := $20; - end; - end; - end; - // Or - if s[4] = '1' then - Result := Result or $01; - // Use aliases - if s[5] = '1' then - Result := Result or $02; - // Use global - if s[6] = '1' then - Result := Result or $04; - // Use packdata - if s[7] = '1' then - Result := Result or $08; - // Swap Subject and Target - if s[8] = '1' then - Result := Result or $10; -end; - -var - wbEventFunctionAndMemberEditInfo: string; - -function wbEventFunctionAndMemberToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - EventFunction, EventMember: Integer; - i, j: Integer; - s1, s2: string; - slMember: TStringList; -begin - Result := ''; - EventFunction := aInt and $FFFF; - EventMember := aInt shr 16; - case aType of - ctToStr, ctToEditValue: begin - Result := wbEventFunctionEnum.ToEditValue(EventFunction, nil); - Result := Result + ':' + wbEventMemberEnum.ToEditValue(EventMember, nil); - end; - ctToSortKey: Result := IntToHex(aInt, 8); - ctCheck: begin - s1 := wbEventFunctionEnum.Check(EventFunction, nil); - if s1 <> '' then - s1 := 'EventFunction' + s1; - s2 := wbEventMemberEnum.Check(EventMember, nil); - if s2 <> '' then - s2 := 'EventMember' + s2; - if (s1 <> '') or (s2 <> '') then - Result := s1 + ':' + s2; - end; - ctEditType: - Result := 'ComboBox'; - ctEditInfo: begin - Result := wbEventFunctionAndMemberEditInfo; - if Result = '' then try - slMember := TStringList.Create; - slMember.CommaText := wbEventMemberEnum.EditInfo[0, nil]; - with TStringList.Create do try - for i := 0 to Pred(wbEventFunctionEnum.NameCount) do - for j := 0 to Pred(slMember.Count) do - Add(wbEventFunctionEnum.Names[i] + ':' + slMember[j]); - Sort; - Result := CommaText; - finally - Free; - end; - wbEventFunctionAndMemberEditInfo := Result; - finally - FreeAndNil(slMember); - end - end; - end; -end; - -function wbEventFunctionAndMemberToInt(const aString: string; const aElement: IwbElement): Int64; -var - EventFunction, EventMember, i: Integer; -begin - i := Pos(':', aString); - if i > 0 then begin - EventFunction := wbEventFunctionEnum.FromEditValue(Copy(aString, 1, i-1), nil); - EventMember := wbEventMemberEnum.FromEditValue(Copy(aString, i+1, Length(aString)), nil); - end - else begin - EventFunction := 0; - EventMember := 0; - end; - Result := EventMember shl 16 + EventFunction; -end; - -procedure wbMESGDNAMAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue : Integer; - Container : IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - OldValue := Integer(aOldValue) and 1; - NewValue := Integer(aNewValue) and 1; - if NewValue = OldValue then - Exit; - if NewValue = 1 then - Container.RemoveElement('TNAM') - else - Container.Add('TNAM', True); - end; -end; - -procedure wbGMSTEDIDAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue : string; - Container : IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - OldValue := aOldValue; - NewValue := aNewValue; - if (Length(OldValue) < 1) or (Length(OldValue) < 1) or (OldValue[1] <> NewValue[1]) then begin - Container.RemoveElement('DATA'); - Container.Add('DATA', True); - end; - end; -end; - -procedure wbFLSTEDIDAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue : string; - OldOrdered, NewOrdered : Boolean; - Container : IwbContainerElementRef; -const - OrderedList = 'OrderedList'; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - OldValue := aOldValue; - NewValue := aNewValue; - - if Length(OldValue) > Length(OrderedList) then - Delete(OldValue, 1, Length(OldValue)-Length(OrderedList)); - if Length(NewValue) > Length(OrderedList) then - Delete(NewValue, 1, Length(NewValue)-Length(OrderedList)); - - OldOrdered := SameText(OldValue, OrderedList); - NewOrdered := SameText(NewValue, OrderedList); - - if OldOrdered <> NewOrdered then - Container.RemoveElement('FormIDs'); - end; -end; - -procedure wbCtdaTypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - OldValue, NewValue: Integer; - Container: IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - // reset value if "use global" has changed - OldValue := aOldValue and $04; - NewValue := aNewValue and $04; - if OldValue <> NewValue then - Container.ElementNativeValues['..\Comparison Value'] := 0; - - {>>> "run on target", no such flag in Skyrim <<<} -// if aNewValue and $02 then begin -// Container.ElementNativeValues['..\Run On'] := 1; -// if Integer(Container.ElementNativeValues['..\Run On']) = 1 then -// aElement.NativeValue := Byte(aNewValue) and not $02; -// end; -end; - -procedure wbAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - Exit; -end; - -function wbMODTCallback(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Strings: TDynStrings; - i: Integer; -begin - Result := ''; - if wbLoaderDone and (aType in [ctToStr, ctToSortKey] ) then begin - Strings := wbContainerHandler.ResolveHash(aInt); - for i := Low(Strings) to High(Strings) do - Result := Result + Strings[i] + ', '; - SetLength(Result, Length(Result) -2 ); - end; -end; - -{>>> Needs revision for Skyrim <<<} -//function wbIdleAnam(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -//begin -// Result := ''; -// case aType of -// ctToStr: begin -// case aInt and not $C0 of -// 0: Result := 'Idle'; -// 1: Result := 'Movement'; -// 2: Result := 'Left Arm'; -// 3: Result := 'Left Hand'; -// 4: Result := 'Weapon'; -// 5: Result := 'Weapon Up'; -// 6: Result := 'Weapon Down'; -// 7: Result := 'Special Idle'; -// 20: Result := 'Whole Body'; -// 21: Result := 'Upper Body'; -// else -// Result := ''; -// end; -// -// if (aInt and $80) = 0 then -// Result := Result + ', Must return a file'; -// if (aInt and $40) = 1 then -// Result := Result + ', Unknown Flag'; -// end; -// ctToSortKey: begin -// Result := IntToHex64(aInt, 2); -// end; -// ctCheck: begin -// case aInt and not $C0 of -// 0..7, 20, 21: Result := ''; -// else -// Result := ''; -// end; -// end; -// end; -//end; - -function wbScaledInt4ToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -const - PlusMinus : array[Boolean] of string = ('+', '-'); -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: Result := FloatToStrF(aInt / 10000, ffFixed, 99, 4); - ctToSortKey: begin - Result := FloatToStrF(aInt / 10000, ffFixed, 99, 4); - if Length(Result) < 22 then - Result := StringOfChar('0', 22 - Length(Result)) + Result; - Result := PlusMinus[aInt < 0] + Result; - end; - ctCheck: Result := ''; - end; -end; - -function wbScaledInt4ToInt(const aString: string; const aElement: IwbElement): Int64; -var - f: Extended; -begin - f := StrToFloat(aString); - f := f * 10000; - Result := Round(f); -end; - -function wbCloudSpeedToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: Result := FloatToStrF((aInt - 127)/127/10, ffFixed, 99, 4); - ctCheck: Result := ''; - end; -end; - -function wbCloudSpeedToInt(const aString: string; const aElement: IwbElement): Int64; -var - f: Extended; -begin - f := StrToFloat(aString); - f := f*10*127 + 127; - Result := Min(Round(f), 254); -end; - -function wbShortXYtoStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - x, y: SmallInt; -begin - y := aInt and $FFFF; - x := aInt shr 16 and $FFFF; - Result := ''; - case aType of - ctToStr, ctToEditValue: Result := Format('%d, %d', [x, y]); - ctCheck: Result := ''; - end; -end; - -function wbStrToShortXY(const aString: string; const aElement: IwbElement): Int64; -var - x, y: SmallInt; - Value: Cardinal; -begin - y := StrToIntDef(Copy(aString, 1, Pred(Pos(', ', aString))), 0); - x := StrToIntDef(Copy(aString, Pos(', ', aString) + 2, Length(aString)), 0); - PWord(@Value)^ := x; - PWord(Cardinal(@Value) + SizeOf(SmallInt))^ := y; - Result := Value; -end; - -function wbHideFFFF(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt, 4) - else if aType = ctToStr then - if aInt = $FFFF then - Result := 'None' - else - Result := IntToStr(aInt); -end; - -function wbAtxtPosition(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - if aType = ctToSortKey then - Result := IntToHex64(aInt div 17, 2) + IntToHex64(aInt mod 17, 2) - else if aType = ctCheck then begin - if (aInt < 0) or (aInt > 288) then - Result := '' - else - Result := ''; - end else if aType = ctToStr then - Result := IntToStr(aInt) + ' -> ' + IntToStr(aInt div 17) + ':' + IntToStr(aInt mod 17); -end; - -function wbGLOBFNAM(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -begin - Result := ''; - case aType of - ctToStr: begin - case aInt of - Ord('s'): Result := 'Short'; - Ord('l'): Result := 'Long'; - Ord('f'): Result := 'Float'; - Ord('b'): Result := 'Boolean'; - else - Result := ''; - end; - end; - ctToSortKey: Result := Chr(aInt); - ctCheck: begin - case aInt of - Ord('s'), Ord('l'), Ord('f'), Ord('b'): Result := ''; - else - Result := ''; - end; - end; - end; -end; - -function wbPlacedAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec: IwbRecord; - Container: IwbContainer; - s: string; - Cell: IwbMainRecord; - Position: TwbVector; - Grid: TwbGridCell; -begin - Result := ''; - - Rec := aMainRecord.RecordBySignature['NAME']; - if Assigned(Rec) then begin - s := Trim(Rec.Value); - if s <> '' then - Result := 'places ' + s; - end; - - Container := aMainRecord.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if Assigned(Container) then begin - s := Trim(Container.Name); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'in ' + s; - - // grid position of persistent reference in exterior persistent cell (interior cells are not persistent) - if Supports(aMainRecord.Container, IwbGroupRecord, Container) then - Cell := IwbGroupRecord(Container).ChildrenOf; - if Assigned(Cell) and Cell.IsPersistent and (Cell.Signature = 'CELL') then - if aMainRecord.GetPosition(Position) then begin - Grid := wbPositionToGridCell(Position); - Result := Result + ' at ' + IntToStr(Grid.x) + ',' + IntToStr(Grid.y); - end; - end; - end; -end; - -function wbINFOAddInfo(const aMainRecord: IwbMainRecord): string; -var - Container: IwbContainer; - s: string; -begin - Result := Trim(aMainRecord.ElementValues['Responses\Response\NAM1']); - if Result <> '' then - Result := '''' + Result + ''''; - - Container := aMainRecord.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if Assigned(Container) then begin - s := Trim(Container.Name); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'in ' + s; - end; - end; - - s := Trim(aMainRecord.ElementValues['QNAM']); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'for ' + s; - end; -end; - -function wbNAVMAddInfo(const aMainRecord: IwbMainRecord): string; -var - Container: IwbContainer; - s: string; -begin - Result := ''; - - Container := aMainRecord.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if Assigned(Container) then begin - s := Trim(Container.Name); - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + 'in ' + s; - end; - end; -end; - -function wbCellAddInfo(const aMainRecord: IwbMainRecord): string; -var - Rec: IwbRecord; - Container: IwbContainer; - GroupRecord : IwbGroupRecord; - s: string; -begin - Result := ''; - - if not aMainRecord.IsPersistent then begin - Rec := aMainRecord.RecordBySignature['XCLC']; - if Assigned(Rec) then - Result := 'at ' + Rec.Elements[0].Value + ',' + Rec.Elements[1].Value; - end; - - Container := aMainRecord.Container; - while Assigned(Container) and not - (Supports(Container, IwbGroupRecord, GroupRecord) and (GroupRecord.GroupType = 1)) do - Container := Container.Container; - - if Assigned(Container) then begin - s := wbFormID.ToString(GroupRecord.GroupLabel, aMainRecord); - if s <> '' then begin - if Result <> '' then - s := s + ' '; - Result := 'in ' + s + Result; - end; - end; -end; - -procedure wbCTDARunOnAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - if aOldValue <> aNewValue then - if aNewValue <> 2 then - aElement.Container.ElementNativeValues['Reference'] := 0; -end; - -{>>> Needs revision for Skyrim <<<} -procedure wbPERKPRKETypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainerElementRef; -// rDATA : IwbRecord; -begin - if aOldValue <> aNewValue then - if Supports(aElement.Container, IwbContainerElementRef, Container) then begin - if Supports(Container.Container, IwbContainerElementRef, Container) then begin - Container.RemoveElement('DATA'); - Container.Add('DATA', True); - Container.RemoveElement('Perk Conditions'); - Container.RemoveElement('Entry Point Function Parameters'); - if aNewValue = 2 then begin - Container.Add('EPFT', True); - Container.ElementNativeValues['DATA\Entry Point\Function'] := 2; - end; - end; - end; -end; - -function wbNPCLevelDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; - i: Int64; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - i := Container.ElementByName['Flags'].NativeValue; - if i and $00000080 <> 0 then - Result := 1; -end; - -function wbMGEFAssocItemDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - Archtype : Variant; - DataContainer : IwbDataContainer; - Element : IwbElement; -const - OffsetArchtype = 56; - -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - VarClear(ArchType); - Element := Container.ElementByName['Archtype']; - if Assigned(Element) then - ArchType := Element.NativeValue - else if Supports(Container, IwbDataContainer, DataContainer) and - DataContainer.IsValidOffset(aBasePtr, aEndPtr, OffsetArchtype) then begin // we are part a proper structure - aBasePtr := Pointer(Cardinal(aBasePtr) + OffsetArchtype); - ArchType := PCardinal(aBasePtr)^; - end; - - if not VarIsEmpty(ArchType) then - case Integer(ArchType) of - 12: Result := 1; // Light - 17: Result := 2; // Bound Item - 18: Result := 3; // Summon Creature - 25: Result := 4; // Guide - 34: Result := 8; // Peak Mod - 35: Result := 5; // Cloak - 36: Result := 6; // Werewolf - 39: Result := 7; // Enhance Weapon - 40: Result := 4; // Spawn Hazard - 46: Result := 6; // Vampire Lord - end; -end; - -procedure wbMGEFAssocItemAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainer; - Element : IwbElement; -begin - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - if (aNewValue <> 0) then begin - Element := Container.ElementByName['Archtype']; - if Assigned(Element) and (Element.NativeValue = 0) then - Element.NativeValue := $FF; // Signals ArchType that it should not mess with us on the next change! - // I assume this will alo protect Second AV Weight (The two actor values are after ArchType) - end; -end; - -procedure wbMGEFAV2WeightAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainer; - Element : IwbElement; -begin - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - if (aNewValue <> 0.0) then begin - Element := Container.ElementByName['Archtype']; - if Assigned(Element) and (Element.NativeValue = 0) then - Element.NativeValue := $FF; // Signals ArchType that it should not mess with us on the next change! - end; -end; - -procedure wbMGEFArchtypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container: IwbContainerElementRef; -begin - if VarSameValue(aOldValue, aNewValue) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if (aNewValue < $FF) and (aOldValue < $FF) then begin - Container.ElementNativeValues['..\Assoc. Item'] := 0; - case Integer(aNewValue) of - 06: Container.ElementNativeValues['..\Actor Value'] := 00;//Agression - 07: Container.ElementNativeValues['..\Actor Value'] := 01;//Confidence - 08: Container.ElementNativeValues['..\Actor Value'] := 00;//Agression - 11: Container.ElementNativeValues['..\Actor Value'] := 54;//Invisibility - 21: Container.ElementNativeValues['..\Actor Value'] := 53;//Paralysis - 24: Container.ElementNativeValues['..\Actor Value'] := 01;//Confidence - 38: Container.ElementNativeValues['..\Actor Value'] := 01;//Confidence - 42: Container.ElementNativeValues['..\Actor Value'] := 01;//Confidence - else - Container.ElementNativeValues['..\Actor Value'] := -1; - end; - Container.ElementNativeValues['..\Second Actor Value'] := -1; - Container.ElementNativeValues['..\Second AV Weight'] := 0.0; - end; -end; - -function wbCTDAReferenceDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - if Integer(Container.ElementNativeValues['Run On']) = 2 then - Result := 1; -end; - -function wbNAVIIslandDataDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbMainRecord; - Element : IwbElement; -begin - Result := 0; - - Container := aElement.Container; - while Assigned(Container) and (Container.ElementType <> etsubRecord) do - Container := Container.Container; - - if not Supports(Container, IwbSubRecord, SubRecord) then - Exit; - - Element := SubRecord.ElementByName['Is Island']; - if not Assigned(Element) then - Exit; - - Result := Element.NativeValue; -end; - -function wbNAVIParentDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - SubRecord : IwbMainRecord; - Element : IwbElement; -begin - Result := 0; - - Container := aElement.Container; - while Assigned(Container) and (Container.ElementType <> etsubRecord) do - Container := Container.Container; - - if not Supports(Container, IwbSubRecord, SubRecord) then - Exit; - - Element := SubRecord.ElementByName['Parent Worldspace']; - if not Assigned(Element) then - Exit; - - if (Element.NativeValue = 0) then - Result := 1; -end; - -function wbNVNMParentDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - Current : IwbContainer; - Parent : IwbContainer; - GroupRecord : IwbGroupRecord; - MainRecord : IwbMainRecord; - rData : IwbRecord; - i : integer; -begin - Result := 0; - - Container := aElement.Container; - while Assigned(Container) and (Container.ElementType <> etGroupRecord) do - Container := Container.Container; - - if not Supports(Container, IwbGroupRecord, GroupRecord) then - Exit; - - MainRecord := GroupRecord.ChildrenOf; // This does NOT work while adding master! - - if not Assigned(MainRecord) then begin // we expect: - // plugin \ CELL group \ Block \ Sub Block \ CELL - // \ CELL Children group \ Permanent children group - // \ Temporary children group = GroupRecord = Container - if Assigned(Container) and (Container.ElementType = etGroupRecord) then - Container := Container.Container; - if Assigned(Container) and (Container.ElementType = etGroupRecord) then - Parent := Container.Container; - i := 0; - while (i < Parent.ElementCount) and Supports(Parent.Elements[i], IwbContainer, Current) and (Current <> Container) do - Inc(i); - if (i = 0) or (i = Parent.ElementCount) or not Supports(Parent.Elements[i-1], IwbMainRecord,MainRecord) then begin - wbProgressCallback('Parent of a NVNM is not a MainRecord'); -// Assert(Assigned(MainRecord)); // Better an exception than to destroy the plugin. - Exit; - end; - end; - if (MainRecord.Signature<>CELL) then begin - wbProgressCallback('Parent of a NVNM is not identified as a CELL'); - Assert(MainRecord.Signature=CELL); // Better an exception than to destroy the plugin. - Exit; - end; - - rDATA := MainRecord.RecordBySignature['DATA']; - - if not Assigned(rData) then - Exit; - - i := rData.NativeValue; - - // is interior cell? - if i and 1 <> 0 then - Result := 1; -end; - -function wbCOEDOwnerDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - LinksTo : IwbElement; - MainRecord : IwbMainRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - LinksTo := Container.ElementByName['Owner'].LinksTo; - - if Supports(LinksTo, IwbMainRecord, MainRecord) then - if MainRecord.Signature = 'NPC_' then - Result := 1 - else if MainRecord.Signature = 'FACT' then - Result := 2; -end; - -function wbGMSTUnionDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rEDID: IwbRecord; - s: string; -begin - Result := 1; - rEDID := aElement.Container.RecordBySignature[EDID]; - if Assigned(rEDID) then begin - s := rEDID.Value; - if Length(s) > 0 then - case s[1] of - 's': Result := 0; {String} {>>> Localization Strings <<<} - 'i': Result := 1; {intS32} - 'f': Result := 2; {Float} - 'b': Result := 3; {Boolean} - end; - end; -end; - -function wbFLSTLNAMIsSorted(const aContainer: IwbContainer): Boolean; -var - rEDID : IwbRecord; - s : string; -const - OrderedList = 'OrderedList'; -begin - Result := False; {>>> Should not be sorted according to Arthmoor and JustinOther <<<} - rEDID := aContainer.RecordBySignature[EDID]; - if Assigned(rEDID) then begin - s := rEDID.Value; - if Length(s) > Length(OrderedList) then - Delete(s, 1, Length(s)-Length(OrderedList)); - if SameText(s, OrderedList) then - Result := False; - end; -end; - -function wbPerkDATADecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rPRKE: IwbRecord; - eType: IwbElement; -begin - Result := 0; - rPRKE := aElement.Container.RecordBySignature[PRKE]; - if Assigned(rPRKE) then begin - eType := rPRKE.ElementByName['Type']; - if Assigned(eType) then begin - Result := eType.NativeValue; - end; - end; -end; - -function wbEPFDDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainerElementRef; -begin - Result := 0; - if not Assigned(aElement) then - Exit; - if not Supports(aElement.Container, IwbContainerElementRef, Container) then - Exit; - Result := Container.ElementNativeValues['EPFT']; - if Result = 2 then - case Integer(Container.ElementNativeValues['..\DATA\Entry Point\Function']) of - 5, 12, 13, 14: Result := 8; - end; -end; - -function wbSPGDFormatDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - MainRecord: IwbMainRecord; -begin - Result := 0; - if not Assigned(aElement) then - Exit; - if not Supports(aElement.Container, IwbMainRecord, MainRecord) then - Exit; - if MainRecord.Version < 44 then - Result := 1; -end; - - -{>>> For VMAD <<<} -function wbScriptObjFormatDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - ObjFormat: Integer; - Container: IwbContainer; -begin - Result := 0; - - Container := aElement.Container; - while Assigned(Container) and (Container.ElementType <> etSubRecord) do - Container := Container.Container; - - if not Assigned(Container) then Exit; - - ObjFormat := Container.ElementNativeValues['Object Format']; - - if ObjFormat = 1 then - Result := 1; -end; - -{>>> For VMAD <<<} -function wbScriptPropertyDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - case Integer(Container.ElementNativeValues['Type']) of - 1: Result := 1; - 2: Result := 2; - 3: Result := 3; - 4: Result := 4; - 5: Result := 5; - 11: Result := 6; - 12: Result := 7; - 13: Result := 8; - 14: Result := 9; - 15: Result := 10; - end; -end; - -procedure wbScriptPropertyTypeAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainerElementRef; -begin - if aOldValue <> aNewValue then - if Supports(aElement.Container, IwbContainerElementRef, Container) then - Container.ElementByName['Value'].SetToDefault; -end; - -{>>> For VMAD <<<} -function wbScriptFragmentExistsDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - MainRecord : IwbMainRecord; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.ElementType <> etMainRecord) do - Container := Container.Container; - if not Assigned(Container) then Exit; - - Supports(Container, IwbMainRecord, MainRecord); - if MainRecord.Signature = INFO then - Result := 1 - else if MainRecord.Signature = PACK then - Result := 2 - else if MainRecord.Signature = PERK then - Result := 3 - else if MainRecord.Signature = QUST then - Result := 4 - else if MainRecord.Signature = SCEN then - Result := 5; -end; - -{>>> For VMAD <<<} -function wbScriptFragmentsQuestCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbContainer; - -begin - Result := 0; - if aElement.ElementType = etValue then - Container := aElement.Container - else - Container := aElement as IwbContainer; - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.Name <> 'Script Fragments') do - Container := Container.Container; - if not Assigned(Container) then Exit; - - Result := Integer(Container.ElementNativeValues['fragmentCount']); -end; - -{>>> For VMAD <<<} -function wbScriptFragmentsInfoCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbContainer; - F : Integer; - i : Integer; -begin - Result := 0; - if aElement.ElementType = etValue then - Container := aElement.Container - else - Container := aElement as IwbContainer; - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.Name <> 'Script Fragments') do - Container := Container.Container; - if not Assigned(Container) then Exit; - - F := Container.ElementByName['Flags'].NativeValue; - for i := 0 to 2 do begin - if (F and 1) = 1 then - Inc(Result); - F := F shr 1; - end; - for i := 3 to 7 do begin - if (F and 1) = 1 then begin - Inc(Result); - if Assigned(wbProgressCallback) then - wbProgressCallback('==='+aElement.Name+' ['+Container.Name+':'+Container.Path+'] = unknown info VMAD flag bit '+IntToStr(i)); - end; - F := F shr 1; - end; -end; - -{>>> For VMAD <<<} -function wbScriptFragmentsSceneCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbContainer; - F : Integer; - i : Integer; -begin - Result := 0; - if aElement.ElementType = etValue then - Container := aElement.Container - else - Container := aElement as IwbContainer; - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.Name <> 'Script Fragments') do - Container := Container.Container; - if not Assigned(Container) then Exit; - - F := Container.ElementByName['Flags'].NativeValue; - for i := 0 to 2 do begin - if (F and 1) = 1 then - Inc(Result); - F := F shr 1; - end; - for i := 3 to 7 do begin - if (F and 1) = 1 then begin - Inc(Result); - if Assigned(wbProgressCallback) then - wbProgressCallback('==='+aElement.Name+' ['+Container.Name+':'+Container.Path+'] = unknown scene VMAD flag bit '+IntToStr(i)); - end; - F := F shr 1; - end; -end; - -{>>> For VMAD <<<} -function wbScriptFragmentsPackCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbContainer; - F : Integer; - i : Integer; -begin - Result := 0; - if aElement.ElementType = etValue then - Container := aElement.Container - else - Container := aElement as IwbContainer; - if not Assigned(Container) then Exit; - while Assigned(Container) and (Container.Name <> 'Script Fragments') do - Container := Container.Container; - if not Assigned(Container) then Exit; - - F := Container.ElementByName['Flags'].NativeValue; - for i := 0 to 7 do begin - if (F and 1) = 1 then - Inc(Result); - F := F shr 1; - end; -end; - -function wbBOOKTeachesDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; - i: Int64; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - i := Container.ElementByName['Flags'].NativeValue; - if i and $00000004 <> 0 then Result := 1; -end; - - -type - TCTDAFunctionParamType = ( - ptNone, - ptInteger, - ptFloat, - ptVariableName, //Integer - ptSex, //Enum: Male, Female - ptActorValue, //Enum: wbActorValue - ptCrimeType, //?? Enum - ptAxis, //?? Char - ptQuestStage, //?? Integer - ptMiscStat, //?? Enum - ptAlignment, //?? Enum - ptEquipType, //?? Enum - ptFormType, //?? Enum - ptCriticalStage, //?? Enum - ptObjectReference, //REFR, ACHR - ptInventoryObject, //ARMO, BOOK, MISC, WEAP, AMMO, KEYM, ALCH, ARMA, LIGH, LVLI, COBJ - ptActor, //ACHR - ptVoiceType, //VTYP - ptIdleForm, //IDLE - ptFormList, //FLST - ptQuest, //QUST - ptFaction, //FACT - ptCell, //CELL - ptClass, //CLAS - ptRace, //RACE - ptActorBase, //NPC_ - ptGlobal, //GLOB - ptWeather, //WTHR - ptPackage, //PACK - ptEncounterZone, //ECZN - ptPerk, //PERK - ptOwner, //FACT, NPC_ - ptFurniture, //FURN - ptMagicItem, //SPEL - ptMagicEffect, //MGEF - ptWorldspace, //WRLD - ptVATSValueFunction, - ptVATSValueParam, - ptReferencableObject, - ptRegion, //REGN - ptKeyword, //KYWD - ptAdvanceAction, // ?? Enum - ptCastingSource, // ?? Enum - ptShout, //SHOU - ptLocation, //LCTN - ptRefType, //LCRT - ptAlias, // index into QUST quest aliases - ptPackdata, // index into PACK package data inputs - ptAssociationType, // ASTP - ptFurnitureAnim, // enum - ptFurnitureEntry, // flags - ptScene, // SCEN - ptWardState, // enum - ptEvent, // Struct - ptEventData // LCTN, KYWD or FLST - ); - - PCTDAFunction = ^TCTDAFunction; - TCTDAFunction = record - Index: Integer; - Name: string; - ParamType1: TCTDAFunctionParamType; - ParamType2: TCTDAFunctionParamType; - ParamType3: TCTDAFunctionParamType; - end; - -const - {>> N means New, V means verified that the name has not changed <<<} - wbCTDAFunctions : array[0..399] of TCTDAFunction = ( -{N} (Index: 0; Name: 'GetWantBlocking'), -{V} (Index: 1; Name: 'GetDistance'; ParamType1: ptObjectReference), -{V} (Index: 5; Name: 'GetLocked'), -{V} (Index: 6; Name: 'GetPos'; ParamType1: ptAxis), -{V} (Index: 8; Name: 'GetAngle'; ParamType1: ptAxis), -{V} (Index: 10; Name: 'GetStartingPos'; ParamType1: ptAxis), -{V} (Index: 11; Name: 'GetStartingAngle'; ParamType1: ptAxis), -{V} (Index: 12; Name: 'GetSecondsPassed'), -{V} (Index: 14; Name: 'GetActorValue'; ParamType1: ptActorValue), -{V} (Index: 18; Name: 'GetCurrentTime'), -{V} (Index: 24; Name: 'GetScale'), -{V} (Index: 25; Name: 'IsMoving'), -{V} (Index: 26; Name: 'IsTurning'), -{V} (Index: 27; Name: 'GetLineOfSight'; ParamType1: ptObjectReference), -{V} (Index: 32; Name: 'GetInSameCell'; ParamType1: ptObjectReference), -{V} (Index: 35; Name: 'GetDisabled'), -{V} (Index: 36; Name: 'MenuMode'; ParamType1: ptInteger), // was ptMenuMode -{V} (Index: 39; Name: 'GetDisease'), -{V} (Index: 41; Name: 'GetClothingValue'), -{V} (Index: 42; Name: 'SameFaction'; ParamType1: ptActor), -{V} (Index: 43; Name: 'SameRace'; ParamType1: ptActor), -{V} (Index: 44; Name: 'SameSex'; ParamType1: ptActor), -{V} (Index: 45; Name: 'GetDetected'; ParamType1: ptActor), -{V} (Index: 46; Name: 'GetDead'), -{V} (Index: 47; Name: 'GetItemCount'; ParamType1: ptInventoryObject), -{V} (Index: 48; Name: 'GetGold'), -{V} (Index: 49; Name: 'GetSleeping'), -{V} (Index: 50; Name: 'GetTalkedToPC'), -{V} (Index: 53; Name: 'GetScriptVariable'; ParamType1: ptObjectReference; ParamType2: ptVariableName), -{V} (Index: 56; Name: 'GetQuestRunning'; ParamType1: ptQuest), -{V} (Index: 58; Name: 'GetStage'; ParamType1: ptQuest), -{V} (Index: 59; Name: 'GetStageDone'; ParamType1: ptQuest; ParamType2: ptQuestStage), -{V} (Index: 60; Name: 'GetFactionRankDifference'; ParamType1: ptFaction; ParamType2: ptActor), -{V} (Index: 61; Name: 'GetAlarmed'), -{V} (Index: 62; Name: 'IsRaining'), -{V} (Index: 63; Name: 'GetAttacked'), -{V} (Index: 64; Name: 'GetIsCreature'), -{V} (Index: 65; Name: 'GetLockLevel'), -{V} (Index: 66; Name: 'GetShouldAttack'; ParamType1: ptActor), -{V} (Index: 67; Name: 'GetInCell'; ParamType1: ptCell), -{V} (Index: 68; Name: 'GetIsClass'; ParamType1: ptClass), -{V} (Index: 69; Name: 'GetIsRace'; ParamType1: ptRace), -{V} (Index: 70; Name: 'GetIsSex'; ParamType1: ptSex), -{V} (Index: 71; Name: 'GetInFaction'; ParamType1: ptFaction), -{V} (Index: 72; Name: 'GetIsID'; ParamType1: ptReferencableObject), -{V} (Index: 73; Name: 'GetFactionRank'; ParamType1: ptFaction), -{V} (Index: 74; Name: 'GetGlobalValue'; ParamType1: ptGlobal), -{V} (Index: 75; Name: 'IsSnowing'), -{V} (Index: 77; Name: 'GetRandomPercent'), -{V} (Index: 79; Name: 'GetQuestVariable'; ParamType1: ptQuest; ParamType2: ptVariableName), -{V} (Index: 80; Name: 'GetLevel'), -{N} (Index: 81; Name: 'IsRotating'), -{V} (Index: 84; Name: 'GetDeadCount'; ParamType1: ptActorBase), -{V} (Index: 91; Name: 'GetIsAlerted'), -{V} (Index: 98; Name: 'GetPlayerControlsDisabled'; ParamType1: ptInteger; ParamType2: ptInteger), -{V} (Index: 99; Name: 'GetHeadingAngle'; ParamType1: ptObjectReference), -{N} (Index: 101; Name: 'IsWeaponMagicOut'), -{V} (Index: 102; Name: 'IsTorchOut'), -{V} (Index: 103; Name: 'IsShieldOut'), -{V} (Index: 106; Name: 'IsFacingUp'), -{V} (Index: 107; Name: 'GetKnockedState'), -{V} (Index: 108; Name: 'GetWeaponAnimType'), -{V} (Index: 109; Name: 'IsWeaponSkillType'; ParamType1: ptActorValue), -{V} (Index: 110; Name: 'GetCurrentAIPackage'), -{V} (Index: 111; Name: 'IsWaiting'), -{V} (Index: 112; Name: 'IsIdlePlaying'), -{N} (Index: 116; Name: 'IsIntimidatebyPlayer'), -{N} (Index: 117; Name: 'IsPlayerInRegion'; ParamType1: ptRegion), -{V} (Index: 118; Name: 'GetActorAggroRadiusViolated'), -{V} (Index: 122; Name: 'GetCrime'; ParamType1: ptActor; ParamType2: ptCrimeType), -{V} (Index: 123; Name: 'IsGreetingPlayer'), -{V} (Index: 125; Name: 'IsGuard'), -{V} (Index: 127; Name: 'HasBeenEaten'), -{V} (Index: 128; Name: 'GetStaminaPercentage'), -{V} (Index: 129; Name: 'GetPCIsClass'; ParamType1: ptClass), -{V} (Index: 130; Name: 'GetPCIsRace'; ParamType1: ptRace), -{V} (Index: 131; Name: 'GetPCIsSex'; ParamType1: ptSex), -{V} (Index: 132; Name: 'GetPCInFaction'; ParamType1: ptFaction), -{V} (Index: 133; Name: 'SameFactionAsPC'), -{V} (Index: 134; Name: 'SameRaceAsPC'), -{V} (Index: 135; Name: 'SameSexAsPC'), -{V} (Index: 136; Name: 'GetIsReference'; ParamType1: ptObjectReference), -{V} (Index: 141; Name: 'IsTalking'), -{V} (Index: 142; Name: 'GetWalkSpeed'), -{V} (Index: 143; Name: 'GetCurrentAIProcedure'), -{V} (Index: 144; Name: 'GetTrespassWarningLevel'), -{V} (Index: 145; Name: 'IsTrespassing'), -{V} (Index: 146; Name: 'IsInMyOwnedCell'), -{V} (Index: 147; Name: 'GetWindSpeed'), -{V} (Index: 148; Name: 'GetCurrentWeatherPercent'), -{V} (Index: 149; Name: 'GetIsCurrentWeather'; ParamType1: ptWeather), -{V} (Index: 150; Name: 'IsContinuingPackagePCNear'), -{N} (Index: 152; Name: 'GetIsCrimeFaction'; ParamType1: ptFaction), -{V} (Index: 153; Name: 'CanHaveFlames'), -{V} (Index: 154; Name: 'HasFlames'), -{V} (Index: 157; Name: 'GetOpenState'), -{V} (Index: 159; Name: 'GetSitting'), -{V} (Index: 161; Name: 'GetIsCurrentPackage'; ParamType1: ptPackage), -{V} (Index: 162; Name: 'IsCurrentFurnitureRef'; ParamType1: ptObjectReference), -{V} (Index: 163; Name: 'IsCurrentFurnitureObj'; ParamType1: ptFurniture), -{V} (Index: 170; Name: 'GetDayOfWeek'), -{V} (Index: 172; Name: 'GetTalkedToPCParam'; ParamType1: ptActor), -{V} (Index: 175; Name: 'IsPCSleeping'), -{V} (Index: 176; Name: 'IsPCAMurderer'), -{N} (Index: 180; Name: 'HasSameEditorLocAsRef'; ParamType1: ptObjectReference; ParamType2: ptKeyword), -{N} (Index: 181; Name: 'HasSameEditorLocAsRefAlias'; ParamType1: ptAlias; ParamType2: ptKeyword), -{V} (Index: 182; Name: 'GetEquipped'; ParamType1: ptInventoryObject), -{V} (Index: 185; Name: 'IsSwimming'), -{V} (Index: 190; Name: 'GetAmountSoldStolen'), -{V} (Index: 192; Name: 'GetIgnoreCrime'), -{V} (Index: 193; Name: 'GetPCExpelled'; ParamType1: ptFaction), -{V} (Index: 195; Name: 'GetPCFactionMurder'; ParamType1: ptFaction), -{V} (Index: 197; Name: 'GetPCEnemyofFaction'; ParamType1: ptFaction), -{V} (Index: 199; Name: 'GetPCFactionAttack'; ParamType1: ptFaction), -{V} (Index: 203; Name: 'GetDestroyed'), -{V} (Index: 214; Name: 'HasMagicEffect'; ParamType1: ptMagicEffect), -{V} (Index: 215; Name: 'GetDefaultOpen'), -{V} (Index: 219; Name: 'GetAnimAction'), -{V} (Index: 223; Name: 'IsSpellTarget'; ParamType1: ptMagicItem), -{V} (Index: 224; Name: 'GetVATSMode'), -{V} (Index: 225; Name: 'GetPersuasionNumber'), -{V} (Index: 226; Name: 'GetVampireFeed'), -{V} (Index: 227; Name: 'GetCannibal'), -{V} (Index: 228; Name: 'GetIsClassDefault'; ParamType1: ptClass), -{V} (Index: 229; Name: 'GetClassDefaultMatch'), -{V} (Index: 230; Name: 'GetInCellParam'; ParamType1: ptCell; ParamType2: ptObjectReference), -{V} (Index: 235; Name: 'GetVatsTargetHeight'), -{V} (Index: 237; Name: 'GetIsGhost'), -{V} (Index: 242; Name: 'GetUnconscious'), -{V} (Index: 244; Name: 'GetRestrained'), -{V} (Index: 246; Name: 'GetIsUsedItem'; ParamType1: ptReferencableObject), -{V} (Index: 247; Name: 'GetIsUsedItemType'; ParamType1: ptFormType), -{N} (Index: 248; Name: 'IsScenePlaying'; ParamType1: ptScene), -{N} (Index: 249; Name: 'IsInDialogueWithPlayer'), -{N} (Index: 250; Name: 'GetLocationCleared'; ParamType1: ptLocation), -{V} (Index: 254; Name: 'GetIsPlayableRace'), -{V} (Index: 255; Name: 'GetOffersServicesNow'), -{N} (Index: 258; Name: 'HasAssociationType'; ParamType1: ptActor; ParamType2: ptAssociationType), -{N} (Index: 259; Name: 'HasFamilyRelationship'; ParamType1: ptActor), -{N} (Index: 261; Name: 'HasParentRelationship'; ParamType1: ptActor), -{N} (Index: 262; Name: 'IsWarningAbout'; ParamType1: ptFormList), -{V} (Index: 263; Name: 'IsWeaponOut'), -{N} (Index: 264; Name: 'HasSpell'; ParamType1: ptMagicItem), -{V} (Index: 265; Name: 'IsTimePassing'), -{V} (Index: 266; Name: 'IsPleasant'), -{V} (Index: 267; Name: 'IsCloudy'), -{N} (Index: 274; Name: 'IsSmallBump'), -{V} (Index: 277; Name: 'GetBaseActorValue'; ParamType1: ptActorValue), -{V} (Index: 278; Name: 'IsOwner'; ParamType1: ptOwner), -{V} (Index: 280; Name: 'IsCellOwner'; ParamType1: ptCell; ParamType2: ptOwner), -{V} (Index: 282; Name: 'IsHorseStolen'), -{V} (Index: 285; Name: 'IsLeftUp'), -{V} (Index: 286; Name: 'IsSneaking'), -{V} (Index: 287; Name: 'IsRunning'), -{V} (Index: 288; Name: 'GetFriendHit'), -{V} (Index: 289; Name: 'IsInCombat'; ParamType1: ptInteger), -{V} (Index: 300; Name: 'IsInInterior'), -{V} (Index: 304; Name: 'IsWaterObject'), -{N} (Index: 305; Name: 'GetPlayerAction'), -{V} (Index: 306; Name: 'IsActorUsingATorch'), -{V} (Index: 309; Name: 'IsXBox'), -{V} (Index: 310; Name: 'GetInWorldspace'; ParamType1: ptWorldSpace), -{V} (Index: 312; Name: 'GetPCMiscStat'; ParamType1: ptMiscStat), -{N} (Index: 313; Name: 'GetPairedAnimation'), -{V} (Index: 314; Name: 'IsActorAVictim'), -{V} (Index: 315; Name: 'GetTotalPersuasionNumber'), -{V} (Index: 318; Name: 'GetIdleDoneOnce'), -{V} (Index: 320; Name: 'GetNoRumors'), -{N} (Index: 323; Name: 'GetCombatState'), -{N} (Index: 325; Name: 'GetWithinPackageLocation'; ParamType1: ptPackdata), -{V} (Index: 327; Name: 'IsRidingMount'), -{N} (Index: 329; Name: 'IsFleeing'), -{V} (Index: 332; Name: 'IsInDangerousWater'), -{V} (Index: 338; Name: 'GetIgnoreFriendlyHits'), -{V} (Index: 339; Name: 'IsPlayersLastRiddenMount'), -{V} (Index: 353; Name: 'IsActor'), -{V} (Index: 354; Name: 'IsEssential'), -{V} (Index: 358; Name: 'IsPlayerMovingIntoNewSpace'), -{N} (Index: 359; Name: 'GetInCurrentLoc'; ParamType1: ptLocation), -{N} (Index: 360; Name: 'GetInCurrentLocAlias'; ParamType1: ptAlias), -{V} (Index: 361; Name: 'GetTimeDead'), -{N} (Index: 362; Name: 'HasLinkedRef'; ParamType1: ptKeyword), -{V} (Index: 365; Name: 'IsChild'), -{N} (Index: 366; Name: 'GetStolenItemValueNoCrime'; ParamType1: ptFaction), -{V} (Index: 367; Name: 'GetLastPlayerAction'), -{V} (Index: 368; Name: 'IsPlayerActionActive'; ParamType1: ptInteger), // was ptPlayerAction -{V} (Index: 370; Name: 'IsTalkingActivatorActor'; ParamType1: ptActor), -{V} (Index: 372; Name: 'IsInList'; ParamType1: ptFormList), -{N} (Index: 373; Name: 'GetStolenItemValue'; ParamType1: ptFaction), -{N} (Index: 375; Name: 'GetCrimeGoldViolent'), -{N} (Index: 376; Name: 'GetCrimeGoldNonviolent'), -{N} (Index: 378; Name: 'HasShout'; ParamType1: ptShout), -{V} (Index: 381; Name: 'GetHasNote'; ParamType1: ptInteger), // was ptNote -{V} (Index: 390; Name: 'GetHitLocation'), -{V} (Index: 391; Name: 'IsPC1stPerson'), -{V} (Index: 396; Name: 'GetCauseofDeath'), -{V} (Index: 397; Name: 'IsLimbGone'; ParamType1: ptInteger), // was ptBodyLocation -{V} (Index: 398; Name: 'IsWeaponInList'; ParamType1: ptFormList), -{N} (Index: 402; Name: 'IsBribedbyPlayer'), -{V} (Index: 403; Name: 'GetRelationshipRank'; ParamType1: ptObjectReference), -{V} (Index: 407; Name: 'GetVATSValue'; ParamType1: ptVATSValueFunction; ParamType2: ptVATSValueParam), -{V} (Index: 408; Name: 'IsKiller'; ParamType1: ptActor), -{V} (Index: 409; Name: 'IsKillerObject'; ParamType1: ptFormList), -{V} (Index: 410; Name: 'GetFactionCombatReaction'; ParamType1: ptFaction; ParamType2: ptFaction), -{V} (Index: 414; Name: 'Exists'; ParamType1: ptObjectReference), -{V} (Index: 415; Name: 'GetGroupMemberCount'), -{V} (Index: 416; Name: 'GetGroupTargetCount'), -{V} (Index: 426; Name: 'GetIsVoiceType'; ParamType1: ptVoiceType), -{V} (Index: 427; Name: 'GetPlantedExplosive'), -{N} (Index: 429; Name: 'IsScenePackageRunning'), -{V} (Index: 430; Name: 'GetHealthPercentage'), -{V} (Index: 432; Name: 'GetIsObjectType'; ParamType1: ptFormType), -{V} (Index: 434; Name: 'GetDialogueEmotion'), -{V} (Index: 435; Name: 'GetDialogueEmotionValue'), -{V} (Index: 437; Name: 'GetIsCreatureType'; ParamType1: ptInteger), -{N} (Index: 444; Name: 'GetInCurrentLocFormList'; ParamType1: ptFormList), -{V} (Index: 445; Name: 'GetInZone'; ParamType1: ptEncounterZone), -{N} (Index: 446; Name: 'GetVelocity'; ParamType1: ptAxis), -{N} (Index: 447; Name: 'GetGraphVariableFloat'; ParamType1: ptVariableName), -{V} (Index: 448; Name: 'HasPerk'; ParamType1: ptPerk; ParamType2: ptInteger{Alt?}), -{V} (Index: 449; Name: 'GetFactionRelation'; ParamType1: ptActor), -{V} (Index: 450; Name: 'IsLastIdlePlayed'; ParamType1: ptIdleForm), -{V} (Index: 453; Name: 'GetPlayerTeammate'), -{V} (Index: 454; Name: 'GetPlayerTeammateCount'), -{V} (Index: 458; Name: 'GetActorCrimePlayerEnemy'), -{V} (Index: 459; Name: 'GetCrimeGold'), -{V} (Index: 463; Name: 'IsPlayerGrabbedRef'; ParamType1: ptObjectReference), -{N} (Index: 465; Name: 'GetKeywordItemCount'; ParamType1: ptKeyword), -{V} (Index: 470; Name: 'GetDestructionStage'), -{V} (Index: 473; Name: 'GetIsAlignment'; ParamType1: ptAlignment), -{N} (Index: 476; Name: 'IsProtected'), -{V} (Index: 477; Name: 'GetThreatRatio'; ParamType1: ptActor), -{V} (Index: 479; Name: 'GetIsUsedItemEquipType'; ParamType1: ptEquipType), -{N} (Index: 487; Name: 'IsCarryable'), -{V} (Index: 488; Name: 'GetConcussed'), -{V} (Index: 491; Name: 'GetMapMarkerVisible'), -{N} (Index: 493; Name: 'PlayerKnows'; ParamType1: ptMagicEffect), -{V} (Index: 494; Name: 'GetPermanentActorValue'; ParamType1: ptActorValue), -{V} (Index: 495; Name: 'GetKillingBlowLimb'), -{N} (Index: 497; Name: 'CanPayCrimeGold'), -{N} (Index: 499; Name: 'GetDaysInJail'), -{N} (Index: 500; Name: 'EPAlchemyGetMakingPoison'), -{N} (Index: 501; Name: 'EPAlchemyEffectHasKeyword'; ParamType1: ptKeyword), -{N} (Index: 503; Name: 'GetAllowWorldInteractions'), -{V} (Index: 508; Name: 'GetLastHitCritical'), -{N} (Index: 513; Name: 'IsCombatTarget'; ParamType1: ptActor), -{V} (Index: 515; Name: 'GetVATSRightAreaFree'; ParamType1: ptObjectReference), -{V} (Index: 516; Name: 'GetVATSLeftAreaFree'; ParamType1: ptObjectReference), -{V} (Index: 517; Name: 'GetVATSBackAreaFree'; ParamType1: ptObjectReference), -{V} (Index: 518; Name: 'GetVATSFrontAreaFree'; ParamType1: ptObjectReference), -{N} (Index: 519; Name: 'GetLockIsBroken'), -{N} (Index: 520; Name: 'IsPS3'), -{N} (Index: 521; Name: 'IsWin32'), -{V} (Index: 522; Name: 'GetVATSRightTargetVisible'; ParamType1: ptObjectReference), -{V} (Index: 523; Name: 'GetVATSLeftTargetVisible'; ParamType1: ptObjectReference), -{V} (Index: 524; Name: 'GetVATSBackTargetVisible'; ParamType1: ptObjectReference), -{V} (Index: 525; Name: 'GetVATSFrontTargetVisible'; ParamType1: ptObjectReference), -{V} (Index: 528; Name: 'IsInCriticalStage'; ParamType1: ptCriticalStage), -{N} (Index: 530; Name: 'GetXPForNextLevel'), -{N} (Index: 533; Name: 'GetInfamy'), -{N} (Index: 534; Name: 'GetInfamyViolent'), -{N} (Index: 535; Name: 'GetInfamyNonViolent'), -{V} (Index: 543; Name: 'GetQuestCompleted'; ParamType1: ptQuest), -{V} (Index: 547; Name: 'IsGoreDisabled'), -{N} (Index: 550; Name: 'IsSceneActionComplete'; ParamType1: ptScene; ParamType2: ptInteger), -{V} (Index: 552; Name: 'GetSpellUsageNum'; ParamType1: ptMagicItem), -{N} (Index: 554; Name: 'GetActorsInHigh'), -{V} (Index: 555; Name: 'HasLoaded3D'), -{N} (Index: 560; Name: 'HasKeyword'; ParamType1: ptKeyword), -{N} (Index: 561; Name: 'HasRefType'; ParamType1: ptRefType), -{N} (Index: 562; Name: 'LocationHasKeyword'; ParamType1: ptKeyword), -{N} (Index: 563; Name: 'LocationHasRefType'; ParamType1: ptRefType), -{N} (Index: 565; Name: 'GetIsEditorLocation'; ParamType1: ptLocation), -{N} (Index: 566; Name: 'GetIsAliasRef'; ParamType1: ptAlias), -{N} (Index: 567; Name: 'GetIsEditorLocAlias'; ParamType1: ptAlias), -{N} (Index: 568; Name: 'IsSprinting'), -{N} (Index: 569; Name: 'IsBlocking'), -{N} (Index: 570; Name: 'HasEquippedSpell'; ParamType1: ptCastingSource), -{N} (Index: 571; Name: 'GetCurrentCastingType'; ParamType1: ptCastingSource), -{N} (Index: 572; Name: 'GetCurrentDeliveryType'; ParamType1: ptCastingSource), -{N} (Index: 574; Name: 'GetAttackState'), -{N} (Index: 576; Name: 'GetEventData'; ParamType1: ptEvent; ParamType2: ptEventData; ParamType3: ptNone), -{N} (Index: 577; Name: 'IsCloserToAThanB'; ParamType1: ptObjectReference; ParamType2: ptObjectReference), -{N} (Index: 579; Name: 'GetEquippedShout'; ParamType1: ptShout), -{N} (Index: 580; Name: 'IsBleedingOut'), -{N} (Index: 584; Name: 'GetRelativeAngle'; ParamType1: ptObjectReference; ParamType2: ptAxis), -{N} (Index: 589; Name: 'GetMovementDirection'), -{N} (Index: 590; Name: 'IsInScene'), -{N} (Index: 591; Name: 'GetRefTypeDeadCount'; ParamType1: ptLocation; ParamType2: ptRefType), -{N} (Index: 592; Name: 'GetRefTypeAliveCount'; ParamType1: ptLocation; ParamType2: ptRefType), -{N} (Index: 594; Name: 'GetIsFlying'), -{N} (Index: 595; Name: 'IsCurrentSpell'; ParamType1: ptMagicItem; ParamType2: ptCastingSource), -{N} (Index: 596; Name: 'SpellHasKeyword'; ParamType1: ptCastingSource; ParamType2: ptKeyword), -{N} (Index: 597; Name: 'GetEquippedItemType'; ParamType1: ptCastingSource), -{N} (Index: 598; Name: 'GetLocationAliasCleared'; ParamType1: ptAlias), -{N} (Index: 600; Name: 'GetLocAliasRefTypeDeadCount'; ParamType1: ptAlias; ParamType2: ptRefType), -{N} (Index: 601; Name: 'GetLocAliasRefTypeAliveCount'; ParamType1: ptAlias; ParamType2: ptRefType), -{N} (Index: 602; Name: 'IsWardState'; ParamType1: ptWardState), -{N} (Index: 603; Name: 'IsInSameCurrentLocAsRef'; ParamType1: ptObjectReference; ParamType2: ptKeyword), -{N} (Index: 604; Name: 'IsInSameCurrentLocAsRefAlias'; ParamType1: ptAlias; ParamType2: ptKeyword), -{N} (Index: 605; Name: 'LocAliasIsLocation'; ParamType1: ptAlias; ParamType2: ptLocation), -{N} (Index: 606; Name: 'GetKeywordDataForLocation'; ParamType1: ptLocation; ParamType2: ptKeyword), -{N} (Index: 608; Name: 'GetKeywordDataForAlias'; ParamType1: ptAlias; ParamType2: ptKeyword), -{N} (Index: 610; Name: 'LocAliasHasKeyword'; ParamType1: ptAlias; ParamType2: ptKeyword), -{N} (Index: 611; Name: 'IsNullPackageData'; ParamType1: ptPackdata), -{N} (Index: 612; Name: 'GetNumericPackageData'; ParamType1: ptInteger), -{N} (Index: 613; Name: 'IsFurnitureAnimType'; ParamType1: ptFurnitureAnim), -{N} (Index: 614; Name: 'IsFurnitureEntryType'; ParamType1: ptFurnitureEntry), -{N} (Index: 615; Name: 'GetHighestRelationshipRank'), -{N} (Index: 616; Name: 'GetLowestRelationshipRank'), -{N} (Index: 617; Name: 'HasAssociationTypeAny'; ParamType1: ptAssociationType), -{N} (Index: 618; Name: 'HasFamilyRelationshipAny'), -{N} (Index: 619; Name: 'GetPathingTargetOffset'; ParamType1: ptAxis), -{N} (Index: 620; Name: 'GetPathingTargetAngleOffset'; ParamType1: ptAxis), -{N} (Index: 621; Name: 'GetPathingTargetSpeed'), -{N} (Index: 622; Name: 'GetPathingTargetSpeedAngle'; ParamType1: ptAxis), -{N} (Index: 623; Name: 'GetMovementSpeed'), -{N} (Index: 624; Name: 'GetInContainer'; ParamType1: ptObjectReference), -{N} (Index: 625; Name: 'IsLocationLoaded'; ParamType1: ptLocation), -{N} (Index: 626; Name: 'IsLocAliasLoaded'; ParamType1: ptAlias), -{N} (Index: 627; Name: 'IsDualCasting'), -{N} (Index: 629; Name: 'GetVMQuestVariable'; ParamType1: ptQuest; ParamType2: ptVariableName), -{N} (Index: 630; Name: 'GetVMScriptVariable'; ParamType1: ptObjectReference; ParamType2: ptVariableName), -{N} (Index: 631; Name: 'IsEnteringInteractionQuick'), -{N} (Index: 632; Name: 'IsCasting'), -{N} (Index: 633; Name: 'GetFlyingState'), -{N} (Index: 635; Name: 'IsInFavorState'), -{N} (Index: 636; Name: 'HasTwoHandedWeaponEquipped'), -{N} (Index: 637; Name: 'IsExitingInstant'), -{N} (Index: 638; Name: 'IsInFriendStateWithPlayer'), -{N} (Index: 639; Name: 'GetWithinDistance'; ParamType1: ptObjectReference; ParamType2: ptFloat), -{N} (Index: 640; Name: 'GetActorValuePercent'; ParamType1: ptActorValue), -{N} (Index: 641; Name: 'IsUnique'), -{N} (Index: 642; Name: 'GetLastBumpDirection'), -{N} (Index: 644; Name: 'IsInFurnitureState'; ParamType1: ptFurnitureAnim), -{N} (Index: 645; Name: 'GetIsInjured'), -{N} (Index: 646; Name: 'GetIsCrashLandRequest'), -{N} (Index: 647; Name: 'GetIsHastyLandRequest'), -{N} (Index: 650; Name: 'IsLinkedTo'; ParamType1: ptObjectReference; ParamType2: ptKeyword), -{N} (Index: 651; Name: 'GetKeywordDataForCurrentLocation'; ParamType1: ptKeyword), -{N} (Index: 652; Name: 'GetInSharedCrimeFaction'; ParamType1: ptObjectReference), -{N} (Index: 654; Name: 'GetBribeSuccess'), -{N} (Index: 655; Name: 'GetIntimidateSuccess'), -{N} (Index: 656; Name: 'GetArrestedState'), -{N} (Index: 657; Name: 'GetArrestingActor'), -{N} (Index: 659; Name: 'EPTemperingItemIsEnchanted'), -{N} (Index: 660; Name: 'EPTemperingItemHasKeyword'; ParamType1: ptKeyword), -{N} (Index: 664; Name: 'GetReplacedItemType'; ParamType1: ptCastingSource), -{N} (Index: 672; Name: 'IsAttacking'), -{N} (Index: 673; Name: 'IsPowerAttacking'), -{N} (Index: 674; Name: 'IsLastHostileActor'), -{N} (Index: 675; Name: 'GetGraphVariableInt'; ParamType1: ptVariableName), -{N} (Index: 676; Name: 'GetCurrentShoutVariation'), -{N} (Index: 678; Name: 'ShouldAttackKill'; ParamType1: ptActor), -{N} (Index: 680; Name: 'GetActivatorHeight'), -{N} (Index: 681; Name: 'EPMagic_IsAdvanceSkill'; ParamType1: ptActorValue), -{N} (Index: 682; Name: 'WornHasKeyword'; ParamType1: ptKeyword), -{N} (Index: 683; Name: 'GetPathingCurrentSpeed'), -{N} (Index: 684; Name: 'GetPathingCurrentSpeedAngle'; ParamType1: ptAxis), -{N} (Index: 691; Name: 'EPModSkillUsage_AdvanceObjectHasKeyword'; ParamType1: ptKeyword), -{N} (Index: 692; Name: 'EPModSkillUsage_IsAdvanceAction'; ParamType1: ptAdvanceAction), -{N} (Index: 693; Name: 'EPMagic_SpellHasKeyword'; ParamType1: ptKeyword), -{N} (Index: 694; Name: 'GetNoBleedoutRecovery'), -{N} (Index: 696; Name: 'EPMagic_SpellHasSkill'; ParamType1: ptActorValue), -{N} (Index: 697; Name: 'IsAttackType'; ParamType1: ptKeyword), -{N} (Index: 698; Name: 'IsAllowedToFly'), -{N} (Index: 699; Name: 'HasMagicEffectKeyword'; ParamType1: ptKeyword), -{N} (Index: 700; Name: 'IsCommandedActor'), -{N} (Index: 701; Name: 'IsStaggered'), -{N} (Index: 702; Name: 'IsRecoiling'), -{N} (Index: 703; Name: 'IsExitingInteractionQuick'), -{N} (Index: 704; Name: 'IsPathing'), -{N} (Index: 705; Name: 'GetShouldHelp'; ParamType1: ptActor), -{N} (Index: 706; Name: 'HasBoundWeaponEquipped'; ParamType1: ptCastingSource), -{N} (Index: 707; Name: 'GetCombatTargetHasKeyword'; ParamType1: ptKeyword), -{N} (Index: 709; Name: 'GetCombatGroupMemberCount'), -{N} (Index: 710; Name: 'IsIgnoringCombat'), -{N} (Index: 711; Name: 'GetLightLevel'), -{N} (Index: 713; Name: 'SpellHasCastingPerk'; ParamType1: ptPerk), -{N} (Index: 714; Name: 'IsBeingRidden'), -{N} (Index: 715; Name: 'IsUndead'), -{N} (Index: 716; Name: 'GetRealHoursPassed'), -{N} (Index: 718; Name: 'IsUnlockedDoor'), -{N} (Index: 719; Name: 'IsHostileToActor'; ParamType1: ptActor), -{N} (Index: 720; Name: 'GetTargetHeight'; ParamType1: ptObjectReference), -{N} (Index: 721; Name: 'IsPoison'), -{N} (Index: 722; Name: 'WornApparelHasKeywordCount'; ParamType1: ptKeyword), -{N} (Index: 723; Name: 'GetItemHealthPercent'), -{N} (Index: 724; Name: 'EffectWasDualCast'), -{N} (Index: 725; Name: 'GetKnockedStateEnum'), -{N} (Index: 726; Name: 'DoesNotExist'), -{N} (Index: 730; Name: 'IsOnFlyingMount'), -{N} (Index: 731; Name: 'CanFlyHere'), -{N} (Index: 732; Name: 'IsFlyingMountPatrolQueud'), -{N} (Index: 733; Name: 'IsFlyingMountFastTravelling'), - - // Added by SKSE - (Index: 1024; Name: 'GetSKSEVersion'; ), - (Index: 1025; Name: 'GetSKSEVersionMinor'; ), - (Index: 1026; Name: 'GetSKSEVersionBeta'; ), - (Index: 1027; Name: 'GetSKSERelease'; ), - (Index: 1028; Name: 'ClearInvalidRegistrations'; ) - ); - -var - wbCTDAFunctionEditInfo: string; - -function wbCTDAParamDescFromIndex(aIndex: Integer): PCTDAFunction; -var - L, H, I, C: Integer; -begin - Result := nil; - - L := Low(wbCTDAFunctions); - H := High(wbCTDAFunctions); - while L <= H do begin - I := (L + H) shr 1; - C := CmpW32(wbCTDAFunctions[I].Index, aIndex); - if C < 0 then - L := I + 1 - else begin - H := I - 1; - if C = 0 then begin - L := I; - Result := @wbCTDAFunctions[L]; - end; - end; - end; -end; - -function wbCTDACompValueDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container: IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - // "use global" flag - if Integer(Container.ElementByName['Type'].NativeValue) and $04 <> 0 then - Result := 1; -end; - -function wbCTDAParam1Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Desc: PCTDAFunction; - Container: IwbContainer; - ParamFlag: Byte; - ParamType: TCTDAFunctionParamType; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Desc := wbCTDAParamDescFromIndex(Container.ElementByName['Function'].NativeValue); - - if Assigned(Desc) then begin - ParamType := Desc.ParamType1; - ParamFlag := Container.ElementByName['Type'].NativeValue; - if ParamType in [ptObjectReference, ptActor, ptPackage] then begin - if ParamFlag and $02 > 0 then ParamType := ptAlias else {>>> 'use aliases' is set <<<} - if ParamFlag and $08 > 0 then ParamType := ptPackdata; {>>> 'use packdata' is set <<<} - end; - Result := Succ(Integer(ParamType)); - end; -end; - -function wbCTDAParam2Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Desc: PCTDAFunction; - Container: IwbContainer; - ParamFlag: Byte; - ParamType: TCTDAFunctionParamType; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Desc := wbCTDAParamDescFromIndex(Container.ElementByName['Function'].NativeValue); - - if Assigned(Desc) then begin - ParamType := Desc.ParamType2; - ParamFlag := Container.ElementByName['Type'].NativeValue; - if ParamType in [ptObjectReference, ptActor, ptPackage] then begin - if ParamFlag and $02 > 0 then ParamType := ptAlias else {>>> 'use aliases' is set <<<} - if ParamFlag and $08 > 0 then ParamType := ptPackdata; {>>> 'use packdata' is set <<<} - end; - Result := Succ(Integer(ParamType)); - end; -end; - -function wbCTDAParam2VATSValueParamDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Result := Container.ElementByName['Parameter #1'].NativeValue; -end; - -function wbCTDAFunctionToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; -var - Desc : PCTDAFunction; - i : Integer; -begin - Result := ''; - case aType of - ctToStr, ctToEditValue: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := Desc.Name - else if aType = ctToEditValue then - Result := IntToStr(aInt) - else - Result := ''; - end; - ctToSortKey: Result := IntToHex(aInt, 8); - ctCheck: begin - Desc := wbCTDAParamDescFromIndex(aInt); - if Assigned(Desc) then - Result := '' - else - Result := ''; - end; - ctEditType: - Result := 'ComboBox'; - ctEditInfo: begin - Result := wbCTDAFunctionEditInfo; - if Result = '' then begin - with TStringList.Create do try - for i := Low(wbCTDAFunctions) to High(wbCTDAFunctions) do - Add(wbCTDAFunctions[i].Name); - Sort; - Result := CommaText; - finally - Free; - end; - wbCTDAFunctionEditInfo := Result; - end; - end; - end; -end; - -function wbCTDAFunctionToInt(const aString: string; const aElement: IwbElement): Int64; -var - i: Integer; -begin - for i := Low(wbCTDAFunctions) to High(wbCTDAFunctions) do - with wbCTDAFunctions[i] do - if SameText(Name, aString) then begin - Result := Index; - Exit; - end; - Result := StrToInt64(aString); -end; - -function wbNeverShow(const aElement: IwbElement): Boolean; -begin - Result := wbHideNeverShow; -end; - -function GetREGNType(aElement: IwbElement): Integer; -var - Container: IwbContainerElementRef; -begin - Result := -1; - if not Assigned(aElement) then - Exit; - while aElement.Name <> 'Region Data Entry' do begin - aElement := aElement.Container; - if not Assigned(aElement) then - Exit; - end; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - Result := Container.ElementNativeValues['RDAT\Type']; -end; - -function wbREGNObjectsDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 2; -end; - -function wbREGNWeatherDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 3; -end; - -function wbREGNMapDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 4; -end; - -function wbREGNLandDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 5; -end; - -function wbREGNGrassDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 6; -end; - -function wbREGNSoundDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 7; -end; - -function wbREGNImposterDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetREGNType(aElement) <> 8; -end; - -function wbMESGTNAMDontShow(const aElement: IwbElement): Boolean; -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - Result := False; - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if Integer(Container.ElementNativeValues['DNAM']) and 1 <> 0 then - Result := True; -end; - -function wbEPFDDontShow(const aElement: IwbElement): Boolean; -var - Container: IwbContainerElementRef; -begin - Result := False; - if aElement.Name <> 'Entry Point Function Parameters' then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if not (Integer(Container.ElementNativeValues['EPFT']) in [1..3]) then - Result := True; -end; - -function wbTES4ONAMDontShow(const aElement: IwbElement): Boolean; -var - MainRecord : IwbMainRecord; -begin - Result := False; - if not Assigned(aElement) then - Exit; - MainRecord := aElement.ContainingMainRecord; - if not Assigned(MainRecord) then - Exit; - if not MainRecord.IsESM then - Result := True; -end; - -function wbEPF2DontShow(const aElement: IwbElement): Boolean; -var - Container: IwbContainerElementRef; -begin - Result := False; - if aElement.Name <> 'Entry Point Function Parameters' then - Exit; - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - if not (Integer(Container.ElementNativeValues['EPFT']) in [4]) then - Result := True; -end; - -procedure wbRemoveOFST(const aElement: IwbElement); -var - Container: IwbContainer; - rOFST: IwbRecord; -begin - if not wbRemoveOffsetData then - Exit; - - if Supports(aElement, IwbContainer, Container) then begin - if wbBeginInternalEdit then try - Container.RemoveElement(OFST); - finally - wbEndInternalEdit; - end else begin - rOFST := Container.RecordBySignature[OFST]; - if Assigned(rOFST) then - Container.RemoveElement(rOFST); - end; - end; -end; - -procedure wbWRLDAfterLoad(const aElement: IwbElement); - function OutOfRange(aValue: Integer; aRange: Integer = 256): Boolean; - begin - Result := (aValue < -aRange) or (aValue > aRange); - end; -var - MainRecord: IwbMainRecord; - Container: IwbContainer; -begin - wbRemoveOFST(aElement); - - if wbBeginInternalEdit then try - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - // not used in Skyrim - if MainRecord.ElementExists['Unused RNAM'] then - MainRecord.RemoveElement('Unused RNAM'); - - // used in SSE but remove from the game master to speed up worldspace browsing since it is huge - // and the game master is never saved anyway - if IsSSE and (MainRecord._File.LoadOrder = 0) then - MainRecord.RemoveElement('Large References'); - - // large values in object bounds cause stutter and performance issues in game (reported by Arthmoor) - // CK can occasionally set them wrong, so make a warning - if Supports(MainRecord.ElementByName['Object Bounds'], IwbContainer, Container) then - if OutOfRange(StrToIntDef(Container.ElementEditValues['NAM0\X'], 0)) or - OutOfRange(StrToIntDef(Container.ElementEditValues['NAM0\Y'], 0)) or - OutOfRange(StrToIntDef(Container.ElementEditValues['NAM9\X'], 0)) or - OutOfRange(StrToIntDef(Container.ElementEditValues['NAM9\Y'], 0)) - then - wbProgressCallback(''); - - finally - wbEndInternalEdit; - end; -end; - -procedure wbDOBJObjectsAfterLoad(const aElement: IwbElement); -var - ObjectsContainer : IwbContainerElementRef; - i : Integer; - ObjectContainer : IwbContainerElementRef; -begin - wbRemoveOFST(aElement); - - if wbBeginInternalEdit then try - - if not Supports(aElement, IwbContainerElementRef, ObjectsContainer) then - Exit; - - for i := Pred(ObjectsContainer.ElementCount) downto 0 do - if Supports(ObjectsContainer.Elements[i], IwbContainerElementRef, ObjectContainer) then - if ObjectContainer.ElementNativeValues['Use'] = 0 then - ObjectsContainer.RemoveElement(i, True); - finally - wbEndInternalEdit; - end; -end; - -function wbActorTemplateUseTraits(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000001) <> 0; - end; -end; - -function wbActorTemplateUseStats(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000002) <> 0; - end; -end; - -function wbActorAutoCalcDontShow(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Flags']; - Result := (i and $00000010) <> 0; - end; -end; - -function wbActorTemplateUseStatsAutoCalc(const aElement: IwbElement): Boolean; -begin - Result := wbActorTemplateUseStats(aElement) or wbActorAutoCalcDontShow(aElement); -end; - -function wbActorTemplateUseFactions(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000004) <> 0; - end; -end; - -function wbActorTemplateUseActorEffectList(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000008) <> 0; - end; -end; - -function wbActorTemplateUseAIData(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000010) <> 0; - end; -end; - -function wbActorTemplateUseAIPackages(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000020) <> 0; - end; -end; - -function wbActorTemplateUseModelAnimation(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000040) <> 0; - end; -end; - -function wbActorTemplateUseBaseData(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000080) <> 0; - end; -end; - -function wbActorTemplateUseInventory(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000100) <> 0; - end; -end; - -function wbActorTemplateUseScript(const aElement: IwbElement): Boolean; -var - Element : IwbElement; - MainRecord : IwbMainRecord; - i : Int64; -begin - Result := False; - Element := aElement; - MainRecord := nil; - while Assigned(Element) and not Supports(Element, IwbMainRecord, MainRecord) do - Element := Element.Container; - if Assigned(MainRecord) then begin - i := MainRecord.ElementNativeValues['ACBS\Template Flags']; - Result := (i and $00000200) <> 0; - end; -end; - -procedure wbRemoveEmptyKWDA(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Assigned(Container.ElementBySignature['KSIZ']) then - if Assigned(Container.ElementBySignature['KWDA']) then - Container.ElementBySignature['KWDA'].Remove; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbReplaceBODTwithBOD2(const aElement: IwbElement); -var - MainRecord : IwbMainRecord; - ContainerBOD2 : IwbContainerElementRef; - ContainerBODT : IwbContainerElementRef; -begin - Exit; {>>> Looks like causes problems with Dawnguard.esm <<<} - - if wbBeginInternalEdit then try - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if not Supports(MainRecord.ElementBySignature[BODT], IwbContainerElementRef, ContainerBODT) then - Exit; - - if Supports(MainRecord.Add('BOD2', True), IwbContainerElementRef, ContainerBOD2) then begin - ContainerBOD2.ElementNativeValues['First Person Flags'] := ContainerBODT.ElementNativeValues['First Person Flags']; - ContainerBOD2.ElementNativeValues['Armor Type'] := ContainerBODT.ElementNativeValues['Armor Type']; - MainRecord.RemoveElement(BODT); - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbARMOAfterLoad(const aElement: IwbElement); -begin - wbRemoveEmptyKWDA(aElement); - wbReplaceBODTwithBOD2(aElement); -end; - -procedure wbARMAAfterLoad(const aElement: IwbElement); -{var - MainRecord : IwbMainRecord;} -begin - wbReplaceBODTwithBOD2(aElement); - {if wbBeginInternalEdit then try - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - if MainRecord.ElementNativeValues['DNAM\Weight slider - Male'] = 0 then - MainRecord.ElementNativeValues['DNAM\Weight slider - Male'] := 2; - if MainRecord.ElementNativeValues['DNAM\Weight slider - Female'] = 0 then - MainRecord.ElementNativeValues['DNAM\Weight slider - Female'] := 2; - finally - wbEndInternalEdit; - end;} -end; - -procedure wbNPCAfterLoad(const aElement: IwbElement); -begin - wbRemoveEmptyKWDA(aElement); -end; - -procedure wbREFRAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if Container.ElementExists['XLOC'] then begin - if Container.ElementNativeValues['XLOC - Lock Data\Level'] = 0 then - Container.ElementNativeValues['XLOC - Lock Data\Level'] := 1; - end; - - Container.RemoveElement('XPTL'); - finally - wbEndInternalEdit; - end; -end; - -procedure wbRACEAfterLoad(const aElement: IwbElement); -begin - wbReplaceBODTwithBOD2(aElement); -end; - -procedure wbWEAPAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - Flags : Cardinal; -begin - wbRemoveEmptyKWDA(aElement); - - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - // clear IronSights flags which are randomly assigned in CK - if Container.ElementExists['DNAM'] then begin - Flags := Container.ElementNativeValues['DNAM - Data\Flags']; - Flags := Flags and ($FFFF xor $0040); - Container.ElementNativeValues['DNAM - Data\Flags'] := Flags; - Flags := Container.ElementNativeValues['DNAM - Data\Flags2']; - Flags := Flags and ($FFFFFFFF xor $0100); - Container.ElementNativeValues['DNAM - Data\Flags2'] := Flags; - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbCELLXCLWGetConflictPriority(const aElement: IwbElement; var aCP: TwbConflictPriority); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - DataRec : IwbElement; - Flags : Cardinal; -begin - if not Assigned(aElement) then - Exit; - - if not Supports(aElement.Container, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(Container, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - DataRec := MainRecord.ElementBySignature[DATA]; - - if not Assigned(DataRec) then - Exit; - - Flags := DataRec.NativeValue; - - {0x0001 Is Interior Cell} - if (Flags and 1) = 1 then - {Interior cells don't use water level in Skyrim at all} - aCP := cpIgnore; -end; - -procedure wbCELLDATAAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Container : IwbContainer; -begin - if not Assigned(aElement) then - Exit; - Container := aElement.Container; - while Assigned(Container) and not (Container.Def.DefType = dtRecord) do - Container := Container.Container; - if Assigned(Container) then - Container.ResetConflict; -end; - -procedure wbCELLAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; -// Container2 : IwbContainerElementRef; - MainRecord : IwbMainRecord; - DataSubRec : IwbSubrecord; - Flags8 : Byte; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if Supports(Container.ElementBySignature['DATA'] , IwbSubRecord, DataSubRec) then begin - // expand legacy itU8 flags to itU16 - if DataSubRec.SubRecordHeaderSize = 1 then begin - Flags8 := PByte(DataSubRec.DataBasePtr)^; - DataSubRec.SetToDefault; - DataSubRec.NativeValue := Flags8; - end; - // 'Default' water height for exterior cells if not set (so water height will be taken from WRLD by game) - if (not Container.ElementExists['XCLW']) and ((Integer(DataSubRec.NativeValue) and $02) <> 0) then begin - Container.Add('XCLW', True); - Container.ElementEditValues['XCLW'] := 'Default'; - end; - end; - - // Min (-0 as in CK) water height is set to 0 when saving in CK - if Container.ElementEditValues['XCLW'] = 'Min' then - Container.ElementEditValues['XCLW'] := '0.0'; - -// if Supports(Container.ElementBySignature[XCLR], IwbContainerElementRef, Container2) then begin -// for i := Pred(Container2.ElementCount) downto 0 do -// if not Supports(Container2.Elements[i].LinksTo, IwbMainRecord, MainRecord) or (MainRecord.Signature <> 'REGN') then -// Container2.RemoveElement(i); -// if Container2.ElementCount < 1 then -// Container2.Remove; -// end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbMESGAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - MainRecord : IwbMainRecord; - IsMessageBox : Boolean; - HasTimeDelay : Boolean; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - IsMessageBox := (Integer(Container.ElementNativeValues['DNAM']) and 1) = 1; - HasTimeDelay := Container.ElementExists['TNAM']; - - if IsMessageBox = HasTimeDelay then - if IsMessageBox then - Container.RemoveElement('TNAM') - else begin - if not Container.ElementExists['DNAM'] then - Container.Add('DNAM', True); - Container.ElementNativeValues['DNAM'] := Integer(Container.ElementNativeValues['DNAM']) or 1; - end; - - finally - wbEndInternalEdit; - end; -end; - - -{>>> - Updated, but not called for Skyrim - Why is it required to fix particle counts? Because 1 pass = 79 particles? ->>>} -//procedure wbEFSHAfterLoad(const aElement: IwbElement); -//var -// Container: IwbContainerElementRef; -// MainRecord : IwbMainRecord; -// FullParticleBirthRatio : Extended; -// PersistantParticleCount : Extended; -//begin -// if wbBeginInternalEdit then try -// if not Supports(aElement, IwbContainerElementRef, Container) then -// Exit; -// -// if Container.ElementCount < 1 then -// Exit; -// -// if not Supports(aElement, IwbMainRecord, MainRecord) then -// Exit; -// -// if MainRecord.IsDeleted then -// Exit; -// -// if not Container.ElementExists['DATA'] then -// Exit; -// -// FullParticleBirthRatio := Container.ElementNativeValues['DATA\Particle Shader - Full Particle Birth Ratio']; -// PersistantParticleCount := Container.ElementNativeValues['DATA\Particle Shader - Persistant Particle Count']; -// -// if ((FullParticleBirthRatio <> 0) and (FullParticleBirthRatio <= 1)) then begin -// FullParticleBirthRatio := FullParticleBirthRatio * 78.0; -// Container.ElementNativeValues['DATA\Particle Shader - Full Particle Birth Ratio'] := FullParticleBirthRatio; -// end; -// -// if ((PersistantParticleCount <> 0) and (PersistantParticleCount <= 1)) then begin -// PersistantParticleCount := PersistantParticleCount * 78.0; -// Container.ElementNativeValues['DATA\Particle Shader - Persistant Particle Count'] := PersistantParticleCount; -// end; -// -// finally -// wbEndInternalEdit; -// end; -//end; - -procedure wbLIGHAfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - if not Supports(aElement, IwbMainRecord, MainRecord) then - Exit; - - if MainRecord.IsDeleted then - Exit; - - if not Container.ElementExists['FNAM'] then begin - Container.Add('FNAM', True); - Container.ElementNativeValues['FNAM'] := 1.0; - end; - - if Container.ElementExists['DATA'] then begin - if SameValue(Container.ElementNativeValues['DATA\Falloff Exponent'], 0.0) then - Container.ElementNativeValues['DATA\Falloff Exponent'] := 1.0; - if SameValue(Container.ElementNativeValues['DATA\FOV'], 0.0) then - Container.ElementNativeValues['DATA\FOV'] := 90.0; - end; - - finally - wbEndInternalEdit; - end; -end; - -procedure wbEFITAfterLoad(const aElement: IwbElement); -var - Container : IwbContainerElementRef; - Element : IwbElement; - ActorValue: Variant; - MainRecord: IwbMainRecord; -begin - if wbBeginInternalEdit then try - if not Supports(aElement, IwbContainerElementRef, Container) then - Exit; - - if Container.ElementCount < 1 then - Exit; - - MainRecord := Container.ContainingMainRecord; - if not Assigned(MainRecord) or MainRecord.IsDeleted then - Exit; - - Element := Container.ElementByPath['..\EFID']; - if not Assigned(Element) then - Exit; - if not Supports(Element.LinksTo, IwbMainRecord, MainRecord) then - Exit; - if MainRecord.Signature <> 'MGEF' then - Exit; - ActorValue := MainRecord.ElementNativeValues['DATA - Data\Actor Value']; - if VarIsNull(ActorValue) or VarIsClear(ActorValue) then - Exit; - if VarCompareValue(ActorValue, Container.ElementNativeValues['Actor Value']) <> vrEqual then - Container.ElementNativeValues['Actor Value'] := ActorValue; - finally - wbEndInternalEdit; - end; -end; - -procedure wbRPLDAfterLoad(const aElement: IwbElement); -var - Container: IwbContainer; - a, b: Single; - NeedsFlip: Boolean; -begin - if wbBeginInternalEdit then try - if Supports(aElement, IwbContainer, Container) then begin - NeedsFlip := False; - if Container.ElementCount > 1 then begin - a := StrToFloat((Container.Elements[0] as IwbContainer).Elements[0].Value); - b := StrToFloat((Container.Elements[Pred(Container.ElementCount)] as IwbContainer).Elements[0].Value); - case CompareValue(a, b) of - EqualsValue: begin - a := StrToFloat((Container.Elements[0] as IwbContainer).Elements[1].Value); - b := StrToFloat((Container.Elements[Pred(Container.ElementCount)] as IwbContainer).Elements[1].Value); - NeedsFlip := CompareValue(a, b) = GreaterThanValue; - end; - GreaterThanValue: - NeedsFlip := True; - end; - end; - if NeedsFlip then - Container.ReverseElements; - end; - finally - wbEndInternalEdit; - end; -end; - -function wbPubPackCNAMDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - rANAM: IwbRecord; - ctype: string; -begin - Result := 0; - rANAM := aElement.Container.RecordBySignature[ANAM]; - if Assigned(rANAM) then begin - ctype := rANAM.NativeValue; - if ctype = 'Bool' then Result := 1 else - if ctype = 'Int' then Result := 2 else - if ctype = 'Float' then Result := 3 else - if ctype = 'ObjectList' then Result := 3; - end; -end; - -function wbTypeDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Container : IwbContainer; - Element : IwbElement; -begin - Result := 0; - if not Assigned(aElement) then Exit; - Container := GetContainerFromUnion(aElement); - if not Assigned(Container) then Exit; - - Element := Container.ElementByName['Type']; - if Assigned(Element) then - Result := Element.NativeValue - else if wbMoreInfoForDecider then - wbProgressCallback('"'+Container.Name+'" does not contain an element named Type'); -end; - -procedure wbCNTOsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('COCT - Count', aElement); -end; - -procedure wbContainerAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('COCT - Count', 'Items', aElement); - wbCounterContainerAfterSet('KSIZ - Keyword Count', 'KWDA - Keywords', aElement); -end; - -procedure wbSPLOsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('SPCT - Count', aElement); -end; - -procedure wbKWDAsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('KSIZ - Keyword Count', aElement); -end; - -procedure wbNPCAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('COCT - Count', 'Items', aElement); - wbCounterContainerAfterSet('SPCT - Count', 'Actor Effects', aElement); - wbCounterContainerAfterSet('LLCT - Count', 'Leveled List Entries', aElement); - wbCounterContainerAfterSet('KSIZ - Keyword Count', 'KWDA - Keywords', aElement); - wbCounterContainerAfterSet('PRKZ - Perk Count', 'Perks', aElement); -end; - -procedure wbRaceAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('SPCT - Count', 'Actor Effects', aElement); - wbCounterContainerAfterSet('KSIZ - Keyword Count', 'KWDA - Keywords', aElement); -end; - -procedure wbKeywordsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('KSIZ - Keyword Count', 'KWDA - Keywords', aElement); -end; - -procedure wbLVLOsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('LLCT - Count', aElement); -end; - -procedure wbLLEAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('LLCT - Count', 'Leveled List Entries', aElement); -end; - -procedure wbPRKRsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('PRKZ - Perk Count', aElement); -end; - -procedure wbSMQNQuestsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('QNAM - Quest Count', aElement); -end; - -procedure wbCTDAsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('CITC - Condition Count', aElement); -end; - -procedure wbConditionsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterContainerAfterSet('CITC - Condition Count', 'Conditions', aElement); -end; - -procedure wbCounterEffectsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - // if it is really possible to have both counter effects and multiple data, this is going to be tricky. - wbCounterByPathAfterSet('Magic Effect Data\DATA - Data\Counter effect count', aElement); -end; - -procedure wbMGEFAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbKeywordsAfterSet(aElement, aOldValue, aNewValue); - wbCounterContainerByPathAfterSet('Magic Effect Data\DATA - Data\Counter effect count', 'Counter Effects', aElement); -end; - -procedure wbLENSAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - wbCounterAfterSet('LFSP - Count', aElement); -end; - -procedure wbIDLAsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Element : IwbElement; - Container : IwbContainer; - SelfAsContainer : IwbContainer; -begin - if wbBeginInternalEdit then try - if not wbCounterAfterSet('IDLC - Animation Count', aElement) then - if Supports(aElement.Container, IwbContainer, Container) then begin - Element := Container.ElementByPath['IDLC\Animation Count']; - if Assigned(Element) and Supports(aElement, IwbContainer, SelfAsContainer) and - (Element.GetNativeValue<>SelfAsContainer.GetElementCount) then - Element.SetNativeValue(SelfAsContainer.GetElementCount); - end; - finally - wbEndInternalEdit; - end; -end; - -procedure wbAnimationsAfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -var - Element : IwbElement; - Elems : IwbElement; - Container : IwbContainer; -begin - if wbBeginInternalEdit then try - if not wbCounterContainerAfterSet('IDLC - Animation Count', 'IDLA - Animations', aElement) then - if Supports(aElement, IwbContainer, Container) then begin - Element := Container.ElementByPath['IDLC\Animation Count']; - Elems := Container.ElementByName['IDLA - Animations']; - if Assigned(Element) and not Assigned(Elems) then - if Element.GetNativeValue<>0 then - Element.SetNativeValue(0); - end; - finally - wbEndInternalEdit; - end; -end; - -function wbOffsetDataColsCounter(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; -var - Container : IwbDataContainer; - Element : IwbElement; - fResult : Extended; -begin - Result := 0; - - if Supports(aElement.Container, IwbDataContainer, Container) and (Container.Name = 'OFST - Offset Data') and - Supports(Container.Container, IwbDataContainer, Container) then begin - Element := Container.ElementByPath['Object Bounds\NAM0 - Min\X']; - if Assigned(Element) then begin - fResult := Element.NativeValue; - if fResult >= MaxInt then - Result := 0 - else - Result := Trunc(fResult); - Element := Container.ElementByPath['Object Bounds\NAM9 - Max\X']; - if Assigned(Element) then begin - fResult := Element.NativeValue; - if fResult >= MaxInt then - Result := 1 - else - Result := Trunc(fResult) - Result + 1; - end; - end; - end; -end; - -function wbREFRRecordFlagsDecider(const aElement: IwbElement): Integer; -var - MainRecord : IwbMainRecord; - NameRec : IwbElement; -begin - Result := 0; - - if not Assigned(aElement) then - Exit; - - MainRecord := aElement.ContainingMainRecord; - - if not Assigned(MainRecord) then - Exit; - - NameRec := MainRecord.ElementBySignature[NAME]; - if not Assigned(NameRec) then - Exit; - - if not Supports(NameRec.LinksTo, IwbMainRecord, MainRecord) then - Exit; - - if (MainRecord.Signature = ACTI) or - (MainRecord.Signature = STAT) or - (MainRecord.Signature = TREE) - then - Result := 1 - else if MainRecord.Signature = CONT then - Result := 2 - else if MainRecord.Signature = DOOR then - Result := 3 - else if MainRecord.Signature = LIGH then - Result := 4 - else if MainRecord.Signature = MSTT then - Result := 5 - else if MainRecord.Signature = ADDN then - Result := 6 - else if - (MainRecord.Signature = SCRL) or - (MainRecord.Signature = AMMO) or - (MainRecord.Signature = ARMO) or - (MainRecord.Signature = BOOK) or - (MainRecord.Signature = INGR) or - (MainRecord.Signature = KEYM) or - (MainRecord.Signature = MISC) or - (MainRecord.Signature = SLGM) or - (MainRecord.Signature = WEAP) or - (MainRecord.Signature = ALCH) - then - Result := 7; -end; - -function wbByteColors(const aName: string = 'Color'): IwbStructDef; -begin - Result := wbStruct(aName, [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unused', 1) - ]); -end; - -function wbFloatColors(const aName: string = 'Color'): IwbStructDef; -begin - Result := wbStruct(aName, [ - wbFloat('Red', cpNormal, True, 255, 0), - wbFloat('Green', cpNormal, True, 255, 0), - wbFloat('Blue', cpNormal, True, 255, 0) - ]); -end; - -function wbWeatherColors(const aName: string): IwbStructDef; -begin - Result := wbStruct(aName, [ - wbByteColors('Sunrise'), - wbByteColors('Day'), - wbByteColors('Sunset'), - wbByteColors('Night') - ], cpNormal, True); -end; - -function wbAmbientColors(const aSignature: TwbSignature; const aName: string = 'Directional Ambient Lighting Colors'): IwbSubRecordDef; overload; -begin - Result := wbStruct(aSignature, aName, [ - wbStruct('Directional', [ - wbByteColors('X+'), - wbByteColors('X-'), - wbByteColors('Y+'), - wbByteColors('Y-'), - wbByteColors('Z+'), - wbByteColors('Z-') - ]), - wbByteColors('Specular'), - wbFloat('Scale') - ], cpNormal, False, nil, 1) -end; - -function wbAmbientColors(const aName: string = 'Directional Ambient Lighting Colors'): IwbStructDef; overload; -begin - Result := wbStruct(aName, [ - wbStruct('Directional', [ - wbByteColors('X+'), - wbByteColors('X-'), - wbByteColors('Y+'), - wbByteColors('Y-'), - wbByteColors('Z+'), - wbByteColors('Z-') - ]), - wbByteColors('Specular'), - wbFloat('Scale', cpIgnore) - ], cpNormal, False, nil, 1); -end; - -function wbStrToInt(const aString: string; const aElement: IwbElement): Int64; -var - s: string; - i: integer; -begin - // ignore anything after space or : - i := Pos(' ', aString); - if i = 0 then - i := Pos(':', aString); - - if i <> 0 then - s := Copy(aString, 1, i - 1) - else - s := aString; - - try - Result := StrToInt64(s) - except - Result := 0; - end; -end; - -type - TFaceGenFeature = record - RaceID : String; - Female : Boolean; - Entries : array of record - Index: Cardinal; - Name : String; - end; - end; - PFaceGenFeature = ^TFaceGenFeature; - -var - // cache of race specific tint layers - TintLayers: array of TFaceGenFeature; - -function wbTintLayerToStr(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; - - function GetCached(const aRaceID: string; aFemale: boolean): PFaceGenFeature; - var - i: integer; - begin - Result := nil; - if Length(TintLayers) <> 0 then - for i := Low(TintLayers) to High(TintLayers) do - if (TintLayers[i].Female = aFemale) and (TintLayers[i].RaceID = aRaceID) then begin - Result := @TintLayers[i]; - Break; - end; - end; - -var - Actor, Race : IwbMainRecord; - Element : IwbElement; - Container, Entry : IwbContainerElementRef; - Female, Female2 : Boolean; - RaceID, EntryName : string; - s : string; - Cache : PFaceGenFeature; - Index : Cardinal; - i, j : integer; -begin - // defaults - case aType of - ctToStr, ctToEditValue: Result := IntToStr(aInt); - ctToSortKey: begin - Result := IntToHex64(aInt, 8); - Exit; - end; - ctCheck: Result := ''; - ctEditType: Result := ''; - ctEditInfo: Result := ''; - end; - - Actor := aElement.ContainingMainRecord; - if not Assigned(Actor) then - Exit; - - Female := Actor.ElementEditValues['ACBS\Flags\Female'] = '1'; - - Element := Actor.ElementBySignature['RNAM']; - if not Assigned(Element) then - Exit; - - Element := Element.LinksTo; - if not Supports(Element, IwbMainRecord, Race) then - Exit; - - Race := Race.WinningOverride; - RaceID := Race.EditorID; - - Cache := GetCached(RaceID, Female); - - // cache not found, fill with data from RACE - if not Assigned(Cache) then begin - - for i := 0 to 1 do begin - - Female2 := i = 1; - SetLength(TintLayers, Succ(Length(TintLayers))); - Cache := @TintLayers[Pred(Length(TintLayers))]; - Cache.RaceID := RaceID; - Cache.Female := Female2; - - if not Female2 then - Element := Race.ElementByPath['Head Data\Male Head Data\Tint Masks'] - else - Element := Race.ElementByPath['Head Data\Female Head Data\Tint Masks']; - - if not Supports(Element, IwbContainerElementRef, Container) then - Continue; - - SetLength(Cache.Entries, Container.ElementCount); - - for j := 0 to Pred(Container.ElementCount) do begin - if not Supports(Container.Elements[j], IwbContainerElementRef, Entry) then - Break; - Cache.Entries[j].Index := Entry.ElementNativeValues['Tint Layer\Texture\TINI']; - s := Entry.ElementEditValues['Tint Layer\Texture\TINP']; - // add texture name - if s <> '' then - s := '[' + s + '] '; - s := s + ChangeFileExt(ExtractFileName(Entry.ElementEditValues['Tint Layer\Texture\TINT']), ''); - Cache.Entries[j].Name := s; - end; - end; - - Cache := GetCached(RaceID, Female); - end; - - if not Assigned(Cache) then - Exit; - - EntryName := ''; - Index := Cardinal(aInt); - if Length(Cache.Entries) <> 0 then - for i := Low(Cache.Entries) to High(Cache.Entries) do - if Cache.Entries[i].Index = Index then begin - EntryName := Cache.Entries[i].Name; - Break; - end; - - case aType of - ctToStr: begin - if EntryName <> '' then - Result := IntToStr(aInt) + ' ' + EntryName - else - Result := IntToStr(aInt) + ' '; - end; - ctCheck: begin - if EntryName = '' then - Result := '' - else - Result := ''; - end; - ctEditType: Result := 'ComboBox'; - ctEditInfo: begin - Result := ''; - if Length(Cache.Entries) <> 0 then - for i := Low(Cache.Entries) to High(Cache.Entries) do begin - if Result <> '' then Result := Result + ','; - Result := Result + '"' + IntToStr(Cache.Entries[i].Index) + ' ' + Cache.Entries[i].Name + '"'; - end; - end; - end; -end; - - -var - wbRecordFlagsFlags : IwbFlagsDef; - -procedure DefineTES5a; - -begin - wbNull := wbByteArray('Unused', -255); - wbLLCT := wbInteger(LLCT, 'Count', itU8, nil, cpBenign); - wbCITC := wbInteger(CITC, 'Condition Count', itU32, nil, cpBenign); - wbLVLD := wbInteger(LVLD, 'Chance None', itU8, nil, cpNormal, True); - - wbSPCT := wbInteger(SPCT, 'Count', itU32, nil, cpBenign); - wbSPLO := wbFormIDCk(SPLO, 'Actor Effect', [SPEL, SHOU, LVSP]); - wbSPLOs := wbRArrayS('Actor Effects', wbSPLO, cpNormal, False, nil, wbSPLOsAfterSet, nil{wbActorTemplateUseActorEffectList}); - - wbKSIZ := wbInteger(KSIZ, 'Keyword Count', itU32, nil, cpBenign); - wbKWDAs := wbArrayS(KWDA, 'Keywords', wbFormIDCk('Keyword', [KYWD, NULL]), 0, cpNormal, False, nil, wbKWDAsAfterSet); - wbReqKWDAs := wbArrayS(KWDA, 'Keywords', wbFormIDCk('Keyword', [KYWD, NULL]), 0, cpNormal, True, nil, wbKWDAsAfterSet); - - wbKeywords := wbRStruct('Keywords', [ - wbKSIZ, - wbReqKWDAs - ], []); - - wbCOED := wbStructExSK(COED, [2], [0, 1], 'Extra Data', [ - {00} wbFormIDCkNoReach('Owner', [NPC_, FACT, NULL]), - {04} wbUnion('Global Variable / Required Rank', wbCOEDOwnerDecider, [ - wbByteArray('Unused', 4, cpIgnore), - wbFormIDCk('Global Variable', [GLOB, NULL]), - wbInteger('Required Rank', itS32) - ]), - {08} wbFloat('Item Condition') - ]); - - wbCNTO := - wbRStructExSK([0], [1], 'Item', [ - wbStructExSK(CNTO, [0], [1], 'Item', [ - wbFormIDCk('Item', [ARMO, AMMO, APPA, MISC, WEAP, BOOK, LVLI, KEYM, ALCH, INGR, LIGH, SLGM, SCRL]), - wbInteger('Count', itS32) - ]), - wbCOED - ], []); - wbCOCT := wbInteger(COCT, 'Count', itU32, nil, cpBenign); - wbCNTOs := wbRArrayS('Items', wbCNTO, cpNormal, False, nil, wbCNTOsAfterSet); - - wbArmorTypeEnum := wbEnum([ - 'Light Armor', - 'Heavy Armor', - 'Clothing' - ]); - - {>>> When NAME is user defined these will be incorrect <<<} - wbBipedObjectEnum := wbEnum([ - '30 - Head', - '31 - Hair', - '32 - Body', - '33 - Hands', - '34 - Forearms', - '35 - Amulet', - '36 - Ring', - '37 - Feet', - '38 - Calves', - '39 - Shield', - '40 - Tail', - '41 - LongHair', - '42 - Circlet', - '43 - Ears', - '44 - Unnamed', - '45 - Unnamed', - '46 - Unnamed', - '47 - Unnamed', - '48 - Unnamed', - '49 - Unnamed', - '50 - DecapitateHead', - '51 - Decapitate', - '52 - Unnamed', - '53 - Unnamed', - '54 - Unnamed', - '55 - Unnamed', - '56 - Unnamed', - '57 - Unnamed', - '58 - Unnamed', - '59 - Unnamed', - '60 - Unnamed', - '61 - FX01' - ], [ - -1, 'None' - ]); - - wbBipedObjectFlags := wbFlags([ - {0x00000001} '30 - Head', - {0x00000002} '31 - Hair', - {0x00000004} '32 - Body', - {0x00000008} '33 - Hands', - {0x00000010} '34 - Forearms', - {0x00000020} '35 - Amulet', - {0x00000040} '36 - Ring', - {0x00000080} '37 - Feet', - {0x00000100} '38 - Calves', - {0x00000200} '39 - Shield', - {0x00000400} '40 - Tail', - {0x00000800} '41 - LongHair', - {0x00001000} '42 - Circlet', - {0x00002000} '43 - Ears', - {0x00004000} '44 - Unnamed', - {0x00008000} '45 - Unnamed', - {0x00010000} '46 - Unnamed', - {0x00020000} '47 - Unnamed', - {0x00040000} '48 - Unnamed', - {0x00080000} '49 - Unnamed', - {0x00100000} '50 - DecapitateHead', - {0x00200000} '51 - Decapitate', - {0x00400000} '52 - Unnamed', - {0x00800000} '53 - Unnamed', - {0x01000000} '54 - Unnamed', - {0x02000000} '55 - Unnamed', - {0x04000000} '56 - Unnamed', - {0x08000000} '57 - Unnamed', - {0x10000000} '58 - Unnamed', - {0x20000000} '59 - Unnamed', - {0x40000000} '60 - Unnamed', - {0x80000000} '61 - FX01' - ], True); - - wbFirstPersonFlagsU32 := wbInteger('First Person Flags', itU32, wbBipedObjectFlags); - - wbBODT := wbStruct(BODT, 'Body Template', [ - wbFirstPersonFlagsU32, - wbInteger('General Flags', itU8, wbFlags([ - {0x00000001}'(ARMA)Modulates Voice', {>>> From ARMA <<<} - {0x00000002}'Unknown 2', - {0x00000004}'Unknown 3', - {0x00000008}'Unknown 4', - {0x00000010}'(ARMO)Non-Playable', {>>> From ARMO <<<} - {0x00000020}'Unknown 6', - {0x00000040}'Unknown 7', - {0x00000080}'Unknown 8' - ], True)), - wbByteArray('Unused', 3, cpIgnore), - wbInteger('Armor Type', itU32, wbArmorTypeEnum) - ], cpNormal, False, nil, 3); - - wbBOD2 := wbStruct(BOD2, 'Biped Body Template', [ - wbFirstPersonFlagsU32, - wbInteger('Armor Type', itU32, wbArmorTypeEnum) - ], cpNormal, False); - - wbBODTBOD2 := - wbRUnion('Biped Body Template', [ - wbStruct(BOD2, 'Biped Body Template', [ - wbFirstPersonFlagsU32, - wbInteger('General Flags', it0, wbFlags([ - {0x00000001}'(ARMA)Modulates Voice', {>>> From ARMA <<<} - {0x00000002}'Unknown 2', - {0x00000004}'Unknown 3', - {0x00000008}'Unknown 4', - {0x00000010}'(ARMO)Non-Playable', {>>> From ARMO <<<} - {0x00000020}'Unknown 6', - {0x00000040}'Unknown 7', - {0x00000080}'Unknown 8' - ], True)), - wbEmpty('Unused'), - wbInteger('Armor Type', itU32, wbArmorTypeEnum) - ], cpNormal, False), - wbStruct(BODT, 'Body Template', [ - wbFirstPersonFlagsU32, - wbInteger('General Flags', itU8, wbFlags([ - {0x00000001}'(ARMA)Modulates Voice', {>>> From ARMA <<<} - {0x00000002}'Unknown 2', - {0x00000004}'Unknown 3', - {0x00000008}'Unknown 4', - {0x00000010}'(ARMO)Non-Playable', {>>> From ARMO <<<} - {0x00000020}'Unknown 6', - {0x00000040}'Unknown 7', - {0x00000080}'Unknown 8' - ], True)), - wbByteArray('Unused', 3, cpIgnore), - wbInteger('Armor Type', itU32, wbArmorTypeEnum) - ], cpNormal, False, nil, 3) - ], []); - - wbMDOB := wbFormID(MDOB, 'Menu Display Object', cpNormal, False); - wbCNAM := wbStruct(CNAM, 'Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unknown', 1) - ]); - wbCNAMReq := wbStruct(CNAM, 'Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unknown', 1) - ], cpNormal, True); - - wbDODT := wbStruct(DODT, 'Decal Data', [ - wbFloat('Min Width'), - wbFloat('Max Width'), - wbFloat('Min Height'), - wbFloat('Max Height'), - wbFloat('Depth'), - wbFloat('Shininess'), - wbStruct('Parallax', [ - wbFloat('Scale'), - wbInteger('Passes', itU8) {>>> This can't be higher than 30 <<<} - ]), - wbInteger('Flags', itU8, wbFlags([ - {0x01}'Parallax', - {0x02}'Alpha - Blending', - {0x04}'Alpha - Testing', - {0x08}'No Subtextures' - ], True)), - wbByteArray('Unknown', 2), - wbByteColors('Color') - ]); - -// wbRecordFlagsFlags := wbFlags([ -// {>>> 0x00000000 ACTI: Collision Geometry (default) <<<} -// {0x00000001}'ESM', -// {0x00000002}'Unknown 2', -// {>>> 0x00000004 ARMO: Not playable <<<} -// {0x00000004}'NotPlayable', -// {0x00000008}'Unknown 4', -// {0x00000010}'Unknown 5', -// {0x00000020}'Deleted', -// {>>> 0x00000040 ACTI: Has Tree LOD <<<} -// {>>> 0x00000040 REGN: Border Region <<<} -// {>>> 0x00000040 STAT: Has Tree LOD <<<} -// {>>> 0x00000040 REFR: Hidden From Local Map <<<} -// {0x00000040}'Constant HiddenFromLocalMap BorderRegion HasTreeLOD', -// {>>> 0x00000080 TES4: Localized <<<} -// {>>> 0x00000080 PHZD: Turn Off Fire <<<} -// {>>> 0x00000080 SHOU: Treat Spells as Powers <<<} -// {>>> 0x00000080 STAT: Add-on LOD Object <<<} -// {0x00000080}'Localized IsPerch AddOnLODObject TurnOffFire TreatSpellsAsPowers', -// {>>> 0x00000100 ACTI: Must Update Anims <<<} -// {>>> 0x00000100 REFR: Inaccessible <<<} -// {>>> 0x00000100 REFR for LIGH: Doesn't light water <<<} -// {0x00000100}'MustUpdateAnims Inaccessible DoesntLightWater', -// {>>> 0x00000200 ACTI: Local Map - Turns Flag Off, therefore it is Hidden <<<} -// {>>> 0x00000200 REFR: MotionBlurCastsShadows <<<} -// {0x00000200}'HiddenFromLocalMap StartsDead MotionBlurCastsShadows', -// {>>> 0x00000400 LSCR: Displays in Main Menu <<<} -// {0x00000400}'PersistentReference QuestItem DisplaysInMainMenu', -// {0x00000800}'InitiallyDisabled', -// {0x00001000}'Ignored', -// {0x00002000}'ActorChanged', -// {0x00004000}'Unknown 15', -// {>>> 0x00008000 STAT: Has Distant LOD <<<} -// {0x00008000}'VWD', -// {>>> 0x00010000 ACTI: Random Animation Start <<<} -// {>>> 0x00010000 REFR light: Never fades <<<} -// {0x00010000}'RandomAnimationStart NeverFades', -// {>>> 0x00020000 ACTI: Dangerous <<<} -// {>>> 0x00020000 REFR light: Doesn't light landscape <<<} -// {>>> 0x00020000 SLGM: Can hold NPC's soul <<<} -// {>>> 0x00020000 STAT: Use High-Detail LOD Texture <<<} -// {0x00020000}'Dangerous OffLimits DoesntLightLandscape HighDetailLOD CanHoldNPC', -// {0x00040000}'Compressed', -// {>>> 0x00080000 STAT: Has Currents <<<} -// {0x00080000}'CantWait HasCurrents', -// {>>> 0x00100000 ACTI: Ignore Object Interaction <<<} -// {0x00100000}'IgnoreObjectInteraction', -// {0x00200000}'(Used in Memory Changed Form)', -// {0x00400000}'Unknown 23', -// {>>> 0x00800000 ACTI: Is Marker <<<} -// {0x00800000}'IsMarker', -// {0x01000000}'Unknown 25', -// {>>> 0x02000000 ACTI: Obstacle <<<} -// {>>> 0x02000000 REFR: No AI Acquire <<<} -// {0x02000000}'Obstacle NoAIAcquire', -// {>>> 0x04000000 ACTI: Filter <<<} -// {0x04000000}'NavMeshFilter', -// {>>> 0x08000000 ACTI: Bounding Box <<<} -// {0x08000000}'NavMeshBoundingBox', -// {>>> 0x10000000 STAT: Show in World Map <<<} -// {0x10000000}'MustExitToTalk ShowInWorldMap', -// {>>> 0x20000000 ACTI: Child Can Use <<<} -// {>>> 0x20000000 REFR: Don't Havok Settle <<<} -// {0x20000000}'ChildCanUse DontHavokSettle', -// {>>> 0x40000000 ACTI: GROUND <<<} -// {>>> 0x40000000 REFR: NoRespawn <<<} -// {0x40000000}'NavMeshGround NoRespawn', -// {>>> 0x80000000 REFR: MultiBound <<<} -// {0x80000000}'MultiBound' -// ], [18]); - - wbRecordFlagsFlags := wbFlags(wbRecordFlagsFlags, [ - {0x00000001} { 0} 'Unknown 0', - {0x00000002} { 1} 'Unknown 1', - {0x00000004} { 2} 'Unknown 2', - {0x00000008} { 3} 'Unknown 3', - {0x00000010} { 4} 'Unknown 4', - {0x00000020} { 4} 'Unknown 5', - {0x00000040} { 6} 'Unknown 6', - {0x00000080} { 7} 'Unknown 7', - {0x00000100} { 8} 'Unknown 8', - {0x00000200} { 9} 'Unknown 9', - {0x00000400} {10} 'Unknown 10', - {0x00000800} {11} 'Unknown 11', - {0x00001000} {12} 'Unknown 12', - {0x00002000} {13} 'Unknown 13', - {0x00004000} {14} 'Unknown 14', - {0x00008000} {15} 'Unknown 15', - {0x00010000} {16} 'Unknown 16', - {0x00020000} {17} 'Unknown 17', - {0x00040000} {18} 'Unknown 18', - {0x00080000} {19} 'Unknown 19', - {0x00100000} {20} 'Unknown 20', - {0x00200000} {21} 'Unknown 21', - {0x00400000} {22} 'Unknown 22', - {0x00800000} {23} 'Unknown 23', - {0x01000000} {24} 'Unknown 24', - {0x02000000} {25} 'Unknown 25', - {0x04000000} {26} 'Unknown 26', - {0x08000000} {27} 'Unknown 27', - {0x10000000} {28} 'Unknown 28', - {0x20000000} {29} 'Unknown 29', - {0x40000000} {30} 'Unknown 30', - {0x80000000} {31} 'Unknown 31' - ]); - - wbRecordFlags := wbInteger('Record Flags', itU32, wbFlags(wbRecordFlagsFlags, wbFlagsList([]))); - - wbMainRecordHeader := wbStruct('Record Header', [ - wbString('Signature', 4, cpCritical), - wbInteger('Data Size', itU32, nil, cpIgnore), - wbRecordFlags, - wbFormID('FormID', cpFormID), - wbByteArray('Version Control Info 1', 4, cpIgnore), - wbInteger('Form Version', itU16, nil, cpIgnore), - wbByteArray('Version Control Info 2', 2, cpIgnore) - ]); - - wbSizeOfMainRecordStruct := 24; - - wbIgnoreRecords.Add(XXXX); - - wbXRGD := wbByteArray(XRGD, 'Ragdoll Data'); - wbXRGB := wbByteArray(XRGB, 'Ragdoll Biped Data'); - - wbMusicEnum := wbEnum(['Default', 'Public', 'Dungeon']); - wbSoundLevelEnum := wbEnum([ - 'Loud', - 'Normal', - 'Silent', - 'Very Loud' - ]); - - wbEntryPointsEnum := wbEnum([ - { 0} 'Calculate Weapon Damage', - { 1} 'Calculate My Critical Hit Chance', - { 2} 'Calculate My Critical Hit Damage', - { 3} 'Calculate Mine Explode Chance', - { 4} 'Adjust Limb Damage', - { 5} 'Adjust Book Skill Points', - { 6} 'Mod Recovered Health', - { 7} 'Get Should Attack', - { 8} 'Mod Buy Prices', - { 9} 'Add Leveled List On Death', - {10} 'Get Max Carry Weight', - {11} 'Mod Addiction Chance', - {12} 'Mod Addiction Duration', - {13} 'Mod Positive Chem Duration', - {14} 'Activate', - {15} 'Ignore Running During Detection', - {16} 'Ignore Broken Lock', - {17} 'Mod Enemy Critical Hit Chance', - {18} 'Mod Sneak Attack Mult', - {19} 'Mod Max Placeable Mines', - {20} 'Mod Bow Zoom', - {21} 'Mod Recover Arrow Chance', - {22} 'Mod Skill Use', - {23} 'Mod Telekinesis Distance', - {24} 'Mod Telekinesis Damage Mult', - {25} 'Mod Telekinesis Damage', - {26} 'Mod Bashing Damage', - {27} 'Mod Power Attack Stamina', - {28} 'Mod Power Attack Damage', - {29} 'Mod Spell Magnitude', - {30} 'Mod Spell Duration', - {31} 'Mod Secondary Value Weight', - {32} 'Mod Armor Weight', - {33} 'Mod Incoming Stagger', - {34} 'Mod Target Stagger', - {35} 'Mod Attack Damage', - {36} 'Mod Incoming Damage', - {37} 'Mod Target Damage Resistance', - {38} 'Mod Spell Cost', - {39} 'Mod Percent Blocked', - {40} 'Mod Shield Deflect Arrow Chance', - {41} 'Mod Incoming Spell Magnitude', - {42} 'Mod Incoming Spell Duration', - {43} 'Mod Player Intimidation', - {44} 'Mod Player Reputation', - {45} 'Mod Favor Points', - {46} 'Mod Bribe Amount', - {47} 'Mod Detection Light', - {48} 'Mod Detection Movement', - {49} 'Mod Soul Gem Recharge', - {50} 'Set Sweep Attack', - {51} 'Apply Combat Hit Spell', - {52} 'Apply Bashing Spell', - {53} 'Apply Reanimate Spell', - {54} 'Set Boolean Graph Variable', - {55} 'Mod Spell Casting Sound Event', - {56} 'Mod Pickpocket Chance', - {57} 'Mod Detection Sneak Skill', - {58} 'Mod Falling Damage', - {59} 'Mod Lockpick Sweet Spot', - {60} 'Mod Sell Prices', - {61} 'Can Pickpocket Equipped Item', - {62} 'Mod Lockpick Level Allowed', - {63} 'Set Lockpick Starting Arc', - {64} 'Set Progression Picking', - {65} 'Make Lockpicks Unbreakable', - {66} 'Mod Alchemy Effectiveness', - {67} 'Apply Weapon Swing Spell', - {68} 'Mod Commanded Actor Limit', - {69} 'Apply Sneaking Spell', - {70} 'Mod Player Magic Slowdown', - {71} 'Mod Ward Magicka Absorption Pct', - {72} 'Mod Initial Ingredient Effects Learned', - {73} 'Purify Alchemy Ingredients', - {74} 'Filter Activation', - {75} 'Can Dual Cast Spell', - {76} 'Mod Tempering Health', - {77} 'Mod Enchantment Power', - {78} 'Mod Soul Pct Captured to Weapon', - {79} 'Mod Soul Gem Enchanting', - {80} 'Mod # Applied Enchantments Allowed', - {81} 'Set Activate Label', - {82} 'Mod Shout OK', - {83} 'Mod Poison Dose Count', - {84} 'Should Apply Placed Item', - {85} 'Mod Armor Rating', - {86} 'Mod Lockpicking Crime Chance', - {87} 'Mod Ingredients Harvested', - {88} 'Mod Spell Range (Target Loc.)', - {89} 'Mod Potions Created', - {90} 'Mod Lockpicking Key Reward Chance', - {91} 'Allow Mount Actor' - ]); - - wbLocationEnum := wbEnum([ - {0} 'Near reference', - {1} 'In cell', - {2} 'Near package start location', - {3} 'Near editor location', - {4} 'Object ID', - {5} 'Object Type', - {6} 'Near linked reference', - {7} 'At package location', - {8} 'Alias (reference)', - {9} 'Alias (location)', - {10} 'Unknown 10', - {11} 'Unknown 11', - {12} 'Near self' - ]); - - wbEquipType := wbFlags([ - {0x00000001}'Hand To Hand Melee', - {0x00000002}'One Hand Sword', - {0x00000004}'One Hand Dagger', - {0x00000008}'One Hand Axe', - {0x00000010}'One Hand Mace', - {0x00000020}'Two Hand Sword', - {0x00000040}'Two Hand Axe', - {0x00000080}'Bow', - {0x00000100}'Staff', - {0x00000200}'Spell', - {0x00000400}'Shield', - {0x00000800}'Torch', - {0x00001000}'Crossbow' - ], True); - - wbEmotionTypeEnum := wbEnum([ - {0} 'Neutral', - {1} 'Anger', - {2} 'Disgust', - {3} 'Fear', - {4} 'Sad', - {5} 'Happy', - {6} 'Surprise', - {7} 'Puzzled' - ]); - - wbFurnitureAnimTypeEnum := wbEnum([ - {0} '', - {1} 'Sit', - {2} 'Lay', - {3} '', - {4} 'Lean' - ]); - - wbFurnitureEntryTypeFlags := wbFlags([ - {0x01} 'Front', - {0x02} 'Behind', - {0x04} 'Right', - {0x08} 'Left', - {0x10} 'Up' - ]); - - wbWardStateEnum := wbEnum([ - 'None', - 'Absorb', - 'Break' - ]); - - wbEventFunctionEnum := wbEnum([ - 'GetIsID', - 'IsInList', - 'GetValue', - 'HasKeyword', - 'GetItemValue' - ]); - - // Event member names and availability are different depending on event type - // Using generic names for the last 3 of them: Form, Value1, Value2 - wbEventMemberEnum := wbEnum([], [ - $0000, 'None', - $314F, 'CreatedObject', - $314C, '(Old)Location', - $324C, '(New)Location', - $314B, 'Keyword', - $3146, 'Form', - $3156, 'Value1', - $3256, 'Value2' - ]); - - wbWeaponAnimTypeEnum := wbEnum([ - {0} 'HandToHandMelee', - {1} 'OneHandSword', - {2} 'OneHandDagger', - {3} 'OneHandAxe', - {4} 'OneHandMace', - {5} 'TwoHandSword', - {6} 'TwoHandAxe', - {7} 'Bow', - {8} 'Staff', - {9} 'Crossbow' - ]); - - wbEDID := wbString(EDID, 'Editor ID', 0, cpNormal); // not cpBenign according to Arthmoor - wbFULL := wbLStringKC(FULL, 'Name', 0, cpTranslate); - wbFULLActor := wbLStringKC(FULL, 'Name', 0, cpTranslate, False, nil{wbActorTemplateUseBaseData}); - wbFULLReq := wbLStringKC(FULL, 'Name', 0, cpTranslate, True); - wbDESC := wbLStringKC(DESC, 'Description', 0, cpTranslate); - wbDESCReq := wbLStringKC(DESC, 'Description', 0, cpTranslate, True); - wbXSCL := wbFloat(XSCL, 'Scale'); - - wbOBND := wbStruct(OBND, 'Object Bounds', [ - wbInteger('X1', itS16), - wbInteger('Y1', itS16), - wbInteger('Z1', itS16), - wbInteger('X2', itS16), - wbInteger('Y2', itS16), - wbInteger('Z2', itS16) - ]); - - wbOBNDReq := wbStruct(OBND, 'Object Bounds', [ - wbInteger('X1', itS16), - wbInteger('Y1', itS16), - wbInteger('Z1', itS16), - wbInteger('X2', itS16), - wbInteger('Y2', itS16), - wbInteger('Z2', itS16) - ], cpNormal, True); - - wbPropTypeEnum := wbEnum([ - {00} 'None', - {01} 'Object', - {02} 'String', - {03} 'Int32', - {04} 'Float', - {05} 'Bool', - {06} '', - {07} '', - {08} '', - {09} '', - {10} '', - {11} 'Array of Object', - {12} 'Array of String', - {13} 'Array of Int32', - {14} 'Array of Float', - {15} 'Array of Bool' - ]); - - wbScriptFlags := wbInteger('Flags', itU8, wbEnum([ - {0x00} 'Local', - {0x01} 'Inherited', - {0x02} 'Removed', - {0x03} 'Inherited and Removed' - ])); - - wbScriptPropertyObject := wbUnion('Object Union', wbScriptObjFormatDecider, [ - wbStructSK([1], 'Object v2', [ - wbInteger('Unused', itU16, nil, cpIgnore), - wbInteger('Alias', itS16, wbScriptObjectAliasToStr, wbStrToAlias), - wbFormID('FormID') - ], [2, 1, 0]), - wbStructSK([1], 'Object v1', [ - wbFormID('FormID'), - wbInteger('Alias', itS16, wbScriptObjectAliasToStr, wbStrToAlias), - wbInteger('Unused', itU16, nil, cpIgnore) - ]) - ]); - - wbScriptProperties := - wbArrayS('Properties', wbStructSK([0], 'Property', [ - wbLenString('propertyName', 2), - wbInteger('Type', itU8, wbPropTypeEnum, cpNormal, False, nil, wbScriptPropertyTypeAfterSet), - wbInteger('Flags', itU8, wbEnum([ - {0x00} '', - {0x01} 'Edited', - {0x02} '', - {0x03} 'Removed' - ])), - wbUnion('Value', wbScriptPropertyDecider, [ - {00} wbNull, - {01} wbScriptPropertyObject, - {02} wbLenString('String', 2), - {03} wbInteger('Int32', itS32), - {04} wbFloat('Float'), - {05} wbInteger('Bool', itU8, wbEnum(['False', 'True'])), - {11} wbArray('Array of Object', wbScriptPropertyObject, -1), - {12} wbArray('Array of String', wbLenString('Element', 2), -1), - {13} wbArray('Array of Int32', wbInteger('Element', itS32), -1), - {14} wbArray('Array of Float', wbFloat('Element'), -1), - {15} wbArray('Array of Bool', wbInteger('Element', itU8, wbEnum(['False', 'True'])), -1) - ]) - ]), -2, cpNormal, False, nil, nil, nil, False); - - wbScriptEntry := wbStructSK([0], 'Script', [ - wbLenString('scriptName', 2), - wbScriptFlags, - wbScriptProperties - ]); - - wbScriptFragmentsInfo := wbStruct('Script Fragments', [ - wbInteger('Unknown', itS8), - wbInteger('Flags', itU8, wbFlags([ - {1} 'OnBegin', - {2} 'OnEnd' - ])), - wbLenString('fileName', 2), - wbArray('Fragments', // Do NOT sort, ordered OnBegin, OnEnd - wbStruct('Fragment', [ - wbInteger('Unknown', itS8), - wbLenString('scriptName', 2), - wbLenString('fragmentName', 2) - ]), [], wbScriptFragmentsInfoCounter) - ]); - - wbScriptFragmentsPack := wbStruct('Script Fragments', [ - wbInteger('Unknown', itS8), - wbInteger('Flags', itU8, wbFlags([ - {1} 'OnBegin', - {2} 'OnEnd', - {4} 'OnChange' - ])), - wbLenString('fileName', 2), - wbArray('Fragments', // Do NOT sort, ordered OnBegin, OnEnd, OnChange - wbStruct('Fragment', [ - wbInteger('Unknown', itS8), - wbLenString('scriptName', 2), - wbLenString('fragmentName', 2) - ]), [], wbScriptFragmentsPackCounter) - ]); - - wbScriptFragmentsQuest := wbStruct('Script Fragments', [ - wbInteger('Unknown', itS8), - wbInteger('fragmentCount', itU16), - wbLenString('fileName', 2), - wbArrayS('Fragments', - wbStructSK([0, 2], 'Fragment', [ - wbInteger('Quest Stage', itU16), - wbInteger('Unknown', itS16), - wbInteger('Quest Stage Index', itS32), - wbInteger('Unknown', itS8), - wbLenString('scriptName', 2), - wbLenString('fragmentName', 2) - ]), wbScriptFragmentsQuestCounter) - ]); - - wbScriptFragmentsScen := wbStruct('Script Fragments', [ - wbInteger('Unknown', itS8), - wbInteger('Flags', itU8, wbFlags([ - {1} 'OnBegin', - {2} 'OnEnd' - ])), - wbLenString('fileName', 2), - wbArray('Fragments', // Do NOT sort, ordered OnBegin, OnEnd - wbStruct('Fragment', [ - wbInteger('Unknown', itS8), - wbLenString('scriptName', 2), - wbLenString('fragmentName', 2) - ]), [], wbScriptFragmentsSceneCounter), - wbArray('Phase Fragments', - wbStructSK([0, 1], 'Phase Fragment', [ - wbInteger('Phase Flag', itU8, wbFlags([ - {1} 'OnStart', - {2} 'OnCompletion' - ])), - wbInteger('Phase Index', itU8), - wbInteger('Unknown', itS16), - wbInteger('Unknown', itS8), - wbInteger('Unknown', itS8), - wbLenString('scriptName', 2), - wbLenString('fragmentName', 2) - ]), -2) - ]); - - wbScriptFragments := wbStruct('Script Fragments', [ - wbInteger('Unknown', itS8), - wbLenString('fileName', 2), - wbArrayS('Fragments', - wbStructSK([0], 'Fragment', [ - wbInteger('Fragment Index', itU16), - wbInteger('Unknown', itS16), - wbInteger('Unknown', itS8), - wbLenString('scriptName', 2), - wbLenString('fragmentName', 2) - ]), -2) - ]); - - {>>> http://www.uesp.net/wiki/Tes5Mod:Mod_File_Format/VMAD_Field <<<} - - wbVMAD := wbStruct(VMAD, 'Virtual Machine Adapter', [ - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Scripts', wbScriptEntry, -2, cpNormal, False, nil, nil, nil, False) - ]); - - wbVMADFragmentedPERK := wbStruct(VMAD, 'Virtual Machine Adapter', [ - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Scripts', wbScriptEntry, -2, cpNormal, False, nil, nil, nil, False), - wbScriptFragments - ], cpNormal, False, nil, 3); - - wbVMADFragmentedPACK := wbStruct(VMAD, 'Virtual Machine Adapter', [ - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Scripts', wbScriptEntry, -2, cpNormal, False, nil, nil, nil, False), - wbScriptFragmentsPack - ], cpNormal, False, nil, 3); - - wbVMADFragmentedQUST := wbStruct(VMAD, 'Virtual Machine Adapter', [ - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Scripts', wbScriptEntry, -2, cpNormal, False, nil, nil, nil, False), - wbScriptFragmentsQuest, - wbArrayS('Aliases', wbStructSK([0], 'Alias', [ - wbScriptPropertyObject, - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Alias Scripts', wbScriptEntry, -2) - ]), -2) - ], cpNormal, False, nil, 3); - - wbVMADFragmentedSCEN := wbStruct(VMAD, 'Virtual Machine Adapter', [ - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Scripts', wbScriptEntry, -2, cpNormal, False, nil, nil, nil, False), - wbScriptFragmentsScen - ], cpNormal, False, nil, 3); - - wbVMADFragmentedINFO := wbStruct(VMAD, 'Virtual Machine Adapter', [ - wbInteger('Version', itS16, nil, cpIgnore), - wbInteger('Object Format', itS16, nil, cpIgnore), - wbArrayS('Scripts', wbScriptEntry, -2, cpNormal, False, nil, nil, nil, False), - wbScriptFragmentsInfo - ], cpNormal, False, nil, 3); - - - wbAttackData := wbRStructSK([1], 'Attack', [ - wbStruct(ATKD, 'Attack Data', [ - wbFloat('Damage Mult'), - wbFloat('Attack Chance'), - wbFormIDCk('Attack Spell', [SPEL, SHOU, NULL]), - wbInteger('Attack Flags', itU32, wbFlags([ - {0x00000001} 'Ignore Weapon', - {0x00000002} 'Bash Attack', - {0x00000004} 'Power Attack', - {0x00000008} 'Left Attack', - {0x00000010} 'Rotating Attack', - {0x00000020} 'Unknown 5', - {0x00000040} 'Unknown 6', - {0x00000080} 'Unknown 7', - {0x00000100} 'Unknown 8', - {0x00000200} 'Unknown 9', - {0x00000400} 'Unknown 10', - {0x00000800} 'Unknown 11', - {0x00001000} 'Unknown 12', - {0x00002000} 'Unknown 13', - {0x00004000} 'Unknown 14', - {0x00008000} 'Unknown 15', - {0x00010000} 'Unknown 16', - {0x00020000} 'Unknown 17', - {0x00040000} 'Unknown 18', - {0x00080000} 'Unknown 19', - {0x00100000} 'Unknown 20', - {0x00200000} 'Unknown 21', - {0x00400000} 'Unknown 22', - {0x00800000} 'Unknown 23', - {0x01000000} 'Unknown 24', - {0x02000000} 'Unknown 25', - {0x04000000} 'Unknown 26', - {0x08000000} 'Unknown 27', - {0x10000000} 'Unknown 28', - {0x20000000} 'Unknown 29', - {0x40000000} 'Unknown 30', - {0x80000000} 'Override Data' - ])), - wbFloat('Attack Angle'), - wbFloat('Strike Angle'), - wbFloat('Stagger'), - wbFormIDCk('Attack Type', [KYWD, NULL]), - wbFloat('Knockdown'), - wbFloat('Recovery Time'), - wbFloat('Stamina Mult') - ]), - wbString(ATKE, 'Attack Event') - ], []); - - wbPLDT := wbStruct(PLDT, 'Location', [ - wbInteger('Type', itS32, wbLocationEnum), - wbUnion('Location Value', wbTypeDecider, [ - {0} wbFormIDCkNoReach('Reference', [NULL, DOOR, PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - {1} wbFormIDCkNoReach('Cell', [NULL, CELL]), - {2} wbByteArray('Near Package Start Location', 4, cpIgnore), - {3} wbByteArray('Near Editor Location', 4, cpIgnore), - {4} wbFormIDCkNoReach('Object ID', [NULL, ACTI, DOOR, STAT, MSTT, FURN, SPEL, SCRL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, FACT, FLST, IDLM, SHOU]), - {5} wbInteger('Object Type', itU32, wbObjectTypeEnum), - {6} wbFormIDCk('Keyword', [NULL, KYWD]), - {7} wbByteArray('Unused', 4, cpIgnore), - {8} wbInteger('Alias', itS32, wbPackageLocationAliasToStr, wbStrToAlias), - {9} wbInteger('Reference', itS32, wbPackageLocationAliasToStr, wbStrToAlias), - {10} wbByteArray('Unknown', 4, cpIgnore), - {11} wbByteArray('Unknown', 4, cpIgnore), - {12} wbByteArray('Unknown', 4, cpIgnore) - ]), - wbInteger('Radius', itS32) - ]); - - wbPLVD := wbStruct(PLVD, 'Location', [ - wbInteger('Type', itS32, wbLocationEnum), - wbUnion('Location Value', wbTypeDecider, [ - {0} wbFormIDCkNoReach('Reference', [NULL, DOOR, PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - {1} wbFormIDCkNoReach('Cell', [NULL, CELL]), - {2} wbByteArray('Near Package Start Location', 4, cpIgnore), - {3} wbByteArray('Near Editor Location', 4, cpIgnore), - {4} wbFormIDCkNoReach('Object ID', [NULL, ACTI, DOOR, STAT, MSTT, FURN, SPEL, SCRL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, INGR, LIGH, FACT, FLST, IDLM, SHOU]), - {5} wbInteger('Object Type', itU32, wbObjectTypeEnum), - {6} wbFormIDCk('Keyword', [NULL, KYWD]), - {7} wbByteArray('Unused', 4, cpIgnore), - {8} wbInteger('Alias', itS32, wbPackageLocationAliasToStr, wbStrToAlias), - {9} wbInteger('Reference', itS32, wbPackageLocationAliasToStr, wbStrToAlias), - {10} wbByteArray('Unknown', 4, cpIgnore), - {11} wbByteArray('Unknown', 4, cpIgnore), - {12} wbByteArray('Unknown', 4, cpIgnore) - ]), - wbInteger('Radius', itS32) - ]); - - wbTargetData := wbStruct('Target Data', [ - wbInteger('Type', itS32, wbEnum([ - {0} 'Specific Reference', - {1} 'Object ID', - {2} 'Object Type', - {3} 'Linked Reference', - {4} 'Ref Alias', - {5} 'Unknown 5', - {6} 'Self' - ]), cpNormal, False, nil, nil, 2), - wbUnion('Target', wbTypeDecider, [ - {0} wbFormIDCkNoReach('Reference', [NULL, PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], True), - {1} wbFormIDCkNoReach('Object ID', [NULL, ACTI, DOOR, STAT, MSTT, FURN, SPEL, SCRL, NPC_, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, INGR, LIGH, FACT, FLST, IDLM, SHOU, SOUN, TXST, PROJ]), - {2} wbInteger('Object Type', itU32, wbObjectTypeEnum), - {3} wbFormID('Reference'), - {4} wbInteger('Alias', itS32, wbPackageLocationAliasToStr, wbStrToAlias), - {5} wbByteArray('Unknown', 4, cpIgnore), - {6} wbByteArray('Unknown', 4, cpIgnore) - ]), - wbInteger('Count / Distance', itS32) - ]); - - wbEITM := wbFormIDCk(EITM, 'Object Effect', [ENCH, SPEL]); - - wbPosRot := - wbStruct('Position/Rotation', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ]); - - wbDATAPosRot := - wbStruct(DATA, 'Position/Rotation', [ - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation', [ - wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ], cpNormal, True); - - wbMO2S := - wbArrayS(MO2S, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - wbMO3S := - wbArrayS(MO3S, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - wbMO4S := - wbArrayS(MO4S, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - wbMO5S := - wbArrayS(MO5S, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - - wbMODS := - wbArrayS(MODS, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - - wbMODD := - wbInteger(MODD, 'FaceGen Model Flags', itU8, wbFlags([ - 'Head', - 'Torso', - 'Right Hand', - 'Left Hand' - ])); - - wbMODT := wbByteArray(MODT, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow); - wbDMDT := wbByteArray(DMDT, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow); - - wbMODL := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbMODT, - wbMODS - ], [], cpNormal, False, nil, True); - - wbMODLActor := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbMODT, - wbMODS - ], [], cpNormal, False, nil{wbActorTemplateUseModelAnimation}, True); - - wbMODLReq := - wbRStructSK([0], 'Model', [ - wbString(MODL, 'Model Filename', 0, cpNormal, True), - wbMODT, - wbMODS - ], [], cpNormal, True, nil, True); - - wbDMDSs := wbArrayS(DMDS, 'Alternate Textures', - wbStructSK([0, 2], 'Alternate Texture', [ - wbLenString('3D Name'), - wbFormIDCk('New Texture', [TXST]), - wbInteger('3D Index', itS32) - ]), - -1); - - wbDEST := wbRStruct('Destructable', [ - wbStruct(DEST, 'Header', [ - wbInteger('Health', itS32), - wbInteger('DEST Count', itU8), - wbInteger('VATS Targetable', itU8, wbEnum(['False', 'True'])), - wbByteArray('Unknown', 2) - ]), - wbRArray('Stages', - wbRStruct('Stage', [ - wbStruct(DSTD, 'Destruction Stage Data', [ - wbInteger('Health %', itU8), - wbInteger('Index', itU8), - wbInteger('Model Damage Stage', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'Cap Damage', - 'Disable', - 'Destroy', - 'Ignore External Dmg' - ])), - wbInteger('Self Damage per Second', itS32), - wbFormIDCk('Explosion', [EXPL, NULL]), - wbFormIDCk('Debris', [DEBR, NULL]), - wbInteger('Debris Count', itS32) - ], cpNormal, True), - wbRStructSK([0], 'Model', [ - wbString(DMDL, 'Model Filename'), - wbDMDT, - wbDMDSs - ], [], cpNormal, False, nil), - wbEmpty(DSTF, 'End Marker', cpNormal, True) - ], [], cpNormal, False, nil) - ) - ], [], cpNormal, False, nil); - - wbDESTActor := wbRStruct('Destructable', [ - wbStruct(DEST, 'Header', [ - wbInteger('Health', itS32), - wbInteger('Count', itU8), - wbInteger('VATS Targetable', itU8, wbEnum(['False', 'True'])), - wbByteArray('Unknown', 2) - ]), - wbRArray('Stages', // Begin Stage Array - wbRStruct('Stage', [ // Begin Stage RStruct - wbStruct(DSTD, 'Destruction Stage Data', [ // Begin DSTD - wbInteger('Health %', itU8), - wbInteger('Index', itU8), - wbInteger('Damage Stage', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'Cap Damage', - 'Disable', - 'Destroy' - ])), - wbInteger('Self Damage per Second', itS32), - wbFormIDCk('Explosion', [EXPL, NULL]), - wbFormIDCk('Debris', [DEBR, NULL]), - wbInteger('Debris Count', itS32) - ], cpNormal, True), // End DSTD - wbRStructSK([0], 'Model', [ // Begin DMDL - wbString(DMDL, 'Model Filename') - ], []), // End DMDL - wbDMDT, - wbDMDSs, - wbEmpty(DSTF, 'End Marker', cpNormal, True) - ], []) // Begin Stage RStruct - ) // End Stage Array - ], [], cpNormal, False, nil{wbActorTemplateUseModelAnimation}); - - wbXLOD := wbArray(XLOD, 'Distant LOD Data', wbFloat('Unknown'), 3); - - wbXESP := wbStruct(XESP, 'Enable Parent', [ - wbFormIDCk('Reference', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - wbInteger('Flags', itU8, wbFlags([ - 'Set Enable State to Opposite of Parent', - 'Pop In' - ])), - wbByteArray('Unused', 3, cpIgnore) - ]); - - wbPDTO := - wbStruct(PDTO, 'Topic Data', [ - wbInteger('Type', itU32, wbEnum([ - 'Topic Ref', - 'Topic Subtype' - ])), - wbUnion('Data', wbTypeDecider, [ - wbFormIDCk('Topic', [DIAL, NULL]), - wbString('Subtype', 4) - ]) - ]); - - wbPDTOs := wbRArray('Topic', wbPDTO, cpNormal, False, nil); - - wbXLCM := wbInteger(XLCM, 'Level Modifier', itS32, wbEnum([ - 'Easy', - 'Medium', - 'Hard', - 'Very Hard' - ])); - - wbTVDT := wbByteArray(TVDT, 'Occlusion Data', 0, cpNormal); -// wbTVDT := wbArray(TVDT, 'Occlusion Data', wbInteger('Unknown', itS32)), - - if wbSimpleRecords then begin - wbMaxHeightDataCELL := wbByteArray(MHDT, 'Max Height Data', 0, cpNormal); - wbMaxHeightDataWRLD := wbByteArray(MHDT, 'Max Height Data', 0, cpNormal); - end - else begin - wbMaxHeightDataCELL := wbStruct(MHDT, 'Max Height Data', [ - wbFloat('Offset'), - wbArray('Rows', - wbByteArray('Columns', 32) - // way too verbose for no practical use - //wbStruct('Row', [ wbArray('Columns', wbInteger('Column', itU8), 32) ]) - , 32) - ]); - wbMaxHeightDataWRLD := wbStruct(MHDT, 'Max Height Data', [ - wbStruct('Min', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbStruct('Max', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbByteArray('Cell Data', 0) - // way too verbose for no practical use - {wbArray('Cell Data', wbStruct('Quad Height', [ - wbInteger('Bottom Left', itU8), - wbInteger('Bottom Right', itU8), - wbInteger('Top Left', itU8), - wbInteger('Top Right', itU8) - ]))} - ]); - end; - - if wbSimpleRecords then - wbOFST := wbByteArray(OFST, 'Offset Data') - else - wbOFST := wbArray(OFST, 'Offset Data', wbArray('Rows', wbInteger('Offset', itU32), wbOffsetDataColsCounter), 0); - - wbOwnership := wbRStruct('Ownership', [ - wbFormIDCkNoReach(XOWN, 'Owner', [FACT, ACHR, NPC_]), - wbInteger(XRNK, 'Faction rank', itS32) - ], [XRGD]); - - wbXGLB := wbFormIDCk(XGLB, 'Global variable', [GLOB]); -end; - -procedure DefineTES5b; -begin - - wbRecord(ACHR, 'Placed NPC', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000200} 9, 'Starts Dead', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x02000000} 25, 'No AI Acquire', - {0x20000000} 29, 'Don''t Havok Settle' - ], True, True)), [ - wbEDID, - wbVMAD, - wbFormIDCk(NAME, 'Base', [NPC_], False, cpNormal, True), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - {--- Ragdoll ---} - wbXRGD, - wbXRGB, - - {--- Patrol Data ---} - wbRStruct('Patrol Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - {>>> BEGIN leftover from earlier CK versions <<<} - wbRStruct('Unused', [ - wbUnknown(SCHR), - wbUnknown(SCDA), - wbUnknown(SCTX), - wbUnknown(QNAM), - wbUnknown(SCRO) - ], [], cpIgnore, false, wbNeverShow), - {>>> END leftover from earlier CK versions <<<} - wbPDTOs, - wbFormIDCk(TNAM, 'Topic', [DIAL, NULL], False, cpNormal) - ], []), - - {--- Leveled Actor ----} - wbXLCM, - - {--- Merchant Container ----} - wbFormIDCk(XMRC, 'Merchant Container', [REFR], True), - - {--- Extra ---} - wbInteger(XCNT, 'Count', itS32), - wbFloat(XRDS, 'Radius'), - wbFloat(XHLP, 'Health'), - - wbRArrayS('Linked References', wbStructSK(XLKR, [0], 'Linked Reference', [ - wbFormIDCk('Keyword/Ref', [KYWD, PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA, NULL]), - wbFormIDCk('Ref', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]) - ], cpNormal, False, nil, 1)), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - wbFloat('Delay') - ]) - ) - ], []), - - {--- Linked Ref ---} - wbStruct(XCLP, 'Linked Reference Color', [ - wbByteColors('Link Start Color'), - wbByteColors('Link End Color') - ]), - - wbFormIDCk(XLCN, 'Persistent Location', [LCTN]), - wbFormIDCk(XLRL, 'Location Reference', [LCRT, LCTN, NULL], False, cpBenignIfAdded), - wbEmpty(XIS2, 'Ignored by Sandbox'), - wbArray(XLRT, 'Location Ref Type', wbFormIDCk('Ref', [LCRT, NULL])), - wbFormIDCk(XHOR, 'Horse', [ACHR]), - wbFloat(XHTW, 'Head-Tracking Weight'), - wbFloat(XFVC, 'Favor Cost'), - - {--- Enable Parent ---} - wbXESP, - - {--- Ownership ---} - wbOwnership, - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - - {--- Flags ---} - wbEmpty(XIBS, 'Ignored By Sandbox'), - - {--- 3D Data ---} - wbXSCL, - wbDATAPosRot - ], True, wbPlacedAddInfo); - - wbRecord(ACTI, 'Activator', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000040} 6, 'Has Tree LOD', - {0x00000100} 8, 'Must Update Anims', - {0x00000200} 9, 'Hidden From Local Map', - {0x00008000} 15, 'Has Distant LOD', - {0x00010000} 16, 'Random Anim Start', - {0x00020000} 17, 'Dangerous', - {0x00100000} 20, 'Ignore Object Interaction', - {0x00800000} 23, 'Is Marker', - {0x02000000} 25, 'Obstacle', - {0x04000000} 26, 'NavMesh Generation - Filter', - {0x08000000} 27, 'NavMesh Generation - Bounding Box', - {0x20000000} 29, 'Child Can Use', - {0x40000000} 30, 'NavMesh Generation - Ground' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbMODL, - wbDEST, - wbKSIZ, - wbKWDAs, - wbStruct(PNAM, 'Marker Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbInteger('Unused', itU8) - ]), - wbFormIDCk(SNAM, 'Sound - Looping', [SNDR]), - wbFormIDCk(VNAM, 'Sound - Activation', [SNDR]), - wbFormIDCk(WNAM, 'Water Type', [WATR]), - wbLString(RNAM, 'Activate Text Override', 0, cpTranslate), - wbInteger(FNAM, 'Flags', itU16, wbFlags([ - 'No Displacement', - 'Ignored by Sandbox' - ])), - wbFormIDCk(KNAM, 'Interaction Keyword', [KYWD]) - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbRecord(TACT, 'Talking Activator', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000200} 9, 'Hidden From Local Map', - {0x00010000} 16, 'Random Anim Start', - {0x00020000} 17, 'Radio Station' - ]), [17]), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbMODL, - wbDEST, - wbKSIZ, - wbKWDAs, - wbUnknown(PNAM, cpIgnore, True), - wbFormIDCk(SNAM, 'Looping Sound', [SNDR]), - wbUnknown(FNAM, cpIgnore, True), - wbFormIDCk(VNAM, 'Voice Type', [VTYP]) - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbICON := wbRStruct('Icon', [ - wbString(ICON, 'Large Icon filename', 0, cpNormal, True), - wbString(MICO, 'Small Icon filename') - ], [], cpNormal, False, nil, True); - - wbICONReq := wbRStruct('Icon', [ - wbString(ICON, 'Large Icon filename', 0, cpNormal, True), - wbString(MICO, 'Small Icon filename') - ], [], cpNormal, True, nil, True); - - wbICO2 := wbRStruct('Icon 2 (female)', [ - wbString(ICO2, 'Large Icon filename', 0, cpNormal, True), - wbString(MIC2, 'Small Icon filename') - ], [], cpNormal, False, nil, True); - - wbVatsValueFunctionEnum := - wbEnum([ - { 0} 'Weapon Is', - { 1} 'Weapon In List', - { 2} 'Target Is', - { 3} 'Target In List', - { 4} 'Target Distance', - { 5} 'Target Part', - { 6} 'VATS Action', - { 7} 'Is Success', - { 8} 'Is Critical', - { 9} 'Critical Effect Is', - {10} 'Critical Effect In List', - {11} 'Is Fatal', - {12} 'Explode Part', - {13} 'Dismember Part', - {14} 'Cripple Part', - {15} 'Weapon Type Is', - {16} 'Is Stranger', - {17} 'Is Paralyzing Palm', - {18} 'Projectile Type Is', - {19} 'Delivery Type Is', - {20} 'Casting Type Is' - ]); - - wbActorValueEnum := - wbEnum([ - {00} 'Aggresion', - {01} 'Confidence', - {02} 'Energy', - {03} 'Morality', - {04} 'Mood', - {05} 'Assistance', - {06} 'One-Handed', - {07} 'Two-Handed', - {08} 'Archery', - {09} 'Block', - {10} 'Smithing', - {11} 'Heavy Armor', - {12} 'Light Armor', - {13} 'Pickpocket', - {14} 'Lockpicking', - {15} 'Sneak', - {16} 'Alchemy', - {17} 'Speech', - {18} 'Alteration', - {19} 'Conjuration', - {20} 'Destruction', - {21} 'Illusion', - {22} 'Restoration', - {23} 'Enchanting', - {24} 'Health', - {25} 'Magicka', - {26} 'Stamina', - {27} 'Heal Rate', - {28} 'Magicka Rate', - {29} 'Stamina Rate', - {30} 'Speed Mult', - {31} 'Inventory Weight', - {32} 'Carry Weight', - {33} 'Critical Chance', - {34} 'Melee Damage', - {35} 'Unarmed Damage', - {36} 'Mass', - {37} 'Voice Points', - {38} 'Voice Rate', - {39} 'Damage Resist', - {40} 'Poison Resist', - {41} 'Resist Fire', - {42} 'Resist Shock', - {43} 'Resist Frost', - {44} 'Resist Magic', - {45} 'Resist Disease', - {46} 'Unknown 46', - {47} 'Unknown 47', - {48} 'Unknown 48', - {49} 'Unknown 49', - {50} 'Unknown 50', - {51} 'Unknown 51', - {52} 'Unknown 52', - {53} 'Paralysis', - {54} 'Invisibility', - {55} 'Night Eye', - {56} 'Detect Life Range', - {57} 'Water Breathing', - {58} 'Water Walking', - {59} 'Unknown 59', - {60} 'Fame', - {61} 'Infamy', - {62} 'Jumping Bonus', - {63} 'Ward Power', - {64} 'Right Item Charge', - {65} 'Armor Perks', - {66} 'Shield Perks', - {67} 'Ward Deflection', - {68} 'Variable01', - {69} 'Variable02', - {70} 'Variable03', - {71} 'Variable04', - {72} 'Variable05', - {73} 'Variable06', - {74} 'Variable07', - {75} 'Variable08', - {76} 'Variable09', - {77} 'Variable10', - {78} 'Bow Speed Bonus', - {79} 'Favor Active', - {80} 'Favors Per Day', - {81} 'Favors Per Day Timer', - {82} 'Left Item Charge', - {83} 'Absorb Chance', - {84} 'Blindness', - {85} 'Weapon Speed Mult', - {86} 'Shout Recovery Mult', - {87} 'Bow Stagger Bonus', - {88} 'Telekinesis', - {89} 'Favor Points Bonus', - {90} 'Last Bribed Intimidated', - {91} 'Last Flattered', - {92} 'Movement Noise Mult', - {93} 'Bypass Vendor Stolen Check', - {94} 'Bypass Vendor Keyword Check', - {95} 'Waiting For Player', - {96} 'One-Handed Modifier', - {97} 'Two-Handed Modifier', - {98} 'Marksman Modifier', - {99} 'Block Modifier', - {100} 'Smithing Modifier', - {101} 'Heavy Armor Modifier', - {102} 'Light Armor Modifier', - {103} 'Pickpocket Modifier', - {104} 'Lockpicking Modifier', - {105} 'Sneaking Modifier', - {106} 'Alchemy Modifier', - {107} 'Speechcraft Modifier', - {108} 'Alteration Modifier', - {109} 'Conjuration Modifier', - {110} 'Destruction Modifier', - {111} 'Illusion Modifier', - {112} 'Restoration Modifier', - {113} 'Enchanting Modifier', - {114} 'One-Handed Skill Advance', - {115} 'Two-Handed Skill Advance', - {116} 'Marksman Skill Advance', - {117} 'Block Skill Advance', - {118} 'Smithing Skill Advance', - {119} 'Heavy Armor Skill Advance', - {120} 'Light Armor Skill Advance', - {121} 'Pickpocket Skill Advance', - {122} 'Lockpicking Skill Advance', - {123} 'Sneaking Skill Advance', - {124} 'Alchemy Skill Advance', - {125} 'Speechcraft Skill Advance', - {126} 'Alteration Skill Advance', - {127} 'Conjuration Skill Advance', - {128} 'Destruction Skill Advance', - {129} 'Illusion Skill Advance', - {130} 'Restoration Skill Advance', - {131} 'Enchanting Skill Advance', - {132} 'Left Weapon Speed Multiply', - {133} 'Dragon Souls', - {134} 'Combat Health Regen Multiply', - {135} 'One-Handed Power Modifier', - {136} 'Two-Handed Power Modifier', - {137} 'Marksman Power Modifier', - {138} 'Block Power Modifier', - {139} 'Smithing Power Modifier', - {140} 'Heavy Armor Power Modifier', - {141} 'Light Armor Power Modifier', - {142} 'Pickpocket Power Modifier', - {143} 'Lockpicking Power Modifier', - {144} 'Sneaking Power Modifier', - {145} 'Alchemy Power Modifier', - {146} 'Speechcraft Power Modifier', - {147} 'Alteration Power Modifier', - {148} 'Conjuration Power Modifier', - {149} 'Destruction Power Modifier', - {150} 'Illusion Power Modifier', - {151} 'Restoration Power Modifier', - {152} 'Enchanting Power Modifier', - {153} 'Dragon Rend', - {154} 'Attack Damage Mult', - {155} 'Heal Rate Mult', - {156} 'Magicka Rate Mult', - {157} 'Stamina Rate Mult', - {158} 'Werewolf Perks', - {159} 'Vampire Perks', - {160} 'Grab Actor Offset', - {161} 'Grabbed', - {162} 'Unknown 162', - {163} 'Reflect Damage' - ], [ - -1, 'None' - ]); - - wbSkillEnum := - wbEnum([ - 'Unknown 1', - 'Unknown 2', - 'Unknown 3', - 'Unknown 4', - 'Unknown 5', - 'Unknown 6', - 'One Handed', - 'Two Handed', - 'Archery', - 'Block', - 'Smithing', - 'Heavy Armor', - 'Light Armor', - 'Pickpocket', - 'Lockpicking', - 'Sneak', - 'Alchemy', - 'Speech', - 'Alteration', - 'Conjuration', - 'Destruction', - 'Illusion', - 'Restoration', - 'Enchanting' - ], [ - -1, 'None' - ]); - - wbCastEnum := wbEnum([ - {0} 'Constant Effect', - {1} 'Fire and Forget', - {2} 'Concentration', - {3} 'Scroll' - ]); - - wbTargetEnum := wbEnum([ - {0} 'Self', - {1} 'Touch', - {2} 'Aimed', - {3} 'Target Actor', - {4} 'Target Location' - ]); - - wbCastingSourceEnum := wbEnum([ - 'Left', - 'Right', - 'Voice', - 'Instant' - ]); - - wbCrimeTypeEnum := - wbEnum([ - 'Steal', - 'Pickpocket', - 'Trespass', - 'Attack', - 'Murder', - 'Escape Jail', - 'Werewolf Transformation' - ], [ - -1, 'None' - ]); - - wbActorValue := wbInteger('Actor Value', itS32, wbActorValueEnum); - - wbETYP := wbFormIDCk(ETYP, 'Equipment Type', [EQUP, NULL]); - wbETYPReq := wbFormIDCk(ETYP, 'Equipment Type', [EQUP, NULL], False, cpNormal, True); - - wbFormTypeEnum := wbEnum([], [ - 0, 'Activator', - 1, 'Armor', - 2, 'Book', - 3, 'Container', - 4, 'Door', - 5, 'Ingredient', - 6, 'Light', - 7, 'MiscItem', - 8, 'Static', - 9, 'Grass', - 10, 'Tree', - 12, 'Weapon', - 13, 'Actor', - 14, 'LeveledCharacter', - 15, 'Spell', - 16, 'Enchantment', - 17, 'Potion', - 18, 'LeveledItem', - 19, 'Key', - 20, 'Ammo', - 21, 'Flora', - 22, 'Furniture', - 23, 'Sound Marker', - 24, 'LandTexture', - 25, 'CombatStyle', - 26, 'LoadScreen', - 27, 'LeveledSpell', - 28, 'AnimObject', - 29, 'WaterType', - 30, 'IdleMarker', - 31, 'EffectShader', - 32, 'Projectile', - 33, 'TalkingActivator', - 34, 'Explosion', - 35, 'TextureSet', - 36, 'Debris', - 37, 'MenuIcon', - 38, 'FormList', - 39, 'Perk', - 40, 'BodyPartData', - 41, 'AddOnNode', - 42, 'MovableStatic', - 43, 'CameraShot', - 44, 'ImpactData', - 45, 'ImpactDataSet', - 46, 'Quest', - 47, 'Package', - 48, 'VoiceType', - 49, 'Class', - 50, 'Race', - 51, 'Eyes', - 52, 'HeadPart', - 53, 'Faction', - 54, 'Note', - 55, 'Weather', - 56, 'Climate', - 57, 'ArmorAddon', - 58, 'Global', - 59, 'Imagespace', - 60, 'Imagespace Modifier', - 61, 'Encounter Zone', - 62, 'Message', - 63, 'Constructible Object', - 64, 'Acoustic Space', - 65, 'Ragdoll', - 66, 'Script', - 67, 'Magic Effect', - 68, 'Music Type', - 69, 'Static Collection', - 70, 'Keyword', - 71, 'Location', - 72, 'Location Ref Type', - 73, 'Footstep', - 74, 'Footstep Set', - 75, 'Material Type', - 76, 'Actor Action', - 77, 'Music Track', - 78, 'Word of Power', - 79, 'Shout', - 80, 'Relationship', - 81, 'Equip Slot', - 82, 'Association Type', - 83, 'Outfit', - 84, 'Art Object', - 85, 'Material Object', - 87, 'Lighting Template', - 88, 'Shader Particle Geometry', - 89, 'Visual Effect', - 90, 'Apparatus', - 91, 'Movement Type', - 92, 'Hazard', - 93, 'SM Event Node', - 94, 'Sound Descriptor', - 95, 'Dual Cast Data', - 96, 'Sound Category', - 97, 'Soul Gem', - 98, 'Sound Output Model', - 99, 'Collision Layer', - 100, 'Scroll', - 101, 'ColorForm', - 102, 'Reverb Parameters' - ]); - - wbMiscStatEnum := wbEnum([], [ - Int64($FCDD5011), 'Animals Killed', - Int64($366D84CF), 'Armor Improved', - Int64($023497E6), 'Armor Made', - Int64($8E20D7C9), 'Assaults', - Int64($579FFA75), 'Automations Killed', - Int64($B9B50725), 'Backstabs', - Int64($ED6A0EF2), 'Barters', - Int64($CCB952CE), 'Books Read', - Int64($317E8B4C), 'Brawls Won', - Int64($1D79006B), 'Bribes', - Int64($3602DE8F), 'Bunnies Slaughtered', - Int64($53D9E9B5), 'Chests Looted', - Int64($683C1980), 'Civil War Quests Completed', - Int64($66CCC50A), 'College of Winterhold Quests Completed', - Int64($40B11EFE), 'Creatures Killed', - Int64($22D5BA38), 'Critical Strikes', - Int64($A930980F), 'Daedra Killed', - Int64($3558374B), 'Daedric Quests Completed', - Int64($37A76425), 'Dawnguard Quests Completed', - Int64($2BDAC36F), 'Days as a Vampire', - Int64($6E684590), 'Days as a Werewolf', - Int64($B6F118DB), 'Days Jailed', - Int64($3C626A90), 'Days Passed', - Int64($8556AD88), 'Diseases Contracted', - Int64($46D6FBBC), 'Dragon Souls Collected', - Int64($AA444695), 'Dungeons Cleared', - Int64($1A37F336), 'Eastmarch Bounty', - Int64($5AC3A8ED), 'Falkreath Bounty', - Int64($87B12ECC), 'Favorite School', - Int64($518BBC4E), 'Favorite Shout', - Int64($41DD77A6), 'Favorite Spell', - Int64($171C5391), 'Favorite Weapon', - Int64($4F041AA2), 'Fines Paid', - Int64($9311B22B), 'Food Eaten', - Int64($57C089F7), 'Gold Found', - Int64($D20EDA4F), 'Haafingar Bounty', - Int64($516C486D), 'Hjaalmarch Bounty', - Int64($B0A1E32E), 'Horses Owned', - Int64($EBAE35E8), 'Horses Stolen', - Int64($FA024018), 'Hours Slept', - Int64($CAD2ECA1), 'Hours Waiting', - Int64($527DF857), 'Houses Owned', - Int64($47B4A015), 'Ingredients Eaten', - Int64($CE842356), 'Ingredients Harvested', - Int64($7D2E57C0), 'Intimidations', - Int64($C21702B5), 'Items Pickpocketed', - Int64($82F190C2), 'Items Stolen', - Int64($6627464B), 'Jail Escapes', - Int64($3520E710), 'Largest Bounty', - Int64($8A24FDE2), 'Locations Discovered', - Int64($5829CC2E), 'Locks Picked', - Int64($88089979), 'Magic Items Made', - Int64($7EA26C2D), 'Main Quests Completed', - Int64($7187A208), 'Mauls', - Int64($98EE55DC), 'Misc Objectives Completed', - Int64($FA06230B), 'Most Gold Carried', - Int64($D37C6909), 'Murders', - Int64($22C2CBD0), 'Necks Bitten', - Int64($BEEBCC87), 'Nirnroots Found', - Int64($56CCFC54), 'NumVampirePerks', - Int64($76A1A5C0), 'NumWerewolfPerks', - Int64($F22A8133), 'People Killed', - Int64($47A78467), 'Persuasions', - Int64($F2BAC234), 'Pockets Picked', - Int64($17C64668), 'Poisons Mixed', - Int64($7D8F2EA6), 'Poisons Used', - Int64($4228DE85), 'Potions Mixed', - Int64($9631EC11), 'Potions Used', - Int64($DE6C73FE), 'Questlines Completed', - Int64($0D7B8B16), 'Quests Completed', - Int64($BB39399E), 'Shouts Learned', - Int64($731B5333), 'Shouts Mastered', - Int64($F921D8BA), 'Shouts Unlocked', - Int64($B1AE4792), 'Side Quests Completed', - Int64($ACE470D7), 'Skill Books Read', - Int64($F33130CE), 'Skill Increases', - Int64($B556CC52), 'Sneak Attacks', - Int64($A74CBE83), 'Soul Gems Used', - Int64($C2C9E233), 'Souls Trapped', - Int64($5EC89F1A), 'Spells Learned', - Int64($B251A346), 'Standing Stones Found', - Int64($05D45702), 'Stores Invested In', - Int64($D0FE7031), 'The Companions Quests Completed', - Int64($52BA68CB), 'The Dark Brotherhood Quests Completed', - Int64($3E267D77), 'The Pale Bounty', - Int64($69B48177), 'The Reach Bounty', - Int64($50A23F69), 'The Rift Bounty', - Int64($62B2E95D), 'Thieves'' Guild Quests Completed', - Int64($944CEA93), 'Times Jailed', - Int64($50AAB633), 'Times Shouted', - Int64($99BB86D8), 'Total Lifetime Bounty', - Int64($4C252391), 'Training Sessions', - Int64($7AEA9C2B), 'Trespasses', - Int64($A67626F4), 'Tribal Orcs Bounty', - Int64($41D4BC0F), 'Undead Killed', - Int64($F39260A1), 'Vampirism Cures', - Int64($61A5C5A9), 'Weapons Disarmed', - Int64($1D3BA844), 'Weapons Improved', - Int64($25F1EA25), 'Weapons Made', - Int64($38A2DD66), 'Werewolf Transformations', - Int64($4231FA4F), 'Whiterun Bounty', - Int64($92565767), 'Wings Plucked', - Int64($C7FC518D), 'Winterhold Bounty', - Int64($949FA7BC), 'Words of Power Learned', - Int64($2C6E3FC0), 'Words of Power Unlocked' - ]); - - wbAdvanceActionEnum := wbEnum([ - 'Normal Usage', - 'Power Attack', - 'Bash', - 'Lockpick Success', - 'Lockpick Broken' - ]); - - wbAlignmentEnum := - wbEnum([ - 'Good', - 'Neutral', - 'Evil', - 'Very Good', - 'Very Evil' - ]); - - wbAxisEnum := - wbEnum([], [ - 88, 'X', - 89, 'Y', - 90, 'Z' - ]); - - wbCriticalStageEnum := - wbEnum([ - 'None', - 'Goo Start', - 'Goo End', - 'Disintegrate Start', - 'Disintegrate End' - ]); - - wbSexEnum := wbEnum(['Male','Female']); - - wbEFID := wbFormIDCk(EFID, 'Base Effect', [MGEF]); - - wbEFIT := - wbStructSK(EFIT, [3, 4], '', [ - wbFloat('Magnitude', cpNormal, True), - wbInteger('Area', itU32), - wbInteger('Duration', itU32) - ], cpNormal, True, nil, -1, wbEFITAfterLoad); - - wbCTDA := wbRStruct('Condition', [ - wbStruct(CTDA, '', [ - wbInteger('Type', itU8, wbCtdaTypeToStr, wbCtdaTypeToInt, cpNormal, False, nil, wbCtdaTypeAfterSet), - wbByteArray('Unused', 3, cpIgnore, False, wbNeverShow), - wbUnion('Comparison Value', wbCTDACompValueDecider, [ - wbFloat('Comparison Value - Float'), - wbFormIDCk('Comparison Value - Global', [GLOB]) - ]), - wbInteger('Function', itU16, wbCTDAFunctionToStr, wbCTDAFunctionToInt), - wbByteArray('Unused', 2, cpIgnore, False, wbNeverShow), - wbUnion('Parameter #1', wbCTDAParam1Decider, [ - wbByteArray('Unknown', 4), - wbByteArray('None', 4, cpIgnore), - wbInteger('Integer', itS32), - wbFloat('Float'), - wbByteArray('Variable Name (unused)', 4, cpIgnore), - wbInteger('Sex', itU32, wbSexEnum), - wbInteger('Actor Value', itS32, wbActorValueEnum), - wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - wbInteger('Axis', itU32, wbAxisEnum), - wbInteger('Quest Stage (unused)', itS32), - wbInteger('Misc Stat', itU32, wbMiscStatEnum), - wbInteger('Alignment', itU32, wbAlignmentEnum), - wbFormIDCkNoReach('Equip Type', [EQUP]), - wbInteger('Form Type', itU32, wbFormTypeEnum), - wbInteger('Critical Stage', itU32, wbCriticalStageEnum), - wbFormIDCkNoReach('Object Reference', [NULL, PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - wbFormIDCkNoReach('Inventory Object', [ARMO, BOOK, MISC, WEAP, AMMO, KEYM, ALCH, SCRL, SLGM, INGR, FLST, LIGH, LVLI, COBJ]), - wbFormIDCkNoReach('Actor', [NULL, PLYR, ACHR, REFR]), - wbFormIDCkNoReach('Voice Type', [VTYP, FLST]), - wbFormIDCkNoReach('Idle', [IDLE]), - wbFormIDCkNoReach('Form List', [FLST]), - wbFormIDCkNoReach('Quest', [QUST]), - wbFormIDCkNoReach('Faction', [FACT]), - wbFormIDCkNoReach('Cell', [CELL]), - wbFormIDCkNoReach('Class', [CLAS]), - wbFormIDCkNoReach('Race', [RACE]), - wbFormIDCkNoReach('Actor Base', [NPC_]), - wbFormIDCkNoReach('Global', [GLOB]), - wbFormIDCkNoReach('Weather', [WTHR]), - wbFormIDCkNoReach('Package', [PACK]), - wbFormIDCkNoReach('Encounter Zone', [ECZN]), - wbFormIDCkNoReach('Perk', [PERK]), - wbFormIDCkNoReach('Owner', [NULL, FACT, NPC_]), - wbFormIDCkNoReach('Furniture', [FURN, FLST]), - wbFormIDCkNoReach('Effect Item', [SPEL, ENCH, ALCH, INGR, SCRL]), - wbFormIDCkNoReach('Base Effect', [MGEF]), - wbFormIDCkNoReach('Worldspace', [WRLD, FLST]), - wbInteger('VATS Value Function', itU32, wbVATSValueFunctionEnum), - wbInteger('VATS Value Param (INVALID)', itU32), - wbFormIDCkNoReach('Referenceable Object', [NULL, NPC_, PROJ, TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, TACT, FLST, LVLI, LVSP, SPEL, SCRL, SHOU, SLGM, ENCH], [NPC_, PROJ, TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, TACT, LVLI, LVSP, SPEL, SCRL, SHOU, SLGM, ENCH]), - wbFormIDCkNoReach('Region', [REGN]), - wbFormIDCkNoReach('Keyword', [KYWD, NULL]), - wbInteger('Player Action', itU32, wbAdvanceActionEnum), - wbInteger('Casting Type', itU32, wbCastingSourceEnum), - wbFormIDCkNoReach('Shout', [SHOU]), - wbFormIDCkNoReach('Location', [LCTN]), - wbFormIDCkNoReach('Location Ref Type', [LCRT]), - wbInteger('Alias', itS32, wbConditionAliasToStr, wbStrToAlias), - wbInteger('Packdata ID', itU32), - wbFormIDCk('Association Type', [ASTP]), - wbInteger('Furniture Anim', itU32, wbFurnitureAnimTypeEnum), - wbInteger('Furniture Entry', itU32, wbEnum([], [$010000, 'Front', $020000, 'Behind', $040000, 'Right', $80000, 'Left', $100000, 'Up'])), - wbFormIDCk('Scene', [NULL, SCEN]), - wbInteger('Ward State', itU32, wbWardStateEnum), - wbInteger('Event', itU32, wbEventFunctionAndMemberToStr, wbEventFunctionAndMemberToInt), - wbFormID('Event Data') - ]), - wbUnion('Parameter #2', wbCTDAParam2Decider, [ - wbByteArray('Unknown', 4), - wbByteArray('None', 4, cpIgnore), - wbInteger('Integer', itS32), - wbFloat('Float'), - wbByteArray('Variable Name (unused)', 4, cpIgnore), - wbInteger('Sex', itU32, wbSexEnum), - wbInteger('Actor Value', itS32, wbActorValueEnum), - wbInteger('Crime Type', itU32, wbCrimeTypeEnum), - wbInteger('Axis', itU32, wbAxisEnum), - wbInteger('Quest Stage', itS32, wbCTDAParam2QuestStageToStr, wbCTDAParam2QuestStageToInt), - wbInteger('Misc Stat', itU32, wbMiscStatEnum), - wbInteger('Alignment', itU32, wbAlignmentEnum), - wbFormIDCkNoReach('Equip Type', [EQUP]), - wbInteger('Form Type', itU32, wbFormTypeEnum), - wbInteger('Critical Stage', itU32, wbCriticalStageEnum), - wbFormIDCkNoReach('Object Reference', [NULL, PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - wbFormIDCkNoReach('Inventory Object', [ARMO, BOOK, MISC, WEAP, AMMO, KEYM, ALCH, SCRL, SLGM, INGR, FLST, LIGH, LVLI, COBJ]), - wbFormIDCkNoReach('Actor', [NULL, PLYR, ACHR, REFR]), - wbFormIDCkNoReach('Voice Type', [VTYP, FLST]), - wbFormIDCkNoReach('Idle', [IDLE]), - wbFormIDCkNoReach('Form List', [FLST]), - wbFormIDCkNoReach('Quest', [QUST]), - wbFormIDCkNoReach('Faction', [FACT]), - wbFormIDCkNoReach('Cell', [CELL]), - wbFormIDCkNoReach('Class', [CLAS]), - wbFormIDCkNoReach('Race', [RACE]), - wbFormIDCkNoReach('Actor Base', [NPC_]), - wbFormIDCkNoReach('Global', [GLOB]), - wbFormIDCkNoReach('Weather', [WTHR]), - wbFormIDCkNoReach('Package', [PACK]), - wbFormIDCkNoReach('Encounter Zone', [ECZN]), - wbFormIDCkNoReach('Perk', [PERK]), - wbFormIDCkNoReach('Owner', [NULL, FACT, NPC_]), - wbFormIDCkNoReach('Furniture', [FURN, FLST]), - wbFormIDCkNoReach('Effect Item', [SPEL, ENCH, ALCH, INGR, SCRL]), - wbFormIDCkNoReach('Base Effect', [MGEF]), - wbFormIDCkNoReach('Worldspace', [WRLD, FLST]), - wbInteger('VATS Value Function', itU32, wbVATSValueFunctionEnum), - wbUnion('VATS Value Param', wbCTDAParam2VATSValueParamDecider, [ - { 0} wbFormIDCkNoReach('Weapon', [WEAP]), - { 1} wbFormIDCkNoReach('Weapon List', [FLST], [WEAP]), - { 2} wbFormIDCkNoReach('Target', [NPC_]), - { 3} wbFormIDCkNoReach('Target List', [FLST], [NPC_]), - { 4} wbByteArray('Unknown', 4, cpIgnore), - { 5} wbInteger('Target Part', itS32, wbActorValueEnum), - { 6} wbInteger('VATS Action', itU32, wbEnum([ - 'Unarmed Attack', - 'One Hand Melee Attack', - 'Two Hand Melee Attack', - 'Magic Attack', - 'Ranged Attack', - 'Reload', - 'Crouch', - 'Stand', - 'Switch Weapon', - 'Toggle Weapon Drawn', - 'Heal', - 'Player Death' - ])), - { 7} wbByteArray('Unknown', 4, cpIgnore), - { 8} wbByteArray('Unknown', 4, cpIgnore), - { 9} wbFormIDCkNoReach('Critical Effect', [SPEL]), - {10} wbFormIDCkNoReach('Critical Effect List', [FLST], [SPEL]), - {11} wbByteArray('Unknown', 4, cpIgnore), - {12} wbByteArray('Unknown', 4, cpIgnore), - {13} wbByteArray('Unknown', 4, cpIgnore), - {14} wbByteArray('Unknown', 4, cpIgnore), - {15} wbInteger('Weapon Type', itU32, wbWeaponAnimTypeEnum), - {16} wbByteArray('Unknown', 4, cpIgnore), - {17} wbByteArray('Unknown', 4, cpIgnore), - {18} wbInteger('Projectile Type', itU32, wbEnum([ - 'Missile', - 'Lobber', - 'Beam', - 'Flame', - 'Cone', - 'Barrier', - 'Arrow' - ])), - {19} wbInteger('Delivery Type', itU32, wbTargetEnum), - {20} wbInteger('Casting Type', itU32, wbCastEnum) - ]), - wbFormIDCkNoReach('Referenceable Object', [NULL, NPC_, PROJ, TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, TACT, FLST, LVLI, LVSP, SPEL, SCRL, SHOU, SLGM, ENCH], [NPC_, PROJ, TREE, SOUN, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, MSTT, TACT, LVLI, LVSP, SPEL, SCRL, SHOU, SLGM, ENCH]), - wbFormIDCkNoReach('Region', [REGN]), - wbFormIDCkNoReach('Keyword', [KYWD, NULL]), - wbInteger('Player Action', itU32, wbAdvanceActionEnum), - wbInteger('Casting Type', itU32, wbCastingSourceEnum), - wbFormIDCkNoReach('Shout', [SHOU]), - wbFormIDCkNoReach('Location', [LCTN]), - wbFormIDCkNoReach('Location Ref Type', [LCRT]), - wbInteger('Alias', itS32, wbConditionAliasToStr, wbStrToAlias), - wbInteger('Packdata ID', itU32), - wbFormIDCk('Association Type', [ASTP]), - wbInteger('Furniture Anim', itU32, wbFurnitureAnimTypeEnum), - wbInteger('Furniture Entry', itU32, wbEnum([], [$010000, 'Front', $020000, 'Behind', $040000, 'Right', $80000, 'Left', $100000, 'Up'])), - wbFormIDCk('Scene', [NULL, SCEN]), - wbInteger('Ward State', itU32, wbWardStateEnum), - wbInteger('Event', itU32, wbEventFunctionAndMemberToStr, wbEventFunctionAndMemberToInt), - wbFormID('Event Data') - ]), - wbInteger('Run On', itU32, wbEnum([ - {0} 'Subject', - {1} 'Target', - {2} 'Reference', - {3} 'Combat Target', - {4} 'Linked Reference', - {5} 'Quest Alias', - {6} 'Package Data', - {7} 'Event Data' - ]), cpNormal, False, nil, wbCTDARunOnAfterSet), - wbUnion('Reference', wbCTDAReferenceDecider, [ - wbInteger('Unused', itU32, nil, cpIgnore), - wbFormIDCkNoReach('Reference', [NULL, PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], False) - ]), - wbInteger('Parameter #3', itS32, nil, cpNormal, False, nil, nil, -1) - ], cpNormal, False{, nil, 0, wbCTDAAfterLoad}), - wbString(CIS1, 'Parameter #1'), - wbString(CIS2, 'Parameter #2') - ], [], cpNormal); - - wbCTDAs := wbRArray('Conditions', wbCTDA, cpNormal, False); - wbCTDAsCount := wbRArray('Conditions', wbCTDA, cpNormal, False, nil, wbCTDAsAfterSet); - wbCTDAsReq := wbRArray('Conditions', wbCTDA, cpNormal, True); - wbCTDAsReqCount := wbRArray('Conditions', wbCTDA, cpNormal, True, nil, wbCTDAsAfterSet); - wbYNAM := wbFormIDCk(YNAM, 'Sound - Pick Up', [SNDR]); - wbZNAM := wbFormIDCk(ZNAM, 'Sound - Put Down', [SNDR]); - - wbEffectsReq := - wbRStructs('Effects', 'Effect', [ - wbEFID, - wbEFIT, - wbCTDAs - ], [], cpNormal, True); - - wbRecord(ALCH, 'Ingestible', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x20000000} 29, 'Medicine' - ])), [ - wbEDID, - wbOBNDReq, - wbFULL, - wbKSIZ, - wbKWDAs, - wbDESC, - wbMODL, - wbDEST, - wbICON, - wbYNAM, - wbZNAM, - wbETYP, - wbFloat(DATA, 'Weight', cpNormal, True), - wbStruct(ENIT, 'Effect Data', [ - wbInteger('Value', itS32), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'No Auto-Calc', - {0x00000002} 'Food Item', - {0x00000004} 'Unknown 3', - {0x00000008} 'Unknown 4', - {0x00000010} 'Unknown 5', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unknown 7', - {0x00000080} 'Unknown 8', - {0x00000100} 'Unknown 9', - {0x00000200} 'Unknown 10', - {0x00000400} 'Unknown 11', - {0x00000800} 'Unknown 12', - {0x00001000} 'Unknown 13', - {0x00002000} 'Unknown 14', - {0x00004000} 'Unknown 15', - {0x00008000} 'Unknown 16', - {0x00010000} 'Medicine', - {0x00020000} 'Poison' - ])), - wbFormID('Addiction'), - wbFloat('Addiction Chance'), - wbFormIDCk('Sound - Consume', [SNDR, NULL]) - ], cpNormal, True), - wbEffectsReq - ], False, nil, cpNormal, False, wbRemoveEmptyKWDA, wbKeywordsAfterSet); - - wbRecord(AMMO, 'Ammunition', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable' - ])), [ - wbEDID, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbDEST, - wbYNAM, - wbZNAM, - wbDESC, - wbKSIZ, - wbKWDAs, - wbStruct(DATA, 'Data', [ - wbFormIDCk('Projectile', [PROJ, NULL]), - wbInteger('Flags', itU32, wbFlags([ - 'Ignores Normal Weapon Resistance', - 'Non-Playable', - 'Non-Bolt' - ])), - wbFloat('Damage'), - wbInteger('Value', itU32) - ], cpNormal, True), - wbString(ONAM, 'Short Name') - ], False, nil, cpNormal, False, wbRemoveEmptyKWDA, wbKeywordsAfterSet); - - wbRecord(ANIO, 'Animated Object', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000200} 9, 'Unknown 9' // always present in updated records, not in Skyrim.esm - ]), [9]), [ - wbEDID, - wbMODL, - wbString(BNAM, 'Unload Event') - ]); - - wbRecord(ARMO, 'Armor', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable', - {0x00000040} 6, 'Shield', - {0x00000400} 10, 'Unknown 10', - {0x00008000} 15, 'Unknown 15' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbEITM, - wbInteger(EAMT, 'Enchantment Amount', itU16), - wbRStruct('Male world model', [ - wbString(MOD2, 'Model Filename'), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO2S - ], []), - wbICON, - wbRStruct('Female world model', [ - wbString(MOD4, 'Model Filename'), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO4S - ], []), - wbICO2, - wbBODTBOD2, - wbDEST, - wbYNAM, - wbZNAM, - wbString(BMCT, 'Ragdoll Constraint Template'), - wbETYP, - wbFormIDCk(BIDS, 'Bash Impact Data Set', [IPDS]), - wbFormIDCk(BAMT, 'Alternate Block Material', [MATT]), - wbFormIDCk(RNAM, 'Race', [RACE]), - wbKSIZ, - wbKWDAs, - wbDESC, - wbRArray('Armature', wbFormIDCK(MODL, 'Model Filename', [ARMA, NULL])), - wbStruct(DATA, 'Data', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True), - wbInteger(DNAM, 'Armor Rating', itS32, wbDiv(100), cpNormal, True), - wbFormIDCk(TNAM, 'Template Armor', [ARMO]) - ], False, nil, cpNormal, False, wbARMOAfterLoad, wbKeywordsAfterSet); - - wbRecord(ARMA, 'Armor Addon', [ - wbEDID, - wbBODTBOD2, - wbFormIDCk(RNAM, 'Race', [RACE]), - wbStruct(DNAM, 'Data', [ - wbInteger('Male Priority', itU8), - wbInteger('Female Priority', itU8), - // essentialy a number of world models for different weights (Enabled = 2 models _0.nif and _1.nif) - wbInteger('Weight slider - Male', itU8, wbFlags([ - {0x01} 'Unknown 0', - {0x02} 'Enabled' - ])), - wbInteger('Weight slider - Female', itU8, wbFlags([ - {0x01} 'Unknown 0', - {0x02} 'Enabled' - ])), - wbByteArray('Unknown', 2), - wbInteger('Detection Sound Value', itU8), - wbByteArray('Unknown', 1), - wbFloat('Weapon Adjust') - ], cpNormal, True), - wbRStruct('Male world model', [ - wbString(MOD2, 'Model Filename'), - wbByteArray(MO2T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO2S - ], [], cpNormal, False), - wbRStruct('Female world model', [ - wbString(MOD3, 'Model Filename'), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO3S - ], []), - wbRStruct('Male 1st Person', [ - wbString(MOD4, 'Model Filename'), - wbByteArray(MO4T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO4S - ], []), - wbRStruct('Female 1st Person', [ - wbString(MOD5, 'Model Filename'), - wbByteArray(MO5T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO5S - ], []), - wbFormIDCK(NAM0, 'Male Skin Texture', [TXST, NULL]), - wbFormIDCK(NAM1, 'Female Skin texture', [TXST, NULL]), - wbFormIDCK(NAM2, 'Male Skin Texture Swap List', [FLST, NULL]), - wbFormIDCK(NAM3, 'Female Skin Texture Swap List', [FLST, NULL]), - wbRArrayS('Additional Races', wbFormIDCK(MODL, 'Race', [RACE, NULL])), - wbFormIDCk(SNDD, 'Footstep Sound', [FSTS, NULL]), - wbFormIDCk(ONAM, 'Art Object', [ARTO]) - ], False, nil, cpNormal, False, wbARMAAfterLoad); - - wbRecord(BOOK, 'Book', [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbLStringKC(DESC, 'Book Text', 0, cpTranslate, True), - wbDEST, - wbYNAM, - wbZNAM, - wbKSIZ, - wbKWDAs, - wbStruct(DATA, 'Data', [ - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Teaches Skill', - {0x02} 'Can''t be Taken', - {0x04} 'Teaches Spell', - {0x08} 'Unknown 4', - {0x10} 'Unknown 5', - {0x20} 'Unknown 6', - {0x40} 'Unknown 7', - {0x80} 'Unknown 8' - ])), - wbInteger('Type', itU8, wbEnum([], [ - 0, 'Book/Tome', 255, 'Note/Scroll' - ])), - wbByteArray('Unused', 2), - wbUnion('Teaches', wbBOOKTeachesDecider, [ - wbInteger('Skill', itS32, wbSkillEnum), - wbFormIDCk('Spell', [SPEL, NULL]) - ]), - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True), - wbFormIDCk(INAM, 'Inventory Art', [STAT]), - wbLString(CNAM, 'Description', 0, cpTranslate) - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); -end; - -procedure DefineTES5c; - - procedure ReferenceRecord(aSignature: TwbSignature; const aName: string); - begin - wbRecord(aSignature, aName, - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000080} 7, 'Turn Off Fire', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn' - ], True, True)), [ - wbEDID, - wbVMAD, - wbFormIDCk(NAME, 'Projectile', [PROJ, HAZD]), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - wbOwnership, - wbFloat(XHTW, 'Head-Tracking Weight'), - wbFloat(XFVC, 'Favor Cost'), - wbRArrayS('Reflected/Refracted By', - wbStructSK(XPWR, [0], 'Water', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Type', itU32, wbFlags([ - 'Reflection', - 'Refraction' - ])) - ], cpNormal, False, nil, 1) - ), - wbRArrayS('Linked References', wbStructSK(XLKR, [0], 'Linked Reference', [ - wbFormIDCk('Keyword/Ref', [KYWD, PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA, NULL]), - wbFormIDCk('Ref', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]) - ], cpNormal, False, nil, 1)), - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - wbFloat('Delay') - ]) - ) - ], []), - wbXESP, - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - wbEmpty(XIS2, 'Ignored by Sandbox'), - wbArray(XLRT, 'Location Ref Type', wbFormIDCk('Ref', [LCRT, NULL])), - wbFormIDCk(XLRL, 'Location Reference', [LCRT, LCTN, NULL], False, cpBenignIfAdded), - wbXLOD, - wbXSCL, - wbDataPosRot - ], True, wbPlacedAddInfo); - end; - -begin -{>>> - Skrim has its own ref record for every projectile type - PARW 'Arrow' - PBEA 'Beam' - PFLA 'Flame' - PCON 'Cone' (voice) - PBAR 'Barrier' - PGRE 'Traps' - PHZD 'Hazards' - I guess all of them have the same structure -<<<} - ReferenceRecord(PARW, 'Placed Arrow'); - ReferenceRecord(PBAR, 'Placed Barrier'); - ReferenceRecord(PBEA, 'Placed Beam'); - ReferenceRecord(PCON, 'Placed Cone/Voice'); - ReferenceRecord(PFLA, 'Placed Flame'); - ReferenceRecord(PGRE, 'Placed Projectile'); - ReferenceRecord(PHZD, 'Placed Hazard'); - ReferenceRecord(PMIS, 'Placed Missile'); - - wbRecord(CELL, 'Cell', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000400} 10, 'Persistent', - {0x00020000} 17, 'Off Limits', - {0x00040000} 18, 'Compressed', - {0x00080000} 19, 'Can''t Wait' - ]), [18]), [ - wbEDID, - wbFULL, - {>>> - Flags can be itU8, but CELL\DATA has a critical role in various wbImplementation.pas routines - and replacing it with wbUnion generates error when setting for example persistent flag in REFR. - So let it always be an integer - <<<} - wbInteger(DATA, 'Flags', itU16, wbFlags([ - {0x0001} 'Is Interior Cell', - {0x0002} 'Has Water', - {0x0004} 'Can''t Travel From Here', - {0x0008} 'No LOD Water', - {0x0010} 'Unknown 5', - {0x0020} 'Public Area', - {0x0040} 'Hand Changed', - {0x0080} 'Show Sky', - {0x0100} 'Use Sky Lighting' - ]), cpNormal, True, False, nil, wbCELLDATAAfterSet), - wbStruct(XCLC, 'Grid', [ - wbInteger('X', itS32), - wbInteger('Y', itS32), - wbInteger('Force Hide Land', itU32, wbFlags([ - 'Quad 1', - 'Quad 2', - 'Quad 3', - 'Quad 4' - ], True)) - ], cpNormal, False, nil, 2), - wbStruct(XCLL, 'Lighting', [ - wbByteColors('Ambient Color'), - wbByteColors('Directional Color'), - wbByteColors('Fog Color Near'), - wbFloat('Fog Near'), - wbFloat('Fog Far'), - wbInteger('Directional Rotation XY', itS32), - wbInteger('Directional Rotation Z', itS32), - wbFloat('Directional Fade'), - wbFloat('Fog Clip Distance'), - wbFloat('Fog Power'), - wbAmbientColors('Ambient Colors'), - wbByteColors('Fog Color Far'), - wbFloat('Fog Max'), - wbFloat('Light Fade Begin'), - wbFloat('Light Fade End'), - wbInteger('Inherits', itU32, wbFlags([ - {0x00000001}'Ambient Color', - {0x00000002}'Directional Color', - {0x00000004}'Fog Color', - {0x00000008}'Fog Near', - {0x00000010}'Fog Far', - {0x00000020}'Directional Rotation', - {0x00000040}'Directional Fade', - {0x00000080}'Clip Distance', - {0x00000100}'Fog Power', - {0x00000200}'Fog Max', - {0x00000400}'Light Fade Distances' - ])) - ], cpNormal, False, nil, 11), - - wbTVDT, - wbMaxHeightDataCELL, - wbFormIDCk(LTMP, 'Lighting Template', [LGTM, NULL], False, cpNormal, True), - wbByteArray(LNAM, 'Unknown', 0, cpIgnore), // leftover flags, they are now in XCLC - - {>>> XCLW sometimes has $FF7FFFFF and causes invalid floation point <<<} - wbFloat(XCLW, 'Water Height', cpNormal, False, 1, -1, nil, nil, 0, wbCELLXCLWGetConflictPriority), - //wbByteArray(XCLW, 'Water Height', 4), - wbString(XNAM, 'Water Noise Texture'), - wbArrayS(XCLR, 'Regions', wbFormIDCk('Region', [REGN])), - wbFormIDCk(XLCN, 'Location', [LCTN]), - wbByteArray(XWCN, 'Unknown', 0, cpIgnore), // leftover - wbByteArray(XWCS, 'Unknown', 0, cpIgnore), // leftover - wbStruct(XWCU, 'Water Velocity', [ - wbFloat('X Offset'), - wbFloat('Y Offset'), - wbFloat('Z Offset'), - wbByteArray('Unknown', 4), - wbFloat('X Angle'), - wbFloat('Y Angle'), - wbFloat('Z Angle'), - wbByteArray('Unknown', 0) - ]), - wbFormIDCk(XCWT, 'Water', [WATR]), - wbOwnership, - wbFormIDCk(XILL, 'Lock List', [FLST, NPC_]), - wbString(XWEM, 'Water Environment Map'), - wbFormIDCk(XCCM, 'Sky/Weather from Region', [REGN]), - wbFormIDCk(XCAS, 'Acoustic Space', [ASPC]), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - wbFormIDCk(XCMO, 'Music Type', [MUSC]), - wbFormIDCk(XCIM, 'Image Space', [IMGS]) - ], True, wbCellAddInfo, cpNormal, False, wbCELLAfterLoad); - - - wbRecord(CLAS, 'Class', [ - wbEDID, - wbFULLReq, - wbDESCReq, - wbICON, - wbStruct(DATA, '', [ - wbByteArray('Unknown', 4), - wbInteger('Teaches', itS8, wbEnum([ - 'One Handed', - 'Two Handed', - 'Archery', - 'Block', - 'Smithing', - 'Heavy Armor', - 'Light Armor', - 'Pickpocket', - 'Lockpicking', - 'Sneak', - 'Alchemy', - 'Speech', - 'Alteration', - 'Conjuration', - 'Destruction', - 'Illusion', - 'Restoration', - 'Enchanting' - ])), - wbInteger('Maximum training level', itU8), - wbArray('Skill Weights', wbInteger('Weight', itU8), [ - 'One Handed', - 'Two Handed', - 'Archery', - 'Block', - 'Smithing', - 'Heavy Armor', - 'Light Armor', - 'Pickpocket', - 'Lockpicking', - 'Sneak', - 'Alchemy', - 'Speech', - 'Alteration', - 'Conjuration', - 'Destruction', - 'Illusion', - 'Restoration', - 'Enchanting' - ]), - wbFloat('Bleedout Default'), - wbInteger('Voice Points', itU32), - wbArray('Attribute Weights', wbInteger('Weight', itU8), [ - 'Health', - 'Magicka', - 'Stamina', - 'Unknown' - ]) - ], cpNormal, True) - ]); - - wbRecord(CLMT, 'Climate', [ - wbEDID, - wbArrayS(WLST, 'Weather Types', wbStructSK([0], 'Weather Type', [ - wbFormIDCk('Weather', [WTHR, NULL]), - wbInteger('Chance', itS32), - wbFormIDCk('Global', [GLOB, NULL]) - ])), - wbString(FNAM, 'Sun Texture'), - wbString(GNAM, 'Sun Glare Texture'), - wbMODL, - wbStruct(TNAM, 'Timing', [ - wbStruct('Sunrise', [ - wbInteger('Begin', itU8, wbClmtTime), - wbInteger('End', itU8, wbClmtTime) - ]), - wbStruct('Sunset', [ - wbInteger('Begin', itU8, wbClmtTime), - wbInteger('End', itU8, wbClmtTime) - ]), - wbInteger('Volatility', itU8), - wbInteger('Moons / Phase Length', itU8, wbClmtMoonsPhaseLength) - ], cpNormal, True) - ]); - - wbRecord(SPGD, 'Shader Particle Geometry', [ - wbEDID, - // FO4 SPGD format for Form Version 44 - wbUnion(DATA, '', wbSPGDFormatDecider, [ - wbStruct('Data', [ - wbFloat('Gravity Velocity'), - wbByteArray('Unknown', 4), - wbFloat('Rotation Velocity'), - wbByteArray('Unknown', 4), - wbFloat('Particle Size X'), - wbFloat('Center Offset Min'), - wbFloat('Particle Size Y'), - wbByteArray('Unknown', 4), - wbFloat('Center Offset Min'), - wbByteArray('Unknown', 4), - wbFloat('Center Offset Max'), - wbByteArray('Unknown', 4), - wbFloat('Initial Rotation'), - wbByteArray('Unknown', 4), - wbInteger('# of Subtextures X', itU32), - wbByteArray('Unknown', 4), - wbInteger('# of Subtextures Y', itU32), - wbByteArray('Unknown', 4), - wbInteger('Type', itU32, wbEnum([ - 'Rain', - 'Snow' - ])), - wbByteArray('Unknown', 4), - wbInteger('Box Size', itU32), - wbByteArray('Unknown', 4), - wbFloat('Particle Density'), - wbByteArray('Unknown', 4) - ], cpNormal, True), - wbStruct('Data', [ - wbFloat('Gravity Velocity'), - wbFloat('Rotation Velocity'), - wbFloat('Particle Size X'), - wbFloat('Particle Size Y'), - wbFloat('Center Offset Min'), - wbFloat('Center Offset Max'), - wbFloat('Initial Rotation Range'), - wbInteger('# of Subtextures X', itU32), - wbInteger('# of Subtextures Y', itU32), - wbInteger('Type', itU32, wbEnum([ - 'Rain', - 'Snow' - ])), - wbInteger('Box Size', itU32), - wbFloat('Particle Density') - ], cpNormal, True, nil, 10) - ]), - wbString(ICON, 'Particle Texture') - ]); - - wbRecord(RFCT, 'Visual Effect', [ - wbEDID, - wbStruct(DATA, 'Effect Data', [ - wbFormIDCK('Effect Art', [ARTO, NULL]), - wbFormIDCK('Shader', [EFSH, NULL]), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001}'Rotate to Face Target', - {0x00000002}'Attach to Camera', - {0x00000004}'Inherit Rotation' - ])) - ], cpNormal, True) - ]); - - wbRecord(CONT, 'Container', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00008000} 15, 'Has Distant LOD', - {0x00010000} 16, 'Random Anim Start', - {0x02000000} 25, 'Obstacle', - {0x04000000} 26, 'NavMesh Generation - Filter', - {0x08000000} 27, 'NavMesh Generation - Bounding Box', - {0x40000000} 30, 'NavMesh Generation - Ground' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbMODL, - wbCOCT, - wbCNTOs, - wbDEST, - wbStruct(DATA, '', [ - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Allow Sounds When Animation', - {0x02} 'Respawns', - {0x04} 'Show Owner' - ])), - wbFloat('Weight') - ], cpNormal, True), - wbFormIDCk(SNAM, 'Sound - Open', [SNDR]), - wbFormIDCk(QNAM, 'Sound - Close', [SNDR]) - ], True, nil, cpNormal, False, nil, wbContainerAfterSet); - - wbCSDT := wbRStructSK([0], 'Sound Type', [ - wbInteger(CSDT, 'Type', itU32,wbEnum([ - {00} 'Left Foot', - {01} 'Right Foot', - {02} 'Left Back Foot', - {03} 'Right Back Foot', - {04} 'Idle', - {05} 'Aware', - {06} 'Attack', - {07} 'Hit', - {08} 'Death', - {09} 'Weapon', - {10} 'Movement Loop', - {11} 'Conscious Loop', - {12} 'Auxiliary 1', - {13} 'Auxiliary 2', - {14} 'Auxiliary 3', - {15} 'Auxiliary 4', - {16} 'Auxiliary 5', - {17} 'Auxiliary 6', - {18} 'Auxiliary 7', - {19} 'Auxiliary 8', - {19} 'Auxiliary 8', - {20} 'Jump', - {21} 'PlayRandom/Loop' - ])), - wbRArrayS('Sounds', wbRStructSK([0], 'Sound', [ - wbFormIDCk(CSDI, 'Sound', [SNDR, NULL], False, cpNormal, True), - wbInteger(CSDC, 'Sound Chance', itU8, nil, cpNormal, True) - ], []), cpNormal, True) - ], []); - - wbCSDTs := wbRArrayS('Sound Types', wbCSDT, cpNormal, False, nil, nil, nil{wbActorTemplateUseModelAnimation}); - - wbAIDT := - wbStruct(AIDT, 'AI Data', [ - {00} wbInteger('Aggression', itU8, wbEnum([ - 'Unaggressive', - 'Aggressive', - 'Very Aggressive', - 'Frenzied' - ])), - {01} wbInteger('Confidence', itU8, wbEnum([ - 'Cowardly', - 'Cautious', - 'Average', - 'Brave', - 'Foolhardy' - ])), - {02} wbInteger('Energy Level', itU8), - {03} wbInteger('Responsibility', itU8, wbEnum([ - 'Any crime', - 'Violence against enemies', - 'Property crime only', - 'No crime' - ])), - {04} wbInteger('Mood', itU8, wbEnum([ - 'Neutral', - 'Angry', - 'Fear', - 'Happy', - 'Sad', - 'Surprised', - 'Puzzled', - 'Disgusted' - ])), - wbInteger('Assistance', itU8, wbEnum([ - 'Helps Nobody', - 'Helps Allies', - 'Helps Friends and Allies' - ])), - wbStruct('Aggro', [ - wbInteger('Aggro Radius Behavior', itU8, wbEnum(['False', 'True'])), - wbInteger('Unknown', itU8), - wbInteger('Warn', itU32), - wbInteger('Warn/Attack', itU32), - wbInteger('Attack', itU32) - ]) - ], cpNormal, True, nil{wbActorTemplateUseAIData}); - - wbAttackAnimationEnum := wbEnum([], [ - 26, 'AttackLeft', - 32, 'AttackRight', - 38, 'Attack3', - 44, 'Attack4', - 50, 'Attack5', - 56, 'Attack6', - 62, 'Attack7', - 68, 'Attack8', - 74, 'AttackLoop', - 80, 'AttackSpin', - 86, 'AttackSpin2', - 97, 'PlaceMine', - 103, 'PlaceMine2', - 109, 'AttackThrow', - 115, 'AttackThrow2', - 121, 'AttackThrow3', - 127, 'AttackThrow4', - 133, 'AttackThrow5', - 255, ' DEFAULT' - ]); - - wbRecord(CSTY, 'Combat Style', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00080000} 19, 'Allow Dual Wielding' - ])), [ - wbEDID, - wbStruct(CSGD, 'General', [ - wbFloat('Offensive Mult'), - wbFloat('Defensive Mult'), - wbFloat('Group Offensive Mult'), - // keep as separate floats, some elements can be omitted - wbFloat('Equipment Score Mult - Melee'), - wbFloat('Equipment Score Mult - Magic'), - wbFloat('Equipment Score Mult - Ranged'), - wbFloat('Equipment Score Mult - Shout'), - wbFloat('Equipment Score Mult - Unarmed'), - wbFloat('Equipment Score Mult - Staff'), - wbFloat('Avoid Threat Chance') - ], cpNormal, True, nil, 0), - wbUnknown(CSMD, cpIgnore), - wbStruct(CSME, 'Melee', [ - wbFloat('Attack Staggered Mult'), - wbFloat('Power Attack Staggered Mult'), - wbFloat('Power Attack Blocking Mult'), - wbFloat('Bash Mult'), - wbFloat('Bash Recoil Mult'), - wbFloat('Bash Attack Mult'), - wbFloat('Bash Power Attack Mult'), - wbFloat('Special Attack Mult') - ], cpNormal, False, nil, 0), - wbStruct(CSCR, 'Close Range', [ - wbFloat('Circle Mult'), - wbFloat('Fallback Mult'), - wbFloat('Flank Distance'), - wbFloat('Stalk Time') - ], cpNormal, False, nil, 0), - wbStruct(CSLR, 'Long Range', [ - wbFloat('Strafe Mult') - ], cpNormal, False), - wbStruct(CSFL, 'Flight', [ - wbFloat('Hover Chance'), - wbFloat('Dive Bomb Chance'), - wbFloat('Ground Attack Chance'), - wbFloat('Hover Time'), - wbFloat('Ground Attack Time'), - wbFloat('Perch Attack Chance'), - wbFloat('Perch Attack Time'), - wbFloat('Flying Attack Chance') - ], cpNormal, False, nil, 0), - wbInteger(DATA, 'Flags', itU32, wbFlags([ - {0x01} 'Dueling', - {0x02} 'Flanking', - {0x04} 'Allow Dual Wielding' - ]), cpNormal, False) - ]); -end; - -procedure DefineTES5d; -begin - wbRecord(DIAL, 'Dialog Topic', [ - wbEDID, - wbFULL, - wbFloat(PNAM, 'Priority', cpNormal, True, 1, -1, nil, nil, 50.0), - wbFormIDCk(BNAM, 'Branch', [DLBR, NULL]), - wbFormIDCk(QNAM, 'Quest', [QUST, NULL], False, cpNormal, False), - wbStruct(DATA, 'Data', [ - // this should not be named Flags since TwbFile.BuildReachable - // expects Top-Level flag here from FNV - wbInteger('Topic Flags', itU8, wbFlags([ - 'Do All Before Repeating' - ]), cpNormal, True), - wbInteger('Category', itU8, wbEnum([ - {0} 'Topic', - {1} 'Favor', // only in DA14 quest topics - {2} 'Scene', - {3} 'Combat', - {4} 'Favors', - {5} 'Detection', - {6} 'Service', - {7} 'Miscellaneous' - ])), - wbInteger('Subtype', itU16, wbEnum([], [ - 0, 'Custom', - 1, 'ForceGreet', - 2, 'Rumors', - 3, 'Custom?', - 4, 'Intimidate', - 5, 'Flatter', - 6, 'Bribe', - 7, 'Ask Gift', - 8, 'Gift', - 9, 'Ask Favor', - 10, 'Favor', - 11, 'Show Relationships', - 12, 'Folow', - 13, 'Reject', - 14, 'Scene', - 15, 'Show', - 16, 'Agree', - 17, 'Refuse', - 18, 'ExitFavorState', - 19, 'MoralRefusal', - 20, 'FlyingMountLand', - 21, 'FlyingMountCancelLand', - 22, 'FlyingMountAcceptTarget', - 23, 'FlyingMountRejectTarget', - 24, 'FlyingMountNoTarget', - 25, 'FlyingMountDestinationReached', - 26, 'Attack', - 27, 'PowerAttack', - 28, 'Bash', - 29, 'Hit', - 30, 'Flee', - 31, 'Bleedout', - 32, 'AvoidThreat', - 33, 'Death', - 34, 'GroupStrategy', - 35, 'Block', - 36, 'Taunt', - 37, 'AllyKilled', - 38, 'Steal', - 39, 'Yield', - 40, 'AcceptYield', - 41, 'PickpocketCombat', - 42, 'Assault', - 43, 'Murder', - 44, 'AssaultNC', - 45, 'MurderNC', - 46, 'PickpocketNC', - 47, 'StealFromNC', - 48, 'TrespassAgainstNC', - 49, 'Trespass', - 50, 'WereTransformCrime', - 51, 'VoicePowerStartShort', - 52, 'VoicePowerStartLong', - 53, 'VoicePowerEndShort', - 54, 'VoicePowerEndLong', - 55, 'AlertIdle', - 56, 'LostIdle', - 57, 'NormalToAlert', - 58, 'AlertToCombat', - 59, 'NormalToCombat', - 60, 'AlertToNormal', - 61, 'CombatToNormal', - 62, 'CombatToLost', - 63, 'LostToNormal', - 64, 'LostToCombat', - 65, 'DetectFriendDie', - 66, 'ServiceRefusal', - 67, 'Repair', - 68, 'Travel', - 69, 'Training', - 70, 'BarterExit', - 71, 'RepairExit', - 72, 'Recharge', - 73, 'RechargeExit', - 74, 'TrainingExit', - 75, 'ObserveCombat', - 76, 'NoticeCorpse', - 77, 'TimeToGo', - 78, 'GoodBye', - 79, 'Hello', - 80, 'SwingMeleeWeapon', - 81, 'ShootBow', - 82, 'ZKeyObject', - 83, 'Jump', - 84, 'KnockOverObject', - 85, 'DestroyObject', - 86, 'StandonFurniture', - 87, 'LockedObject', - 88, 'PickpocketTopic', - 89, 'PursueIdleTopic', - 90, 'SharedInfo', - 91, 'PlayerCastProjectileSpell', - 92, 'PlayerCastSelfSpell', - 93, 'PlayerShout', - 94, 'Idle', - 95, 'EnterSprintBreath', - 96, 'EnterBowZoomBreath', - 97, 'ExitBowZoomBreath', - 98, 'ActorCollidewithActor', - 99, 'PlayerinIronSights', - 100, 'OutofBreath', - 101, 'CombatGrunt', - 102, 'LeaveWaterBreath' - ])) - ]), - wbString(SNAM, 'Subtype Name', 4), - wbInteger(TIFC, 'Info Count', itU32, nil, cpBenign) - ]); - - wbRecord(DOOR, 'Door', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00008000} 15, 'Has Distant LOD', - {0x00010000} 16, 'Random Anim Start', - {0x00800000} 23, 'Is Marker' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbMODL, - wbDEST, - wbFormIDCk(SNAM, 'Sound - Open', [SNDR]), - wbFormIDCk(ANAM, 'Sound - Close', [SNDR]), - wbFormIDCk(BNAM, 'Sound - Loop', [SNDR]), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - '', - 'Automatic', - 'Hidden', - 'Minimal Use', - 'Sliding', - 'Do Not Open in Combat Search' - ]), cpNormal, True) - ]); - - wbBlendModeEnum := wbEnum([ - '', - 'Zero', - 'One', - 'Source Color', - 'Source Inverse Color', - 'Source Alpha', - 'Source Inverted Alpha', - 'Dest Alpha', - 'Dest Inverted Alpha', - 'Dest Color', - 'Dest Inverse Color', - 'Source Alpha SAT' - ]); - - wbBlendOpEnum := wbEnum([ - '', - 'Add', - 'Subtract', - 'Reverse Subtract', - 'Minimum', - 'Maximum' - ]); - - wbZTestFuncEnum := wbEnum([ - '', - '', - '', - 'Equal To', - 'Normal', - 'Greater Than', - '', - 'Greater Than or Equal To', - 'Always Show' - ]); - - wbRecord(EFSH, 'Effect Shader', [ - wbEDID, - wbString(ICON, 'Fill Texture'), - wbString(ICO2, 'Particle Shader Texture'), - wbString(NAM7, 'Holes Texture'), - wbString(NAM8, 'Membrane Palette Texture'), - wbString(NAM9, 'Particle Palette Texture'), - wbStruct(DATA, '', [ - wbByteArray('Unknown', 4), - wbInteger('Membrane Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Membrane Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Membrane Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbByteColors('Fill/Texture Effect - Color Key 1'), - wbFloat('Fill/Texture Effect - Alpha Fade In Time'), - wbFloat('Fill/Texture Effect - Full Alpha Time'), - wbFloat('Fill/Texture Effect - Alpha Fade Out Time'), - wbFloat('Fill/Texture Effect - Presistent Alpha Ratio'), - wbFloat('Fill/Texture Effect - Alpha Pulse Amplitude'), - wbFloat('Fill/Texture Effect - Alpha Pulse Frequency'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (U)'), - wbFloat('Fill/Texture Effect - Texture Animation Speed (V)'), - wbFloat('Edge Effect - Fall Off'), - wbByteColors('Edge Effect - Color'), - wbFloat('Edge Effect - Alpha Fade In Time'), - wbFloat('Edge Effect - Full Alpha Time'), - wbFloat('Edge Effect - Alpha Fade Out Time'), - wbFloat('Edge Effect - Persistent Alpha Ratio'), - wbFloat('Edge Effect - Alpha Pulse Amplitude'), - wbFloat('Edge Effect - Alpha Pulse Frequency'), - wbFloat('Fill/Texture Effect - Full Alpha Ratio'), - wbFloat('Edge Effect - Full Alpha Ratio'), - wbInteger('Membrane Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Particle Shader - Source Blend Mode', itU32, wbBlendModeEnum), - wbInteger('Particle Shader - Blend Operation', itU32, wbBlendOpEnum), - wbInteger('Particle Shader - Z Test Function', itU32, wbZTestFuncEnum), - wbInteger('Particle Shader - Dest Blend Mode', itU32, wbBlendModeEnum), - wbFloat('Particle Shader - Particle Birth Ramp Up Time'), - wbFloat('Particle Shader - Full Particle Birth Time'), - wbFloat('Particle Shader - Particle Birth Ramp Down Time'), - wbFloat('Particle Shader - Full Particle Birth Ratio'), - wbFloat('Particle Shader - Persistant Particle Count'), - wbFloat('Particle Shader - Particle Lifetime'), - wbFloat('Particle Shader - Particle Lifetime +/-'), - wbFloat('Particle Shader - Initial Speed Along Normal'), - wbFloat('Particle Shader - Acceleration Along Normal'), - wbFloat('Particle Shader - Initial Velocity #1'), - wbFloat('Particle Shader - Initial Velocity #2'), - wbFloat('Particle Shader - Initial Velocity #3'), - wbFloat('Particle Shader - Acceleration #1'), - wbFloat('Particle Shader - Acceleration #2'), - wbFloat('Particle Shader - Acceleration #3'), - wbFloat('Particle Shader - Scale Key 1'), - wbFloat('Particle Shader - Scale Key 2'), - wbFloat('Particle Shader - Scale Key 1 Time'), - wbFloat('Particle Shader - Scale Key 2 Time'), - wbByteColors('Color Key 1 - Color'), - wbByteColors('Color Key 2 - Color'), - wbByteColors('Color Key 3 - Color'), - wbFloat('Color Key 1 - Color Alpha'), - wbFloat('Color Key 2 - Color Alpha'), - wbFloat('Color Key 3 - Color Alpha'), - wbFloat('Color Key 1 - Color Key Time'), - wbFloat('Color Key 2 - Color Key Time'), - wbFloat('Color Key 3 - Color Key Time'), - wbFloat('Particle Shader - Initial Speed Along Normal +/-'), - wbFloat('Particle Shader - Initial Rotation (deg)'), - wbFloat('Particle Shader - Initial Rotation (deg) +/-'), - wbFloat('Particle Shader - Rotation Speed (deg/sec)'), - wbFloat('Particle Shader - Rotation Speed (deg/sec) +/-'), - wbFormIDCk('Addon Models', [DEBR, NULL]), - wbFloat('Holes - Start Time'), - wbFloat('Holes - End Time'), - wbFloat('Holes - Start Val'), - wbFloat('Holes - End Val'), - wbFloat('Edge Width (alpha units)'), - wbByteColors('Edge Color'), - wbFloat('Explosion Wind Speed'), - wbInteger('Texture Count U', itU32), - wbInteger('Texture Count V', itU32), - wbFloat('Addon Models - Fade In Time'), - wbFloat('Addon Models - Fade Out Time'), - wbFloat('Addon Models - Scale Start'), - wbFloat('Addon Models - Scale End'), - wbFloat('Addon Models - Scale In Time'), - wbFloat('Addon Models - Scale Out Time'), - wbFormIDCk('Ambient Sound', [SNDR, SOUN, NULL]), - wbByteColors('Fill/Texture Effect - Color Key 2'), - wbByteColors('Fill/Texture Effect - Color Key 3'), - wbStruct('Fill/Texture Effect - Color Key Scale/Time', [ - wbFloat('Color Key 1 - Scale'), - wbFloat('Color Key 2 - Scale'), - wbFloat('Color Key 3 - Scale'), - wbFloat('Color Key 1 - Time'), - wbFloat('Color Key 2 - Time'), - wbFloat('Color Key 3 - Time') - ]), - wbFloat('Color Scale'), - wbFloat('Birth Position Offset'), - wbFloat('Birth Position Offset Range +/-'), - wbStruct('Particle Shader Animated', [ - wbInteger('Start Frame', itU32), - wbInteger('Start Frame Variation', itU32), - wbInteger('End Frame', itU32), - wbInteger('Loop Start Frame', itU32), - wbInteger('Loop Start Variation', itU32), - wbInteger('Frame Count', itU32), - wbInteger('Frame Count Variation', itU32) - ]), - wbInteger('Flags', itU32, wbFlags([ - 'No Membrane Shader', - 'Membrane Grayscale Color', - 'Membrane Grayscale Alpha', - 'No Particle Shader', - 'Edge Effect Inverse', - 'Affect Skin Only', - 'Ignore Alpha', - 'Project UVs', - 'Ignore Base Geometry Alpha', - 'Lighting', - 'No Weapons', - 'Unknown 11', - 'Unknown 12', - 'Unknown 13', - 'Unknown 14', - 'Particle Animated', - 'Particle Grayscale Color', - 'Particle Grayscale Alpha', - 'Unknown 18', - 'Unknown 19', - 'Unknown 20', - 'Unknown 21', - 'Unknown 22', - 'Unknown 23', - 'Use Blood Geometry' - ])), - wbFloat('Fill/Texture Effect - Texture Scale (U)'), - wbFloat('Fill/Texture Effect - Texture Scale (V)'), - wbInteger('Scene Graph Emit Depth Limit (unused)', itU32) - ], cpNormal, True, nil, 0) - ], False, nil, cpNormal, False, nil {wbEFSHAfterLoad}); - - wbRecord(ENCH, 'Object Effect', [ - wbEDID, - wbOBNDReq, - wbFULL, - wbStruct(ENIT, 'Effect Data', [ - wbInteger('Enchantment Cost', itS32), - wbInteger('Flags', itU32, wbFlags([ - 'No Auto-Calc', - '', - 'Extend Duration On Recast' - ])), - wbInteger('Cast Type', itU32, wbCastEnum), - wbInteger('Enchantment Amount', itS32), - wbInteger('Target Type', itU32, wbTargetEnum), - wbInteger('Enchant Type', itU32, wbEnum([], [ - $06, 'Enchantment', - $0C, 'Staff Enchantment' - ])), - wbFloat('Charge Time'), - wbFormIDCk('Base Enchantment', [ENCH, NULL]), - wbFormIDCk('Worn Restrictions', [FLST, NULL]) - ], cpNormal, True, nil, 8), - wbEffectsReq - ]); - - wbRecord(EYES, 'Eyes', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable' - ])), [ - wbEDID, - wbFULLReq, - wbString(ICON, 'Texture', 0, cpNormal, True), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01}'Playable', - {0x02}'Not Male', - {0x04}'Not Female', - {0x08}'Unknown 4', - {0x10}'Unknown 5', - {0x20}'Unknown 6', - {0x40}'Unknown 7', - {0x80}'Unknown 8' - ]), cpNormal, True) - ]); - - wbRecord(FACT, 'Faction', [ - wbEDID, - wbFULL, - wbRArrayS('Relations', - wbStructSK(XNAM, [0], 'Relation', [ - wbFormIDCkNoReach('Faction', [FACT, RACE]), - wbInteger('Modifier', itS32), - wbInteger('Group Combat Reaction', itU32, wbEnum([ - {0x00000001}'Neutral', - {0x00000002}'Enemy', - {0x00000004}'Ally', - {0x00000008}'Friend' - ])) - ])), - wbStruct(DATA, 'Flags', [ - wbInteger('Flags', itU32, wbFlags([ - {0x00000001}'Hidden From NPC', - {0x00000002}'Special Combat', - {0x00000004}'Unknown 3', - {0x00000008}'Unknown 4', - {0x00000010}'Unknown 5', - {0x00000020}'Unknown 6', - {0x00000040}'Track Crime', - {0x00000080}'Ignore Crimes: Murder', - {0x00000100}'Ignore Crimes: Assault', - {0x00000200}'Ignore Crimes: Stealing', - {0x00000400}'Ignore Crimes: Trespass', - {0x00000800}'Do Not Report Crimes Against Members', - {0x00001000}'Crime Gold - Use Defaults', - {0x00002000}'Ignore Crimes: Pickpocket', - {0x00004000}'Vendor', - {0x00008000}'Can Be Owner', - {0x00010000}'Ignore Crimes: Werewolf', - {0x00020000}'Unknown 18', - {0x00040000}'Unknown 19', - {0x00080000}'Unknown 20', - {0x00100000}'Unknown 21', - {0x00200000}'Unknown 22', - {0x00400000}'Unknown 23', - {0x00800000}'Unknown 24', - {0x01000000}'Unknown 25', - {0x02000000}'Unknown 26', - {0x04000000}'Unknown 27', - {0x08000000}'Unknown 28', - {0x10000000}'Unknown 29', - {0x20000000}'Unknown 30', - {0x40000000}'Unknown 31', - {0x80000000}'Unknown 32' - ])) - ], cpNormal, True, nil, 1), - wbFormIDCk(JAIL, 'Exterior Jail Marker', [REFR]), - wbFormIDCk(WAIT, 'Follower Wait Marker', [REFR]), - wbFormIDCk(STOL, 'Stolen Goods Container', [REFR]), - wbFormIDCk(PLCN, 'Player Inventory Container', [REFR]), - wbFormIDCk(CRGR, 'Shared Crime Faction List', [FLST]), - wbFormIDCk(JOUT, 'Jail Outfit', [OTFT]), - wbStruct(CRVA, 'Crime Values', [ - {01} wbInteger('Arrest', itU8, wbEnum(['False', 'True'])), - {02} wbInteger('Attack On Sight', itU8, wbEnum(['False', 'True'])), - {02} wbInteger('Murder', itU16), - {02} wbInteger('Assault', itU16), - {02} wbInteger('Trespass', itU16), - {02} wbInteger('Pickpocket', itU16), - {02} wbInteger('Unknown', itU16), - {02} wbFloat('Steal Multiplier'), - {02} wbInteger('Escape', itU16), - {02} wbInteger('Werewolf', itU16) - ], cpNormal, False, nil, 7), - wbRStructsSK('Ranks', 'Rank', [0], [ - wbInteger(RNAM, 'Rank#', itU32), - wbLString(MNAM, 'Male Title', 0, cpTranslate), - wbLString(FNAM, 'Female Title', 0, cpTranslate), - wbString(INAM, 'Insignia Unused') - ], []), - wbFormIDCk(VEND, 'Vendor Buy/Sell List', [FLST]), - wbFormIDCk(VENC, 'Merchant Container', [REFR]), - wbStruct(VENV, 'Vendor Values', [ - {01} wbInteger('Start Hour', itU16), - {02} wbInteger('End Hour', itU16), - {02} wbInteger('Radius', itU16), - {02} wbByteArray('Unknown 1', 2), - wbInteger('Only Buys Stolen Items', itU8, wbEnum(['False', 'True'])), - wbInteger('Not/Sell Buy', itU8, wbEnum(['False', 'True'])), - {02} wbByteArray('Unknown 2', 2) - ]), - wbPLVD, - wbCITC, - wbCTDAsCount - ], False, nil, cpNormal, False, nil {wbFACTAfterLoad}, wbConditionsAfterSet); - - wbRecord(FURN, 'Furniture', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000080} 7, 'Is Perch', - {0x00008000} 15, 'Has Distant LOD', - {0x00010000} 16, 'Random Anim Start', - {0x00800000} 23, 'Is Marker', - {0x10000000} 28, 'Must Exit To Talk', - {0x20000000} 29, 'Child Can Use' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbMODL, - wbDEST, - wbKSIZ, - wbKWDAs, - wbUnknown(PNAM), - wbInteger(FNAM, 'Flags', itU16, wbFlags([ - {0x0001} 'Unknown 0', - {0x0002} 'Ignored By Sandbox' - ])), - wbFormIDCk(KNAM, 'Interaction Keyword', [KYWD, NULL]), - wbInteger(MNAM, 'Active Markers / Flags', itU32, wbFlags([ - {0x00000001} 'Sit 0', - {0x00000002} 'Sit 1', - {0x00000004} 'Sit 2', - {0x00000008} 'Sit 3', - {0x00000010} 'Sit 4', - {0x00000020} 'Sit 5', - {0x00000040} 'Sit 6', - {0x00000080} 'Sit 7', - {0x00000100} 'Sit 8', - {0x00000200} 'Sit 9', - {0x00000400} 'Sit 10', - {0x00000800} 'Sit 11', - {0x00001000} 'Sit 12', - {0x00002000} 'Sit 13', - {0x00004000} 'Sit 14', - {0x00008000} 'Sit 15', - {0x00010000} 'Sit 16', - {0x00020000} 'Sit 17', - {0x00040000} 'Sit 18', - {0x00080000} 'Sit 19', - {0x00100000} 'Sit 20', - {0x00200000} 'Sit 21', - {0x00400000} 'Sit 22', - {0x00800000} 'Sit 23', - {0x01000000} 'Unknown 25', - {0x02000000} 'Disables Activation', - {0x04000000} 'Is Perch', - {0x08000000} 'Must Exit to Talk', - {0x10000000} 'Unknown 29', - {0x20000000} 'Unknown 30', - {0x40000000} 'Unknown 31', - {0x80000000} 'Unknown 32' - ])), - wbStruct(WBDT, 'Workbench Data', [ - wbInteger('Bench Type', itU8, wbEnum([ - {0} 'None', - {1} 'Create object', - {2} 'Smithing Weapon', - {3} 'Enchanting', - {4} 'Enchanting Experiment', - {5} 'Alchemy', - {6} 'Alchemy Experiment', - {7} 'Smithing Armor' - ])), - wbInteger('Uses Skill', itS8, wbSkillEnum) - ]), - wbFormIDCk(NAM1, 'Associated Spell', [SPEL]), - wbRArray('Markers', wbRStruct('Marker', [ - wbInteger(ENAM, 'Marker Index', itU32), - wbStruct(NAM0, 'Disabled Entry Points', [ - wbByteArray('Unknown', 2), - wbInteger('Disabled Points', itU16, wbFurnitureEntryTypeFlags) - ]), - wbFormIDCk(FNMK, 'Marker Keyword', [KYWD, NULL]) - ], [])), - wbRArray('Marker Entry Points', wbStruct(FNPR, 'Marker', [ - wbInteger('Type', itU16, wbFurnitureAnimTypeEnum), - wbInteger('Entry Points', itU16, wbFurnitureEntryTypeFlags) - ])), - wbString(XMRK, 'Model Filename') - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - -//---------------------------------------------------------------------------- -// For expansion to use wbGLOBUnionDecider to display Short, Long, Float -// correctly without making a signed float by default -//---------------------------------------------------------------------------- - wbRecord(GLOB, 'Global', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000040} 6, 'Constant' - ])), [ - wbEDID, - wbInteger(FNAM, 'Type', itU8, wbGLOBFNAM, nil, cpNormal, True), - wbFloat(FLTV, 'Value', cpNormal, True) - ]); - - wbRecord(GMST, 'Game Setting', [ - wbString(EDID, 'Editor ID', 0, cpCritical, True, nil, wbGMSTEDIDAfterSet), - wbUnion(DATA, 'Value', wbGMSTUnionDecider, [ - wbLString('Name', 0, cpTranslate), - wbInteger('Int', itS32), - wbFloat('Float'), - wbInteger('Bool', itU32, wbEnum(['False', 'True'])) - ], cpNormal, True) - ]); - - wbRecord(KYWD, 'Keyword', [ - wbEDID, - wbCNAM - ]); -end; - -procedure DefineTES5e; -begin - wbRecord(LCRT, 'Location Reference Type', [ - wbEDID, - wbCNAM - ]); - - wbRecord(AACT, 'Action', [ - wbEDID, - wbCNAM - ]); - - wbRecord(TXST, 'Texture Set', [ - wbEDID, - wbOBNDReq, - wbRStruct('Textures (RGB/A)', [ - wbString(TX00,'Difuse'), - wbString(TX01,'Normal/Gloss'), - wbString(TX02,'Environment Mask/Subsurface Tint'), - wbString(TX03,'Glow/Detail Map'), - wbString(TX04,'Height'), - wbString(TX05,'Environment'), - wbString(TX06,'Multilayer'), - wbString(TX07,'Backlight Mask/Specular') - ], []), - wbDODT, - wbInteger(DNAM, 'Flags', itU16, wbFlags([ - {0x0001}'No Specular Map', - {0x0002}'Facegen Textures', - {0x0004}'Has Model Space Normal Map' - ]), cpNormal, False) - ]); - - wbRecord(HDPT, 'Head Part', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable' - ])), [ - wbEDID, - wbFULL, - wbMODL, - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Playable', - {0x02} 'Male', - {0x04} 'Female', - {0x10} 'Is Extra Part', - {0x20} 'Use Solid Tint' - ]), cpNormal, True), - wbInteger(PNAM, 'Type', itU32, wbEnum([ - 'Misc', - 'Face', - 'Eyes', - 'Hair', - 'Facial Hair', - 'Scar', - 'Eyebrows' - ])), - wbRArrayS('Extra Parts', - wbFormIDCk(HNAM, 'Part', [HDPT]) - ), - wbRStructs('Parts', 'Part', [ - wbInteger(NAM0, 'Part Type', itU32, wbEnum([ - 'Race Morph', - 'Tri', - 'Chargen Morph' - ])), - wbString(NAM1, 'Filename', 0, cpTranslate, True) - ], []), - wbFormIDCk(TNAM, 'Texture Set', [TXST, NULL]), - wbFormIDCk(CNAM, 'Color', [CLFM, NULL]), - wbFormIDCk(RNAM, 'Valid Races', [FLST, NULL]) - ]); - - wbRecord(ASPC, 'Acoustic Space', [ - wbEDID, - wbOBNDReq, - wbFormIDCk(SNAM, 'Ambient Sound', [SNDR]), - wbFormIDCk(RDAT, 'Use Sound from Region (Interiors Only)', [REGN]), - wbFormIDCk(BNAM, 'Environment Type (reverb)', [REVB]) - ]); - - wbRecord(MSTT, 'Moveable Static', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000100} 8, 'Must Update Anims', - {0x00000200} 9, 'Hidden From Local Map', - {0x00008000} 15, 'Has Distant LOD', - {0x00010000} 16, 'Random Anim Start', - {0x00080000} 19, 'Has Currents', - {0x02000000} 25, 'Obstacle', - {0x04000000} 26, 'NavMesh Generation - Filter', - {0x08000000} 27, 'NavMesh Generation - Bounding Box', - {0x40000000} 30, 'NavMesh Generation - Ground' - ])), [ - wbEDID, - wbOBNDReq, - wbFULL, - wbMODL, - wbDEST, - wbInteger(DATA, 'Flags', itU8, wbFlags([ - 'On Local Map', - 'Unknown 1', - 'Unknown 2' - ]), cpNormal, True), - wbFormIDCk(SNAM, 'Looping Sound', [SNDR]) - ]); -end; - -procedure DefineTES5f; -begin - wbRecord(IDLM, 'Idle Marker', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x20000000} 29, 'Child Can Use' - ])), [ - wbEDID, - wbOBNDReq, - wbInteger(IDLF, 'Flags', itU8, wbFlags([ - 'Run in Sequence', - 'Unknown 1', - 'Do Once', - 'Unknown 3', - 'Ignored by Sandbox' - ]), cpNormal, False), - wbInteger(IDLC, 'Animation Count', itU8, nil, cpBenign), - wbFloat(IDLT, 'Idle Timer Setting', cpNormal, False), - wbArray(IDLA, 'Animations', wbFormIDCk('Animation', [IDLE]), 0, nil, wbIDLAsAfterSet, cpNormal, False), - wbMODL - ], False, nil, cpNormal, False, nil, wbAnimationsAfterSet); - - wbRecord(PROJ, 'Projectile', [ - wbEDID, - wbOBNDReq, - wbFULL, - wbMODL, - wbDEST, - wbStruct(DATA, 'Data', [ - {00} wbInteger('Flags', itU16, wbFlags([ - 'Hitscan', - 'Explosion', - 'Alt. Trigger', - 'Muzzle Flash', - '', - 'Can Be Disabled', - 'Can Be Picked Up', - 'Supersonic', - 'Pins Limbs', - 'Pass Through Small Transparent', - 'Disable Combat Aim Correction', - 'Rotation' - ])), - {02} wbInteger('Type', itU16, wbEnum([], [ - $01, 'Missile', - $02, 'Lobber', - $04, 'Beam', - $08, 'Flame', - $10, 'Cone', - $20, 'Barrier', - $40, 'Arrow' - ])), - {04} wbFloat('Gravity'), - {08} wbFloat('Speed'), - {12} wbFloat('Range'), - {16} wbFormIDCk('Light', [LIGH, NULL]), - {20} wbFormIDCk('Muzzle Flash - Light', [LIGH, NULL]), - {24} wbFloat('Tracer Chance'), - {28} wbFloat('Explosion - Alt. Trigger - Proximity'), - {32} wbFloat('Explosion - Alt. Trigger - Timer'), - {36} wbFormIDCk('Explosion', [EXPL, NULL]), - {40} wbFormIDCk('Sound', [SNDR, NULL]), - {44} wbFloat('Muzzle Flash - Duration'), - {48} wbFloat('Fade Duration'), - {52} wbFloat('Impact Force'), - {56} wbFormIDCk('Sound - Countdown', [SNDR, NULL]), - {60} wbFormIDCk('Sound - Disable', [SNDR, NULL]), - {64} wbFormIDCk('Default Weapon Source', [WEAP, NULL]), - {68} wbFloat('Cone Spread'), - {72} wbFloat('Collision Radius'), - {76} wbFloat('Lifetime'), - {80} wbFloat('Relaunch Interval'), - wbFormIDCk('Decal Data', [TXST, NULL]), - wbFormIDCk('Collision Layer', [COLL, NULL]) - ], cpNormal, True, nil, 22), - wbRStructSK([0], 'Muzzle Flash Model', [ - wbString(NAM1, 'Model Filename'), - wbByteArray(NAM2, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow) - ], [], cpNormal, True), - wbInteger(VNAM, 'Sound Level', itU32, wbSoundLevelEnum, cpNormal, True) - ]); - - wbRecord(HAZD, 'Hazard', [ - wbEDID, - wbOBNDReq, - wbFULL, - wbMODL, - wbFormIDCk(MNAM, 'Image Space Modifier', [IMAD, NULL]), - wbStruct(DATA, 'Data', [ - wbInteger('Limit', itU32), - wbFloat('Radius'), - wbFloat('Lifetime'), - wbFloat('Image Space Radius'), - wbFloat('Target Interval'), - wbInteger('Flags', itU32, wbFlags([ - {0x01} 'Affects Player Only', - {0x02} 'Inherit Duration from Spawn Spell', - {0x04} 'Align to Impact Normal', - {0x08} 'Inherit Radius from Spawn Spell', - {0x10} 'Drop to Ground' - ])), - wbFormIDCk('Spell', [SPEL, NULL]), - wbFormIDCk('Light', [LIGH, NULL]), - wbFormIDCk('Impact Data Set', [IPDS, NULL]), - wbFormIDCk('Sound', [SNDR, NULL]) - ]) - ]); - - wbSoulGemEnum := wbEnum([ - {0} 'None', - {1} 'Petty', - {2} 'Lesser', - {3} 'Common', - {4} 'Greater', - {5} 'Grand' - ]); - - wbRecord(SLGM, 'Soul Gem', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00020000} 17, 'Can Hold NPC Soul' - ])), [ - wbEDID, - wbOBND, - wbFULL, - wbMODL, - wbICON, - wbDEST, - wbYNAM, - wbZNAM, - wbKSIZ, - wbKWDAs, - wbStruct(DATA, '', [ - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True), - wbInteger(SOUL, 'Contained Soul', itU8, wbSoulGemEnum, cpNormal, True), - wbInteger(SLCP, 'Maximum Capacity', itU8, wbSoulGemEnum, cpNormal, True), - wbFormIDCk(NAM0, 'Linked To', [SLGM]) - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - - if wbSimpleRecords then - wbNVNM := - wbStruct(NVNM, 'Geometry', [ - wbByteArray('Unknown', 8), - wbFormIDCk('Parent Worldspace', [WRLD, NULL]), - wbUnion('Parent', wbNVNMParentDecider, [ - wbStruct('Coordinates', [ - wbInteger('Grid Y', itS16), - wbInteger('Grid X', itS16) - ]), - wbFormIDCk('Parent Cell', [CELL]) - ]), - wbArray('Vertices', wbByteArray('Vertex', 12), -1), - wbArray('Triangles', wbByteArray('Triangle', 16), -1), - wbArray('External Connections', - wbStruct('Connection', [ - wbByteArray('Unknown', 4), - wbFormIDCk('Mesh', [NAVM]), - wbInteger('Triangle', itS16) - ]) - , -1), - wbArray('Door Triangles', - wbStruct('Door Triangle', [ - wbInteger('Triangle before door', itS16), - wbByteArray('Unknown', 4), - wbFormIDCk('Door', [REFR]) - ]) - , -1), - wbUnknown - ]) - else - wbNVNM := - wbStruct(NVNM, 'Geometry', [ - wbInteger('Unknown', itU32), - wbByteArray('Unknown', 4), - wbFormIDCk('Parent Worldspace', [WRLD, NULL]), - wbUnion('Parent', wbNVNMParentDecider, [ - wbStruct('Coordinates', [ - wbInteger('Grid Y', itS16), - wbInteger('Grid X', itS16) - ]), - wbFormIDCk('Parent Cell', [CELL]) - ]), - wbArray('Vertices', wbStruct('Vertex', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), -1), - wbArray('Triangles', - wbStruct('Triangle', [ - wbInteger('Vertex 0', itS16), - wbInteger('Vertex 1', itS16), - wbInteger('Vertex 2', itS16), - wbInteger('Edge 0-1', itS16), - wbInteger('Edge 1-2', itS16), - wbInteger('Edge 2-0', itS16), - wbInteger('Flags', itU16, wbFlags([ - 'Edge 0-1 link', - 'Edge 1-2 link', - 'Edge 2-0 link', - 'Unknown 4', - 'Unknown 5', - 'Unknown 6', - 'Preferred', - 'Unknown 8', - 'Unknown 9', - 'Water', - 'Door', - 'Found', - 'Unknown 13', - 'Unknown 14', - 'Unknown 15', - 'Unknown 16' - ])), - wbInteger('Cover Flags', itU16, wbFlags([ - 'Edge 0-1 wall', - 'Edge 0-1 ledge cover', - 'Unknown 3', - 'Unknown 4', - 'Edge 0-1 left', - 'Edge 0-1 right', - 'Edge 1-2 wall', - 'Edge 1-2 ledge cover', - 'Unknown 9', - 'Unknown 10', - 'Edge 1-2 left', - 'Edge 1-2 right', - 'Unknown 13', - 'Unknown 14', - 'Unknown 15', - 'Unknown 16' - ])) - //wbInteger('Cover Edge #1 Flags', itU8), - //wbInteger('Cover Edge #2 Flags', itU8) - ]) - , -1), - wbArray('Edge Links', - wbStruct('Edge Link', [ - wbByteArray('Unknown', 4), - wbFormIDCk('Mesh', [NAVM]), - wbInteger('Triangle', itS16) - ]) - , -1), - wbArray('Door Triangles', - wbStruct('Door Triangle', [ - wbInteger('Triangle before door', itS16), - wbByteArray('Unknown', 4), - wbFormIDCk('Door', [REFR]) - ]) - , -1), - wbArray('Cover Triangles', wbInteger('Triangle', itS16), -1), - wbInteger('NavMeshGrid Divisor', itU32), - wbFloat('Max X Distance'), - wbFloat('Max Y Distance'), - wbFloat('Min X'), - wbFloat('Min Y'), - wbFloat('Min Z'), - wbFloat('Max X'), - wbFloat('Max Y'), - wbFloat('Max Z'), - wbArray('NavMeshGrid', wbArray('NavMeshGridCell', wbInteger('Triangle', itS16), -1)) - ]); - - wbRecord(NAVM, 'Navigation Mesh', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00040000} 18, 'Compressed', - {0x04000000} 26, 'AutoGen', - {0x80000000} 31, 'NavmeshGenCell' - ]), [18]), [ - wbEDID, - wbNVNM, - wbUnknown(ONAM), - wbUnknown(PNAM), - wbUnknown(NNAM) - ], False, wbNAVMAddInfo); - - - if wbSimpleRecords then - wbNAVIslandData := - wbStruct('Island Data', [ - wbByteArray('Unknown', 24), - wbArray('Triangles', wbByteArray('Triangle', 6), -1), - wbArray('Vertices', wbByteArray('Vertex', 12), -1) - ]) - else - wbNAVIslandData := - wbStruct('Island Data', [ - wbFloat('Min X'), - wbFloat('Min Y'), - wbFloat('Min Z'), - wbFloat('Max X'), - wbFloat('Max Y'), - wbFloat('Max Z'), - wbArray('Triangles', - wbStruct('Triangle', [ - wbArray('Vertices', wbInteger('Vertex', itS16), 3) - ]) - , -1), - wbArray('Vertices', wbStruct('Vertex', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), -1) - ]); - - wbRecord(NAVI, 'Navigation Mesh Info Map', [ - wbEDID, - wbInteger(NVER, 'Version', itU32), - wbRArray('Navigation Map Infos', - wbStruct(NVMI, 'Navigation Map Info', [ - wbFormIDCk('Navigation Mesh', [NAVM]), - wbByteArray('Unknown', 4), - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z'), - wbInteger('Preferred Merges Flag', itU32), - wbArray('Merged To', wbFormIDCk('Mesh', [NAVM]), -1), - wbArray('Preferred Merges', wbFormIDCk('Mesh', [NAVM]), -1), - wbArray('Linked Doors', wbStruct('Door', [ - wbByteArray('Unknown', 4), - wbFormIDCk('Door Ref', [REFR]) - ]), -1), - wbInteger('Is Island', itU8, wbEnum(['False', 'True'])), - wbUnion('Island', wbNAVIIslandDataDecider, [ - wbNull, - wbNAVIslandData - ]), - wbByteArray('Unknown', 4), - wbFormIDCk('Parent Worldspace', [WRLD, NULL]), - wbUnion('Parent', wbNAVIParentDecider, [ - wbStruct('Coordinates', [ - wbInteger('Grid Y', itS16), - wbInteger('Grid X', itS16) - ]), - wbFormIDCk('Parent Cell', [CELL]) - ]) - ]) - ), - wbStruct(NVPP, 'Preferred Pathing', [ - wbArray('NavMeshes', wbArray('Set', wbFormIDCk('', [NAVM]), -1), -1), - wbArray('NavMesh Tree?', wbStruct('', [ - wbFormIDCk('NavMesh', [NAVM]), - wbInteger('Index/Node', itU32) - ]), -1) - ]), - wbArray(NVSI, 'Unknown', wbFormIDCk('Navigation Mesh', [NAVM])) - ]); - -end; - -procedure DefineTES5g; -begin - - wbRecord(EXPL, 'Explosion', [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbMODL, - wbEITM, - wbFormIDCk(MNAM, 'Image Space Modifier', [IMAD]), - wbStruct(DATA, 'Data', [ // Contradicted by FireStormExplosion02 [EXPL:000877F9] - wbFormIDCk('Light', [LIGH, NULL]), - wbFormIDCk('Sound 1', [SNDR, NULL]), - wbFormIDCk('Sound 2', [SNDR, NULL]), - wbFormIDCk('Impact Data Set', [IPDS, NULL]), - wbFormID('Placed Object'), - wbFormIDCk('Spawn Projectile', [PROJ, NULL]), - wbFloat('Force'), - wbFloat('Damage'), - wbFloat('Radius'), - wbFloat('IS Radius'), - wbFloat('Vertical Offset Mult'), - wbInteger('Flags', itU32, wbFlags([ - 'Unknown 0', - 'Always Uses World Orientation', - 'Knock Down - Always', - 'Knock Down - By Formula', - 'Ignore LOS Check', - 'Push Explosion Source Ref Only', - 'Ignore Image Space Swap', - 'Chain', - 'No Controller Vibration' - ])), - wbInteger('Sound Level', itU32, wbSoundLevelEnum, cpNormal, True) - ], cpNormal, True, nil, 10) - ]); - - wbRecord(DEBR, 'Debris', [ - wbEDID, - wbRStructs('Models', 'Model', [ - wbStruct(DATA, 'Data', [ - wbInteger('Percentage', itU8), - wbString('Model Filename'), - wbInteger('Flags', itU8, wbFlags([ - 'Has Collision Data' - ])) - ], cpNormal, True), - wbMODT - ], [], cpNormal, True) - ]); - - wbRecord(IMGS, 'Image Space', [ - wbEDID, - wbUnknown(ENAM, cpIgnore), - wbStruct(HNAM, 'HDR', [ - wbFloat('Eye Adapt Speed'), - wbFloat('Bloom Blur Radius'), - wbFloat('Bloom Threshold'), - wbFloat('Bloom Scale'), - wbFloat('Receive Bloom Threshold'), - wbFloat('White'), - wbFloat('Sunlight Scale'), - wbFloat('Sky Scale'), - wbFloat('Eye Adapt Strength') - ]), - wbStruct(CNAM, 'Cinematic', [ - wbFloat('Saturation'), - wbFloat('Brightness'), - wbFloat('Contrast') - ]), - wbStruct(TNAM, 'Tint', [ - wbFloat('Amount'), - wbFloatColors('Color') - ]), - wbStruct(DNAM, 'Depth of Field', [ - wbFloat('Strength'), - wbFloat('Distance'), - wbFloat('Range'), - wbByteArray('Unknown', 2), - wbInteger('Sky / Blur Radius', itU16, wbEnum([], [ - 16384, 'Radius 0', - 16672, 'Radius 1', - 16784, 'Radius 2', - 16848, 'Radius 3', - 16904, 'Radius 4', - 16936, 'Radius 5', - 16968, 'Radius 6', - 17000, 'Radius 7', - 16576, 'No Sky, Radius 0', - 16736, 'No Sky, Radius 1', - 16816, 'No Sky, Radius 2', - 16880, 'No Sky, Radius 3', - 16920, 'No Sky, Radius 4', - 16952, 'No Sky, Radius 5', - 16984, 'No Sky, Radius 6', - 17016, 'No Sky, Radius 7' - ])) - ], cpNormal, False, nil, 3) - ]); - - wbTimeInterpolator := wbStruct('Data', [ - wbFloat('Time'), - wbFloat('Value') - ]); - - wbColorInterpolator := wbStruct('Data', [ - wbFloat('Time'), - wbFloat('Red', cpNormal, False, 255, 0), - wbFloat('Green', cpNormal, False, 255, 0), - wbFloat('Blue', cpNormal, False, 255, 0), - wbFloat('Alpha', cpNormal, False, 255, 0) - ]); - - wbRecord(IMAD, 'Image Space Adapter', [ - wbEDID, - wbStruct(DNAM, 'Data Count', [ - wbInteger('Flags', itU32, wbFlags(['Animatable'])), - wbFloat('Duration'), - wbStruct('HDR', [ - wbInteger('Eye Adapt Speed Mult', itU32), - wbInteger('Eye Adapt Speed Add', itU32), - wbInteger('Bloom Blur Radius Mult', itU32), - wbInteger('Bloom Blur Radius Add', itU32), - wbInteger('Bloom Threshold Mult', itU32), - wbInteger('Bloom Threshold Add', itU32), - wbInteger('Bloom Scale Mult', itU32), - wbInteger('Bloom Scale Add', itU32), - wbInteger('Target Lum Min Mult', itU32), - wbInteger('Target Lum Min Add', itU32), - wbInteger('Target Lum Max Mult', itU32), - wbInteger('Target Lum Max Add', itU32), - wbInteger('Sunlight Scale Mult', itU32), - wbInteger('Sunlight Scale Add', itU32), - wbInteger('Sky Scale Mult', itU32), - wbInteger('Sky Scale Add', itU32) - ]), - wbInteger('Unknown08 Mult', itU32), - wbInteger('Unknown48 Add', itU32), - wbInteger('Unknown09 Mult', itU32), - wbInteger('Unknown49 Add', itU32), - wbInteger('Unknown0A Mult', itU32), - wbInteger('Unknown4A Add', itU32), - wbInteger('Unknown0B Mult', itU32), - wbInteger('Unknown4B Add', itU32), - wbInteger('Unknown0C Mult', itU32), - wbInteger('Unknown4C Add', itU32), - wbInteger('Unknown0D Mult', itU32), - wbInteger('Unknown4D Add', itU32), - wbInteger('Unknown0E Mult', itU32), - wbInteger('Unknown4E Add', itU32), - wbInteger('Unknown0F Mult', itU32), - wbInteger('Unknown4F Add', itU32), - wbInteger('Unknown10 Mult', itU32), - wbInteger('Unknown50 Add', itU32), - wbStruct('Cinematic', [ - wbInteger('Saturation Mult', itU32), - wbInteger('Saturation Add', itU32), - wbInteger('Brightness Mult', itU32), - wbInteger('Brightness Add', itU32), - wbInteger('Contrast Mult', itU32), - wbInteger('Contrast Add', itU32) - ]), - wbInteger('Unknown14 Mult', itU32), - wbInteger('Unknown54 Add', itU32), - wbInteger('Tint Color', itU32), - wbInteger('Blur Radius', itU32), - wbInteger('Double Vision Strength', itU32), - wbInteger('Radial Blur Strength', itU32), - wbInteger('Radial Blur Ramp Up', itU32), - wbInteger('Radial Blur Start', itU32), - wbInteger('Radial Blur Flags', itU32, wbFlags(['Use Target'])), - wbFloat('Radial Blur Center X'), - wbFloat('Radial Blur Center Y'), - wbInteger('DoF Strength', itU32), - wbInteger('DoF Distance', itU32), - wbInteger('DoF Range', itU32), - wbInteger('DoF Flags', itU32, wbFlags([ - {0x00000001} 'Use Target', - {0x00000002} 'Unknown 2', - {0x00000004} 'Unknown 3', - {0x00000008} 'Unknown 4', - {0x00000010} 'Unknown 5', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unknown 7', - {0x00000080} 'Unknown 8', - {0x00000100} 'Mode - Front', - {0x00000200} 'Mode - Back', - {0x00000400} 'No Sky', - {0x00000800} 'Blur Radius Bit 2', - {0x00001000} 'Blur Radius Bit 1', - {0x00002000} 'Blur Radius Bit 0' - ])), - wbInteger('Radial Blur Ramp Down', itU32), - wbInteger('Radial Blur Down Start', itU32), - wbInteger('Fade Color', itU32), - wbInteger('Motion Blur Strength', itU32) - ]), - wbArray(BNAM, 'Blur Radius', wbTimeInterpolator), - wbArray(VNAM, 'Double Vision Strength', wbTimeInterpolator), - wbArray(TNAM, 'Tint Color', wbColorInterpolator), - wbArray(NAM3, 'Fade Color', wbColorInterpolator), - wbArray(RNAM, 'Radial Blur Strength', wbTimeInterpolator), - wbArray(SNAM, 'Radial Blur Ramp Up', wbTimeInterpolator), - wbArray(UNAM, 'Radial Blur Start', wbTimeInterpolator), - wbArray(NAM1, 'Radial Blur Ramp Down', wbTimeInterpolator), - wbArray(NAM2, 'Radial Blur Down Start', wbTimeInterpolator), - wbArray(WNAM, 'DoF Strength', wbTimeInterpolator), - wbArray(XNAM, 'DoF Distance', wbTimeInterpolator), - wbArray(YNAM, 'DoF Range', wbTimeInterpolator), - wbArray(NAM4, 'Motion Blur Strength', wbTimeInterpolator), - wbRStruct('HDR', [ - wbArray(_00_IAD, 'Eye Adapt Speed Mult', wbTimeInterpolator), - wbArray(_40_IAD, 'Eye Adapt Speed Add', wbTimeInterpolator), - wbArray(_01_IAD, 'Bloom Blur Radius Mult', wbTimeInterpolator), - wbArray(_41_IAD, 'Bloom Blur Radius Add', wbTimeInterpolator), - wbArray(_02_IAD, 'Bloom Threshold Mult', wbTimeInterpolator), - wbArray(_42_IAD, 'Bloom Threshold Add', wbTimeInterpolator), - wbArray(_03_IAD, 'Bloom Scale Mult', wbTimeInterpolator), - wbArray(_43_IAD, 'Bloom Scale Add', wbTimeInterpolator), - wbArray(_04_IAD, 'Target Lum Min Mult', wbTimeInterpolator), - wbArray(_44_IAD, 'Target Lum Min Add', wbTimeInterpolator), - wbArray(_05_IAD, 'Target Lum Max Mult', wbTimeInterpolator), - wbArray(_45_IAD, 'Target Lum Max Add', wbTimeInterpolator), - wbArray(_06_IAD, 'Sunlight Scale Mult', wbTimeInterpolator), - wbArray(_46_IAD, 'Sunlight Scale Add', wbTimeInterpolator), - wbArray(_07_IAD, 'Sky Scale Mult', wbTimeInterpolator), - wbArray(_47_IAD, 'Sky Scale Add', wbTimeInterpolator) - ], []), - wbUnknown(_08_IAD), - wbUnknown(_48_IAD), - wbUnknown(_09_IAD), - wbUnknown(_49_IAD), - wbUnknown(_0A_IAD), - wbUnknown(_4A_IAD), - wbUnknown(_0B_IAD), - wbUnknown(_4B_IAD), - wbUnknown(_0C_IAD), - wbUnknown(_4C_IAD), - wbUnknown(_0D_IAD), - wbUnknown(_4D_IAD), - wbUnknown(_0E_IAD), - wbUnknown(_4E_IAD), - wbUnknown(_0F_IAD), - wbUnknown(_4F_IAD), - wbUnknown(_10_IAD), - wbUnknown(_50_IAD), - wbRStruct('Cinematic', [ - wbArray(_11_IAD, 'Saturation Mult', wbTimeInterpolator), - wbArray(_51_IAD, 'Saturation Add', wbTimeInterpolator), - wbArray(_12_IAD, 'Brightness Mult', wbTimeInterpolator), - wbArray(_52_IAD, 'Brightness Add', wbTimeInterpolator), - wbArray(_13_IAD, 'Contrast Mult', wbTimeInterpolator), - wbArray(_53_IAD, 'Contrast Add', wbTimeInterpolator) - ], []), - wbUnknown(_14_IAD), - wbUnknown(_54_IAD) - ]); - - wbRecord(FLST, 'FormID List', [ - wbString(EDID, 'Editor ID', 0, cpBenign, True, nil, wbFLSTEDIDAfterSet), - wbRArrayS('FormIDs', wbFormID(LNAM, 'FormID'), cpNormal, False, nil, nil, nil, wbFLSTLNAMIsSorted) - ]); - - wbRecord(PERK, 'Perk', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable' - ])), [ - wbEDID, - wbVMADFragmentedPERK, - wbFULL, - wbDESCReq, - wbICON, - wbCTDAs, - wbStruct(DATA, 'Data', [ - wbInteger('Trait', itU8, wbEnum(['False', 'True'])), - wbInteger('Level', itU8), - wbInteger('Num Ranks', itU8), - wbInteger('Playable', itU8, wbEnum(['False', 'True'])), - wbInteger('Hidden', itU8, wbEnum(['False', 'True'])) - ], cpNormal, True), - wbFormIDCK(NNAM, 'Next Perk', [PERK, NULL]), - - wbRStructsSK('Effects', 'Effect', [0, 1], [ - wbStructSK(PRKE, [1, 2, 0], 'Header', [ - wbInteger('Type', itU8, wbEnum([ - 'Quest + Stage', - 'Ability', - 'Entry Point' - ]), cpNormal, False, nil, wbPERKPRKETypeAfterSet), - wbInteger('Rank', itU8), - wbInteger('Priority', itU8) - ]), - wbUnion(DATA, 'Effect Data', wbPerkDATADecider, [ - wbStructSK([0, 1], 'Quest + Stage', [ - wbFormIDCk('Quest', [QUST]), - wbInteger('Quest Stage', itU8, wbPerkDATAQuestStageToStr, wbCTDAParam2QuestStageToInt), - wbByteArray('Unused', 3) - ]), - wbFormIDCk('Ability', [SPEL]), - wbStructSK([0, 1], 'Entry Point', [ - wbInteger('Entry Point', itU8, wbEntryPointsEnum, cpNormal, True, nil{, wbPERKEntryPointAfterSet}), - wbInteger('Function', itU8, wbEnum([ - {0} 'Unknown 0', - {1} 'Set Value', // EPFT=1 - {2} 'Add Value', // EPFT=1 - {3} 'Multiply Value', // EPFT=1 - {4} 'Add Range To Value', // EPFT=2 - {5} 'Add Actor Value Mult', // EPFT=2 - {6} 'Absolute Value', // no params - {7} 'Negative Absolute Value', // no params - {8} 'Add Leveled List', // EPFT=3 - {9} 'Add Activate Choice', // EPFT=4 - {10} 'Select Spell', // EPFT=5 - {11} 'Select Text', // EPFT=6 - {12} 'Set to Actor Value Mult', // EPFT=2 - {13} 'Multiply Actor Value Mult', // EPFT=2 - {14} 'Multiply 1 + Actor Value Mult', // EPFT=2 - {15} 'Set Text' // EPFT=7 - ])), - wbInteger('Perk Condition Tab Count', itU8, nil, cpIgnore) - ]) - ], cpNormal, True), - - wbRStructsSK('Perk Conditions', 'Perk Condition', [0], [ - wbInteger(PRKC, 'Run On (Tab Index)', itS8{, wbPRKCToStr, wbPRKCToInt}), - wbCTDAsReq - ], [], cpNormal, False{, nil, nil, wbPERKPRKCDontShow}), - - wbRStruct('Function Parameters', [ - wbInteger(EPFT, 'Type', itU8, wbEnum([ - {0} 'None', - {1} 'Float', - {2} 'Float/AV,Float', - {3} 'LVLI', - {4} 'SPEL,lstring,flags', - {5} 'SPEL', - {6} 'string', - {7} 'lstring' - ])), - // case(EPFT) of - // 1: EPFD=float - // 2: EPFD=float,float - // 3: EPFD=LVLI - // 4: EPFD=SPEL, EPF2=lstring, EPF3=int32 flags - // 5: EPFD=SPEL - // 6: EPFD=string - // 7: EPFD=lstring - wbLString(EPF2, 'Button Label', 0, cpTranslate), - wbStruct(EPF3, 'Script Flags', [ - wbInteger('Script Flags', itU8, wbFlags([ - 'Run Immediately', - 'Replace Default' - ])), - wbByteArray('Unknown', 3) - ]), - wbUnion(EPFD, 'Data', wbEPFDDecider, [ - {0} wbByteArray('Unknown'), - {1} wbFloat('Float'), - {2} wbStruct('Float, Float', [ - wbFloat('Float 1'), - wbFloat('Float 2') - ]), - {3} wbFormIDCk('Leveled Item', [LVLI]), - {4} wbFormIDCk('Spell', [SPEL]), - {5} wbFormIDCk('Spell', [SPEL]), - {6} wbString('Text', 0, cpTranslate), - {7} wbLString('Text', 0, cpTranslate), - {8} wbStruct('Actor Value, Float', [ - wbInteger('Actor Value', itU32, wbEPFDActorValueToStr, wbEPFDActorValueToInt), - wbFloat('Float') - ]) - ], cpNormal, False{, wbEPFDDontShow}) - ], [], cpNormal, False{, wbPERKPRKCDontShow}), - wbEmpty(PRKF, 'End Marker', cpIgnore, True) - ], []) - ]); - - wbRecord(BPTD, 'Body Part Data', [ - wbEDID, - wbMODL, - wbRStructsSK('Body Parts', 'Body Part', [2], [ - wbLString(BPTN, 'Part Name', 0, cpTranslate, True), - wbString(PNAM, 'Pose Matching', 0, cpNormal, False), - wbString(BPNN, 'Part Node', 0, cpNormal, True), - wbString(BPNT, 'VATS Target', 0, cpNormal, True), - wbString(BPNI, 'IK Data - Start Node', 0, cpNormal, True), - wbStruct(BPND, '', [ - {00} wbFloat('Damage Mult'), - {04} wbInteger('Flags', itU8, wbFlags([ - 'Severable', - 'IK Data', - 'IK Data - Biped Data', - 'Explodable', - 'IK Data - Is Head', - 'IK Data - Headtracking', - 'To Hit Chance - Absolute' - ])), - {05} wbInteger('Part Type', itU8, wbEnum([ - 'Torso', - 'Head', - 'Eye', - 'LookAt', - 'Fly Grab', - 'Saddle' - ])), - {06} wbInteger('Health Percent', itU8), - {07} wbInteger('Actor Value', itS8, wbActorValueEnum), - {08} wbInteger('To Hit Chance', itU8), - {09} wbInteger('Explodable - Explosion Chance %', itU8), - {10} wbInteger('Explodable - Debris Count', itU16), - {12} wbFormIDCk('Explodable - Debris', [DEBR, NULL]), - {16} wbFormIDCk('Explodable - Explosion', [EXPL, NULL]), - {20} wbFloat('Tracking Max Angle'), - {24} wbFloat('Explodable - Debris Scale'), - {28} wbInteger('Severable - Debris Count', itS32), - {32} wbFormIDCk('Severable - Debris', [DEBR, NULL]), - {36} wbFormIDCk('Severable - Explosion', [EXPL, NULL]), - {40} wbFloat('Severable - Debris Scale'), - wbStruct('Gore Effects Positioning', [ - wbStruct('Translate', [ - {44} wbFloat('X'), - {48} wbFloat('Y'), - {52} wbFloat('Z') - ]), - wbStruct('Rotation', [ - {56} wbFloat('X', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - {60} wbFloat('Y', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - {64} wbFloat('Z', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ]) - ]), - {68} wbFormIDCk('Severable - Impact DataSet', [IPDS, NULL]), - {72} wbFormIDCk('Explodable - Impact DataSet', [IPDS, NULL]), - {28} wbInteger('Severable - Decal Count', itU8), - {28} wbInteger('Explodable - Decal Count', itU8), - {76} wbByteArray('Unknown', 2), - {80} wbFloat('Limb Replacement Scale') - ], cpNormal, True), - wbString(NAM1, 'Limb Replacement Model', 0, cpNormal, True), - wbString(NAM4, 'Gore Effects - Target Bone', 0, cpNormal, True), - wbByteArray(NAM5, 'Texture Files Hashes', 0, cpNormal) - ], [], cpNormal, True) - ]); - - wbRecord(ADDN, 'Addon Node', [ - wbEDID, - wbOBNDReq, - wbMODL, - wbInteger(DATA, 'Node Index', itS32, nil, cpNormal, True), - wbFormIDCk(SNAM, 'Sound', [SNDR, NULL]), - wbStruct(DNAM, 'Data', [ - wbInteger('Master Particle System Cap', itU16), - wbInteger('Flags', itU16, wbEnum([], [ - {>>> Value Must be 1 or 3 <<<} - 1, 'Unknown 1', // {0x0001}'Unknown 0', : The Check-Box is Unchecked in the CK - 3, 'Always Loaded' // {0x0002}'Always Loaded' : The Check-Box is Unchecked in the CK - ])) - ], cpNormal, True) - ]); -end; - -procedure DefineTES5h; -begin - wbRecord(AVIF, 'Actor Value Information', [ - wbEDID, - wbFULL, - wbDESCReq, - wbString(ANAM, 'Abbreviation'), - wbUnknown(CNAM), - wbStruct(AVSK, 'Skill', [ - wbFloat('Skill Use Mult'), - wbFloat('Skill Offset Mult'), - wbFloat('Skill Improve Mult'), - wbFloat('Skill Improve Offset') - ]), - wbRArray('Perk Tree', - wbRStruct('Node', [ - wbFormIDCk(PNAM, 'Perk', [PERK, NULL]), - wbUnknown(FNAM), - wbInteger(XNAM, 'Perk-Grid X', itU32), - wbInteger(YNAM, 'Perk-Grid Y', itU32), - wbFloat(HNAM, 'Horizontal Position'), - wbFloat(VNAM, 'Vertical Position'), - wbFormIDCk(SNAM, 'Associated Skill', [AVIF, NULL]), - wbRArray('Connections', wbInteger(CNAM, 'Line to Index', itU32)), - wbInteger(INAM, 'Index', itU32) - ], []) - ) - ]); - - wbRecord(CAMS, 'Camera Shot', [ - wbEDID, - wbMODL, - wbStruct(DATA, 'Data', [ - {00} wbInteger('Action', itU32, wbEnum([ - 'Shoot', - 'Fly', - 'Hit', - 'Zoom' - ])), - {04} wbInteger('Location', itU32, wbEnum([ - 'Attacker', - 'Projectile', - 'Target', - 'Lead Actor' - ])), - {08} wbInteger('Target', itU32, wbEnum([ - 'Attacker', - 'Projectile', - 'Target', - 'Lead Actor' - ])), - {12} wbInteger('Flags', itU32, wbFlags([ - 'Position Follows Location', - 'Rotation Follows Target', - 'Don''t Follow Bone', - 'First Person Camera', - 'No Tracer', - 'Start At Time Zero' - ])), - wbStruct('Time Multipliers', [ - {16} wbFloat('Player'), - {20} wbFloat('Target'), - {24} wbFloat('Global') - ]), - {28} wbFloat('Max Time'), - {32} wbFloat('Min Time'), - {36} wbFloat('Target % Between Actors'), - {40} wbFloat('Near Target Distance') - ], cpNormal, True, nil, 8), - wbFormIDCk(MNAM, 'Image Space Modifier', [IMAD]) - ]); - - wbRecord(CPTH, 'Camera Path', [ - wbEDID, - wbCTDAs, - wbArray(ANAM, 'Related Camera Paths', wbFormIDCk('Related Camera Path', [CPTH, NULL]), ['Parent', 'Previous Sibling'], cpNormal, True), - wbInteger(DATA, 'Camera Zoom', itU8, wbEnum([], [ - 0, 'Default, Must Have Camera Shots', - 1, 'Disable, Must Have Camera Shots', - 2, 'Shot List, Must Have Camera Shots', - 128, 'Default', - 129, 'Disable', - 130, 'Shot List' - ]), cpNormal, True), - wbRArray('Camera Shots', wbFormIDCk(SNAM, 'Camera Shot', [CAMS])) - ]); - - wbRecord(VTYP, 'Voice Type', [ - wbEDID, - wbInteger(DNAM, 'Flags', itU8, wbFlags([ - 'Allow Default Dialog', - 'Female' - ]), cpNormal, True) - ]); - - wbRecord(MATT, 'Material Type', [ - wbEDID, - wbFormIDCk(PNAM, 'Material Parent', [MATT, NULL]), - wbString(MNAM, 'Material Name'), - wbStruct(CNAM, 'Havok Display Color', [ - wbFloat('Red', cpNormal, True, 255, 0), - wbFloat('Green', cpNormal, True, 255, 0), - wbFloat('Blue', cpNormal, True, 255, 0) - ]), - wbFloat(BNAM, 'Buoyancy'), - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - 'Stair Material', - 'Arrows Stick' - ], False)), - wbFormIDCk(HNAM, 'Havok Impact Data Set', [IPDS, NULL]) - ]); - - wbRecord(IPCT, 'Impact', [ - wbEDID, - wbMODL, - wbStruct(DATA, '', [ - wbFloat('Effect - Duration'), - wbInteger('Effect - Orientation', itU32, wbEnum([ - 'Surface Normal', - 'Projectile Vector', - 'Projectile Reflection' - ])), - wbFloat('Angle Threshold'), - wbFloat('Placement Radius'), - wbInteger('Sound Level', itU32, wbSoundLevelEnum), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'No Decal Data' - ])), - wbInteger('Impact Result', itU8, wbEnum([ - {0} 'Default', - {1} 'Destroy', - {2} 'Bounce', - {3} 'Impale', - {4} 'Stick' - ])), - wbByteArray('Unknown', 2) - ], cpNormal, True, nil, 4), - wbDODT, - wbFormIDCk(DNAM, 'Texture Set', [TXST]), - wbFormIDCk(ENAM, 'Secondary Texture Set', [TXST]), - wbFormIDCk(SNAM, 'Sound 1', [SNDR, SOUN, NULL]), - wbFormIDCk(NAM1, 'Sound 2', [SNDR, SOUN, NULL]), - wbFormIDCk(NAM2, 'Hazard', [HAZD, NULL]) - ]); - - wbRecord(IPDS, 'Impact Data Set', [ - wbEDID, - wbRArrayS('Data', wbStructSK(PNAM, [0], '', [ - wbFormIDCk('Material', [MATT]), - wbFormIDCk('Impact', [IPCT]) - ])) - ]); - - wbRecord(ECZN, 'Encounter Zone', [ - wbEDID, - wbStruct(DATA, '', [ - wbFormIDCkNoReach('Owner', [NPC_, FACT, NULL]), - wbFormIDCk('Location', [LCTN, NULL]), - wbInteger('Rank', itS8), - wbInteger('Min Level', itS8), - wbInteger('Flags', itU8, wbFlags([ - 'Never Resets', - 'Match PC Below Minimum Level', - 'Disable Combat Boundary' - ])), - wbInteger('Max Level', itS8) - ], cpNormal, True, nil, 2) - ]); - - wbRecord(LCTN, 'Location', [ - wbEDID, - - wbArray(ACPR, 'Actor Cell Persistent Reference', wbStruct('', [ - wbFormIDCk('Actor', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], False, cpBenign), - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])), - wbArray(LCPR, 'Location Cell Persistent Reference', wbStruct('', [ - wbFormIDCk('Actor', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], False, cpBenign), - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])), - {>>> From Danwguard.esm, Does not follow similar previous patterns <<<} - wbArray(RCPR, 'Reference Cell Persistent Reference', wbFormIDCk('Ref', [ACHR, REFR], False, cpBenign)), - - wbArray(ACUN, 'Actor Cell Unique', wbStruct('', [ - wbFormIDCk('Actor', [NPC_], False, cpBenign), - wbFormIDCk('Ref', [ACHR], False, cpBenign), - wbFormIDCk('Location', [LCTN, NULL], False, cpBenign) - ])), - wbArray(LCUN, 'Location Cell Unique', wbStruct('', [ - wbFormIDCk('Actor', [NPC_], False, cpBenign), - wbFormIDCk('Ref', [ACHR], False, cpBenign), - wbFormIDCk('Location', [LCTN, NULL], False, cpBenign) - ])), - {>>> in Unofficial Skyrim patch <<<} - wbArray(RCUN, 'Reference Cell Unique', wbFormIDCk('Actor', [NPC_], False, cpBenign)), - - wbArray(ACSR, 'Actor Cell Static Reference', wbStruct('', [ - wbFormIDCk('Loc Ref Type', [LCRT], False, cpBenign), - wbFormIDCk('Marker', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], False, cpBenign), - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])), - wbArray(LCSR, 'Location Cell Static Reference', wbStruct('', [ - wbFormIDCk('Loc Ref Type', [LCRT], False, cpBenign), - wbFormIDCk('Marker', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], False, cpBenign), - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])), - {>>> Seen in Open Cities <<<} - wbArray(RCSR, 'Reference Cell Static Reference', wbFormIDCk('Ref', [ACHR, REFR], False, cpBenign)), - - wbRArray('Actor Cell Encounter Cell', - wbStruct(ACEC, 'Unknown', [ - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbArray('Coordinates', wbStruct('', [ - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])) - ]) - ), - wbRArray('Location Cell Encounter Cell', - wbStruct(LCEC, 'Unknown', [ - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbArray('Coordinates', wbStruct('', [ - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])) - ]) - ), - {>>> Seen in Open Cities <<<} - wbRArray('Reference Cell Encounter Cell', - wbStruct(RCEC, 'Unknown', [ - wbFormIDCk('Location', [WRLD, CELL], False, cpBenign), - wbArray('Coordinates', wbStruct('', [ - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])) - ]) - ), - - wbArray(ACID, 'Actor Cell Marker Reference', wbFormIDCk('Ref', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], False, cpBenign)), - wbArray(LCID, 'Location Cell Marker Reference', wbFormIDCk('Ref', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], False, cpBenign)), - - wbArray(ACEP, 'Actor Cell Enable Point', wbStruct('', [ - wbFormIDCk('Actor', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], False, cpBenign), - wbFormIDCk('Ref', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], False, cpBenign), - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])), - wbArray(LCEP, 'Location Cell Enable Point', wbStruct('', [ - wbFormIDCk('Actor', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], False, cpBenign), - wbFormIDCk('Ref', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], False, cpBenign), - wbInteger('Grid Y', itS16, nil, cpBenign), - wbInteger('Grid X', itS16, nil, cpBenign) - ])), - - wbFULL, - wbKSIZ, - wbKWDAs, - wbFormIDCk(PNAM, 'Parent Location', [LCTN, NULL]), - wbFormIDCk(NAM1, 'Music', [MUSC, NULL]), - wbFormIDCk(FNAM, 'Unreported Crime Faction', [FACT]), - wbFormIDCk(MNAM, 'World Location Marker Ref', [REFR, ACHR]), - wbFloat(RNAM, 'World Location Radius'), - wbFormIDCk(NAM0, 'Horse Marker Ref', [REFR]), - wbCNAM - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - -end; - -{this is required to prevent XE6 compiler error} -type - TVarRecs = array of TVarRec; - -function CombineVarRecs(const a, b : array of const) - : TVarRecs; -begin - SetLength(Result, Length(a) + Length(b)); - if Length(a) > 0 then - Move(a[0], Result[0], SizeOf(TVarRec) * Length(a)); - if Length(b) > 0 then - Move(b[0], Result[Length(a)], SizeOf(TVarRec) * Length(b)); -end; - -function MakeVarRecs(const a : array of const) - : TVarRecs; -begin - SetLength(Result, Length(a)); - if Length(a) > 0 then - Move(a[0], Result[0], SizeOf(TVarRec) * Length(a)); -end; - - -procedure DefineTES5i; -var - a, b, c : TVarRecs; -begin - wbRecord(MESG, 'Message', [ - wbEDID, - wbDESCReq, - wbFULL, - wbFormIDCk(INAM, 'Icon (unused)', [NULL], False, cpIgnore, True), // leftover - wbFormIDCk(QNAM, 'Owner Quest', [QUST]), - wbInteger(DNAM, 'Flags', itU32, wbFlags([ - 'Message Box', - 'Auto Display' - ]), cpNormal, True, False, nil, wbMESGDNAMAfterSet), - wbInteger(TNAM, 'Display Time', itU32, nil, cpNormal, False, False, wbMESGTNAMDontShow), - wbRStructs('Menu Buttons', 'Menu Button', [ - wbLString(ITXT, 'Button Text', 0, cpTranslate), - wbCTDAs - ], []) - ], False, nil, cpNormal, False, wbMESGAfterLoad); - - a := MakeVarRecs([ - 0, 'None', - Sig2Int('RADA'), 'RADA (Unused)', - Sig2Int('MORP'), 'MORP (Unused)', - Sig2Int('PPAR'), 'PPAR (Unused)', - Sig2Int('MYSN'), 'MYSN (Unused)', - Sig2Int('MYSF'), 'MYSF (Unused)', - Sig2Int('WWSP'), 'Werewolf Spell', - Sig2Int('SALT'), 'Sitting Angle Limit', - Sig2Int('APSH'), 'Allow Player Shout', - Sig2Int('GOLD'), 'Gold', - Sig2Int('LKPK'), 'Lockpick', - Sig2Int('SKLK'), 'SkeletonKey', - Sig2Int('PFAC'), 'Player Faction', - Sig2Int('GFAC'), 'Guard Faction', - Sig2Int('DFMS'), 'Default Music', - Sig2Int('BTMS'), 'Battle Music', - Sig2Int('DTMS'), 'Death Music', - Sig2Int('SCMS'), 'Success Music', - Sig2Int('LUMS'), 'Level Up Music', - Sig2Int('DCMS'), 'Dungeon Cleared Music', - Sig2Int('PVMA'), 'Player Voice (Male)', - Sig2Int('PVMC'), 'Player Voice (Male Child)', - Sig2Int('PVFA'), 'Player Voice (Female)', - Sig2Int('PVFC'), 'Player Voice (Female Child)', - Sig2Int('EPDF'), 'Eat Package Default Food', - Sig2Int('LHEQ'), 'LeftHand Equip', - Sig2Int('RHEQ'), 'RightHand Equip', - Sig2Int('EHEQ'), 'EitherHand Equip', - Sig2Int('VOEQ'), 'Voice Equip', - Sig2Int('POEQ'), 'Potion Equip', - Sig2Int('EACA'), 'Every Actor Ability', - Sig2Int('CACA'), 'Commanded Actor Ability', - Sig2Int('DEIS'), 'Drug Wears Off Image Space', - Sig2Int('DFTS'), 'Footstep Set', - Sig2Int('DLMT'), 'Landscape Material', - Sig2Int('DLZM'), 'Dragon Land Zone Marker', - Sig2Int('DCZM'), 'Dragon Crash Zone Marker', - Sig2Int('CSTY'), 'Combat Style', - Sig2Int('PLST'), 'Default Pack List', - Sig2Int('PWFD'), 'Wait-For-Dialogue Package', - Sig2Int('LRTB'), 'LocRefType Boss', - Sig2Int('VLOC'), 'Virtual Location', - Sig2Int('PLOC'), 'PersistAll Location', - Sig2Int('INVP'), 'Inventory Player', - Sig2Int('PTNP'), 'Pathing Test NPC', - Sig2Int('FPCS'), 'Favor Cost Small', - Sig2Int('FPCM'), 'Favor Cost Medium', - Sig2Int('FPCL'), 'Favor Cost Large', - Sig2Int('FGPD'), 'Favor Gifts Per Day', - Sig2Int('AASW'), 'Action Swim State Change', - Sig2Int('AALK'), 'Action Look', - Sig2Int('AALA'), 'Action LeftAttack', - Sig2Int('AALD'), 'Action LeftReady', - Sig2Int('AALR'), 'Action LeftRelease', - Sig2Int('AALI'), 'Action LeftInterrupt', - Sig2Int('AARA'), 'Action RightAttack', - Sig2Int('AARD'), 'Action RightReady', - Sig2Int('AARR'), 'Action RightRelease', - Sig2Int('AARI'), 'Action RightInterrupt', - Sig2Int('AADA'), 'Action DualAttack', - Sig2Int('AADL'), 'Action DualRelease', - Sig2Int('AAAC'), 'Action Activate', - Sig2Int('AAJP'), 'Action Jump', - Sig2Int('AAFA'), 'Action Fall', - Sig2Int('AALN'), 'Action Land', - Sig2Int('AASN'), 'Action Sneak', - Sig2Int('AAVC'), 'Action Voice', - Sig2Int('AAVD'), 'Action VoiceReady', - Sig2Int('AAVR'), 'Action VoiceRelease', - Sig2Int('AAVI'), 'Action VoiceInterrupt', - Sig2Int('AAID'), 'Action Idle', - Sig2Int('AAST'), 'Action Sprint Start', - Sig2Int('AASP'), 'Action Sprint Stop', - Sig2Int('AADR'), 'Action Draw', - Sig2Int('AASH'), 'Action Sheath', - Sig2Int('ALPA'), 'Action Left Power Attack', - Sig2Int('AAPA'), 'Action Right Power Attack', - Sig2Int('ADPA'), 'Action Dual Power Attack', - Sig2Int('AAS1'), 'Action Stagger Start', - Sig2Int('AABH'), 'Action Block Hit', - Sig2Int('AABA'), 'Action Block Anticipate', - Sig2Int('AARC'), 'Action Recoil', - Sig2Int('AAR2'), 'Action Large Recoil', - Sig2Int('AAB1'), 'Action Bleedout Start', - Sig2Int('AAB2'), 'Action Bleedout Stop', - Sig2Int('AAIS'), 'Action Idle Stop', - Sig2Int('AAWH'), 'Action Ward Hit', - Sig2Int('AAFQ'), 'Action Force Equip', - Sig2Int('AASC'), 'Action Shield Change', - Sig2Int('AAPS'), 'Action Path Start', - Sig2Int('AAPE'), 'Action Path End', - Sig2Int('AALM'), 'Action Large Movement Delta', - Sig2Int('AAF1'), 'Action Fly Start', - Sig2Int('AAF2'), 'Action Fly Stop', - Sig2Int('AAH1'), 'Action Hover Start', - Sig2Int('AAH2'), 'Action Hover Stop', - Sig2Int('AABI'), 'Action Bumped Into', - Sig2Int('AASS'), 'Action Summoned Start', - Sig2Int('ATKI'), 'Action Talking Idle', - Sig2Int('ALTI'), 'Action Listen Idle', - Sig2Int('AADE'), 'Action Death', - Sig2Int('AADW'), 'Action Death Wait', - Sig2Int('AIDW'), 'Action Idle Warn', - Sig2Int('AMST'), 'Action Move Start', - Sig2Int('AMSP'), 'Action Move Stop', - Sig2Int('ATRI'), 'Action Turn Right', - Sig2Int('ATLE'), 'Action Turn Left', - Sig2Int('ATSP'), 'Action Turn Stop', - Sig2Int('AMFD'), 'Action Move Forward', - Sig2Int('AMBK'), 'Action Move Backward', - Sig2Int('AMLT'), 'Action Move Left', - Sig2Int('AMRT'), 'Action Move Right', - Sig2Int('ARAG'), 'Action Reset Animation Graph', - Sig2Int('AKDN'), 'Action Knockdown', - Sig2Int('AAGU'), 'Action Get Up', - Sig2Int('ASID'), 'Action Idle Stop Instant', - Sig2Int('ARGI'), 'Action Ragdoll Instant', - Sig2Int('AWWS'), 'Action Waterwalk Start', - Sig2Int('AREL'), 'Action Reload', - Sig2Int('PUSG'), 'Pickup Sound Generic', - Sig2Int('PDSG'), 'Putdown Sound Generic', - Sig2Int('PUSW'), 'Pickup Sound Weapon', - Sig2Int('PDSW'), 'Putdown Sound Weapon', - Sig2Int('PUSA'), 'Pickup Sound Armor', - Sig2Int('PDSA'), 'Putdown Sound Armor', - Sig2Int('PUSB'), 'Pickup Sound Book', - Sig2Int('PDSB'), 'Putdown Sound Book', - Sig2Int('PUSI'), 'Pickup Sound Ingredient', - Sig2Int('PDSI'), 'Putdown Sound Ingredient', - Sig2Int('HVSS'), 'Harvest Sound', - Sig2Int('HVFS'), 'Harvest Failed Sound', - Sig2Int('WBSN'), 'Ward Break Sound', - Sig2Int('WASN'), 'Ward Absorb Sound', - Sig2Int('WDSN'), 'Ward Deflect Sound', - Sig2Int('MFSN'), 'Magic Fail Sound', - Sig2Int('SFSN'), 'Shout Fail Sound', - Sig2Int('HFSD'), 'Heartbeat Sound Fast', - Sig2Int('HSSD'), 'Heartbeat Sound Slow', - Sig2Int('IMLH'), 'Imagespace: Low Health', - Sig2Int('SCSD'), 'Soul Captured Sound', - Sig2Int('NASD'), 'No-Activation Sound', - Sig2Int('MMSD'), 'Map Menu Looping Sound', - Sig2Int('DDSC'), 'Dialogue Voice Category', - Sig2Int('NDSC'), 'Non-Dialogue Voice Category', - Sig2Int('SFDC'), 'SFX To Fade In Dialogue Category', - Sig2Int('PDMC'), 'Pause During Menu Category (Fade)', - Sig2Int('PIMC'), 'Pause During Menu Category (Immediate)', - Sig2Int('PDLC'), 'Pause During Loading Menu Category', - Sig2Int('MDSC'), 'Music Sound Category', - Sig2Int('SMSC'), 'Stats Mute Category', - Sig2Int('SSSC'), 'Stats Music', - Sig2Int('MTSC'), 'Master Sound Category', - Sig2Int('TSSC'), 'Time Sensitive Sound Category', - Sig2Int('DOP2'), 'Dialogue Output Model (3D)', - Sig2Int('DOP3'), 'Dialogue Output Model (2D)', - Sig2Int('POPM'), 'Player''s Output Model (1st Person)', - Sig2Int('P3OM'), 'Player''s Output Model (3rd Person)', - Sig2Int('IOPM'), 'Interface Output Model', - Sig2Int('RVBT'), 'Reverb Type', - Sig2Int('UWLS'), 'Underwater Loop Sound', - Sig2Int('URVT'), 'Underwater Reverb Type', - Sig2Int('HRSK'), 'Keyword - Horse', - Sig2Int('UNDK'), 'Keyword - Undead', - Sig2Int('NPCK'), 'Keyword - NPC', - Sig2Int('KWBR'), 'Keyword - BeastRace', - Sig2Int('KWDM'), 'Keyword - DummyObject', - Sig2Int('KWGE'), 'Keyword - UseGeometryEmitter', - Sig2Int('KWMS'), 'Keyword - MustStop', - Sig2Int('KWUA'), 'Keyword - UpdateDuringArchery', - Sig2Int('KWOT'), 'Keyword - Skip Outfit Items', - Sig2Int('FTHD'), 'Male Face Texture Set: Head', - Sig2Int('FTMO'), 'Male Face Texture Set: Mouth', - Sig2Int('FTEL'), 'Male Face Texture Set: Eyes', - Sig2Int('FTHF'), 'Female Face Texture Set: Head', - Sig2Int('FTMF'), 'Female Face Texture Set: Mouth', - Sig2Int('FTRF'), 'Female Face Texture Set: Eyes', - Sig2Int('IMID'), 'ImageSpaceModifier for inventory menu.', - Sig2Int('PTEM'), 'Package template', - Sig2Int('MMCL'), 'Main Menu Cell', - Sig2Int('DMWL'), 'Default MovementType: Walk', - Sig2Int('DMRN'), 'Default MovementType: Run', - Sig2Int('DMSW'), 'Default MovementType: Swim', - Sig2Int('DMFL'), 'Default MovementType: Fly', - Sig2Int('DMSN'), 'Default MovementType: Sneak', - Sig2Int('DMSP'), 'Default MovementType: Sprint', - Sig2Int('SPFK'), 'Keyword - Special Furniture', - Sig2Int('FFFP'), 'Keyword - Furniture Forces 1st Person', - Sig2Int('FFTP'), 'Keyword - Furniture Forces 3rd Person', - Sig2Int('AFNP'), 'Keyword - Activator Furniture No Player', - Sig2Int('TKGS'), 'Telekinesis Grab Sound', - Sig2Int('TKTS'), 'Telekinesis Throw Sound', - Sig2Int('WMWE'), 'World Map Weather', - Sig2Int('HMPC'), 'Help Manual PC', - Sig2Int('HMXB'), 'Help Manual XBox', - Sig2Int('TKAM'), 'Keyword - Type Ammo', - Sig2Int('TKAR'), 'Keyword - Type Armor', - Sig2Int('TKBK'), 'Keyword - Type Book', - Sig2Int('TKIG'), 'Keyword - Type Ingredient', - Sig2Int('TKKY'), 'Keyword - Type Key', - Sig2Int('TKMS'), 'Keyword - Type Misc', - Sig2Int('TKSG'), 'Keyword - Type SoulGem', - Sig2Int('TKWP'), 'Keyword - Type Weapon', - Sig2Int('TKPT'), 'Keyword - Type Potion', - Sig2Int('BENW'), 'Base Weapon Enchantment', - Sig2Int('BENA'), 'Base Armor Enchantment', - Sig2Int('BAPO'), 'Base Potion', - Sig2Int('BAPS'), 'Base Poison', - Sig2Int('DRAK'), 'Keyword - Dragon', - Sig2Int('MVBL'), 'Keyword - Movable', - Sig2Int('ABSE'), 'Art Object - Absorb Effect', - Sig2Int('WEML'), 'Weapon Material List', - Sig2Int('ARTL'), 'Armor Material List', - Sig2Int('DIEN'), 'Keyword - Disallow Enchanting', - Sig2Int('FTML'), 'Favor travel marker location', - Sig2Int('LKHO'), 'Keyword - Hold Location', - Sig2Int('CWOK'), 'Keyword - Civil War Owner', - Sig2Int('CWNE'), 'Keyword - Civil War Neutral', - Sig2Int('LRSO'), 'LocRefType - Civil War Soldier', - Sig2Int('KWDO'), 'Keyword - ClearableLocation', - Sig2Int('LRRD'), 'LocRefType - Resource Destructible', - Sig2Int('HCLL'), 'FormList - Hair Color List', - Sig2Int('CMPX'), 'Complex Scene Object', - Sig2Int('RUSG'), 'Keyword - Reusable SoulGem', - Sig2Int('ANML'), 'Keyword - Animal', - Sig2Int('DAED'), 'Keyword - Daedra' - ]); - - b := MakeVarRecs([ - Sig2Int('BEEP'), 'Keyword - Robot', - Sig2Int('NRNT'), 'Keyword - Nirnroot', - Sig2Int('FTGF'), 'Fighters'' Guild Faction', - Sig2Int('MGGF'), 'Mages'' Guild Faction', - Sig2Int('TVGF'), 'Thieves'' Guild Faction', - Sig2Int('DBHF'), 'Dark Brotherhood Faction', - Sig2Int('JRLF'), 'Jarl Faction', - Sig2Int('AWWW'), 'Bunny Faction', - Sig2Int('PIVV'), 'Player Is Vampire Variable', - Sig2Int('PIWV'), 'Player Is Werewolf Variable', - Sig2Int('NMRD'), 'Road Marker', - Sig2Int('SAT1'), 'Keyword: Scale Actor To 1.0', - Sig2Int('VAMP'), 'Keyword: Vampire', - Sig2Int('FORG'), 'Keyword: Forge', - Sig2Int('COOK'), 'Keyword: Cooking Pot', - Sig2Int('SMLT'), 'Keyword: Smelter', - Sig2Int('TANN'), 'Keyword: Tanning Rack', - Sig2Int('HBLK'), 'Help - Basic Lockpicking (PC)', - Sig2Int('HBLX'), 'Help - Basic Lockpicking (Console)', - Sig2Int('HBFG'), 'Help - Basic Forging', - Sig2Int('HBCO'), 'Help - Basic Cooking', - Sig2Int('HBML'), 'Help - Basic Smelting', - Sig2Int('HBTA'), 'Help - Basic Tanning', - Sig2Int('HBOC'), 'Help - Basic Object Creation', - Sig2Int('HBEC'), 'Help - Basic Enchanting', - Sig2Int('HBSM'), 'Help - Basic Smithing Weapon', - Sig2Int('HBSA'), 'Help - Basic Smithing Armor', - Sig2Int('HBAL'), 'Help - Basic Alchemy', - Sig2Int('HBBR'), 'Help - Barter', - Sig2Int('HBLU'), 'Help - Leveling up', - Sig2Int('HBSK'), 'Help - Skills Menu', - Sig2Int('HBMM'), 'Help - Map Menu', - Sig2Int('HBJL'), 'Help - Journal', - Sig2Int('HBLH'), 'Help - Low Health', - Sig2Int('HBLM'), 'Help - Low Magicka', - Sig2Int('HBLS'), 'Help - Low Stamina', - Sig2Int('HBHJ'), 'Help - Jail', - Sig2Int('HBFT'), 'Help - Teamate Favor', - Sig2Int('HBWC'), 'Help - Weapon Charge', - Sig2Int('HBFS'), 'Help - Favorites', - Sig2Int('KHFL'), 'Kinect Help FormList', - Sig2Int('HBFM'), 'Help - Flying Mount', - Sig2Int('HBTL'), 'Help - Target Lock', - Sig2Int('HBAT'), 'Help - Attack Target', - Sig2Int('MHFL'), 'Help - Mods', - Sig2Int('LSIS'), 'Imagespace: Load screen', - Sig2Int('WMDA'), 'Keyword - Weapon Material Daedric', - Sig2Int('WMDR'), 'Keyword - Weapon Material Draugr', - Sig2Int('WMDH'), 'Keyword - Weapon Material DraugrHoned', - Sig2Int('WMDW'), 'Keyword - Weapon Material Dwarven', - Sig2Int('WMEB'), 'Keyword - Weapon Material Ebony', - Sig2Int('WMEL'), 'Keyword - Weapon Material Elven', - Sig2Int('WMFA'), 'Keyword - Weapon Material Falmer', - Sig2Int('WMFH'), 'Keyword - Weapon Material FalmerHoned', - Sig2Int('WMGL'), 'Keyword - Weapon Material Glass', - Sig2Int('WMIM'), 'Keyword - Weapon Material Imperial', - Sig2Int('WMIR'), 'Keyword - Weapon Material Iron', - Sig2Int('WMOR'), 'Keyword - Weapon Material Orcish', - Sig2Int('WMST'), 'Keyword - Weapon Material Steel', - Sig2Int('WMWO'), 'Keyword - Weapon Material Wood', - Sig2Int('WTBA'), 'Keyword - WeaponTypeBoundArrow', - Sig2Int('AODA'), 'Keyword - Armor Material Daedric', - Sig2Int('AODP'), 'Keyword - Armor Material Dragonplate', - Sig2Int('AODS'), 'Keyword - Armor Material Dragonscale', - Sig2Int('AODB'), 'Keyword - Armor Material Dragonbone', - Sig2Int('AODW'), 'Keyword - Armor Material Dwarven', - Sig2Int('AOEB'), 'Keyword - Armor Material Ebony', - Sig2Int('AOEL'), 'Keyword - Armor Material Elven', - Sig2Int('AOES'), 'Keyword - Armor Material ElvenSplinted', - Sig2Int('AOFL'), 'Keyword - Armor Material FullLeather', - Sig2Int('AOGL'), 'Keyword - Armor Material Glass', - Sig2Int('AOHI'), 'Keyword - Armor Material Hide', - Sig2Int('AOIM'), 'Keyword - Armor Material Imperial', - Sig2Int('AOIH'), 'Keyword - Armor Material ImperialHeavy', - Sig2Int('AOIR'), 'Keyword - Armor Material ImperialReinforced', - Sig2Int('AOFE'), 'Keyword - Armor Material Iron', - Sig2Int('AOIB'), 'Keyword - Armor Material IronBanded', - Sig2Int('AOOR'), 'Keyword - Armor Material Orcish', - Sig2Int('AOSC'), 'Keyword - Armor Material Scaled', - Sig2Int('AOST'), 'Keyword - Armor Material Steel', - Sig2Int('AOSP'), 'Keyword - Armor Material SteelPlate', - Sig2Int('AOSK'), 'Keyword - Armor Material Stormcloak', - Sig2Int('AOSD'), 'Keyword - Armor Material Studded', - Sig2Int('GCK1'), 'Keyword - Generic Craftable Keyword 01', - Sig2Int('GCK2'), 'Keyword - Generic Craftable Keyword 02', - Sig2Int('GCK3'), 'Keyword - Generic Craftable Keyword 03', - Sig2Int('GCK4'), 'Keyword - Generic Craftable Keyword 04', - Sig2Int('GCK5'), 'Keyword - Generic Craftable Keyword 05', - Sig2Int('GCK6'), 'Keyword - Generic Craftable Keyword 06', - Sig2Int('GCK7'), 'Keyword - Generic Craftable Keyword 07', - Sig2Int('GCK8'), 'Keyword - Generic Craftable Keyword 08', - Sig2Int('GCK9'), 'Keyword - Generic Craftable Keyword 09', - Sig2Int('GCKX'), 'Keyword - Generic Craftable Keyword 10', - Sig2Int('JWLR'), 'Keyword - Jewelry', - Sig2Int('KWCU'), 'Keyword - Cuirass', - Sig2Int('MNTK'), 'Keyword - Mount', - Sig2Int('LMHP'), 'Local Map Hide Plane', - Sig2Int('SLDM'), 'Snow LOD Material', - Sig2Int('SLHD'), 'Snow LOD Material (HD)', - Sig2Int('ALDM'), 'Ash LOD Material', - Sig2Int('ALHD'), 'Ash LOD Material (HD)', - Sig2Int('DGFL'), 'DialogueFollower Quest', - Sig2Int('PTFR'), 'PotentialFollower Faction', - Sig2Int('AVWP'), 'Werewolf Available Perks', - Sig2Int('AVVP'), 'Vampire Available Perks', - Sig2Int('RIWR'), 'Werewolf Race', - Sig2Int('RIVR'), 'Vampire Race', - Sig2Int('RIVS'), 'Vampire Spells', - Sig2Int('DMXL'), 'Dragon Mount No Land List', - Sig2Int('PCMD'), 'Player Can Mount Dragon Here List', - Sig2Int('FMYS'), 'Flying Mount - Allowed Spells', - Sig2Int('FMNS'), 'Flying Mount - Disallowed Spells', - Sig2Int('MNT2'), 'Keyword - Mount', - Sig2Int('AIVC'), 'Verlet Cape', - Sig2Int('FTNP'), 'Furniture Test NPC', - Sig2Int('COEX'), 'Keyword - Conditional Explosion', - Sig2Int('VFNC'), 'Vampire Feed No Crime Faction', - Sig2Int('KWSP'), 'Skyrim - Worldspace', - Sig2Int('ALBM'), 'Keyword - Armor Material Light Bonemold', - Sig2Int('ALCH'), 'Keyword - Armor Material Light Chitin', - Sig2Int('ALNC'), 'Keyword - Armor Material Light Nordic', - Sig2Int('ALSM'), 'Keyword - Armor Material Light Stalhrim', - Sig2Int('FMFF'), 'Flying Mount - Fly Fast Worldspaces', - Sig2Int('AHBM'), 'Keyword - Armor Material Heavy Bonemold', - Sig2Int('AHCH'), 'Keyword - Armor Material Heavy Chitin', - Sig2Int('AHNC'), 'Keyword - Armor Material Heavy Nordic', - Sig2Int('AHSM'), 'Keyword - Armor Material Heavy Stalhrim', - Sig2Int('WPNC'), 'Keyword - Weapon Material Nordic', - Sig2Int('WPSM'), 'Keyword - Weapon Material Stalhrim' - ]); - - c := CombineVarRecs(a, b); - - wbRecord(DOBJ, 'Default Object Manager', [ - wbEDID, - wbArrayS(DNAM, 'Objects', - wbStructSK([0], 'Object', [ - wbInteger('Use', itU32, wbEnum([], c), cpNormalIgnoreEmpty), - wbFormID('Object ID', cpNormalIgnoreEmpty) - ]), 0, cpNormalIgnoreEmpty, True, wbDOBJObjectsAfterLoad - ) - ]); - - wbRecord(LGTM, 'Lighting Template', [ - wbEDID, - wbStruct(DATA, 'Lighting', [ - wbByteColors('Ambient Color'), - wbByteColors('Directional Color'), - wbByteColors('Fog Color Near'), - wbFloat('Fog Near'), - wbFloat('Fog Far'), - wbInteger('Directional Rotation XY', itS32), - wbInteger('Directional Rotation Z', itS32), - wbFloat('Directional Fade'), - wbFloat('Fog Clip Dist'), - wbFloat('Fog Power'), - wbAmbientColors('Ambient Colors'), // WindhelmLightingTemplate [LGTM:0007BA87] only find 24 ! - wbByteColors('Fog Color Far'), - wbFloat('Fog Max'), - wbStruct('Light Fade Distances', [ - wbFloat('Start'), - wbFloat('End') - ]), - wbByteArray('Unknown', 4) - ], cpNormal, True, nil, 11), - wbAmbientColors(DALC) - ]); - - wbRecord(MUSC, 'Music Type', [ - wbEDID, - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - {0x01} 'Plays One Selection', - {0x02} 'Abrupt Transition', - {0x04} 'Cycle Tracks', - {0x08} 'Maintain Track Order', - {0x10} 'Unknown 4', - {0x20} 'Ducks Current Track', - {0x40} IsSSE('Doesn''t Queue', 'Unknown 6') - ]), cpNormal, True), - wbStruct(PNAM, 'Data', [ - wbInteger('Priority', itU16), - wbInteger('Ducking (dB)', itU16, wbDiv(100)) - ]), - wbFloat(WNAM, 'Fade Duration'), - wbArray(TNAM, 'Music Tracks', wbFormIDCk('Track', [MUST, NULL])) - ]); - - wbRecord(FSTP, 'Footstep', [ - wbEDID, - wbFormIDCk(DATA, 'Impact Data Set', [IPDS, NULL], False, cpNormal, True), - wbString(ANAM, 'Tag', 0, cpNormal, True) - ]); - - wbRecord(FSTS, 'Footstep Set', [ - wbEDID, - wbStruct(XCNT, 'Count', [ - wbInteger('Walk Forward Sets', itU32), - wbInteger('Run Forward Sets', itU32), - wbInteger('Walk Forward Alternate Sets', itU32), - wbInteger('Run Forward Alternate Sets', itU32), - wbInteger('Walk Forward Alternate 2 Sets', itU32) - ], cpNormal, True), - wbArray(DATA, 'Footstep Sets', wbFormIDCk('Footstep', [FSTP]), 0, nil, nil, cpNormal, True) - ]); - - wbSMNodeFlags := wbFlags([ - 'Random', - 'Warn if no child quest started' - ]); - - wbRecord(SMBN, 'Story Manager Branch Node', [ - wbEDID, - wbFormIDCk(PNAM, 'Parent ', [SMQN, SMBN, SMEN, NULL]), - wbFormIDCk(SNAM, 'Child ', [SMQN, SMBN, SMEN, NULL]), - wbCITC, - wbCTDAsCount, - wbInteger(DNAM, 'Flags', itU32, wbSMNodeFlags), - wbUnknown(XNAM) - ], False, nil, cpNormal, False, nil, wbConditionsAfterSet); - - wbRecord(SMQN, 'Story Manager Quest Node', [ - wbEDID, - wbFormIDCk(PNAM, 'Parent ', [SMQN, SMBN, SMEN, NULL]), - wbFormIDCk(SNAM, 'Child ', [SMQN, SMBN, SMEN, NULL]), - wbCITC, - wbCTDAsCount, - wbStruct(DNAM, 'Flags', [ - wbInteger('Node Flags', itU16, wbSMNodeFlags), - wbInteger('Quest Flags', itU16, wbFlags([ - 'Do all before repeating', - 'Shares event', - 'Num quests to run' - ])) - ]), - wbInteger(XNAM, 'Max concurrent quests', itU32), - wbInteger(MNAM, 'Num quests to run', itU32), - wbInteger(QNAM, 'Quest Count', itU32, nil, cpBenign), - wbRArray('Quests', wbRStructSK([0], 'Quest', [ - wbFormIDCk(NNAM, 'Quest', [QUST]), - wbUnknown(FNAM), - wbFloat(RNAM, 'Hours until reset', cpNormal, False, 1/24) - ], []), cpNormal, False, nil, wbSMQNQuestsAfterSet) - ], False, nil, cpNormal, False, nil, wbConditionsAfterSet); - - wbRecord(SMEN, 'Story Manager Event Node', [ - wbEDID, - wbFormIDCk(PNAM, 'Parent ', [SMQN, SMBN, SMEN, NULL]), - wbFormIDCk(SNAM, 'Child ', [SMQN, SMBN, SMEN, NULL]), - wbCITC, - wbCTDAsCount, - wbInteger(DNAM, 'Flags', itU32, wbSMNodeFlags), - wbUnknown(XNAM), - wbString(ENAM, 'Type', 4) - ], False, nil, cpNormal, False, nil, wbConditionsAfterSet); -end; - -procedure DefineTES5j; -begin - wbRecord(DLBR, 'Dialog Branch', [ - wbEDID, - wbFormIDCk(QNAM, 'Quest', [QUST], False, cpNormal, True), - wbInteger(TNAM, 'Unknown', itU32), - wbInteger(DNAM, 'Flags', itU32, wbFlags([ - {0x01} 'Top-Level', - {0x02} 'Blocking', - {0x04} 'Exclusive' - ])), - wbFormIDCk(SNAM, 'Starting Topic', [DIAL], False, cpNormal, True) - ]); - - wbRecord(MUST, 'Music Track', [ - wbEDID, - wbInteger(CNAM, 'Track Type', itU32, wbEnum([], [ - Int64($23F678C3), 'Palette', - Int64($6ED7E048), 'Single Track', - Int64($A1A9C4D5), 'Silent Track' - ]), cpNormal, True), - wbFloat(FLTV, 'Duration'), - wbFloat(DNAM, 'Fade-Out'), - wbString(ANAM, 'Track Filename'), - wbString(BNAM, 'Finale Filename'), - wbArray(FNAM, 'Cue Points', wbFloat('Point')), - wbStruct(LNAM, 'Loop Data', [ - wbFloat('Loop Begins'), - wbFloat('Loop Ends'), - wbInteger('Loop Count', itU32) - ]), - wbCITC, - wbCTDAsCount, - wbArray(SNAM, 'Tracks', wbFormIDCk('Track', [MUST, NULL])) - ], False, nil, cpNormal, False, nil, wbConditionsAfterSet); - - wbRecord(DLVW, 'Dialog View', [ - wbEDID, - wbFormIDCk(QNAM, 'Quest', [QUST], False, cpNormal, True), - wbRArray('Branches', wbFormIDCk(BNAM, 'Branch', [DLBR])), - wbRArray('Unknown TNAM', wbRStruct('Unknown', [ - wbUnknown(TNAM) - ], [])), - wbUnknown(ENAM), - wbUnknown(DNAM) - ]); - - wbRecord(WOOP, 'Word of Power', [ - wbEDID, - wbFULL, - wbLString(TNAM, 'Translation', 0, cpTranslate, True) - ]); - - wbRecord(SHOU, 'Shout', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000080} 7, 'Treat spells as powers' - ])), [ - wbEDID, - wbFULL, - wbMDOB, - wbDESC, - {>>> Don't sort <<<} - wbRArray('Words of Power', - wbStruct(SNAM, '', [ - wbFormIDCk('Word', [WOOP, NULL]), - wbFormIDCk('Spell', [SPEL, NULL]), - wbFloat('Recovery Time') - ]) - ) - ]); - - wbRecord(EQUP, 'Equip Type', [ - wbEDID, - wbArray(PNAM, 'Slot Parents', wbFormID('Can Be Equipped'), 0, nil, nil, cpNormal, False), - wbInteger(DATA, 'Use All Parents', itU32, wbEnum(['False', 'True'])) - ]); - - wbRecord(RELA, 'Relationship', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000040} 6, 'Secret' - ])), [ - wbEDID, - wbStruct(DATA, 'Data', [ - wbFormIDCk('Parent', [NPC_, NULL]), - wbFormIDCk('Child', [NPC_, NULL]), - wbInteger('Rank', itU16, wbEnum([ - 'Lover', - 'Ally', - 'Confidant', - 'Friend', - 'Acquaitance', - 'Rival', - 'Foe', - 'Enemy', - 'Archnemesis' - ])), - wbByteArray('Unknown', 1), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Unknown 1', - {0x02} 'Unknown 2', - {0x04} 'Unknown 3', - {0x08} 'Unknown 4', - {0x10} 'Unknown 5', - {0x20} 'Unknown 6', - {0x40} 'Unknown 7', - {0x80} 'Secret' - ])), - wbFormIDCk('Association Type', [ASTP, NULL]) - ]) - ]); - - wbRecord(SCEN, 'Scene', [ - wbEDID, - wbVMADFragmentedSCEN, - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - 'Begin on Quest Start', - 'Stop on Quest End', - 'Unknown 3', - 'Repeat Conditions While True', - 'Interruptible' - ])), - wbRArray('Phases', - wbRStruct('Phase', [ - wbEmpty(HNAM, 'Marker Phase Start'), - wbString(NAM0, 'Name'), - // CTDA before or after next - //wbEmpty(NEXT, 'Marker'), - wbRStruct('Start Conditions', [wbCTDAs], []), - wbEmpty(NEXT, 'Marker'), - wbRStruct('Completion Conditions', [wbCTDAs], []), - {>>> BEGIN leftover from earlier CK versions <<<} - wbRStruct('Unused', [ - wbUnknown(SCHR), - wbUnknown(SCDA), - wbUnknown(SCTX), - wbUnknown(QNAM), - wbUnknown(SCRO) - ], [], cpIgnore, false, wbNeverShow), - wbEmpty(NEXT, 'Marker'), - wbRStruct('Unused', [ - wbUnknown(SCHR), - wbUnknown(SCDA), - wbUnknown(SCTX), - wbUnknown(QNAM), - wbUnknown(SCRO) - ], [], cpIgnore, false, wbNeverShow), - {>>> END leftover from earlier CK versions begin <<<} - wbInteger(WNAM, 'Editor Width', itU32), - wbEmpty(HNAM, 'Marker Phase End') - ], []) - ), - wbRArray('Actors', wbRStruct('Actor', [ - wbInteger(ALID, 'Actor ID', itU32), - wbInteger(LNAM, 'Flags', itU32, wbFlags([ - 'No Player Activation', - 'Optional' - ])), - wbInteger(DNAM, 'Behaviour Flags', itU32, wbFlags([ - 'Death Pause (unsused)', - 'Death End', - 'Combat Pause', - 'Combat End', - 'Dialogue Pause', - 'Dialogue End', - 'OBS_COM Pause', - 'OBS_COM End' - ])) - ], [])), - wbRArray('Actions', wbRStruct('Action', [ - wbInteger(ANAM, 'Type', itU16, wbEnum([ - 'Dialogue', - 'Package', - 'Timer' - ])), - wbString(NAM0, 'Name'), - wbInteger(ALID, 'Actor ID', itS32), - wbUnknown(LNAM), - wbInteger(INAM, 'Index', itU32), - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - {0x00000001} 'Unknown 1', - {0x00000002} 'Unknown 2', - {0x00000004} 'Unknown 3', - {0x00000008} 'Unknown 4', - {0x00000010} 'Unknown 5', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unknown 7', - {0x00000080} 'Unknown 8', - {0x00000100} 'Unknown 9', - {0x00000200} 'Unknown 10', - {0x00000400} 'Unknown 11', - {0x00000800} 'Unknown 12', - {0x00001000} 'Unknown 13', - {0x00002000} 'Unknown 14', - {0x00004000} 'Unknown 15', - {0x00008000} 'Face Target', - {0x00010000} 'Looping', - {0x00020000} 'Headtrack Player' - ])), - wbInteger(SNAM, 'Start Phase', itU32), - wbInteger(ENAM, 'End Phase', itU32), - wbFloat(SNAM, 'Timer Seconds'), - wbRArray('Packages', wbFormIDCk(PNAM, 'Package', [PACK])), - wbFormIDCk(DATA, 'Topic', [DIAL, NULL]), - wbInteger(HTID, 'Headtrack Actor ID', itS32), - wbFloat(DMAX, 'Looping - Max'), - wbFloat(DMIN, 'Looping - Min'), - wbInteger(DEMO, 'Emotion Type', itU32, wbEmotionTypeEnum), - wbInteger(DEVA, 'Emotion Value', itU32), - {>>> BEGIN leftover from earlier CK versions <<<} - wbRStruct('Unused', [ - wbUnknown(SCHR), - wbUnknown(SCDA), - wbUnknown(SCTX), - wbUnknown(QNAM), - wbUnknown(SCRO) - ], [], cpIgnore, false, wbNeverShow), - {>>> END leftover from earlier CK versions <<<} - wbEmpty(ANAM, 'End Marker') - ], [])), - {>>> BEGIN leftover from earlier CK versions <<<} - wbRStruct('Unused', [ - wbUnknown(SCHR), - wbUnknown(SCDA), - wbUnknown(SCTX), - wbUnknown(QNAM), - wbUnknown(SCRO) - ], [], cpIgnore, false, wbNeverShow), - wbEmpty(NEXT, 'Marker'), - wbRStruct('Unused', [ - wbUnknown(SCHR), - wbUnknown(SCDA), - wbUnknown(SCTX), - wbUnknown(QNAM), - wbUnknown(SCRO) - ], [], cpIgnore, false, wbNeverShow), - {>>> END leftover from earlier CK versions <<<} - wbFormIDCk(PNAM, 'Quest', [QUST]), - wbInteger(INAM, 'Last Action Index', itU32), - wbUnknown(VNAM), - wbCTDAs - ]); - - wbRecord(ASTP, 'Association Type', [ - wbEDID, - wbString(MPRT, 'Male Parent Title'), - wbString(FPRT, 'Female Parent Title'), - wbString(MCHT, 'Male Child Title'), - wbString(FCHT, 'Female Child Title'), - wbInteger(DATA, 'Flags', itU32, wbFlags([ - 'Family Association' - ])) - ]); -end; - -procedure DefineTES5k; -begin - - wbRecord(OTFT, 'Outfit', [ - wbEDID, - wbArrayS(INAM, 'Items', wbFormIDCk('Item', [ARMO, LVLI])) - ]); - - wbRecord(ARTO, 'Art Object', [ - wbEDID, - wbOBNDReq, - wbMODL, - wbInteger(DNAM, 'Art Type', itU32, wbEnum([ - 'Magic Casting', - 'Magic Hit Effect', - 'Enchantment Effect' - ])) - ]); - - wbRecord(MATO, 'Material Object', [ - wbEDID, - wbMODL, - wbRArray('Property Data', - wbByteArray(DNAM, 'Data', 0, cpIgnore, False, False, wbNeverShow) - ), - IsSSE( - wbStruct(DATA, 'Directional Material Data', [ - wbFloat('Falloff Scale'), - wbFloat('Falloff Bias'), - wbFloat('Noise UV Scale'), - wbFloat('Material UV Scale'), - wbStruct('Projection Vector', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbFloat('Normal Dampener'), - wbFloatColors('Single Pass Color'), - wbInteger('Flags', itU32, wbFlags(['Single Pass'])), - // SSE - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Snow' - ])), - wbByteArray('Unused', 3, cpIgnore) - ], cpNormal, True, nil, 5), - wbStruct(DATA, 'Directional Material Data', [ - wbFloat('Falloff Scale'), - wbFloat('Falloff Bias'), - wbFloat('Noise UV Scale'), - wbFloat('Material UV Scale'), - wbStruct('Projection Vector', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbFloat('Normal Dampener'), - wbFloatColors('Single Pass Color'), - wbInteger('Flags', itU32, wbFlags(['Single Pass'])) - ], cpNormal, True, nil, 5) - ) - ]); - - wbRecord(MOVT, 'Movement Type', [ - wbEDID, - wbString(MNAM, 'Name'), - wbStruct(SPED, 'Default Data', [ - wbFloat('Left Walk'), - wbFloat('Left Run'), - wbFloat('Right Walk'), - wbFloat('Right Run'), - wbFloat('Forward Walk'), - wbFloat('Forward Run'), - wbFloat('Back Walk'), - wbFloat('Back Run'), - wbFloat('Rotate in Place Walk', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Rotate in Place Run', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize), - wbFloat('Rotate while Moving Run', cpNormal, True, wbRotationFactor, wbRotationScale, nil, RadiansNormalize) - ], cpNormal, True, nil, 10), - wbStruct(INAM, 'Anim Change Thresholds', [ - wbFloat('Directional', cpNormal, True, 180/Pi), - wbFloat('Movement Speed'), - wbFloat('Rotation Speed', cpNormal, True, 180/Pi) - ]) - ]); - - wbRecord(SNDR, 'Sound Descriptor', [ - wbEDID, - wbUnknown(CNAM), - wbFormID(GNAM, 'Category'), - wbFormIDCk(SNAM, 'Alternate Sound For', [SNDR, NULL]), - wbRArray('Sounds', - wbRStruct('Sound Files', [ - wbString(ANAM, 'File Name') - ],[]) - ), - wbFormIDCk(ONAM, 'Output Model', [SOPM, NULL]), - wbLString(FNAM, 'String', 0, cpIgnore), - wbCTDAs, - wbStruct(LNAM, 'Values', [ - wbByteArray('Unknown', 1), - wbInteger('Looping', itU8, wbEnum([], [ - $00 , 'None', - $08 , 'Loop', - $10 , 'Envelope Fast', - $20 , 'Envelope Slow' - ])), - wbByteArray('Unknown', 1), - wbInteger('Rumble Send Value = (Small / 7) + ((Big / 7) * 16)', itU8) - ]), - wbStruct(BNAM, 'Values', [ - wbInteger('% Frequency Shift', itS8), - wbInteger('% Frequency Variance', itS8), - wbInteger('Priority', itU8), - wbInteger('db Variance', itU8), - wbInteger('Static Attenuation (db)', itU16, wbDiv(100)) - ]) - ]); - - wbRecord(DUAL, 'Dual Cast Data', [ - wbEDID, - wbOBNDReq, - wbStruct(DATA, 'Data', [ - wbFormIDCk('Projectile', [PROJ, NULL]), - wbFormIDCk('Explosion', [EXPL, NULL]), - wbFormIDCk('Effect Shader', [EFSH, NULL]), - wbFormIDCk('Hit Effect Art', [ARTO, NULL]), - wbFormIDCk('Impact Data Set', [IPDS, NULL]), - wbInteger('Inherit Scale', itU32, wbFlags([ - 'Hit Effect Art', - 'Projectile', - 'Explosion' - ])) - ], cpNormal, True) - ]); - - wbRecord(SNCT, 'Sound Category', [ - wbEDID, - wbFULL, - wbInteger(FNAM, 'Flags', itU32, wbFlags([ - 'Mute When Submerged', - 'Should Appear on Menu' - ]), cpNormal, True), - wbFormIDCk(PNAM, 'Parent', [SNCT]), - wbInteger(VNAM, 'Static Volume Multiplier', itU16, wbDiv(65535)), - wbInteger(UNAM, 'Default Menu Value', itU16, wbDiv(65535)) - ]); - - wbRecord(SOPM, 'Sound Output Model', [ - wbEDID, - wbStruct(NAM1, 'Data', [ - wbInteger('Flags', itU8, wbFlags([ - 'Attenuates With Distance', - 'Allows Rumble' - ])), - wbByteArray('Unknown', 2), - wbInteger('Reverb Send %', itU8) - ]), - wbUnknown(FNAM), // leftover, unused - wbInteger(MNAM, 'Type', itU32, wbEnum([ - 'Uses HRTF', - 'Defined Speaker Output' - ])), - wbUnknown(CNAM), // leftover, unused - wbUnknown(SNAM), // leftover, unused - wbStruct(ONAM, 'Output Values', [ - wbArray('Channels', wbStruct('', [ - wbInteger('L', itU8), - wbInteger('R', itU8), - wbInteger('C', itU8), - wbInteger('LFE', itU8), - wbInteger('RL', itU8), - wbInteger('RR', itU8), - wbInteger('BL', itU8), - wbInteger('BR', itU8) - ]), [ - 'Channel 0', - 'Channel 1', - 'Channel 2? (unused)' - ]) - ]), - wbStruct(ANAM, 'Attenuation Values', [ - wbByteArray('Unknown', 4), - wbFloat('Min Distance'), - wbFloat('Max Distance'), - wbArray('Curve', wbInteger('Value', itU8), 5), - wbByteArray('Unknown') - ]) - ]); - - wbRecord(COLL, 'Collision Layer', [ - wbEDID, - wbDESCReq, - wbInteger(BNAM, 'Index', itU32, nil, cpNormal, True), - wbStruct(FNAM, 'Debug Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbInteger('Unused', itU8) - ], cpNormal, True), - wbInteger(GNAM, 'Flags', itU32, wbFlags([ - {0x00000001} 'Trigger Volume', - {0x00000002} 'Sensor', - {0x00000004} 'Navmesh Obstacle' - ]), cpNormal, True), - wbString(MNAM, 'Name', 0, cpNormal, True), - wbInteger(INTV, 'Interactables Count', itU32, nil, cpNormal, True), - wbArrayS(CNAM, 'Collides With', wbFormIDCk('Forms', [COLL]), 0, cpNormal, False) - ]); - - wbRecord(CLFM, 'Color', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable' - ])), [ - wbEDID, - wbFULL, - wbCNAMReq, - wbInteger(FNAM, 'Playable', itU32, wbEnum(['False', 'True']), cpNormal, True) - ]); -end; - -procedure DefineTES5l; -begin - wbRecord(REVB, 'Reverb Parameters', [ - wbEDID, - wbStruct(DATA, 'Data', [ - wbInteger('Decay Time (ms)', itU16), - wbInteger('HF Reference (Hz)', itU16), - wbInteger('Room Filter', itS8), - wbInteger('Room HF Filter', itS8), - wbInteger('Reflections', itS8), - wbInteger('Reverb Amp', itS8), - wbInteger('Decay HF Ratio', itU8, wbDiv(100)), - wbInteger('Reflect Delay (ms), scaled', itU8), - wbInteger('Reverb Delay (ms)', itU8), - wbInteger('Diffusion %', itU8), - wbInteger('Density %', itU8), - wbInteger('Unknown', itU8) - ], cpNormal, True) - ]); - - wbRecord(GRAS, 'Grass', [ - wbEDID, - wbOBNDReq, - wbMODL, - wbStruct(DATA, '', [ - wbInteger('Density', itU8), - wbInteger('Min Slope', itU8), - wbInteger('Max Slope', itU8), - wbByteArray('Unknown', 1), - wbInteger('Units From Water', itU16), - wbByteArray('Unknown', 2), - wbInteger('Units From Water Type', itU32, wbEnum([ - 'Above - At Least', - 'Above - At Most', - 'Below - At Least', - 'Below - At Most', - 'Either - At Least', - 'Either - At Most', - 'Either - At Most Above', - 'Either - At Most Below' - ])), - wbFloat('Position Range'), - wbFloat('Height Range'), - wbFloat('Color Range'), - wbFloat('Wave Period'), - wbInteger('Flags', itU8, wbFlags([ - 'Vertex Lighting', - 'Uniform Scaling', - 'Fit to Slope' - ])), - wbByteArray('Unknown', 3) - ], cpNormal, True) - ]); - - wbRecord(IDLE, 'Idle Animation', [ - wbEDID, - wbCTDAs, - wbString(DNAM, 'Filename'), - wbString(ENAM, 'Animation Event'), - wbArray(ANAM, 'Related Idle Animations', wbFormIDCk('Related Idle Animation', [AACT, IDLE, NULL]), - ['Parent', 'Previous Sibling'], cpNormal, True), - wbStruct(DATA, 'Data (unused)', [ - wbStruct('Looping seconds (both 255 forever)', [ - wbInteger('Min', itU8), - wbInteger('Max', itU8) - ]), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Parent', - {0x02} 'Sequence', - {0x04} 'No Attacking', - {0x04} 'Blocking' - ], True)), - wbInteger('Animation Group Section', itU8{, wbIdleAnam}), - wbInteger('Replay Delay', itU16) - ], cpIgnore, True) - ]); - - wbRecord(INFO, 'Dialog response', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00002000} 13, 'Actor Changed' - ])), [ - wbEDID, - wbVMADFragmentedINFO, - wbUnknown(DATA), - wbStruct(ENAM, 'Response flags', [ - wbInteger('Flags', itU16, wbFlags([ - {0x0001} 'Goodbye', - {0x0002} 'Random', - {0x0004} 'Say once', - {0x0008} 'Unknown 4', - {0x0010} 'Unknown 5', - {0x0020} 'Random end', - {0x0040} 'Invisible continue', - {0x0080} 'Walk Away', - {0x0100} 'Walk Away Invisible in Menu', - {0x0200} 'Force subtitle', - {0x0400} 'Can move while greeting', - {0x0800} 'No LIP File', - {0x1000} 'Requires post-processing', - {0x2000} 'Audio Output Override', - {0x4000} 'Spends favor points', - {0x8000} 'Unknown 16' - ])), - wbInteger('Reset Hours', itU16, wbDiv(2730)) - ]), - wbFormIDCk(TPIC, 'Topic', [DIAL]), - wbFormIDCkNoReach(PNAM, 'Previous INFO', [INFO, NULL], False, cpBenign), - wbInteger(CNAM, 'Favor Level', itU8, wbEnum([ - 'None', - 'Small', - 'Medium', - 'Large' - ])), - - wbRArray('Link To', wbFormIDCk(TCLT, 'Response', [DIAL, INFO, NULL])), - wbFormID(DNAM, 'Response Data'), - - wbRArray('Responses', wbRStruct('Response', [ - wbStruct(TRDT, 'Response Data', [ - wbInteger('Emotion Type', itU32, wbEmotionTypeEnum), - wbInteger('Emotion Value', itU32), - wbByteArray('Unused', 4), - wbInteger('Response number', itU8), - wbByteArray('Unused', 3), - wbFormIDCk('Sound', [SNDR, NULL]), - wbInteger('Flags', itU8, wbFlags([ - 'Use Emotion Animation' - ])), - wbByteArray('Unused', 3) - ]), - wbLStringKC(NAM1, 'Response Text', 0, cpTranslate), - wbString(NAM2, 'Script Notes'), - wbString(NAM3, 'Edits'), - wbFormIDCk(SNAM, 'Idle Animations: Speaker', [IDLE]), - wbFormIDCk(LNAM, 'Idle Animations: Listener', [IDLE]) - ], [])), - - wbCTDAs, - - {>>> BEGIN leftover from earlier CK versions <<<} - wbRArray('Unknown', - wbRStruct('Unknown', [ - wbUnknown(SCHR), - wbFormID(QNAM, 'Unknown'), - wbEmpty(NEXT, 'Marker') - ], []), cpIgnore, false, nil, nil, wbNeverShow - ), - {>>> END leftover from earlier CK versions <<<} - - wbLString(RNAM, 'Prompt', 0, cpTranslate), - wbFormIDCk(ANAM, 'Speaker', [NPC_]), - wbFormIDCk(TWAT, 'Walk Away Topic', [DIAL]), - wbFormIDCk(ONAM, 'Audio Output Override', [SOPM]) - ], False, wbINFOAddInfo, cpNormal, False, nil{wbINFOAfterLoad}); - - wbRecord(INGR, 'Ingredient', [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbKSIZ, - wbKWDAs, - wbMODL, - wbICON, - wbDEST, - wbETYP, - wbYNAM, - wbZNAM, - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True), - wbStruct(ENIT, 'Effect Data', [ - wbInteger('Ingredient Value', itS32), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'No auto-calculation', - {0x00000002} 'Food item', - {0x00000004} 'Unknown 3', - {0x00000008} 'Unknown 4', - {0x00000010} 'Unknown 5', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unknown 7', - {0x00000080} 'Unknown 8', - {0x00000100} 'References Persist' - ])) - ], cpNormal, True), - wbEffectsReq - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbRecord(KEYM, 'Key', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULLReq, - wbMODL, - wbICON, - wbDEST, - wbYNAM, - wbZNAM, - wbKSIZ, - wbKWDAs, - wbStruct(DATA, '', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True) - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbQuadrantEnum := wbEnum([ - {0} 'Bottom Left', - {1} 'Bottom Right', - {2} 'Top Left', - {3} 'Top Right' - ]); - - if wbSimpleRecords then begin - - wbRecord(LAND, 'Landscape', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00040000} 18, 'Compressed' - ]), [18]), [ - wbByteArray(DATA, 'Unknown'), - wbByteArray(VNML, 'Vertex Normals'), - wbByteArray(VHGT, 'Vertext Height Map'), - wbByteArray(VCLR, 'Vertex Colours'), - - wbRArrayS('Layers', wbRUnion('Layer', [ - wbRStructSK([0],'Base Layer', [ - wbStructSK(BTXT, [1, 3], 'Base Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unknown', 1), - wbInteger('Layer', itS16) - ]) - ], []), - wbRStructSK([0],'Alpha Layer', [ - wbStructSK(ATXT, [1, 3], 'Alpha Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unknown', 1), - wbInteger('Layer', itS16) - ]), - wbByteArray(VTXT, 'Alpha Layer Data') - ], []) - ], [])), - - wbArray(VTEX, 'Textures', wbFormIDCk('Texture', [LTEX, NULL])) - ]); - - end else begin - - wbRecord(LAND, 'Landscape', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00040000} 18, 'Compressed' - ]), [18]), [ - wbByteArray(DATA, 'Unknown'), - wbArray(VNML, 'Vertex Normals', wbStruct('Row', [ - wbArray('Columns', wbStruct('Column', [ - wbInteger('X', itU8), - wbInteger('Y', itU8), - wbInteger('Z', itU8) - ]), 33) - ]), 33), - wbStruct(VHGT, 'Vertext Height Map', [ - wbFloat('Offset'), - wbArray('Rows', wbStruct('Row', [ - wbArray('Columns', wbInteger('Column', itU8), 33) - ]), 33), - wbByteArray('Unknown', 3) - ]), - wbArray(VCLR, 'Vertex Colours', wbStruct('Row', [ - wbArray('Columns', wbStruct('Column', [ - wbInteger('X', itU8), - wbInteger('Y', itU8), - wbInteger('Z', itU8) - ]), 33) - ]), 33), - - wbRArrayS('Layers', wbRUnion('Layer', [ - wbRStructSK([0],'Base Layer', [ - wbStructSK(BTXT, [1, 3], 'Base Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unknown', 1), - wbInteger('Layer', itS16) - ]) - ], []), - wbRStructSK([0],'Alpha Layer', [ - wbStructSK(ATXT, [1, 3], 'Alpha Layer Header', [ - wbFormIDCk('Texture', [LTEX, NULL]), - wbInteger('Quadrant', itU8, wbQuadrantEnum), - wbByteArray('Unknown', 1), - wbInteger('Layer', itS16) - ]), - wbArrayS(VTXT, 'Alpha Layer Data', wbStructSK([0], 'Cell', [ - wbInteger('Position', itU16, wbAtxtPosition), - wbByteArray('Unknown', 2), - wbFloat('Opacity') - ])) - ], []) - ], [])), - - wbArray(VTEX, 'Textures', wbFormIDCk('Texture', [LTEX, NULL])) - ]); - - end; - - wbRecord(LIGH, 'Light', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00010000} 16, 'Random Anim Start', - {0x00020000} 17, 'Portal-strict', - {0x02000000} 25, 'Obstacle' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbMODL, - wbDEST, - wbFULL, - wbICON, - wbStruct(DATA, '', [ - wbInteger('Time', itS32), - wbInteger('Radius', itU32), - wbByteColors, - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Dynamic', - {0x00000002} 'Can be Carried', - {0x00000004} 'Negative', - {0x00000008} 'Flicker', - {0x00000010} 'Unknown', - {0x00000020} 'Off By Default', - {0x00000040} 'Flicker Slow', - {0x00000080} 'Pulse', - {0x00000100} 'Pulse Slow', - {0x00000200} 'Spot Light', - {0x00000400} 'Shadow Spotlight', - {0x00000800} 'Shadow Hemisphere', - {0x00001000} 'Shadow Omnidirectional', - {0x00002000} 'Portal-strict' - ])), - wbFloat('Falloff Exponent'), - wbFloat('FOV'), - wbFloat('Near Clip'), - wbStruct('Flicker Effect', [ - wbFloat('Period', cpNormal, False, 0.01), - wbFloat('Intensity Amplitude'), - wbFloat('Movement Amplitude') - ]), - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True), - wbFloat(FNAM, 'Fade value', cpNormal, True), - wbFormIDCk(SNAM, 'Sound', [SNDR]) - ], False, nil, cpNormal, False, wbLIGHAfterLoad); -end; - -procedure DefineTES5m; -begin - - wbRecord(LSCR, 'Load Screen', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000400} 10, 'Displays In Main Menu' - ])), [ - wbEDID, - wbICON, - wbDESCReq, - wbCTDAs, - wbFormIDCk(NNAM, 'Loading Screen NIF', [STAT, NULL], False, cpNormal, True), - wbFloat(SNAM, 'Initial Scale'), - wbStruct(RNAM, 'Initial Rotation', [ - wbInteger('X', itS16), - wbInteger('Y', itS16), - wbInteger('Z', itS16) - ]), - wbStruct(ONAM, 'Rotation Offset Constraints', [ - wbInteger('Min', itS16), - wbInteger('Max', itS16) - ]), - wbStruct(XNAM, 'Initial Translation Offset', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbString(MOD2, 'Camera Path', 0, cpNormal, False) - ]); - - wbRecord(LTEX, 'Landscape Texture', [ - wbEDID, - wbFormIDCk(TNAM, 'Texture Set', [TXST], False, cpNormal, False), - wbFormIDCk(MNAM, 'Material Type', [MATT, NULL], False, cpNormal, True), - wbStruct(HNAM, 'Havok Data', [ - wbInteger('Friction', itU8), - wbInteger('Restitution', itU8) - ], cpNormal, True), - wbInteger(SNAM, 'Texture Specular Exponent', itU8, nil, cpNormal, True), - wbRArrayS('Grasses', wbFormIDCk(GNAM, 'Grass', [GRAS])), - // SSE - wbInteger(INAM, IsSSE('Flags', 'Unused'), itU32, wbFlags([ - {0x01} 'Is Snow' - ])) - ]); - - wbRecord(LVLN, 'Leveled NPC', [ - wbEDID, - wbOBNDReq, - wbLVLD, - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count' - ]), cpNormal, True), - wbFormIDCk(LVLG, 'Global', [GLOB]), - wbLLCT, - wbRArrayS('Leveled List Entries', - wbRStructExSK([0], [1], 'Leveled List Entry', [ - wbStructExSK(LVLO , [0, 2], [3], 'Base Data', [ - wbInteger('Level', itS16), - wbByteArray('Unknown', 2, cpIgnore, false, wbNeverShow), - wbFormIDCk('Reference', [NPC_, LVLN]), - wbInteger('Count', itS16), - wbByteArray('Unknown', 2, cpIgnore, false, wbNeverShow) - ]), - wbCOED - ], []), cpNormal, False, nil, wbLVLOsAfterSet), - wbMODL - ], False, nil, cpNormal, False, nil, wbLLEAfterSet); - - wbRecord(LVLI, 'Leveled Item', [ - wbEDID, - wbOBNDReq, - wbLVLD, - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count', - {0x04} 'Use All', - {0x08} 'Special Loot' - ]), cpNormal, True), - wbFormIDCk(LVLG, 'Global', [GLOB]), - wbLLCT, - wbRArrayS('Leveled List Entries', - wbRStructExSK([0], [1], 'Leveled List Entry', [ - wbStructExSK(LVLO , [0, 2], [3], 'Base Data', [ - wbInteger('Level', itU16), - wbByteArray('Unknown', 2, cpIgnore, false, wbNeverShow), - wbFormIDCk('Reference', [ARMO, AMMO, APPA, MISC, WEAP, BOOK, LVLI, KEYM, ALCH, LIGH, INGR, SLGM, SCRL]), - wbInteger('Count', itU16), - wbByteArray('Unknown', 2, cpIgnore, false, wbNeverShow) - ]), - wbCOED - ], []), cpNormal, False, nil, wbLVLOsAfterSet - ) - ], False, nil, cpNormal, False, nil, wbLLEAfterSet); - - wbRecord(LVSP, 'Leveled Spell', [ - wbEDID, - wbOBNDReq, - wbLVLD, - wbInteger(LVLF, 'Flags', itU8, wbFlags([ - {0x01} 'Calculate from all levels <= player''s level', - {0x02} 'Calculate for each item in count', - {0x04} 'Use All Spells' - ]), cpNormal, True), - wbLLCT, - wbRArrayS('Leveled List Entries', - wbRStructSK([0], 'Leveled List Entry', [ - wbStructExSK(LVLO , [0, 2], [3], 'Base Data', [ - wbInteger('Level', itU16), - wbByteArray('Unknown', 2, cpIgnore, false, wbNeverShow), - wbFormIDCk('Reference', [SPEL, LVSP]), - wbInteger('Count', itU16), - wbByteArray('Unknown', 2, cpIgnore, false, wbNeverShow) - ]) - ], []), cpNormal, False, nil, wbLVLOsAfterSet - ) - ], False, nil, cpNormal, False, nil, wbLLEAfterSet); - - wbMGEFType := wbInteger('Archtype', itU32, wbEnum([ - {00} 'Value Modifier', - {01} 'Script', - {02} 'Dispel', - {03} 'Cure Disease', - {04} 'Absorb', - {05} 'Dual Value Modifier', - {06} 'Calm', - {07} 'Demoralize', - {08} 'Frenzy', - {09} 'Disarm', - {10} 'Command Summoned', - {11} 'Invisibility', - {12} 'Light', - {13} 'Unknown 13', - {14} 'Unknown 14', - {15} 'Lock', - {16} 'Open', - {17} 'Bound Weapon', - {18} 'Summon Creature', - {19} 'Detect Life', - {20} 'Telekinesis', - {21} 'Paralysis', - {22} 'Reanimate', - {23} 'Soul Trap', - {24} 'Turn Undead', - {25} 'Guide', - {26} 'Werewolf Feed', - {27} 'Cure Paralysis', - {28} 'Cure Addiction', - {29} 'Cure Poison', - {30} 'Concussion', - {31} 'Value and Parts', - {32} 'Accumulate Magnitude', - {33} 'Stagger', - {34} 'Peak Value Modifier', - {35} 'Cloak', - {36} 'Werewolf', - {37} 'Slow Time', - {38} 'Rally', - {39} 'Enhance Weapon', - {40} 'Spawn Hazard', - {41} 'Etherealize', - {42} 'Banish', - {43} 'Spawn Scripted Ref', - {44} 'Disguise', - {45} 'Grab Actor', - {46} 'Vampire Lord' - ]), cpNormal, False, nil, wbMGEFArchtypeAfterSet); - - wbMGEFData := wbRStruct('Magic Effect Data', [ - wbStruct(DATA, 'Data', [ - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Hostile', - {0x00000002} 'Recover', - {0x00000004} 'Detrimental', - {0x00000008} 'Snap to Navmesh', - {0x00000010} 'No Hit Event', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unknown 7', - {0x00000080} 'Unknown 8', - {0x00000100} 'Dispel with Keywords', - {0x00000200} 'No Duration', - {0x00000400} 'No Magnitude', - {0x00000800} 'No Area', - {0x00001000} 'FX Persist', - {0x00002000} 'Unknown 14', - {0x00004000} 'Gory Visuals', - {0x00008000} 'Hide in UI', - {0x00010000} 'Unknown 17', - {0x00020000} 'No Recast', - {0x00040000} 'Unknown 19', - {0x00080000} 'Unknown 20', - {0x00100000} 'Unknown 21', - {0x00200000} 'Power Affects Magnitude', - {0x00400000} 'Power Affects Duration', - {0x00800000} 'Unknown 24', - {0x01000000} 'Unknown 25', - {0x02000000} 'Unknown 26', - {0x04000000} 'Painless', - {0x08000000} 'No Hit Effect', - {0x10000000} 'No Death Dispel', - {0x20000000} 'Unknown 30', - {0x40000000} 'Unknown 31', - {0x80000000} 'Unknown 32' - ])), - wbFloat('Base Cost'), - wbUnion('Assoc. Item', wbMGEFAssocItemDecider, [ - wbFormID('Unused', cpIgnore), - wbFormIDCk('Assoc. Item', [LIGH, NULL]), - wbFormIDCk('Assoc. Item', [WEAP, ARMO, NULL]), - wbFormIDCk('Assoc. Item', [NPC_, NULL]), - wbFormIDCk('Assoc. Item', [HAZD, NULL]), - wbFormIDCk('Assoc. Item', [SPEL, NULL]), - wbFormIDCk('Assoc. Item', [RACE, NULL]), - wbFormIDCk('Assoc. Item', [ENCH, NULL]), - wbFormIDCk('Assoc. Item', [KYWD, NULL]) - ], cpNormal, False, nil, wbMGEFAssocItemAfterSet), - wbInteger('Magic Skill', itS32, wbActorValueEnum), - wbInteger('Resist Value', itS32, wbActorValueEnum), - wbInteger('Counter Effect count', itU16), - wbByteArray('Unused', 2), - wbFormIDCk('Casting Light', [LIGH, NULL]), - wbFloat('Taper Weight'), - wbFormIDCk('Hit Shader', [EFSH, NULL]), - wbFormIDCk('Enchant Shader', [EFSH, NULL]), - wbInteger('Minimum Skill Level', itU32), - wbStruct('Spellmaking', [ - wbInteger('Area', itU32), - wbFloat('Casting Time') - ]), - wbFloat('Taper Curve'), - wbFloat('Taper Duration'), - wbFloat('Second AV Weight', cpNormal, False, nil, wbMGEFAV2WeightAfterSet), - wbMGEFType, - wbActorValue, - wbFormIDCk('Projectile', [PROJ, NULL]), - wbFormIDCk('Explosion', [EXPL, NULL]), - wbInteger('Casting Type', itU32, wbCastEnum), - wbInteger('Delivery', itU32, wbTargetEnum), - wbInteger('Second Actor Value', itS32, wbActorValueEnum), - wbFormIDCk('Casting Art', [ARTO, NULL]), - wbFormIDCk('Hit Effect Art', [ARTO, NULL]), - wbFormIDCk('Impact Data', [IPDS, NULL]), - wbFloat('Skill Usage Multiplier'), - wbStruct('Dual Casting', [ - wbFormIDCk('Art', [DUAL, NULL]), - wbFloat('Scale') - ]), - wbFormIDCk('Enchant Art', [ARTO, NULL]), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbFormIDCk('Equip Ability', [SPEL, NULL]), - wbFormIDCk('Image Space Modifier', [IMAD, NULL]), - wbFormIDCk('Perk to Apply', [PERK, NULL]), - wbInteger('Casting Sound Level', itU32, wbSoundLevelEnum), - wbStruct('Script Effect AI', [ - wbFloat('Score'), - wbFloat('Delay Time') - ]) - ], cpNormal, True) - ], []); - - wbRecord(MGEF, 'Magic Effect', [ - wbEDID, - wbVMAD, - wbFULL, - wbMDOB, - wbKSIZ, - wbKWDAs, - wbMGEFData, - wbRArrayS('Counter Effects', wbFormIDCk(ESCE, 'Effect', [MGEF]), cpNormal, False, nil, wbCounterEffectsAfterSet), - wbArray(SNDD, 'Sounds', wbStruct('', [ - wbInteger('Type', itU32, wbEnum([ - 'Sheathe/Draw', - 'Charge', - 'Ready', - 'Release', - 'Concentration Cast Loop', - 'On Hit' - ])), - wbFormIDCk('Sound', [SNDR]) - ])), - wbLStringKC(DNAM, 'Magic Item Description', 0, cpTranslate), - wbCTDAs - ], False, nil, cpNormal, False, nil {wbMGEFAfterLoad}, wbMGEFAfterSet); - - wbRecord(MISC, 'Misc. Item', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbDEST, - wbYNAM, - wbZNAM, - wbKSIZ, - wbKWDAs, - wbStruct(DATA, 'Data', [ - wbInteger('Value', itS32), - wbFloat('Weight') - ], cpNormal, True) - ], False, nil, cpNormal, False, wbRemoveEmptyKWDA, wbKeywordsAfterSet); - - wbRecord(APPA, 'Alchemical Apparatus', [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbDEST, - wbYNAM, - wbZNAM, - wbInteger(QUAL, 'Quality', itS32, wbEnum([], [ - 0, 'Novice', - 1, 'Apprentice', - 2, 'Journeyman', - 3, 'Expert', - 4, 'Master' - ])), - wbDESC, - wbStruct(DATA, 'Data', [ - wbInteger('Value', itU32), - wbFloat('Weight') - ]) - ]); - - wbRecord(COBJ, 'Constructible Object', [ - wbEDID, - wbCOCT, - wbCNTOs, - wbCTDAs, - wbFormID(CNAM, 'Created Object'), - wbFormIDCk(BNAM, 'Workbench Keyword', [KYWD]), - wbInteger(NAM1, 'Created Object Count', itU16) - ], False, nil, cpNormal, False, nil, wbContainerAfterSet); - - wbRecord(NPC_, 'Non-Player Character (Actor)', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000400} 10, 'Unknown 10', - {0x00040000} 18, 'Compressed', - {0x00080000} 19, 'Unknown 19', - {0x20000000} 29, 'Bleedout Override' - ]), [18]), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbStruct(ACBS, 'Configuration', [ - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Female', - {0x00000002} 'Essential', - {0x00000004} 'Is CharGen Face Preset', - {0x00000008} 'Respawn', - {0x00000010} 'Auto-calc stats', - {0x00000020} 'Unique', - {0x00000040} 'Doesn''t affect stealth meter', - {0x00000080} 'PC Level Mult', - {0x00000100} 'Use Template?', - {0x00000200} 'Unknown 9', - {0x00000400} 'Unknown 10', - {0x00000800} 'Protected', - {0x00001000} 'Unknown 12', - {0x00002000} 'Unknown 13', - {0x00004000} 'Summonable', - {0x00008000} 'Unknown 15', - {0x00010000} 'Doesn''t bleed', - {0x00020000} 'Unknown 17', - {0x00040000} 'Bleedout Override', - {0x00080000} 'Opposite Gender Anims', - {0x00100000} 'Simple Actor', - {0x00200000} 'looped script?', - {0x00400000} 'Unknown 22', - {0x00800000} 'Unknown 23', - {0x01000000} 'Unknown 24', - {0x02000000} 'Unknown 25', - {0x04000000} 'Unknown 26', - {0x08000000} 'Unknown 27', - {0x10000000} 'looped audio?', - {0x20000000} 'Is Ghost', - {0x40000000} 'Unknown 30', - {0x80000000} 'Invulnerable' - ])), - wbInteger('Magicka Offset', itS16, nil, cpNormal, True, nil{wbActorTemplateUseStats}), - wbInteger('Stamina Offset', itS16, nil, cpNormal, False, nil{wbActorTemplateUseAIData}), - wbUnion('Level', wbNPCLevelDecider, [ - wbInteger('Level', itS16, nil, cpNormal, True, nil{wbActorTemplateUseStats}), - wbInteger('Level Mult', itS16, wbDiv(1000), cpNormal, True, nil{wbActorTemplateUseStats}) - ], cpNormal, True, nil{wbActorTemplateUseStats}), - wbInteger('Calc min level', itU16, nil, cpNormal, True, nil{wbActorTemplateUseStats}), - wbInteger('Calc max level', itU16, nil, cpNormal, True, nil{wbActorTemplateUseStats}), - wbInteger('Speed Multiplier', itU16, nil, cpNormal, True, nil{wbActorTemplateUseStats}), - wbInteger('Disposition Base (unused)', itS16, nil, cpIgnore, True, nil{wbActorTemplateUseTraits}), - wbInteger('Template Flags', itU16, wbFlags([ - {0x0001} 'Use Traits', - {0x0002} 'Use Stats', - {0x0004} 'Use Factions', - {0x0008} 'Use Spell List', - {0x0010} 'Use AI Data', - {0x0020} 'Use AI Packages', - {0x0040} 'Use Model/Animation?', - {0x0080} 'Use Base Data', - {0x0100} 'Use Inventory', - {0x0200} 'Use Script', - {0x0400} 'Use Def Pack List', - {0x0800} 'Use Attack Data', - {0x1000} 'Use Keywords' - ])), - wbInteger('Health Offset', itS16, nil, cpNormal, True, nil{wbActorTemplateUseStats}), - wbInteger('Bleedout Override', itU16, nil, cpNormal, True, nil{wbActorTemplateUseStats}) - ], cpNormal, True), - wbRArrayS('Factions', - wbStructSK(SNAM, [0], 'Faction', [ - wbFormIDCk('Faction', [FACT]), - wbInteger('Rank', itS8), - wbByteArray('Unused', 3, cpIgnore) - ]), cpNormal, False, nil, nil, nil{wbActorTemplateUseFactions} - ), - wbFormIDCk(INAM, 'Death item', [LVLI], False, cpNormal, False, nil{wbActorTemplateUseTraits}), - wbFormIDCk(VTCK, 'Voice', [VTYP], False, cpNormal, False, nil{wbActorTemplateUseTraits}), - wbFormIDCk(TPLT, 'Template', [LVLN, NPC_]), - wbFormIDCk(RNAM, 'Race', [RACE], False, cpNormal, True, nil{wbActorTemplateUseTraits}), - wbSPCT, - wbSPLOs, - wbDEST, - wbFormIDCk(WNAM, 'Worn Armor', [ARMO], False, cpNormal, False), - wbFormIDCk(ANAM, 'Far away model', [ARMO], False, cpNormal, False, nil{wbActorTemplateUseTraits}), - wbFormIDCk(ATKR, 'Attack Race', [RACE], False, cpNormal, False), - wbRArrayS('Attacks', wbAttackData), - wbFormIDCk(SPOR, 'Spectator override package list', [FLST], False, cpNormal, False), - wbFormIDCk(OCOR, 'Observe dead body override package list', [FLST], False, cpNormal, False), - wbFormIDCk(GWOR, 'Guard warn override package list', [FLST], False, cpNormal, False), - wbFormIDCk(ECOR, 'Combat override package list', [FLST], False, cpNormal, False), - wbInteger(PRKZ, 'Perk Count', itU32, nil, cpBenign), - wbRArrayS('Perks', - wbStructSK(PRKR, [0], 'Perk', [ - wbFormIDCk('Perk', [PERK]), - wbInteger('Rank', itU8), - wbByteArray('Unused', 3, cpIgnore) - ]), cpNormal, False, nil, wbPRKRsAfterSet - ), - wbCOCT, - wbCNTOs, - wbAIDT, - wbRArray('Packages', wbFormIDCk(PKID, 'Package', [PACK]), cpNormal, False, nil{wbActorTemplateUseAIPackages}), - wbKSIZ, - wbKWDAs, - wbFormIDCk(CNAM, 'Class', [CLAS], False, cpNormal, True), - wbFULL, - wbLString(SHRT, 'Short Name', 0, cpTranslate), - wbByteArray(DATA, 'Marker'), - wbStruct(DNAM, 'Player Skills', [ - wbArray('Skill Values', wbInteger('Skill', itU8), [ - 'OneHanded', - 'TwoHanded', - 'Marksman', - 'Block', - 'Smithing', - 'HeavyArmor', - 'LightArmor', - 'Pickpocket', - 'Lockpicking', - 'Sneak', - 'Alchemy', - 'Speechcraft', - 'Alteration', - 'Conjuration', - 'Destruction', - 'Illusion', - 'Restoration', - 'Enchanting' - ]), - wbArray('Skill Offsets', wbInteger('Skill', itU8), [ - 'OneHanded', - 'TwoHanded', - 'Marksman', - 'Block', - 'Smithing', - 'HeavyArmor', - 'LightArmor', - 'Pickpocket', - 'Lockpicking', - 'Sneak', - 'Alchemy', - 'Speechcraft', - 'Alteration', - 'Conjuration', - 'Destruction', - 'Illusion', - 'Restoration', - 'Enchanting' - ]), - //wbByteArray('Unknown', 4), - wbInteger('Health', itU16), - wbInteger('Magicka', itU16), - wbInteger('Stamina', itU16), - wbByteArray('Unused', 2, cpIgnore), - wbFloat('Far away model distance'), - wbInteger('Geared up weapons', itU8), - wbByteArray('Unused', 3, cpIgnore) - ], cpNormal, False, nil{wbActorTemplateUseStatsAutoCalc}), - wbRArrayS('Head Parts', wbFormIDCk(PNAM, 'Head Part', [HDPT]), cpNormal, False, nil, nil, nil{wbActorTemplateUseModelAnimation}), - wbFormIDCk(HCLF, 'Hair Color', [CLFM], False, cpNormal, False), - wbFormIDCk(ZNAM, 'Combat Style', [CSTY], False, cpNormal, False), - wbFormIDCk(GNAM, 'Gift Filter', [FLST], False, cpNormal, False), - wbUnknown(NAM5, cpNormal, True), - wbFloat(NAM6, 'Height', cpNormal, True), - wbFloat(NAM7, 'Weight', cpNormal, True), - wbInteger(NAM8, 'Sound Level', itU32, wbSoundLevelEnum, cpNormal, True), - wbCSDTs, - // When CSCR exists CSDT, CSDI, CSDC are not present - wbFormIDCk(CSCR, 'Inherits Sounds From', [NPC_], False, cpNormal, False), - wbFormIDCk(DOFT, 'Default outfit', [OTFT], False, cpNormal, False), - wbFormIDCk(SOFT, 'Sleeping outfit', [OTFT], False, cpNormal, False), - wbFormIDCk(DPLT, 'Default Package List', [FLST], False, cpNormal, False), - wbFormIDCk(CRIF, 'Crime faction', [FACT], False, cpNormal, False), - wbFormIDCk(FTST, 'Head texture', [TXST], False, cpNormal, False), - wbStruct(QNAM, 'Texture lighting', [ - wbFloat('Red', cpNormal, True, 255, 0), - wbFloat('Green', cpNormal, True, 255, 0), - wbFloat('Blue', cpNormal, True, 255, 0) - ]), - wbStruct(NAM9, 'Face morph', [ - wbFloat('Nose Long/Short'), - wbFloat('Nose Up/Down'), - wbFloat('Jaw Up/Down'), - wbFloat('Jaw Narrow/Wide'), - wbFloat('Jaw Farward/Back'), - wbFloat('Cheeks Up/Down'), - wbFloat('Cheeks Farward/Back'), - wbFloat('Eyes Up/Down'), - wbFloat('Eyes In/Out'), - wbFloat('Brows Up/Down'), - wbFloat('Brows In/Out'), - wbFloat('Brows Farward/Back'), - wbFloat('Lips Up/Down'), - wbFloat('Lips In/Out'), - wbFloat('Chin Narrow/Wide'), - wbFloat('Chin Up/Down'), - wbFloat('Chin Underbite/Overbite'), - wbFloat('Eyes Farward/Back'), - wbFloat('Unknown') - ], cpNormal, False), - wbStruct(NAMA, 'Face parts', [ - wbInteger('Nose', itU32), - wbInteger('Unknown', itS32), - wbInteger('Eyes', itU32), - wbInteger('Mouth', itU32) - ]), - wbRArrayS('Tint Layers', - wbRStructSK([0], 'Layer', [ - wbInteger(TINI, 'Tint Index', itU16, wbTintLayerToStr, wbStrToInt), - wbStruct(TINC, 'Tint Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbInteger('Alpha', itU8) - ]), - wbInteger(TINV, 'Interpolation Value', itU32, wbDiv(100)), - wbInteger(TIAS, 'Preset', itS16) - ], [])) - ], False, nil, cpNormal, False, wbNPCAfterLoad, wbNPCAfterSet); - - wbObjectTypeEnum := wbEnum([ - ' NONE', - 'Activators', - 'Armor', - 'Books', - 'Clothing', - 'Containers', - 'Doors', - 'Ingredients', - 'Lights', - 'Misc', - 'Flora', - 'Furniture', - 'Weapons: Any', - 'Ammo', - 'NPCs', - 'Creatures', - 'Keys', - 'Alchemy', - 'Food', - ' All: Combat Wearable', - ' All: Wearable', - 'Weapons: Ranged', - 'Weapons: Melee', - 'Weapons: NONE', - 'Actor Effects: Any', - 'Actor Effects: Range Target', - 'Actor Effects: Range Touch', - 'Actor Effects: Range Self', - 'Actors: Any' - ]); - - wbPKDTSpecificFlagsUnused := False; - - wbPKDTFlags := wbFlags([ - {0x00000001} 'Offers Services', - {0x00000002} 'Unknown 2', - {0x00000004} 'Must complete', - {0x00000008} 'Maintain Speed at Goal', - {0x00000010} 'Unknown 5', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unlock doors at package start', - {0x00000080} 'Unlock doors at package end', - {0x00000100} 'Unknown 9', - {0x00000200} 'Continue if PC Near', - {0x00000400} 'Once per day', - {0x00000800} 'Unknown 12', - {0x00001000} 'Unknown 13', - {0x00002000} 'Preferred Speed', - {0x00004000} 'Unknown 15', - {0x00008000} 'Unknown 16', - {0x00010000} 'Unknown 17', - {0x00020000} 'Always Sneak', - {0x00040000} 'Allow Swimming', - {0x00080000} 'Unknown 20', - {0x00100000} 'Ignore Combat', - {0x00200000} 'Weapons Unequipped', - {0x00400000} 'Unknown 23', - {0x00800000} 'Weapon Drawn', - {0x01000000} 'Unknown 25', - {0x02000000} 'Unknown 26', - {0x04000000} 'Unknown 27', - {0x08000000} 'No Combat Alert', - {0x10000000} 'Unknown 29', - {0x20000000} 'Wear Sleep Outfit (unused)', - {0x40000000} 'Unknown 31', - {0x80000000} 'Unknown 32' - ], [29]); - - wbPKDTInterruptFlags := wbFlags([ - {0x0001}'Hellos to player', - {0x0002}'Random conversations', - {0x0004}'Observe combat behavior', - {0x0008}'Greet corpse behavior', - {0x0010}'Reaction to player actions', - {0x0020}'Friendly fire comments', - {0x0040}'Aggro Radius Behavior', - {0x0080}'Allow Idle Chatter', - {0x0100}'Unknown 9', - {0x0200}'World Interactions', - {0x0400}'Unknown 11', - {0x0800}'Unknown 12', - {0x1000}'Unknown 13', - {0x2000}'Unknown 14', - {0x4000}'Unknown 15', - {0x8000}'Unknown 16' - ]); -end; - -procedure DefineTES5n; -begin - - wbUNAMs:= wbRArray('Data Inputs', wbRStruct('Data Input', [ - wbInteger(UNAM, 'Index', itS8), - wbString(BNAM, 'Name'), - wbInteger(PNAM, 'Flags', itU32, wbFlags([ - 'Public' - ])) - ], [])); - - wbRecord(PACK, 'Package', [ - wbEDID, - wbVMADFragmentedPACK, - - wbStruct(PKDT, 'Pack Data', [ - wbInteger('General Flags', itU32, wbPKDTFlags), - wbInteger('Type', itU8, wbEnum ([], [ - 18, 'Package', - 19, 'Package Template' - ])), - wbInteger('Interrupt Override', itU8, wbEnum([ - 'None', - 'Spectator', - 'ObserveDead', - 'GuardWarn', - 'Combat' - ])), - wbInteger('Preferred Speed', itU8, wbEnum([ - 'Walk', - 'Jog', - 'Run', - 'Fast Walk' - ])), - wbByteArray('Unknown', 1), - wbInteger('Interrupt Flags', itU16, wbPKDTInterruptFlags), - wbByteArray('Unknown', 2) - ], cpNormal, True), - - wbStruct(PSDT, 'Schedule', [ - wbInteger('Month', itS8), - wbInteger('Day of week', itS8, wbEnum([ - 'Sunday', - 'Monday', - 'Tuesday', - 'Wednesday', - 'Thursday', - 'Friday', - 'Saturday', - 'Weekdays', - 'Weekends', - 'Monday, Wednesday, Friday', - 'Tuesday, Thursday' - ], [ - -1, 'Any' - ])), - wbInteger('Date', itU8), - wbInteger('Hour', itS8), - wbInteger('Minute', itS8), - wbByteArray('Unused', 3, cpIgnore), - wbInteger('Duration (minutes)', itS32) - ], cpNormal, True), - wbCTDAs, - - wbRStruct('Idle Animations', [ - wbInteger(IDLF, 'Flags', itU8, wbEnum([], [ - 0, 'Unknown', - 8, 'Random', - 9, 'Run in Sequence', - 12, 'Random, Do Once', - 13, 'Run in Sequence, Do Once' - ]), cpNormal, True), - wbStruct(IDLC, '', [ - wbInteger('Animation Count', itU8, nil, cpBenign), - wbByteArray('Unknown', 3) - ], cpNormal, True, nil, 1), - wbFloat(IDLT, 'Idle Timer Setting', cpNormal, True), - wbArray(IDLA, 'Animations', wbFormIDCk('Animation', [IDLE]), 0, nil, wbIDLAsAfterSet, cpNormal, True), - wbByteArray(IDLB, 'Unknown', 4, cpIgnore) - ], [], cpNormal, False, nil, False, nil {cannot be totally removed , wbAnimationsAfterSet}), - - wbFormIDCk(CNAM, 'Combat Style', [CSTY]), - wbFormIDCk(QNAM, 'Owner Quest', [QUST]), - wbStruct(PKCU, 'Counter', [ - wbInteger('Data Input Count', itU32), - wbFormIDCk('Package Template', [PACK, NULL]), - wbInteger('Version Counter (autoincremented)', itU32) - ], cpNormal, True), - - wbRStruct('Package Data', [ - wbRArray('Data Input Values', wbRStruct('Value', [ - wbString(ANAM, 'Type'), - wbUnion(CNAM, 'Value', wbPubPackCNAMDecider, [ - {0} wbByteArray('Unknown'), - {1} wbInteger('Bool', itU8, wbEnum(['False', 'True'])), - {2} wbInteger('Integer', itU32), - {3} wbFloat('Float') - ]), - wbUnknown(BNAM), - wbPDTOs, - wbPLDT, - wbStruct(PTDA, 'Target', [wbTargetData]), - wbUnknown(TPIC) - ], [], cpNormal, False)), - wbUNAMs - ], []), - wbByteArray(XNAM, 'Marker'), - - wbRStruct('Procedure Tree', [ - wbRArray('Branches', wbRStruct('Branch', [ - wbString(ANAM, 'Branch Type'), - wbCITC, - wbCTDAsCount, - wbStruct(PRCB, 'Root', [ - wbInteger('Branch Count', itU32), - wbInteger('Flags', itU32, wbFlags([ - 'Repeat when Complete', - 'Unknown 1' - ])) - ]), - wbString(PNAM, 'Procedure Type'), - wbInteger(FNAM, 'Flags', itU32, wbFlags(['Success Completes Package'])), - wbRArray('Data Input Indexes', wbInteger(PKC2, 'Index', itU8)), - {>>> PFO2 should be single, there is only 1 PACK [00095F46] in Skyrim.esm with 2xPFO2 <<<} - wbRArray('Flags Override', - wbStruct(PFO2, 'Data', [ - wbInteger('Set General Flags', itU32, wbPKDTFlags), - wbInteger('Clear General Flags', itU32, wbPKDTFlags), - wbInteger('Set Interrupt Flags', itU16, wbPKDTInterruptFlags), - wbInteger('Clear Interrupt Flags', itU16, wbPKDTInterruptFlags), - wbInteger('Preferred Speed Override', itU8, wbEnum([ - 'Walk', - 'Jog', - 'Run', - 'Fast Walk' - ])), - wbByteArray('Unknown', 3) - ]) - ), - wbRArray('Unknown', wbUnknown(PFOR), cpIgnore) - ], [], cpNormal, False, nil, False, nil, wbConditionsAfterSet)) - ], []), - wbUNAMs, - wbRStruct('OnBegin', [ - wbEmpty(POBA, 'OnBegin Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - {>>> BEGIN leftover from earlier CK versions <<<} - wbByteArray(SCHR, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(SCTX, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(QNAM, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(TNAM, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - {>>> END leftover from earlier CK versions <<<} - wbPDTOs - ], []), - wbRStruct('OnEnd', [ - wbEmpty(POEA, 'OnEnd Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - {>>> BEGIN leftover from earlier CK versions <<<} - wbByteArray(SCHR, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(SCTX, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(QNAM, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(TNAM, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - {>>> END leftover from earlier CK versions <<<} - wbPDTOs - ], []), - wbRStruct('OnChange', [ - wbEmpty(POCA, 'OnChange Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - {>>> BEGIN leftover from earlier CK versions <<<} - wbByteArray(SCHR, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(SCDA, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(SCTX, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(QNAM, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(TNAM, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - {>>> END leftover from earlier CK versions <<<} - wbPDTOs - ], []) - ], False, nil, cpNormal, False, nil {wbPACKAfterLoad}); - - wbQUSTAliasFlags := - wbStruct(FNAM, 'Alias Flags', [ - wbInteger('Flags', itU16, wbFlags([ - {0x0001}'Reserves Location/Reference', - {0x0002}'Optional', - {0x0004}'Quest Object', - {0x0008}'Allow Reuse in Quest', - {0x0010}'Allow Dead', - {0x0020}'Matching Ref - In Loaded Area', - {0x0040}'Essential', - {0x0080}'Allow Disabled', - {0x0100}'Stores Text', - {0x0200}'Allow Reserved', - {0x0400}'Protected', - {0x0800}'Forced by Aliases?', - {0x1000}'Allow Destroyed', - {0x2000}'Matching Ref - Closest', - {0x4000}'Uses Stored Text', - {0x8000}'Initially Disabled' - ])), - wbInteger('Additional Flags', itU16, wbFlags([ - {0x0001}'Allow Cleared', - {0x0002}'Clear Names When Removed' - ])) - ], cpNormal, False, nil, 1); - - wbRecord(QUST, 'Quest', [ - wbEDID, - wbVMADFragmentedQUST, - wbFULL, - wbStruct(DNAM, 'General', [ - wbInteger('Flags', itU16, wbFlags([ - {0x0001} 'Start Game Enabled', - {0x0002} 'Unknown 2', - {0x0004} 'Unknown 3', - {0x0008} 'Allow repeated stages', - {0x0010} 'Unknown 5', - {0x0020} 'Unknown 6', - {0x0040} 'Unknown 7', - {0x0080} 'Unknown 8', - {0x0100} 'Run Once', - {0x0200} 'Exclude from dialogue export', - {0x0400} 'Warn on alias fill failure', - {0x0800} 'Unknown 12', - {0x1000} 'Unknown 13' - ])), - wbInteger('Priority', itU8), - wbInteger('Form Version', itU8, nil, cpIgnore), - wbByteArray('Unknown', 4), - wbInteger('Type', itU32, wbEnum([ - {0} 'None', - {1} 'Main Quest', - {2} 'Mages'' Guild', - {3} 'Thieves'' Guild', - {4} 'Dark Brotherhood', - {5} 'Companion Quests', - {6} 'Miscellaneous', - {7} 'Daedric', - {8} 'Side Quest', - {9} 'Civil War', - {10} 'DLC01 - Vampire', - {11} 'DLC02 - Dragonborn' - ])) - ]), - wbString(ENAM, 'Event', 4), - wbRArray('Text Display Globals', wbFormIDCk(QTGL, 'Global', [GLOB])), - wbString(FLTR, 'Object Window Filter', 0, cpTranslate), - wbRStruct('Quest Dialogue Conditions', [wbCTDAs], [], cpNormal, False), - wbEmpty(NEXT, 'Marker'), - wbCTDAs, {>>> Unknown, doesn't show up in CK <<<} - wbRArrayS('Stages', wbRStructSK([0], 'Stage', [ - wbStructSK(INDX, [0], 'Stage Index', [ - wbInteger('Stage Index', itU16), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Unknown 1', - {0x02} 'Start Up Stage', - {0x04} 'Shut Down Stage', - {0x08} 'Keep Instance Data From Here On' - ])), - wbInteger('Unknown', itU8) - ]), - wbRArray('Log Entries', wbRStruct('Log Entry', [ - wbInteger(QSDT, 'Stage Flags', itU8, wbFlags([ - {0x01} 'Complete Quest', - {0x02} 'Fail Quest' - ])), - wbCTDAs, - wbLString(CNAM, 'Log Entry', 0, cpTranslate), - wbFormIDCk(NAM0, 'Next Quest', [QUST]), - {>>> BEGIN leftover from earlier CK versions <<<} - wbByteArray(SCHR, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(SCTX, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(QNAM, 'Unused', 0, cpIgnore, false, false, wbNeverShow) - {>>> END leftover from earlier CK versions <<<} - ], [])) - ], [])), - wbRArray('Objectives', wbRStruct('Objective', [ - wbInteger(QOBJ, 'Objective Index', itU16), - wbInteger(FNAM, 'Flags', itU32, wbFlags(['ORed With Previous'])), - wbLString(NNAM, 'Display Text', 0, cpTranslate, True), - wbRArray('Targets', wbRStruct('Target', [ - wbStruct(QSTA, 'Target', [ - wbInteger('Alias', itS32, wbQuestAliasToStr, wbStrToAlias), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Compass Marker Ignores Locks' - ])), - wbByteArray('Unused', 3) - ]), - wbCTDAs - ], [])) - ], [])), - wbByteArray(ANAM, 'Aliases Marker', 4), - wbRArray('Aliases', - wbRUnion('Alias', [ - - // Reference Alias - wbRStruct('Alias', [ - wbInteger(ALST, 'Reference Alias ID', itU32), - wbString(ALID, 'Alias Name'), - wbQUSTAliasFlags, - wbInteger(ALFI, 'Force Into Alias When Filled', itS32, wbQuestAliasToStr, wbStrToAlias), - wbFormIDCk(ALFL, 'Specific Location', [LCTN]), - wbFormID(ALFR, 'Forced Reference'), - wbFormIDCk(ALUA, 'Unique Actor', [NPC_]), - wbRStruct('Location Alias Reference', [ - wbInteger(ALFA, 'Alias', itS32, wbQuestAliasToStr, wbStrToAlias), - wbFormIDCk(KNAM, 'Keyword', [KYWD]), - wbFormIDCk(ALRT, 'Ref Type', [LCRT]) - ], []), - wbRStruct('External Alias Reference', [ - wbFormIDCk(ALEQ, 'Quest', [QUST]), - wbInteger(ALEA, 'Alias', itS32, wbQuestExternalAliasToStr, wbStrToAlias) - ], []), - wbRStruct('Create Reference to Object', [ - wbFormID(ALCO, 'Object'), - wbStruct(ALCA, 'Alias', [ - wbInteger('Alias', itS16, wbQuestAliasToStr, wbStrToAlias), - wbInteger('Create', itU16, wbEnum([] ,[ - $0000, 'At', - $8000, 'In' - ])) - ]), - wbInteger(ALCL, 'Level', itU32, wbEnum([ - 'Easy', - 'Medium', - 'Hard', - 'Very Hard', - 'None' - ])) - ], []), - wbRStruct('Find Matching Reference Near Alias', [ - wbInteger(ALNA, 'Alias', itS32, wbQuestAliasToStr, wbStrToAlias), - wbInteger(ALNT, 'Type', itU32, wbEnum([ - 'Linked Ref Child' - ])) - ], []), - wbRStruct('Find Matching Reference From Event', [ - wbString(ALFE, 'From Event', 4), - wbByteArray(ALFD, 'Event Data') - ], []), - wbCTDAs, - wbKSIZ, - wbKWDAs, - wbCOCT, - wbCNTOs, - wbFormIDCk(SPOR, 'Spectator override package list', [FLST], False, cpNormal, False), - wbFormIDCk(OCOR, 'Observe dead body override package list', [FLST], False, cpNormal, False), - wbFormIDCk(GWOR, 'Guard warn override package list', [FLST], False, cpNormal, False), - wbFormIDCk(ECOR, 'Combat override package list', [FLST], False, cpNormal, False), - wbFormIDCk(ALDN, 'Display Name', [MESG]), - wbRArray('Alias Spells', wbFormIDCk(ALSP, 'Spell', [SPEL])), - wbRArray('Alias Factions', wbFormIDCk(ALFC, 'Faction', [FACT])), - wbRArray('Alias Package Data', wbFormIDCk(ALPC, 'Package', [PACK])), - wbFormIDCk(VTCK, 'Voice Types', [NPC_, FLST, NULL]), - wbEmpty(ALED, 'Alias End', cpNormal, True) - ], [], cpNormal, False, nil, False, nil, wbContainerAfterSet), - - // Location Alias - wbRStruct('Alias', [ - wbInteger(ALLS, 'Location Alias ID', itU32), - wbString(ALID, 'Alias Name'), - wbQUSTAliasFlags, - wbInteger(ALFI, 'Force Into Alias When Filled', itS32, wbQuestAliasToStr, wbStrToAlias), - wbFormIDCk(ALFL, 'Specific Location', [LCTN]), - wbFormID(ALFR, 'Forced Reference'), - wbFormIDCk(ALUA, 'Unique Actor', [NPC_]), - wbRStruct('Location Alias Reference', [ - wbInteger(ALFA, 'Alias', itS32, wbQuestAliasToStr, wbStrToAlias), - wbFormIDCk(KNAM, 'Keyword', [KYWD]), - wbFormIDCk(ALRT, 'Ref Type', [LCRT]) - ], []), - wbRStruct('External Alias Reference', [ - wbFormIDCk(ALEQ, 'Quest', [QUST]), - wbInteger(ALEA, 'Alias', itS32, wbQuestExternalAliasToStr, wbStrToAlias) - ], []), - wbRStruct('Create Reference to Object', [ - wbFormID(ALCO, 'Object'), - wbStruct(ALCA, 'Alias', [ - wbInteger('Alias', itS16, wbQuestAliasToStr, wbStrToAlias), - wbInteger('Create', itU16, wbEnum([] ,[ - $0000, 'At', - $8000, 'In' - ])) - ]), - wbInteger(ALCL, 'Level', itU32, wbEnum([ - 'Easy', - 'Medium', - 'Hard', - 'Very Hard', - 'None' - ])) - ], []), - wbRStruct('Find Matching Reference Near Alias', [ - wbInteger(ALNA, 'Alias', itS32, wbQuestAliasToStr, wbStrToAlias), - wbInteger(ALNT, 'Type', itU32, wbEnum([ - 'Linked Ref Child' - ])) - ], []), - wbRStruct('Find Matching Reference From Event', [ - wbString(ALFE, 'From Event', 4), - wbByteArray(ALFD, 'Event Data') - ], []), - wbCTDAs, - wbKSIZ, - wbKWDAs, - wbCOCT, - wbCNTOs, - wbFormIDCk(SPOR, 'Spectator override package list', [FLST], False, cpNormal, False), - wbFormIDCk(OCOR, 'Observe dead body override package list', [FLST], False, cpNormal, False), - wbFormIDCk(GWOR, 'Guard warn override package list', [FLST], False, cpNormal, False), - wbFormIDCk(ECOR, 'Combat override package list', [FLST], False, cpNormal, False), - wbFormIDCk(ALDN, 'Display Name', [MESG]), - wbRArray('Alias Spells', wbFormIDCk(ALSP, 'Spell', [SPEL])), - wbRArray('Alias Factions', wbFormIDCk(ALFC, 'Faction', [FACT])), - wbRArray('Alias Package Data', wbFormIDCk(ALPC, 'Package', [PACK])), - wbFormIDCk(VTCK, 'Voice Types', [NPC_, FLST, NULL]), - wbEmpty(ALED, 'Alias End', cpNormal, True) - ], [], cpNormal, False, nil, False, nil, wbContainerAfterSet) - ], []) - ), - wbString(NNAM, 'Description', 0, cpNormal, False), - wbRArray('Targets', wbRStruct('Target', [ - wbStruct(QSTA, 'Target', [ - wbFormIDCkNoReach('Target', [ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA], True), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Compass Marker Ignores Locks' - ])), - wbByteArray('Unknown', 3) - ]), - wbCTDAs - ], [])) - ]); - - wbBodyPartIndexEnum := wbEnum([ - 'Body Texture' - ]); - - wbNoseMorphFlags := wbInteger('Nose Morph Flags', itU32, wbFlags([ - {0x00000001}'NoseType0', - {0x00000002}'NoseType1', - {0x00000004}'NoseType2', - {0x00000008}'NoseType3', - {0x00000010}'NoseType4', - {0x00000020}'NoseType5', - {0x00000040}'NoseType6', - {0x00000080}'NoseType7', - {0x00000100}'NoseType8', - {0x00000200}'NoseType9', - {0x00000400}'NoseType10', - {0x00000800}'NoseType11', - {0x00001000}'NoseType12', - {0x00002000}'NoseType13', - {0x00004000}'NoseType14', - {0x00008000}'NoseType15', - {0x00010000}'NoseType16', - {0x00020000}'NoseType17', - {0x00040000}'NoseType18', - {0x00080000}'NoseType19', - {0x00100000}'NoseType20', - {0x00200000}'NoseType21', - {0x00400000}'NoseType22', - {0x00800000}'NoseType23', - {0x01000000}'NoseType24', - {0x02000000}'NoseType25', - {0x04000000}'NoseType26', - {0x08000000}'NoseType27', - {0x10000000}'NoseType28', - {0x20000000}'NoseType29', - {0x40000000}'NoseType30', - {0x80000000}'NoseType31' - ])); - - wbBrowMorphFlags := wbInteger('Brow Morph Flags', itU32, wbFlags([ - {0x00000001}'BrowType0', - {0x00000002}'BrowType1', - {0x00000004}'BrowType2', - {0x00000008}'BrowType3', - {0x00000010}'BrowType4', - {0x00000020}'BrowType5', - {0x00000040}'BrowType6', - {0x00000080}'BrowType7', - {0x00000100}'BrowType8', - {0x00000200}'BrowType9', - {0x00000400}'BrowType10', - {0x00000800}'BrowType11', - {0x00001000}'BrowType12', - {0x00002000}'BrowType13', - {0x00004000}'BrowType14', - {0x00008000}'BrowType15', - {0x00010000}'BrowType16', - {0x00020000}'BrowType17', - {0x00040000}'BrowType18', - {0x00080000}'BrowType19', - {0x00100000}'BrowType20' - ], True)); - - wbEyesMorphFlags01 := wbInteger('Eye Morph Flags 1', itU32, wbFlags([ - {0x00000001}'EyesType0', - {0x00000002}'EyesType1', - {0x00000004}'EyesType2', - {0x00000008}'EyesType3', - {0x00000010}'EyesType4', - {0x00000020}'EyesType5', - {0x00000040}'EyesType6', - {0x00000080}'EyesType7', - {0x00000100}'EyesType8', - {0x00000200}'EyesType9', - {0x00000400}'EyesType10', - {0x00000800}'EyesType11', - {0x00001000}'EyesType12', - {0x00002000}'EyesType13', - {0x00004000}'EyesType14', - {0x00008000}'EyesType15', - {0x00010000}'EyesType16', - {0x00020000}'EyesType17', - {0x00040000}'EyesType18', - {0x00080000}'EyesType19', - {0x00100000}'EyesType20', - {0x00200000}'EyesType21', - {0x00400000}'EyesType22', - {0x00800000}'EyesType23', - {0x01000000}'EyesType24', - {0x02000000}'EyesType25', - {0x04000000}'EyesType26', - {0x08000000}'EyesType27', - {0x10000000}'EyesType28', - {0x20000000}'EyesType29', - {0x40000000}'EyesType30', - {0x80000000}'EyesType31' - ])); - - wbEyesMorphFlags02 := wbInteger('Eye Morph Flags 2', itU8, wbFlags([ - {0x00000001}'EyesType32', - {0x00000002}'EyesType33', - {0x00000004}'EyesType34', - {0x00000008}'EyesType35', - {0x00000010}'EyesType36', - {0x00000020}'EyesType37', - {0x00000040}'EyesType38' - ], True)); - - wbLipMorphFlags := wbInteger('Lip Morph Flags', itU32, wbFlags([ - {0x00000001}'LipType0', - {0x00000002}'LipType1', - {0x00000004}'LipType2', - {0x00000008}'LipType3', - {0x00000010}'LipType4', - {0x00000020}'LipType5', - {0x00000040}'LipType6', - {0x00000080}'LipType7', - {0x00000100}'LipType8', - {0x00000200}'LipType9', - {0x00000400}'LipType10', - {0x00000800}'LipType11', - {0x00001000}'LipType12', - {0x00002000}'LipType13', - {0x00004000}'LipType14', - {0x00008000}'LipType15', - {0x00010000}'LipType16', - {0x00020000}'LipType17', - {0x00040000}'LipType18', - {0x00080000}'LipType19', - {0x00100000}'LipType20', - {0x00200000}'LipType21', - {0x00400000}'LipType22', - {0x00800000}'LipType23', - {0x01000000}'LipType24', - {0x02000000}'LipType25', - {0x04000000}'LipType26', - {0x08000000}'LipType27', - {0x10000000}'LipType28', - {0x20000000}'LipType29', - {0x40000000}'LipType30', - {0x80000000}'LipType31' - ])); - - wbTintMaskTypeEnum := wbEnum([ - 'None', - 'Lip Color', - 'Cheek Color', - 'Eyeliner', - 'EyeSocket Upper', - 'EyeSocket Lower', - 'Skin Tone', - 'Paint', - 'Laugh Lines', - 'Cheek Color Lower', - 'Nose', - 'Chin', - 'Neck', - 'Forehead', - 'Dirt', - 'Unknown 16' - ]); - - wbTints := wbRArray('Tint Masks', wbRStruct('Tint Assets', [ - wbRArray('Tint Layer', wbRStruct('Texture', [ - wbInteger(TINI, 'Index', itU16), - wbString(TINT, 'File Name'), - {>>> When set to None TINP does not exist Needs routine to add when - changing the Mask Type <<<} - wbInteger(TINP, 'Mask Type', itU16, wbTintMaskTypeEnum), - wbFormIDCk(TIND, 'Preset Default', [CLFM, NULL]) - ], [])), - wbRArray('Presets', wbRStruct('Preset', [ - wbFormIDCk(TINC, 'Color', [CLFM, NULL]), - wbFloat(TINV, 'Default Value'), - wbInteger(TIRS, 'Index', itU16) - ], [])) - ], [])); - - wbRACE_DATAFlags01 := wbInteger('Flags', itU32, wbFlags([ - {0x00000001}'Playable', - {0x00000002}'FaceGen Head', - {0x00000004}'Child', - {0x00000008}'Tilt Front/Back', - {0x00000010}'Tilt Left/Right', - {0x00000020}'No Shadow', - {0x00000040}'Swims', - {0x00000080}'Flies', - {0x00000100}'Walks', - {0x00000200}'Immobile', - {0x00000400}'Not Pushable', - {0x00000800}'No Combat In Water', - {0x00001000}'No Rotating to Head-Track', - {0x00002000}'Don''t Show Blood Spray', - {0x00004000}'Don''t Show Blood Decal', - {0x00008000}'Uses Head Track Anims', - {0x00010000}'Spells Align w/Magic Node', - {0x00020000}'Use World Raycasts For FootIK', - {0x00040000}'Allow Ragdoll Collision', - {0x00080000}'Regen HP In Combat', - {0x00100000}'Can''t Open Doors', - {0x00200000}'Allow PC Dialogue', - {0x00400000}'No Knockdowns', - {0x00800000}'Allow Pickpocket', - {0x01000000}'Always Use Proxy Controller', - {0x02000000}'Don''t Show Weapon Blood', - {0x04000000}'Overlay Head Part List', {>>>Only one can be active<<<} - {0x08000000}'Override Head Part List', {>>>Only one can be active<<<} - {0x10000000}'Can Pickup Items', - {0x20000000}'Allow Multiple Membrane Shaders', - {0x40000000}'Can Dual Wield', - {0x80000000}'Avoids Roads' - ])); - - wbPhonemeTargets := wbStruct(PHWT, 'Phoneme Target Weight', [ - wbFloat('Aah / LipBigAah'), - wbFloat('BigAah / LipDST'), - wbFloat('BMP / LipEee'), - wbFloat('ChJsh / LipFV'), - wbFloat('DST / LipK'), - wbFloat('Eee / LipL'), - wbFloat('Eh / LipR'), - wbFloat('FV / LipTh'), - wbFloat('I'), - wbFloat('K'), - wbFloat('N'), - wbFloat('Oh'), - wbFloat('OohQ'), - wbFloat('R'), - wbFloat('TH'), - wbFloat('W') - ], cpNormal, False, nil, 8); - - wbPHWT := wbRStruct('FaceFX Phonemes', [ - wbRStruct('IY', [wbPhonemeTargets], []), - wbRStruct('IH', [wbPhonemeTargets], []), - wbRStruct('EH', [wbPhonemeTargets], []), - wbRStruct('EY', [wbPhonemeTargets], []), - wbRStruct('AE', [wbPhonemeTargets], []), - wbRStruct('AA', [wbPhonemeTargets], []), - wbRStruct('AW', [wbPhonemeTargets], []), - wbRStruct('AY', [wbPhonemeTargets], []), - wbRStruct('AH', [wbPhonemeTargets], []), - wbRStruct('AO', [wbPhonemeTargets], []), - wbRStruct('OY', [wbPhonemeTargets], []), - wbRStruct('OW', [wbPhonemeTargets], []), - wbRStruct('UH', [wbPhonemeTargets], []), - wbRStruct('UW', [wbPhonemeTargets], []), - wbRStruct('ER', [wbPhonemeTargets], []), - wbRStruct('AX', [wbPhonemeTargets], []), - wbRStruct('S', [wbPhonemeTargets], []), - wbRStruct('SH', [wbPhonemeTargets], []), - wbRStruct('Z', [wbPhonemeTargets], []), - wbRStruct('ZH', [wbPhonemeTargets], []), - wbRStruct('F', [wbPhonemeTargets], []), - wbRStruct('TH', [wbPhonemeTargets], []), - wbRStruct('V', [wbPhonemeTargets], []), - wbRStruct('DH', [wbPhonemeTargets], []), - wbRStruct('M', [wbPhonemeTargets], []), - wbRStruct('N', [wbPhonemeTargets], []), - wbRStruct('NG', [wbPhonemeTargets], []), - wbRStruct('L', [wbPhonemeTargets], []), - wbRStruct('R', [wbPhonemeTargets], []), - wbRStruct('W', [wbPhonemeTargets], []), - wbRStruct('Y', [wbPhonemeTargets], []), - wbRStruct('HH', [wbPhonemeTargets], []), - wbRStruct('B', [wbPhonemeTargets], []), - wbRStruct('D', [wbPhonemeTargets], []), - wbRStruct('JH', [wbPhonemeTargets], []), - wbRStruct('G', [wbPhonemeTargets], []), - wbRStruct('P', [wbPhonemeTargets], []), - wbRStruct('T', [wbPhonemeTargets], []), - wbRStruct('K', [wbPhonemeTargets], []), - wbRStruct('CH', [wbPhonemeTargets], []), - wbRStruct('SIL', [wbPhonemeTargets], []), - wbRStruct('SHOTSIL', [wbPhonemeTargets], []), - wbRStruct('FLAP', [wbPhonemeTargets], []) - ], []); - - wbMorphs := wbRStruct('Available Morphs', [ - wbByteArray(MPAI, 'Unknown', 0), - wbStruct(MPAV, 'Nose Variants', [ - wbNoseMorphFlags, - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4) - ]), - wbByteArray(MPAI, 'Unknown', 0), - wbStruct(MPAV, 'Brow Variants', [ - wbBrowMorphFlags, - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4) - ]), - wbByteArray(MPAI, 'Unknown', 0), - wbStruct(MPAV, 'Eye Variants', [ - wbEyesMorphFlags01, - wbEyesMorphFlags02, - wbByteArray('Unknown', 3), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4) - ]), - wbByteArray(MPAI, 'Unknown', 0), - wbStruct(MPAV, 'Lip Variants', [ - wbLipMorphFlags, - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4), - wbByteArray('Unknown', 4) - ]) - ], []); - - wbHeadPart := wbRStructSK([0],'Head Part', [ - wbInteger(INDX, 'Head Part Number', itU32), - wbFormIDCk(HEAD, 'Head', [HDPT, NULL]) - ], []); - - wbRecord(RACE, 'Race', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00080000} 19, 'Critter?' - ])), [ - wbEDID, - wbFULL, - wbDESCReq, - wbSPCT, - wbSPLOs, - wbFormIDCk(WNAM, 'Skin', [ARMO, NULL]), -// wbBODT, -// wbBOD2, - wbBODTBOD2, - wbKSIZ, - wbKWDAs, - wbStruct(DATA, '', [ - wbArrayS('Skill Boosts', wbStructSK([0], 'Skill Boost', [ - wbInteger('Skill', itS8, wbActorValueEnum), - wbInteger('Boost', itS8) - ]), 7), - wbByteArray('Unknown', 2), - wbFloat('Male Height'), - wbFloat('Female Height'), - wbFloat('Male Weight'), - wbFloat('Female Weight'), - wbRACE_DATAFlags01, - wbFloat('Starting Health'), - wbFloat('Starting Magicka'), - wbFloat('Starting Stamina'), - wbFloat('Base Carry Weight'), - wbFloat('Base Mass'), - wbFloat('Acceleration rate'), - wbFloat('Deceleration rate'), - wbInteger('Size', itU32, wbEnum([ - 'Small', - 'Medium', - 'Large', - 'Extra Large' - ])), - wbInteger('Head Biped Object', itS32, wbBipedObjectEnum), - wbInteger('Hair Biped Object', itS32, wbBipedObjectEnum), - wbFloat('Injured Health Pct'), - wbInteger('Shield Biped Object', itS32, wbBipedObjectEnum), - wbFloat('Health Regen'), - wbFloat('Magicka Regen'), - wbFloat('Stamina Regen'), - wbFloat('Unarmed Damage'), - wbFloat('Unarmed Reach'), - wbInteger('Body Biped Object', itS32, wbBipedObjectEnum), - wbFloat('Aim Angle Tolerance'), - wbFloat('Flight Radius'), - wbFloat('Angular Acceleration Rate'), - wbFloat('Angular Tolerance'), - wbInteger('Flags 2', itU32, wbFlags([ - {0x00000001} 'Use Advanced Avoidance', - {0x00000002} 'Non-Hostile', - {0x00000004} 'Unknown 2', - {0x00000008} 'Unknown 3', - {0x00000010} 'Allow Mounted Combat' - ])), - wbStruct('Mount Data', [ - wbFloat('Offset X', cpNormal, False, 1, -1, nil, nil, -63.479000), - wbFloat('Offset Y'), - wbFloat('Unknown'), - wbFloat('Unknown', cpNormal, False, 1, -1, nil, nil, -50.0), - wbFloat('Unknown'), - wbFloat('Unknown', cpNormal, False, 1, -1, nil, nil, 65.0), - wbFloat('Unknown'), - wbFloat('Unknown', cpNormal, False, 1, -1, nil, nil, -300.0), - wbFloat('Unknown') - ]) - //wbByteArray('Unknown', 4*7) - ], cpNormal, True, nil, 29), - wbEmpty(MNAM, 'Male Marker'), - wbString(ANAM, 'Male Skeletal Model'), - wbMODT, - wbEmpty(FNAM, 'Female Marker'), - wbString(ANAM, 'Female Skeletal Model'), - wbMODT, - wbEmpty(NAM2, 'Marker NAM2 #1'), - wbRArrayS('Movement Type Names', wbString(MTNM, 'Name')), - wbArray(VTCK, 'Voices', wbFormIDCk('Voice', [VTYP]), ['Male', 'Female'], cpNormal, True), - wbArray(DNAM, 'Decapitate Armors', wbFormIDCk('Decapitate Armor', [NULL, ARMO]), ['Male', 'Female'], cpNormal, False), - wbArray(HCLF, 'Default Hair Colors', wbFormIDCk('Default Hair Color', [NULL, CLFM]), ['Male', 'Female'], cpNormal, False), - wbInteger(TINL, 'Total Number of Tints in List', itU16, nil, nil, cpNormal, False), {>>> Needs Count Updated <<<} - wbFloat(PNAM, 'FaceGen - Main clamp', cpNormal, True), - wbFloat(UNAM, 'FaceGen - Face clamp', cpNormal, True), - wbFormIDCk(ATKR, 'Attack Race', [RACE], False, cpNormal, False), - wbRArrayS('Attacks', wbAttackData), - wbRStruct('Body Data', [ - wbEmpty(NAM1, 'Body Data Marker', cpNormal, True), - wbRStruct('Male Body Data', [ - wbEmpty(MNAM, 'Male Data Marker'), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbBodyPartIndexEnum), - wbMODL - ], []), cpNormal, True) - ], [], cpNormal, True), - wbRStruct('Female Body Data', [ - wbEmpty(FNAM, 'Female Data Marker', cpNormal, True), - wbRArrayS('Parts', wbRStructSK([0], 'Part', [ - wbInteger(INDX, 'Index', itU32, wbBodyPartIndexEnum), - wbMODL - ], []), cpNormal, True) - ], [], cpNormal, True) - ], [], cpNormal, True), - wbArrayS(HNAM, 'Hairs', wbFormIDCk('Hair', [HDPT, NULL]), 0, cpNormal), - wbArrayS(ENAM, 'Eyes', wbFormIDCk('Eye', [EYES, NULL]), 0, cpNormal), - wbFormIDCk(GNAM, 'Body Part Data', [BPTD, NULL]), - wbEmpty(NAM2, 'Marker NAM2 #2', cpNormal), - wbEmpty(NAM3, 'Marker NAM3 #3', cpNormal, True), - wbRStruct('Male Behavior Graph', [ - wbEmpty(MNAM, 'Male Data Marker'), - wbMODL - ], [], cpNormal, True), - wbRStruct('Female Behavior Graph', [ - wbEmpty(FNAM, 'Female Data Marker', cpNormal, True), - wbMODL - ], [], cpNormal, True), - wbFormIDCk(NAM4, 'Material Type', [MATT, NULL]), - wbFormIDCk(NAM5, 'Impact Data Set', [IPDS, NULL]), - wbFormIDCk(NAM7, 'Decapitation FX', [ARTO, NULL]), - wbFormIDCk(ONAM, 'Open Loot Sound', [SNDR, NULL]), - wbFormIDCk(LNAM, 'Close Loot Sound', [SNDR, NULL]), - {>>> When NAME is user defined wbBipedObjectEnum will be incorrect <<<} - wbRArray('Biped Object Names', wbString(NAME, 'Name')), - wbRArrayS('Movement Types', wbRStructSK([0], 'Movement Types', [ - wbFormIDCk(MTYP, 'Movement Type', [MOVT, NULL]), - wbStruct(SPED, 'Override Values', [ - wbFloat('Left - Walk'), - wbFloat('Left - Run'), - wbFloat('Right - Walk'), - wbFloat('Right - Run'), - wbFloat('Forward - Walk'), - wbFloat('Forward - Run'), - wbFloat('Back - Walk'), - wbFloat('Back - Run'), - wbFloat('Rotate - Walk'), - wbFloat('Rotate - Walk'), - wbFloat('Unknown') - ]) - ], [])), - wbInteger(VNAM, 'Equipment Flags', itU32, wbEquipType), - wbRArrayS('Equip Slots', wbFormIDCk(QNAM, 'Equip Slot', [EQUP, NULL])), - wbFormIDCk(UNES, 'Unarmed Equip Slot', [EQUP, NULL]), - wbRArray('Phoneme Target Names', wbString(PHTN, 'Name')), - wbPHWT, - wbFormIDCk(WKMV, 'Base Movement Default - Walk', [MOVT, NULL]), - wbFormIDCk(RNMV, 'Base Movement Default - Run', [MOVT, NULL]), - wbFormIDCk(SWMV, 'Base Movement Default - Swim', [MOVT, NULL]), - wbFormIDCk(FLMV, 'Base Movement Default - Fly', [MOVT, NULL]), - wbFormIDCk(SNMV, 'Base Movement Default - Sneak', [MOVT, NULL]), - wbFormIDCk(SPMV, 'Base Movement Default - Sprint', [MOVT, NULL]), - // Start Head Data - wbRStruct('Head Data', [ - wbEmpty(NAM0, 'Head Data Marker', cpNormal, True), - wbRStruct('Male Head Data', [ - wbEmpty(MNAM, 'Male Data Marker', cpNormal, True), - wbRArrayS('Head Parts', wbHeadPart), - wbMorphs, - wbRArrayS('Race Presets Male', wbFormIDCk(RPRM, 'Preset NPC', [NPC_, NULL])), - wbRArrayS('Available Hair Colors Male', wbFormIDCk(AHCM, 'Hair Color', [CLFM, NULL])), - wbRArrayS('Face Details Texture Set List Male', wbFormIDCk(FTSM, 'Texture Set', [TXST, NULL])), - wbFormIDCk(DFTM, 'Default Face Texture Male', [TXST, NULL]), - wbTints, - wbMODL - ], [], cpNormal, True), - wbRStruct('Female Head Data', [ - wbEmpty(NAM0, 'Head Data Marker', cpNormal, True), - wbEmpty(FNAM, 'Female Data Marker', cpNormal, True), - wbRArrayS('Head Parts', wbHeadPart), - wbMorphs, - wbRArrayS('Race Presets Female', wbFormIDCk(RPRF, 'Preset NPC', [NPC_, NULL])), - wbRArrayS('Available Hair Colors Female', wbFormIDCk(AHCF, 'Hair Color', [CLFM, NULL])), - wbRArrayS('Face Details Texture Set List Female', wbFormIDCk(FTSF, 'Texture Set', [TXST, NULL])), - wbFormIDCk(DFTF, 'Default Face Texture Female', [TXST, NULL]), - wbTints, - wbMODL - ], [], cpNormal, True) - ], [], cpNormal, False), - // End Head Data - wbFormIDCk(NAM8, 'Morph race', [RACE, NULL]), - wbFormIDCk(RNAM, 'Armor race', [RACE, NULL]) - ], False, nil, cpNormal, False, wbRACEAfterLoad, wbRACEAfterSet); - - - wbRecord(REFR, 'Placed Object', wbFormaterUnion(wbREFRRecordFlagsDecider, [ - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Is Full LOD', - {0x04000000} 26, 'Filter (Collision Geometry)', - {0x08000000} 27, 'Bounding Box (Collision Geometry)', - {0x10000000} 28, 'Reflected By Auto Water', - {0x40000000} 30, 'Ground', - {0x80000000} 31, 'Multibound' - ], True, True)), - {ACTI STAT TREE} wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000200} 9, 'Hidden From Local Map', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00008000} 15, 'Visible when distant', - {0x00010000} 16, 'Is Full LOD', - {0x04000000} 26, 'Filter (Collision Geometry)', - {0x08000000} 27, 'Bounding Box (Collision Geometry)', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn', - {0x80000000} 31, 'Multibound' - ], True, True)), - {CONT} wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Is Full LOD', - {0x02000000} 25, 'No AI Acquire', - {0x04000000} 26, 'Filter (Collision Geometry)', - {0x08000000} 27, 'Bounding Box (Collision Geometry)', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'Ground', - {0x80000000} 31, 'Multibound' - ], True, True)), - {DOOR} wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000040} 6, 'Hidden From Local Map', - {0x00000100} 8, 'Inaccessible', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Is Full LOD', - {0x04000000} 26, 'Filter (Collision Geometry)', - {0x08000000} 27, 'Bounding Box (Collision Geometry)', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn', - {0x80000000} 31, 'Multibound' - ], True, True)), - {LIGH} wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000100} 8, 'Doesn''t Light Water', - {0x00000200} 9, 'Casts Shadows', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Never Fades', - {0x00020000} 17, 'Doesn''t Light Landscape', - {0x02000000} 25, 'No AI Acquire', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn', - {0x80000000} 31, 'Multibound' - ], True, True)), - {MSTT} wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000200} 9, 'Motion Blur', - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Is Full LOD', - {0x04000000} 26, 'Filter (Collision Geometry)', - {0x08000000} 27, 'Bounding Box (Collision Geometry)', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn', - {0x80000000} 31, 'Multibound' - ], True, True)), - {ADDN} wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Is Full LOD', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn', - {0x80000000} 31, 'Multibound' - ], True, True)), - {ALCH SCRL AMMO ARMO INGR KEYM MISC SLGM WEAP} - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000400} 10, 'Persistent', - {0x00000800} 11, 'Initially Disabled', - {0x00010000} 16, 'Is Full LOD', - {0x02000000} 25, 'No AI Acquire', - {0x10000000} 28, 'Reflected By Auto Water', - {0x20000000} 29, 'Don''t Havok Settle', - {0x40000000} 30, 'No Respawn', - {0x80000000} 31, 'Multibound' - ], True, True)) - ]), [ - wbEDID, - wbVMAD, - wbFormIDCk(NAME, 'Base', [ - TREE, SNDR, ACTI, DOOR, STAT, FURN, CONT, ARMO, AMMO, LVLN, LVLC, - MISC, WEAP, BOOK, KEYM, ALCH, LIGH, GRAS, ASPC, IDLM, ARMA, INGR, - MSTT, TACT, TXST, FLOR, SLGM, SCRL, SOUN, APPA, SPEL, ARTO, ADDN - ], False, cpNormal, True), - - {--- Bound Contents ---} - {--- Bound Data ---} - wbStruct(XMBO, 'Bound Half Extents', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - - {--- Primitive ---} - wbStruct(XPRM, 'Primitive', [ - wbStruct('Bounds', [ - wbFloat('X', cpNormal, True, 2, 4), - wbFloat('Y', cpNormal, True, 2, 4), - wbFloat('Z', cpNormal, True, 2, 4) - ]), - wbStruct('Color', [ - {84} wbFloat('Red', cpNormal, False, 255, 0), - {88} wbFloat('Green', cpNormal, False, 255, 0), - {92} wbFloat('Blue', cpNormal, False, 255, 0) - ]), - wbFloat('Unknown'), - wbInteger('Type', itU32, wbEnum([ - 'None', - 'Box', - 'Sphere', - 'Portal Box', - 'Unknown 4' - ])) - ]), - wbUnknown(XORD), - wbStruct(XOCP, 'Occlusion Plane Data', [ - wbStruct('Size', [ - wbFloat('Width', cpNormal, False, 2), - wbFloat('Height', cpNormal, False, 2) - ]), - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation (Quaternion?)', [ - wbFloat('q1'), - wbFloat('q2'), - wbFloat('q3'), - wbFloat('q4') - ]) - ]), - - wbArray(XPOD, 'Portal Data', wbStruct('References', [ - wbFormIDCk('Origin', [REFR, NULL]), - wbFormIDCk('Destination', [REFR, NULL]) - ])), - wbStruct(XPTL, 'Room Portal (unused)', [ - wbStruct('Size', [ - wbFloat('Width', cpNormal, False, 2), - wbFloat('Height', cpNormal, False, 2) - ]), - wbStruct('Position', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ]), - wbStruct('Rotation (Quaternion?)', [ - wbFloat('q1'), - wbFloat('q2'), - wbFloat('q3'), - wbFloat('q4') - ]) - ], cpIgnore), // removed by CK - - wbRStruct('Bound Data', [ - wbStruct(XRMR, 'Header', [ - wbInteger('Linked Rooms Count', itU8), - wbInteger('Flags', itU8, wbFlags([ - 'Unknown 1', - 'Unknown 2', - 'Unknown 3', - 'Unknown 4', - 'Unknown 5', - 'Unknown 6', - 'Has Image Space', - 'Has Lighting Template' - ])), - wbByteArray('Unknown', 2) - ]), - wbFormIDCk(LNAM, 'Lighting Template', [LGTM]), - wbFormIDCk(INAM, 'Image Space', [IMGS]), - wbRArrayS('Linked Rooms', - wbFormIDCk(XLRM, 'Linked Room', [REFR]) - ) - ], []), - wbEmpty(XMBP, 'MultiBound Primitive Marker', cpIgnore), - - wbXRGD, - wbXRGB, - wbFloat(XRDS, 'Radius'), - - {--- Reflected By / Refracted By ---} - wbRArrayS('Reflected/Refracted By', - wbStructSK(XPWR, [0], 'Water', [ - wbFormIDCk('Reference', [REFR]), - wbInteger('Type', itU32, wbFlags([ - 'Reflection', - 'Refraction' - ])) - ], cpNormal, False, nil, 1) - ), - - {--- Lit Water ---} - wbRArrayS('Lit Water', - wbFormIDCk(XLTW, 'Water', [REFR]) - ), - - {--- Emittance ---} - wbFormIDCk(XEMI, 'Emittance', [LIGH, REGN]), - wbStruct(XLIG, 'Light Data', [ - wbFloat('FOV 90+/-'), - wbFloat('Fade 1.35+/-'), - wbByteArray('Unknown', 4), - wbFloat('Shadow Depth Bias'), - wbByteArray('Unknown', 4) // optional - ], cpNormal, False, nil, 4), - wbStruct(XALP, 'Alpha', [ - wbInteger('Cutoff', itU8), - wbInteger('Base', itU8) - ]), - - {--- Teleport ---} - wbStruct(XTEL, 'Teleport Destination', [ - wbFormIDCk('Door', [REFR], True), - wbPosRot, - wbInteger('Flags', itU32, wbFlags([ - 'No Alarm' - ])) - ]), - wbFormIDCk(XTNM, 'Teleport Message Box', [MESG]), - - {--- MultiBound ---} - wbFormIDCk(XMBR, 'MultiBound Reference', [REFR]), - - wbByteArray(XWCN, 'Unknown', 0, cpIgnore), // leftover - wbByteArray(XWCS, 'Unknown', 0, cpIgnore), // leftover - wbStruct(XWCU, 'Water Velocity', [ - wbFloat('X Offset'), - wbFloat('Y Offset'), - wbFloat('Z Offset'), - wbByteArray('Unknown', 4), - wbFloat('X Angle'), - wbFloat('Y Angle'), - wbFloat('Z Angle'), - wbByteArray('Unknown', 0) - ]), - - wbStruct(XCVL, 'Unknown', [ - wbByteArray('Unknown', 4), - wbFloat('X Angle'), - wbByteArray('Unknown', 4) - ]), - wbFormIDCk(XCZR, 'Unknown', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA, NULL]), - wbUnknown(XCZA), - wbFormIDCk(XCZC, 'Unknown', [CELL, NULL]), - wbXSCL, - wbFormIDCk(XSPC, 'Spawn Container', [REFR]), - - {--- Activate Parents ---} - wbRStruct('Activate Parents', [ - wbInteger(XAPD, 'Flags', itU8, wbFlags([ - 'Parent Activate Only' - ], True)), - wbRArrayS('Activate Parent Refs', - wbStructSK(XAPR, [0], 'Activate Parent Ref', [ - wbFormIDCk('Reference', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - wbFloat('Delay') - ]) - ) - ], []), - - wbFormIDCk(XLIB, 'Leveled Item Base Object', [LVLI]), - wbXLCM, - wbFormIDCk(XLCN, 'Persistent Location', [LCTN]), - - {>>> COLL form Index value <<<} - wbInteger(XTRI, 'Collision Layer', itU32), - - {--- Lock ---} - {>>Lock Tab for REFR when 'Locked' is Unchecked this record is not present <<<} - wbStruct(XLOC, 'Lock Data', [ - wbInteger('Level', itU8, wbEnum([], [ - 1, 'Novice', - 25, 'Apprentice', - 50, 'Adept', - 75, 'Expert', - 100, 'Master', - 255, 'Requires Key' - ])), - wbByteArray('Unused', 3, cpIgnore), - wbFormIDCkNoReach('Key', [KEYM, NULL]), - wbInteger('Flags', itU8, wbFlags(['', '', 'Leveled Lock'])), - wbByteArray('Unused', 3, cpIgnore), - wbByteArray('Unused', 8, cpIgnore) - ], cpNormal, False, nil, 4), - - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN]), - - {--- Generated Data ---} - wbStruct(XNDP, 'Navigation Door Link', [ - wbFormIDCk('Navigation Mesh', [NAVM]), - wbInteger('Teleport Marker Triangle', itS16, wbREFRNavmeshTriangleToStr, wbStringToInt), - wbByteArray('Unused', 2, cpIgnore) - ]), - - wbArray(XLRT, 'Location Ref Type', wbFormIDCk('Ref', [LCRT, NULL])), - wbEmpty(XIS2, 'Ignored by Sandbox'), - - {--- Ownership ---} - wbOwnership, - - wbInteger(XCNT, 'Item Count', itS32), - wbFloat(XCHG, 'Charge'), - wbFormIDCk(XLRL, 'Location Reference', [LCRT, LCTN, NULL], False, cpBenignIfAdded), - - wbXESP, - wbRArray('Linked References', wbStruct(XLKR, 'Linked Reference', [ - wbFormIDCk('Keyword/Ref', [KYWD, PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA, NULL]), - wbFormIDCk('Ref', [PLYR, ACHR, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]) - ], cpNormal, False, nil, 1)), - - wbRArray('Patrol', wbRStruct('Data', [ - wbFloat(XPRD, 'Idle Time', cpNormal, True), - wbEmpty(XPPA, 'Patrol Script Marker', cpNormal, True), - wbFormIDCk(INAM, 'Idle', [IDLE, NULL], False, cpNormal, True), - wbByteArray(SCHR, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbByteArray(SCTX, 'Unused', 0, cpIgnore, false, false, wbNeverShow), - wbPDTOs - ], [])), - - {--- Flags ---} - wbInteger(XACT, 'Action Flag', itU32, wbFlags([ - 'Use Default', - 'Activate', - 'Open', - 'Open by Default' - ])), - - wbFloat(XHTW, 'Head-Tracking Weight'), - wbFloat(XFVC, 'Favor Cost'), - - wbEmpty(ONAM, 'Open by Default'), - - {--- Map Data ---} - wbRStruct('Map Marker', [ - wbEmpty(XMRK, 'Map Marker Data'), - wbInteger(FNAM, 'Map Flags', itU8, wbFlags([ - {0x01} 'Visible', - {0x02} 'Can Travel To', - {0x04} '"Show All" Hidden' - ]), cpNormal, True), - wbFULLReq, - wbStruct(TNAM, '', [ - wbInteger('Type', itU8, wbEnum([], [ - 0, 'None', - 1, 'City', - 2, 'Town', - 3, 'Settlement', - 4, 'Cave', - 5, 'Camp', - 6, 'Fort', - 7, 'Nordic Ruins', - 8, 'Dwemer Ruin', - 9, 'Shipwreck', - 10, 'Grove', - 11, 'Landmark', - 12, 'Dragon Lair', - 13, 'Farm', - 14, 'Wood Mill', - 15, 'Mine', - 16, 'Imperial Camp', - 17, 'Stormcloak Camp', - 18, 'Doomstone', - 19, 'Wheat Mill', - 20, 'Smelter', - 21, 'Stable', - 22, 'Imperial Tower', - 23, 'Clearing', - 24, 'Pass', - 25, 'Altar', - 26, 'Rock', - 27, 'Lighthouse', - 28, 'Orc Stronghold', - 29, 'Giant Camp', - 30, 'Shack', - 31, 'Nordic Tower', - 32, 'Nordic Dwelling', - 33, 'Docks', - 34, 'Shrine', - 35, 'Riften Castle', - 36, 'Riften Capitol', - 37, 'Windhelm Castle', - 38, 'Windhelm Capitol', - 39, 'Whiterun Castle', - 40, 'Whiterun Capitol', - 41, 'Solitude Castle', - 42, 'Solitude Capitol', - 43, 'Markarth Castle', - 44, 'Markarth Capitol', - 45, 'Winterhold Castle', - 46, 'Winterhold Capitol', - 47, 'Morthal Castle', - 48, 'Morthal Capitol', - 49, 'Falkreath Castle', - 50, 'Falkreath Capitol', - 51, 'Dawnstar Castle', - 52, 'Dawnstar Capitol', - 53, 'DLC02 - Temple of Miraak', - 54, 'DLC02 - Raven Rock', - 55, 'DLC02 - Beast Stone', - 56, 'DLC02 - Tel Mithryn', - 57, 'DLC02 - To Skyrim', - 58, 'DLC02 - To Solstheim', - 59, 'Custom 59', - 60, 'Custom 60', - 61, 'Custom 61', - 62, 'Custom 62', - 63, 'Custom 63', - 64, 'Custom 64', - 65, 'Custom 65', - 66, 'Custom 66', - 67, 'Custom 67', - 68, 'Custom 68', - 69, 'Custom 69', - 70, 'Custom 70', - 71, 'Custom 71', - 72, 'Custom 72', - 73, 'Custom 73', - 74, 'Custom 74', - 75, 'Custom 75', - 76, 'Custom 76', - 77, 'Custom 77', - 78, 'Custom 78', - 79, 'Custom 79', - 80, 'Custom 80', - 81, 'Custom 81', - 82, 'Custom 82', - 83, 'Custom 83', - 84, 'Custom 84', - 85, 'Custom 85', - 86, 'Custom 86', - 87, 'Custom 87', - 88, 'Custom 88', - 89, 'Custom 89', - 90, 'Custom 90', - 91, 'Custom 91', - 92, 'Custom 92', - 93, 'Custom 93', - 94, 'Custom 94', - 95, 'Custom 95', - 96, 'Custom 96', - 97, 'Custom 97', - 98, 'Custom 98', - 99, 'Custom 99' - ])), - wbByteArray('Unused', 1) - ], cpNormal, True) - ], []), - {--- Attach reference ---} - wbFormIDCk(XATR, 'Attach Ref', [REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - wbXLOD, - wbDataPosRot - ], True, wbPlacedAddInfo, cpNormal, False, wbREFRAfterLoad); - - wbRecord(REGN, 'Region', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000040} 6, 'Border Region' - ])), [ - wbEDID, - wbStruct(RCLR, 'Map Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8), - wbByteArray('Unknown', 1) - ], cpNormal, True), - {>>> Skyrim.esm has some incorrect FormIDs here, probably leftover <<<} - wbFormIDCkNoReach(WNAM, 'Worldspace', [WRLD]), - wbRArray('Region Areas', wbRStruct('Region Area', [ - wbInteger(RPLI, 'Edge Fall-off', itU32), - wbArray(RPLD, 'Region Point List Data', wbStruct('Point', [ - wbFloat('X'), - wbFloat('Y') - ]), 0, wbRPLDAfterLoad) - ], [])), - wbRArrayS('Region Data Entries', wbRStructSK([0], 'Region Data Entry', [ - {always starts with an RDAT} - wbStructSK(RDAT, [0], 'Data Header', [ - wbInteger('Type', itU32, wbEnum([ - {0} 'Unknown 0', - {1} 'Unknown 1', - {2} 'Objects', - {3} 'Weather', - {4} 'Map', - {5} 'Land', - {6} 'Grass', - {7} 'Sound', - {8} 'Imposter', - {9} 'Unknown 10', - {10}'Unknown 11', - {11}'Unknown 12', - {12}'Unknown 13', - {13}'Unknown 14', - {14}'Unknown 15', - {15}'Unknown 16' - ])), - wbInteger('Flags', itU8, wbFlags([ - 'Override' - ])), - wbInteger('Priority', itU8), - wbByteArray('Unknown') - ], cpNormal, True), - - {--- Icon ---} - wbICON, - - {--- Sound ---} - wbFormIDCk(RDMO, 'Music', [MUSC], False, cpNormal, False, wbREGNSoundDontShow), - wbArrayS(RDSA, 'Sounds', wbStructSK([0], 'Sound', [ - wbFormIDCk('Sound', [SNDR, NULL]), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001}'Pleasant', - {0x00000002}'Cloudy', - {0x00000004}'Rainy', - {0x00000008}'Snowy' - ])), - wbFloat('Chance') - ]), 0, cpNormal, False, nil, nil, wbREGNSoundDontShow), - - {--- Map ---} - wbLString(RDMP, 'Map Name', 0, cpTranslate, False, wbREGNMapDontShow), - - {followed by one of these: } - - {--- Objects ---} - wbArray(RDOT, 'Objects', wbStruct('Object', [ - wbFormIDCk('Object', [TREE, FLOR, STAT, LTEX, MSTT]), - wbInteger('Parent Index', itU16, wbHideFFFF), - wbByteArray('Unknown', 2), - wbFloat('Density'), - wbInteger('Clustering', itU8), - wbInteger('Min Slope', itU8), - wbInteger('Max Slope', itU8), - wbInteger('Flags', itU8, wbFlags([ - {0}'Conform to slope', - {1}'Paint Vertices', - {2}'Size Variance +/-', - {3}'X +/-', - {4}'Y +/-', - {5}'Z +/-', - {6}'Tree', - {7}'Huge Rock' - ])), - wbInteger('Radius wrt Parent', itU16), - wbInteger('Radius', itU16), - wbFloat('Min Height'), - wbFloat('Max Height'), - wbFloat('Sink'), - wbFloat('Sink Variance'), - wbFloat('Size Variance'), - wbStruct('Angle Variance', [ - wbInteger('X', itU16), - wbInteger('Y', itU16), - wbInteger('Z', itU16) - ]), - wbByteArray('Unknown', 2), - wbByteArray('Unknown', 4) - ]), 0, nil, nil, cpNormal, False, wbREGNObjectsDontShow), - - {--- Grass ---} - wbArrayS(RDGS, 'Grasses', wbStructSK([0], 'Grass', [ - wbFormIDCk('Grass', [GRAS]), - wbByteArray('Unknown',4) - ]), 0, cpNormal, False, nil, nil, wbREGNGrassDontShow), - - {--- Weather ---} - wbArrayS(RDWT, 'Weather Types', wbStructSK([0], 'Weather Type', [ - wbFormIDCk('Weather', [WTHR]), - wbInteger('Chance', itU32), - wbFormIDCk('Global', [GLOB, NULL]) - ]), 0, cpNormal, False, nil, nil, wbREGNWeatherDontShow) - - ], [])) - ], True); - - wbRecord(SOUN, 'Sound Marker', [ - wbEDID, - wbOBNDReq, - wbUnknown(FNAM, cpIgnore), // leftover, unused - wbUnknown(SNDD, cpIgnore), // leftover, unused - wbFormIDCk(SDSC, 'Sound Descriptor', [SNDR, NULL]) - ]); - - wbSPIT := wbStruct(SPIT, 'Data', [ - wbInteger('Base Cost', itU32), - wbInteger('Flags', itU32, wbFlags([ - {0x00000001} 'Manual Cost Calc', - {0x00000002} 'Unknown 2', - {0x00000004} 'Unknown 3', - {0x00000008} 'Unknown 4', - {0x00000010} 'Unknown 5', - {0x00000020} 'Unknown 6', - {0x00000040} 'Unknown 7', - {0x00000080} 'Unknown 8', - {0x00000100} 'Unknown 9', - {0x00000200} 'Unknown 10', - {0x00000400} 'Unknown 11', - {0x00000800} 'Unknown 12', - {0x00001000} 'Unknown 13', - {0x00002000} 'Unknown 14', - {0x00004000} 'Unknown 15', - {0x00008000} 'Unknown 16', - {0x00010000} 'Unknown 17', - {0x00020000} 'PC Start Spell', - {0x00040000} 'Unknown 19', - {0x00080000} 'Area Effect Ignores LOS', - {0x00100000} 'Ignore Resistance', - {0x00200000} 'No Absorb/Reflect', - {0x00400000} 'Unknown 23', - {0x00800000} 'No Dual Cast Modification', - {0x01000000} 'Unknown 25', - {0x02000000} 'Unknown 26', - {0x04000000} 'Unknown 27', - {0x08000000} 'Unknown 28', - {0x10000000} 'Unknown 29', - {0x20000000} 'Unknown 30', - {0x40000000} 'Unknown 31', - {0x80000000} 'Unknown 32' - ])), - wbInteger('Type', itU32, wbEnum([ - {0} 'Spell', - {1} 'Disease', - {2} 'Power', - {3} 'Lesser Power', - {4} 'Ability', - {5} 'Poison', - {6} 'Unknown 6', - {7} 'Unknown 7', - {8} 'Unknown 8', - {9} 'Unknown 9', - {10} 'Addiction', - {11} 'Voice' - ])), - wbFloat('Charge Time'), - wbInteger('Cast Type', itU32, wbCastEnum), - wbInteger('Target Type', itU32, wbTargetEnum), - wbFloat('Cast Duration'), - wbFloat('Range'), - wbFormIDCk('Half-cost Perk', [NULL, PERK]) - ], cpNormal, True); - - wbRecord(SPEL, 'Spell', [ - wbEDID, - wbOBNDReq, - wbFULL, - wbKSIZ, - wbKWDAs, - wbMDOB, - wbETYP, - wbDESCReq, - wbSPIT, - wbEffectsReq - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbRecord(SCRL, 'Scroll', [ - wbEDID, - wbOBNDReq, - wbFULL, - wbKSIZ, - wbKWDAs, - wbMDOB, - wbETYP, - wbDESC, - wbMODL, - wbDEST, - wbYNAM, - wbZNAM, - wbStruct(DATA, 'Item', [ - wbInteger('Value', itU32), - wbFloat('Weight') - ], cpNormal, True), - wbSPIT, - wbEffectsReq - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbRecord(STAT, 'Static', - wbFlags(wbRecordFlagsFlags, [ - {0x00000001} { 0} '', - {0x00000002} { 1} '', - {0x00000004} { 2} 'Never Fades', - {0x00000008} { 3} '', - {0x00000010} { 4} '', - {0x00000020} { 5} 'Deleted', - {0x00000040} { 6} 'Has Tree LOD', - {0x00000080} { 7} 'Add-On LOD Object', - {0x00000100} { 8} '', - {0x00000200} { 9} 'Hidden From Local Map', - {0x00000400} {10} '', - {0x00000800} {11} 'Unknown 11', // present in Skyrim.esm but can't be set - {0x00001000} {12} '', - {0x00002000} {13} '', - {0x00004000} {14} '', - {0x00008000} {15} 'Has Distant LOD', - {0x00010000} {16} 'Unknown 16', // present in Skyrim.esm but can't be set - {0x00020000} {17} 'Uses HD LOD Texture', - {0x00040000} {18} '', - {0x00080000} {19} 'Has Currents', - {0x00100000} {20} '', - {0x00200000} {21} '', - {0x00400000} {22} '', - {0x00800000} {23} 'Is Marker', - {0x01000000} {24} '', - {0x02000000} {25} 'Obstacle', - {0x04000000} {26} 'NavMesh Generation - Filter', - {0x08000000} {27} 'NavMesh Generation - Bounding Box', - {0x10000000} {28} 'Show In World Map', - {0x20000000} {29} '', - {0x40000000} {30} 'NavMesh Generation - Ground', - {0x80000000} {31} '' - ], [11, 16]), [ - wbEDID, - wbOBNDReq, - wbMODL, - IsSSE( - wbStruct(DNAM, 'Direction Material', [ - wbFloat('Max Angle (30-120)'), - wbFormIDCk('Material', [MATO, NULL]), - // SSE - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Considered Snow' - ])), - wbByteArray('Unused', 3, cpIgnore) - ], cpNormal, True, nil, 2), - wbStruct(DNAM, 'Direction Material', [ - wbFloat('Max Angle (30-120)'), - wbFormIDCk('Material', [MATO, NULL]) - ], cpNormal, True) - ), - wbArray(MNAM, 'Distant LOD', - wbStruct('LOD', [ - {>>> Contains null-terminated mesh filename followed by random data up to 260 bytes <<<} - wbString(True, 'Mesh', 260) - //wbByteArray('Mesh', 260, cpIgnore) - ]), [ - 'Level 0', - 'Level 1', - 'Level 2', - 'Level 3' - ], - cpNormal, False - ) - ]); - - wbRecord(TES4, 'Main File Header', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000001} 0, 'ESM', - {0x00000080} 7, 'Localized' - ], False), True), [ - wbStruct(HEDR, 'Header', [ - wbFloat('Version'), - wbInteger('Number of Records', itU32), - wbInteger('Next Object ID', itU32) - ], cpNormal, True), - wbByteArray(OFST, 'Unknown', 0, cpIgnore), - wbByteArray(DELE, 'Unknown', 0, cpIgnore), - wbString(CNAM, 'Author', 0, cpTranslate, True), - wbString(SNAM, 'Description', 0, cpTranslate), - wbRArray('Master Files', wbRStruct('Master File', [ - wbString(MAST, 'Filename', 0, cpNormal, True), - wbByteArray(DATA, 'Unknown', 8, cpIgnore, True) - ], [ONAM])), - wbArray(ONAM, 'Overridden Forms', - wbFormIDCk('Form', [ACHR, LAND, NAVM, REFR, PGRE, PHZD, PMIS, PARW, PBAR, PBEA, PCON, PFLA]), - 0, nil, nil, cpNormal, False{, wbTES4ONAMDontShow}), - wbByteArray(SCRN, 'Screenshot'), - wbUnknown(INTV), - wbUnknown(INCC) - ], True, nil, cpNormal, True, wbRemoveOFST); -end; - -procedure DefineTES5o; -begin - - wbRecord(TREE, 'Tree', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00008000} 15, 'Has Distant LOD' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbMODL, - wbFormIDCK(PFIG, 'Ingredient', [INGR, ALCH, MISC, LVLI, NULL]), - wbFormIDCK(SNAM, 'Harvest Sound', [SNDR, NULL]), - wbStruct(PFPC, 'Ingredient Production', [ - wbInteger('Spring', itU8), - wbInteger('Summer', itU8), - wbInteger('Fall', itU8), - wbInteger('Winter', itU8) - ]), - wbFULL, - wbStruct(CNAM, 'Tree Data', [ - wbFloat('Trunk Flexibility'), - wbFloat('Branch Flexibility'), - //wbByteArray('Unknown', 32), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Leaf Amplitude'), - wbFloat('Leaf Frequency') - ], cpNormal, True) - ]); - - wbRecord(FLOR, 'Flora', [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULLReq, - wbMODL, - wbDEST, - wbKSIZ, - wbKWDAs, - wbUnknown(PNAM), - wbLString(RNAM, 'Activate Text Override', 0, cpTranslate), - wbUnknown(FNAM), - wbFormIDCk(PFIG, 'Ingredient', [INGR, ALCH, LVLI, MISC, NULL]), - wbFormIDCK(SNAM, 'Sound', [SNDR, NULL]), - wbStruct(PFPC, 'Seasonal ingredient production', [ - wbInteger('Spring', itU8), - wbInteger('Summer ', itU8), - wbInteger('Fall', itU8), - wbInteger('Winter', itU8) - ], cpNormal, True) - ], False, nil, cpNormal, False, nil, wbKeywordsAfterSet); - - wbRecord(WATR, 'Water', [ - wbEDID, - wbFULL, - wbRArray('Unused', wbString(NNAM, 'Noise Map', 0, cpIgnore, False)), // leftover - wbInteger(ANAM, 'Opacity', itU8, nil, cpNormal, True), - wbInteger(FNAM, 'Flags', itU8, wbFlags([ - {0x01} 'Causes Damage', - {0x02} 'Unknown 1', - {0x04} 'Unknown 2', - {0x08} IsSSE('Enable Flowmap', 'Unknown 3'), - {0x10} IsSSE('Blend Normals', 'Unknown 4'), - {0x20} 'Unknown 5', - {0x40} 'Unknown 6', - {0x80} 'Unknown 7' - ]), cpNormal, True), - wbByteArray(MNAM, 'Unused', 0, cpIgnore, False), // leftover - wbFormIDCk(TNAM, 'Material', [MATT]), - wbFormIDCk(SNAM, 'Open Sound', [SNDR, NULL]), - wbFormIDCk(XNAM, 'Spell', [SPEL]), - wbFormIDCk(INAM, 'Image Space', [IMGS]), - wbInteger(DATA, 'Damage Per Second', itU16, nil, cpNormal, True, True), - IsSSE( - wbStruct(DNAM, 'Visual Data', [ - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Specular Properties - Sun Specular Power'), - wbFloat('Water Properties - Reflectivity Amount'), - wbFloat('Water Properties - Fresnel Amount'), - wbByteArray('Unknown', 4), - wbFloat('Fog Properties - Above Water - Fog Distance - Near Plane'), - wbFloat('Fog Properties - Above Water - Fog Distance - Far Plane'), - wbByteColors('Shallow Color'), - wbByteColors('Deep Color'), - wbByteColors('Reflection Color'), - wbByteArray('Unknown', 4), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Displacement Simulator - Starting Size'), - wbFloat('Displacement Simulator - Force'), - wbFloat('Displacement Simulator - Velocity'), - wbFloat('Displacement Simulator - Falloff'), - wbFloat('Displacement Simulator - Dampner'), - wbFloat('Unknown'), - wbFloat('Noise Properties - Noise Falloff'), - wbFloat('Noise Properties - Layer One - Wind Direction'), - wbFloat('Noise Properties - Layer Two - Wind Direction'), - wbFloat('Noise Properties - Layer Three - Wind Direction'), - wbFloat('Noise Properties - Layer One - Wind Speed'), - wbFloat('Noise Properties - Layer Two - Wind Speed'), - wbFloat('Noise Properties - Layer Three - Wind Speed'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Fog Properties - Above Water - Fog Amount'), - wbFloat('Unknown'), - wbFloat('Fog Properties - Under Water - Fog Amount'), - wbFloat('Fog Properties - Under Water - Fog Distance - Near Plane'), - wbFloat('Fog Properties - Under Water - Fog Distance - Far Plane'), - wbFloat('Water Properties - Refraction Magnitude'), - wbFloat('Specular Properties - Specular Power'), - wbFloat('Unknown'), - wbFloat('Specular Properties - Specular Radius'), - wbFloat('Specular Properties - Specular Brightness'), - wbFloat('Noise Properties - Layer One - UV Scale'), - wbFloat('Noise Properties - Layer Two - UV Scale'), - wbFloat('Noise Properties - Layer Three - UV Scale'), - wbFloat('Noise Properties - Layer One - Amplitude Scale'), - wbFloat('Noise Properties - Layer Two - Amplitude Scale'), - wbFloat('Noise Properties - Layer Three - Amplitude Scale'), - wbFloat('Water Properties - Reflection Magnitude'), - wbFloat('Specular Properties - Sun Sparkle Magnitude'), - wbFloat('Specular Properties - Sun Specular Magnitude'), - wbFloat('Depth Properties - Reflections'), - wbFloat('Depth Properties - Refraction'), - wbFloat('Depth Properties - Normals'), - wbFloat('Depth Properties - Specular Lighting'), - wbFloat('Specular Properties - Sun Sparkle Power'), - // SSE - wbFloat('Noise Properties - Flowmap Scale') - ], cpNormal, True, nil, 57), - wbStruct(DNAM, 'Visual Data', [ - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Specular Properties - Sun Specular Power'), - wbFloat('Water Properties - Reflectivity Amount'), - wbFloat('Water Properties - Fresnel Amount'), - wbByteArray('Unknown', 4), - wbFloat('Fog Properties - Above Water - Fog Distance - Near Plane'), - wbFloat('Fog Properties - Above Water - Fog Distance - Far Plane'), - wbByteColors('Shallow Color'), - wbByteColors('Deep Color'), - wbByteColors('Reflection Color'), - wbByteArray('Unknown', 4), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Displacement Simulator - Starting Size'), - wbFloat('Displacement Simulator - Force'), - wbFloat('Displacement Simulator - Velocity'), - wbFloat('Displacement Simulator - Falloff'), - wbFloat('Displacement Simulator - Dampner'), - wbFloat('Unknown'), - wbFloat('Noise Properties - Noise Falloff'), - wbFloat('Noise Properties - Layer One - Wind Direction'), - wbFloat('Noise Properties - Layer Two - Wind Direction'), - wbFloat('Noise Properties - Layer Three - Wind Direction'), - wbFloat('Noise Properties - Layer One - Wind Speed'), - wbFloat('Noise Properties - Layer Two - Wind Speed'), - wbFloat('Noise Properties - Layer Three - Wind Speed'), - wbFloat('Unknown'), - wbFloat('Unknown'), - wbFloat('Fog Properties - Above Water - Fog Amount'), - wbFloat('Unknown'), - wbFloat('Fog Properties - Under Water - Fog Amount'), - wbFloat('Fog Properties - Under Water - Fog Distance - Near Plane'), - wbFloat('Fog Properties - Under Water - Fog Distance - Far Plane'), - wbFloat('Water Properties - Refraction Magnitude'), - wbFloat('Specular Properties - Specular Power'), - wbFloat('Unknown'), - wbFloat('Specular Properties - Specular Radius'), - wbFloat('Specular Properties - Specular Brightness'), - wbFloat('Noise Properties - Layer One - UV Scale'), - wbFloat('Noise Properties - Layer Two - UV Scale'), - wbFloat('Noise Properties - Layer Three - UV Scale'), - wbFloat('Noise Properties - Layer One - Amplitude Scale'), - wbFloat('Noise Properties - Layer Two - Amplitude Scale'), - wbFloat('Noise Properties - Layer Three - Amplitude Scale'), - wbFloat('Water Properties - Reflection Magnitude'), - wbFloat('Specular Properties - Sun Sparkle Magnitude'), - wbFloat('Specular Properties - Sun Specular Magnitude'), - wbFloat('Depth Properties - Reflections'), - wbFloat('Depth Properties - Refraction'), - wbFloat('Depth Properties - Normals'), - wbFloat('Depth Properties - Specular Lighting'), - wbFloat('Specular Properties - Sun Sparkle Power') - ]) - ), - wbByteArray(GNAM, 'Unused', 0, cpNormal, True), // leftover - wbStruct(NAM0, 'Linear Velocity', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ], cpNormal, False), - wbStruct(NAM1, 'Angular Velocity', [ - wbFloat('X'), - wbFloat('Y'), - wbFloat('Z') - ], cpNormal, False), - wbString(NAM2, 'Noise Layer One - Noise Texture', 0, cpNormal, False), - wbString(NAM3, 'Noise Layer Two - Noise Texture', 0, cpNormal, False), - wbString(NAM4, 'Noise Layer Three - Noise Texture', 0, cpNormal, False), - // SSE - wbString(NAM5, 'Flow Normals - Noise Texture', 0, cpNormal, False) - ], False, nil, cpNormal, False); - - wbRecord(WEAP, 'Weapon', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00000004} 2, 'Non-Playable' - ])), [ - wbEDID, - wbVMAD, - wbOBNDReq, - wbFULL, - wbMODL, - wbICON, - wbEITM, - wbInteger(EAMT, 'Enchantment Amount', itU16), - wbDEST, - wbETYP, - wbFormIDCk(BIDS, 'Block Bash Impact Data Set', [IPDS, NULL]), - wbFormIDCk(BAMT, 'Alternate Block Material', [MATT, NULL]), - wbYNAM, - wbZNAM, - wbKSIZ, - wbKWDAs, - wbDESC, - wbRStruct('Has Scope', [ - wbString(MOD3, 'Model Filename'), - wbByteArray(MO3T, 'Texture Files Hashes', 0, cpIgnore, false, false, wbNeverShow), - wbMO3S - ], []), - wbByteArray(NNAM, 'Unused', 0, cpIgnore, False), // leftover - wbFormIDCk(INAM, 'Impact Data Set', [IPDS, NULL]), - wbFormIDCk(WNAM, '1st Person Model Object', [STAT, NULL]), - wbFormIDCk(SNAM, 'Attack Sound', [SNDR]), - wbFormIDCk(XNAM, 'Attack Sound 2D', [SNDR]), - wbFormIDCk(NAM7, 'Attack Loop Sound', [SNDR]), - wbFormIDCk(TNAM, 'Attack Fail Sound', [SNDR]), - wbFormIDCk(UNAM, 'Idle Sound', [SNDR]), - wbFormIDCk(NAM9, 'Equip Sound', [SNDR]), - wbFormIDCk(NAM8, 'Unequip Sound', [SNDR]), - wbStruct(DATA, 'Game Data', [ - wbInteger('Value', itU32), - wbFloat('Weight'), - wbInteger('Damage', itU16) - ]), - wbStruct(DNAM, 'Data', [ - wbInteger('Animation Type', itU8, wbWeaponAnimTypeEnum), - wbByteArray('Unused', 3, cpIgnore), - wbFloat('Speed'), - wbFloat('Reach'), - wbInteger('Flags', itU16, wbFlags([ - {0x0001}'Ignores Normal Weapon Resistance', - {0x0002}'Automatic (unused)', - {0x0004}'Has Scope (unused)', - {0x0008}'Can''t Drop', - {0x0010}'Hide Backpack (unused)', - {0x0020}'Embedded Weapon (unused)', - {0x0040}'Don''t Use 1st Person IS Anim (unused)', - {0x0080}'Non-playable' - ], [1, 2, 4, 5, 6])), - wbByteArray('Unused', 2, cpIgnore), - wbFloat('Sight FOV'), - wbByteArray('Unknown', 4), - wbInteger('Base VATS To-Hit Chance', itU8), - wbInteger('Attack Animation', itU8, wbAttackAnimationEnum), - wbInteger('# Projectiles', itU8), - wbInteger('Embedded Weapon AV (unused)', itU8), - wbFloat('Range Min'), - wbFloat('Range Max'), - wbInteger('On Hit', itU32, wbEnum([ - 'No formula behaviour', - 'Dismember only', - 'Explode only', - 'No dismember/explode' - ])), - wbInteger('Flags2', itU32, wbFlags([ - {0x00000001} 'Player Only', - {0x00000002} 'NPCs Use Ammo', - {0x00000004} 'No Jam After Reload (unused)', - {0x00000008} 'Unknown 4', - {0x00000010} 'Minor Crime', - {0x00000020} 'Range Fixed', - {0x00000040} 'Not Used in Normal Combat', - {0x00000080} 'Unknown 8', - {0x00000100} 'Don''t Use 3rd Person IS Anim (unused)', - {0x00000200} 'Burst Shot', - {0x00000400} 'Rumble - Alternate', - {0x00000800} 'Long Bursts', - {0x00001000} 'Non-hostile', - {0x00002000} 'Bound Weapon' - ], [2, 8])), - wbFloat('Animation Attack Mult'), - wbFloat('Unknown'), - wbFloat('Rumble - Left Motor Strength'), - wbFloat('Rumble - Right Motor Strength'), - wbFloat('Rumble - Duration'), - wbByteArray('Unknown', 12), - wbInteger('Skill', itS32, wbSkillEnum), - wbByteArray('Unknown', 8), - wbInteger('Resist', itS32, wbActorValueEnum), - wbByteArray('Unknown', 4), - wbFloat('Stagger') - ]), - IsSSE( - wbStruct(CRDT, 'Critical Data', [ - wbInteger('Damage', itU16), - wbByteArray('Unknown', 2), - wbFloat('% Mult'), - wbInteger('Flags', itU8, wbFlags([ - 'On Death' - ])), - // SSE - wbByteArray('Unused', 3, cpIgnore), - wbByteArray('Unknown', 4), - wbFormIDCk('Effect', [SPEL, NULL]), - wbByteArray('Unknown', 4) - ]), - wbStruct(CRDT, 'Critical Data', [ - wbInteger('Damage', itU16), - wbByteArray('Unknown', 2), - wbFloat('% Mult'), - wbInteger('Flags', itU8, wbFlags([ - 'On Death' - ])), - wbByteArray('Unused', 3, cpIgnore), - wbFormIDCk('Effect', [SPEL, NULL]) - ]) - ), - wbInteger(VNAM, 'Detection Sound Level', itU32, wbSoundlevelEnum), - wbFormIDCk(CNAM, 'Template', [WEAP]) - ], False, nil, cpNormal, False, wbWEAPAfterLoad, wbKeywordsAfterSet); - - wbRecord(WRLD, 'Worldspace', - wbFlags(wbRecordFlagsFlags, wbFlagsList([ - {0x00080000} 19, 'Can''t Wait' - ])), [ - wbEDID, - wbRArray(IsSSE('Large References', 'Unused RNAM'), - wbStruct(RNAM, 'Grid', [ - wbInteger('Y', itS16, nil, cpIgnore), - wbInteger('X', itS16, nil, cpIgnore), - wbArray('References', wbStruct('Reference', [ - wbFormIDCk('Ref', [REFR], False, cpIgnore), - wbInteger('Y', itS16, nil, cpIgnore), - wbInteger('X', itS16, nil, cpIgnore) - ]), -1) - ]), - cpIgnore, False, nil, nil, wbNeverShow - ), - wbMaxHeightDataWRLD, - wbFULL, - wbStruct(WCTR, 'Fixed Dimensions Center Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbFormIDCk(LTMP, 'Interior Lighting', [LGTM]), - wbFormIDCk(XEZN, 'Encounter Zone', [ECZN, NULL]), - wbFormIDCk(XLCN, 'Location', [LCTN, NULL]), - wbRStruct('Parent', [ - wbFormIDCk(WNAM, 'Worldspace', [WRLD]), - wbStruct(PNAM, '', [ - wbInteger('Flags', itU8, wbFlags([ - {0x0001}'Use Land Data', - {0x0002}'Use LOD Data', - {0x0004}'Don''t Use Map Data', - {0x0008}'Use Water Data', - {0x0010}'Use Climate Data', - {0x0020}'Use Image Space Data (unused)', - {0x0040}'Use Sky Cell' - ], [5])), - wbByteArray('Unknown', 1) - ], cpNormal, True) - ], []), - wbFormIDCk(CNAM, 'Climate', [CLMT]), - wbFormIDCk(NAM2, 'Water', [WATR]), - wbFormIDCk(NAM3, 'LOD Water Type', [WATR]), - wbFloat(NAM4, 'LOD Water Height'), - wbStruct(DNAM, 'Land Data', [ - wbFloat('Default Land Height'), - wbFloat('Default Water Height') - ]), - wbString(ICON, 'Map Image'), - wbRStruct('Cloud Model', [wbMODL], []), - wbStruct(MNAM, 'Map Data', [ - wbStruct('Usable Dimensions', [ - wbInteger('X', itS32), - wbInteger('Y', itS32) - ]), - wbStruct('Cell Coordinates', [ - wbStruct('NW Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]), - wbStruct('SE Cell', [ - wbInteger('X', itS16), - wbInteger('Y', itS16) - ]) - ]), - wbStruct('Camera Data', [ - wbFloat('Min Height'), - wbFloat('Max Height'), - wbFloat('Initial Pitch') - ]) - ], cpNormal, False, nil, 2), - wbStruct(ONAM, 'World Map Offset Data', [ - wbFloat('World Map Scale'), - wbFloat('Cell X Offset'), - wbFloat('Cell Y Offset'), - wbFloat('Cell Z Offset') - ], cpNormal, True), - wbFloat(NAMA, 'Distant LOD Multiplier'), - wbInteger(DATA, 'Flags', itU8, wbFlags([ - {0x01} 'Small World', - {0x02} 'Can''t Fast Travel', - {0x04} 'Unknown 3', - {0x08} 'No LOD Water', - {0x10} 'No Landscape', - {0x20} 'No Sky', - {0x40} 'Fixed Dimensions', - {0x80} 'No Grass' - ]), cpNormal, True), - {>>> Object Bounds doesn't show up in CK <<<} - wbRStruct('Object Bounds', [ - wbStruct(NAM0, 'Min', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True), - wbStruct(NAM9, 'Max', [ - wbFloat('X', cpNormal, False, 1/4096), - wbFloat('Y', cpNormal, False, 1/4096) - ], cpIgnore, True) - ], []), - wbFormIDCk(ZNAM, 'Music', [MUSC]), - wbString(NNAM, 'Canopy Shadow (unused)', 0, cpIgnore), - wbString(XNAM, 'Water Noise Texture'), - wbString(TNAM, 'HD LOD Diffuse Texture'), - wbString(UNAM, 'HD LOD Normal Texture'), - wbString(XWEM, 'Water Environment Map (unused)', 0, cpIgnore), - wbOFST - ], False, nil, cpNormal, False, wbWRLDAfterLoad); - - - wbRecord(WTHR, 'Weather', [ - wbEDID, - wbString(_00_0TX, 'Cloud Texture Layer #0'), - wbString(_10_0TX, 'Cloud Texture Layer #1'), - wbString(_20_0TX, 'Cloud Texture Layer #2'), - wbString(_30_0TX, 'Cloud Texture Layer #3'), - wbString(_40_0TX, 'Cloud Texture Layer #4'), - wbString(_50_0TX, 'Cloud Texture Layer #5'), - wbString(_60_0TX, 'Cloud Texture Layer #6'), - wbString(_70_0TX, 'Cloud Texture Layer #7'), - wbString(_80_0TX, 'Cloud Texture Layer #8'), - wbString(_90_0TX, 'Cloud Texture Layer #9'), - wbString(_3A_0TX, 'Cloud Texture Layer #10'), - wbString(_3B_0TX, 'Cloud Texture Layer #11'), - wbString(_3C_0TX, 'Cloud Texture Layer #12'), - wbString(_3D_0TX, 'Cloud Texture Layer #13'), - wbString(_3E_0TX, 'Cloud Texture Layer #14'), - wbString(_3F_0TX, 'Cloud Texture Layer #15'), - wbString(_40h_0TX, 'Cloud Texture Layer #16'), - wbString(A0TX, 'Cloud Texture Layer #17'), - wbString(B0TX, 'Cloud Texture Layer #18'), - wbString(C0TX, 'Cloud Texture Layer #19'), - wbString(D0TX, 'Cloud Texture Layer #20'), - wbString(E0TX, 'Cloud Texture Layer #21'), - wbString(F0TX, 'Cloud Texture Layer #22'), - wbString(G0TX, 'Cloud Texture Layer #23'), - wbString(H0TX, 'Cloud Texture Layer #24'), - wbString(I0TX, 'Cloud Texture Layer #25'), - wbString(J0TX, 'Cloud Texture Layer #26'), - wbString(K0TX, 'Cloud Texture Layer #27'), - wbString(L0TX, 'Cloud Texture Layer #28'), - wbByteArray(DNAM, 'Unused', 0, cpIgnore), - wbByteArray(CNAM, 'Unused', 0, cpIgnore), - wbByteArray(ANAM, 'Unused', 0, cpIgnore), - wbByteArray(BNAM, 'Unused', 0, cpIgnore), - wbUnknown(LNAM), - wbFormIDCK(MNAM, 'Precipitation Type', [SPGD, NULL]), - wbFormIDCK(NNAM, 'Visual Effect', [RFCT, NULL], False, cpNormal, True), - wbByteArray(ONAM, 'Unused', 0, cpIgnore), - wbRStruct('Cloud Speed', [ - wbArray(RNAM, 'Y Speed', wbInteger('Layer', itU8, wbCloudSpeedToStr, wbCloudSpeedToInt)), - wbArray(QNAM, 'X Speed', wbInteger('Layer', itU8, wbCloudSpeedToStr, wbCloudSpeedToInt)) - ], []), - wbArray(PNAM, 'Cloud Colors', wbWeatherColors('Layer')), - wbArray(JNAM, 'Cloud Alphas', wbStruct('Layer', [ - wbFloat('Sunrise'), - wbFloat('Day'), - wbFloat('Sunset'), - wbFloat('Night') - ])), - {>>> not as an array since last entries are omitted in skyrim.esm <<<} - wbStruct(NAM0, 'Weather Colors', [ - wbWeatherColors('Sky-Upper'), - wbWeatherColors('Fog Near'), - wbWeatherColors('Unknown'), - wbWeatherColors('Ambient'), - wbWeatherColors('Sunlight'), - wbWeatherColors('Sun'), - wbWeatherColors('Stars'), - wbWeatherColors('Sky-Lower'), - wbWeatherColors('Horizon'), - wbWeatherColors('Effect Lighting'), - wbWeatherColors('Cloud LOD Diffuse'), - wbWeatherColors('Cloud LOD Ambient'), - wbWeatherColors('Fog Far'), - wbWeatherColors('Sky Statics'), - wbWeatherColors('Water Multiplier'), - wbWeatherColors('Sun Glare'), - wbWeatherColors('Moon Glare') - ], cpNormal, True, nil, 13), - wbStruct(FNAM, 'Fog Distance', [ - wbFloat('Day - Near'), - wbFloat('Day - Far'), - wbFloat('Night - Near'), - wbFloat('Night - Far'), - wbFloat('Day - Power'), - wbFloat('Night - Power'), - wbFloat('Day - Max'), - wbFloat('Night - Max') - ], cpNormal, True), - wbStruct(DATA, 'Data', [ - wbInteger('Wind Speed', itU8), // scaled 0..1 - wbByteArray('Unknown', 2), - wbInteger('Trans Delta', itU8), // scaled 0..0,25 - wbInteger('Sun Glare', itU8), // scaled 0..1 - wbInteger('Sun Damage', itU8), // scaled 0..1 - wbInteger('Precipitation - Begin Fade In', itU8), // scaled 0..1 - wbInteger('Precipitation - End Fade Out', itU8), // scaled 0..1 - wbInteger('Thunder/Lightning - Begin Fade In', itU8), - wbInteger('Thunder/Lightning - End Fade Out', itU8), - wbInteger('Thunder/Lightning - Frequency', itU8), - wbInteger('Flags', itU8, wbFlags([ - {0x01} 'Weather - Pleasant', - {0x02} 'Weather - Cloudy', - {0x04} 'Weather - Rainy', - {0x08} 'Weather - Snow', - {0x10} 'Sky Statics - Always Visible', - {0x20} 'Sky Statics - Follows Sun Position' - ])), - wbStruct('Lightning Color', [ - wbInteger('Red', itU8), - wbInteger('Green', itU8), - wbInteger('Blue', itU8) - ]), - wbInteger('Visual Effect - Begin', itU8), // scaled 0..1 - wbInteger('Visual Effect - End', itU8), // scaled 0..1 - wbInteger('Wind Direction', itU8), // scaled 0..360 - wbInteger('Wind Direction Range', itU8) // scaled 0..180 - ], cpNormal, True), - wbInteger(NAM1, 'Disabled Cloud Layers', itU32, wbFlags(['0','1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31'])), - wbRArray('Sounds', - wbStruct(SNAM, 'Sound', [ - wbFormIDCK('Sound', [SNDR, SOUN, NULL]), - wbInteger('Type', itU32, wbEnum([ - {0x01} 'Default', - {0x02} 'Precipitation', - {0x04} 'Wind', - {0x08} 'Thunder' - ])) - ]) - ), - wbRArrayS('Sky Statics', wbFormIDCk(TNAM, 'Static', [STAT, NULL])), - wbStruct(IMSP, 'Image Spaces', [ - wbFormIDCK('Sunrise', [IMGS, NULL]), - wbFormIDCK('Day', [IMGS, NULL]), - wbFormIDCK('Sunset', [IMGS, NULL]), - wbFormIDCK('Night', [IMGS, NULL]) - ]), - // SSE - wbStruct(HNAM, 'Volumetric Lighting', [ - wbFormIDCK('Sunrise', [VOLI, NULL]), - wbFormIDCK('Day', [VOLI, NULL]), - wbFormIDCK('Sunset', [VOLI, NULL]), - wbFormIDCK('Night', [VOLI, NULL]) - ]), - wbRStruct('Directional Ambient Lighting Colors', [ - wbAmbientColors(DALC, 'Sunrise'), - wbAmbientColors(DALC, 'Day'), - wbAmbientColors(DALC, 'Sunset'), - wbAmbientColors(DALC, 'Night') - ], [], cpNormal, True), - wbByteArray(NAM2, 'Unused', 0, cpIgnore), - wbByteArray(NAM3, 'Unused', 0, cpIgnore), - wbRStruct('Aurora', [wbMODL], []), - wbFormIDCk(GNAM, 'Sun Glare Lens Flare', [LENS]) - ]); - - if IsSSE then begin - wbRecord(VOLI, 'Volumetric Lighting', [ - wbEDID, - wbFloat(CNAM, 'Intensity'), - wbFloat(DNAM, 'Custom Color - Contribution'), - wbFloat(ENAM, 'Red', cpNormal, False, 255, 0), - wbFloat(FNAM, 'Green', cpNormal, False, 255, 0), - wbFloat(GNAM, 'Blue', cpNormal, False, 255, 0), - wbFloat(HNAM, 'Density - Contribution'), - wbFloat(INAM, 'Density - Size'), - wbFloat(JNAM, 'Density - Wind Speed'), - wbFloat(KNAM, 'Density - Falling Speed'), - wbFloat(LNAM, 'Phase Function - Contribution'), - wbFloat(MNAM, 'Phase Function - Scattering'), - wbFloat(NNAM, 'Sampling Repartition - Range Factor') { max 1.0 } - ]); - - wbRecord(LENS, 'Lens Flare', [ - wbEDID, - wbFloat(CNAM, 'Color Influence'), - wbFloat(DNAM, 'Fade Distance Radius Scale'), - wbInteger(LFSP, 'Count', itU32, nil, cpBenign), - wbRArray('Lens Flare Sprites', - wbRStruct('Flare', [ - wbString(DNAM, 'Lens Flare Sprite ID'), - wbString(FNAM, 'Texture'), - wbStruct(LFSD, 'Lens Flare Data', [ - wbFloatColors('Tint'), - wbFloat('Width'), - wbFloat('Height'), - wbFloat('Position'), - wbFloat('Angular Fade'), - wbFloat('Opacity'), - wbInteger('Flags', itU32, wbFlags([ - {0x01} 'Rotates', - {0x02} 'Shrinks When Occluded' - ])) - ]) - ], []), - cpNormal, False, nil, wbLENSAfterSet - ) - ]); - - end; -end; - -{>>> Unused records, they have empty GRUP in skyrim.esm <<<} -procedure DefineTES5p; -begin - wbRecord(CLDC, 'CLDC', [ - wbEDID - ]); - wbRecord(HAIR, 'HAIR', [ - wbEDID - ]); - wbRecord(PWAT, 'PWAT', [ - wbEDID - ]); - wbRecord(RGDL, 'RGDL', [ - wbEDID - ]); - wbRecord(SCOL, 'SCOL', [ - wbEDID - ]); - wbRecord(SCPT, 'SCPT', [ - wbEDID - ]); -end; - -procedure DefineTES5q; -begin - wbAddGroupOrder(GMST); - wbAddGroupOrder(KYWD); - wbAddGroupOrder(LCRT); - wbAddGroupOrder(AACT); - wbAddGroupOrder(TXST); - wbAddGroupOrder(GLOB); - wbAddGroupOrder(CLAS); - wbAddGroupOrder(FACT); - wbAddGroupOrder(HDPT); - wbAddGroupOrder(HAIR);{>>> Unused in Skyrim, but contained in Skyrim.esm <<<} - wbAddGroupOrder(EYES); - wbAddGroupOrder(RACE); - wbAddGroupOrder(SOUN); - wbAddGroupOrder(ASPC); - wbAddGroupOrder(MGEF); - wbAddGroupOrder(SCPT);{>>> Unused in Skyrim, but contained in Skyrim.esm <<<} - wbAddGroupOrder(LTEX); - wbAddGroupOrder(ENCH); - wbAddGroupOrder(SPEL); - wbAddGroupOrder(SCRL); - wbAddGroupOrder(ACTI); - wbAddGroupOrder(TACT); - wbAddGroupOrder(ARMO); - wbAddGroupOrder(BOOK); - wbAddGroupOrder(CONT); - wbAddGroupOrder(DOOR); - wbAddGroupOrder(INGR); - wbAddGroupOrder(LIGH); - wbAddGroupOrder(MISC); - wbAddGroupOrder(APPA); - wbAddGroupOrder(STAT); - wbAddGroupOrder(SCOL);{>>> Unused in Skyrim, but contained in Skyrim.esm <<<} - wbAddGroupOrder(MSTT); - wbAddGroupOrder(PWAT);{>>> Unused in Skyrim, but contained in Skyrim.esm <<<} - wbAddGroupOrder(GRAS); - wbAddGroupOrder(TREE); - wbAddGroupOrder(CLDC);{>>> Unused in Skyrim, but contained in Skyrim.esm <<<} - wbAddGroupOrder(FLOR); - wbAddGroupOrder(FURN); - wbAddGroupOrder(WEAP); - wbAddGroupOrder(AMMO); - wbAddGroupOrder(NPC_); - wbAddGroupOrder(LVLN); - wbAddGroupOrder(KEYM); - wbAddGroupOrder(ALCH); - wbAddGroupOrder(IDLM); - wbAddGroupOrder(COBJ); - wbAddGroupOrder(PROJ); - wbAddGroupOrder(HAZD); - wbAddGroupOrder(SLGM); - wbAddGroupOrder(LVLI); - wbAddGroupOrder(WTHR); - wbAddGroupOrder(CLMT); - wbAddGroupOrder(SPGD); - wbAddGroupOrder(RFCT); - wbAddGroupOrder(REGN); - wbAddGroupOrder(NAVI); - wbAddGroupOrder(CELL); - wbAddGroupOrder(WRLD); - wbAddGroupOrder(DIAL); - wbAddGroupOrder(QUST); - wbAddGroupOrder(IDLE); - wbAddGroupOrder(PACK); - wbAddGroupOrder(CSTY); - wbAddGroupOrder(LSCR); - wbAddGroupOrder(LVSP); - wbAddGroupOrder(ANIO); - wbAddGroupOrder(WATR); - wbAddGroupOrder(EFSH); - wbAddGroupOrder(EXPL); - wbAddGroupOrder(DEBR); - wbAddGroupOrder(IMGS); - wbAddGroupOrder(IMAD); - wbAddGroupOrder(FLST); - wbAddGroupOrder(PERK); - wbAddGroupOrder(BPTD); - wbAddGroupOrder(ADDN); - wbAddGroupOrder(AVIF); - wbAddGroupOrder(CAMS); - wbAddGroupOrder(CPTH); - wbAddGroupOrder(VTYP); - wbAddGroupOrder(MATT); - wbAddGroupOrder(IPCT); - wbAddGroupOrder(IPDS); - wbAddGroupOrder(ARMA); - wbAddGroupOrder(ECZN); - wbAddGroupOrder(LCTN); - wbAddGroupOrder(MESG); - wbAddGroupOrder(RGDL);{>>> Unused in Skyrim, but contained in Skyrim.esm <<<} - wbAddGroupOrder(DOBJ); - wbAddGroupOrder(LGTM); - wbAddGroupOrder(MUSC); - wbAddGroupOrder(FSTP); - wbAddGroupOrder(FSTS); - wbAddGroupOrder(SMBN); - wbAddGroupOrder(SMQN); - wbAddGroupOrder(SMEN); - wbAddGroupOrder(DLBR); - wbAddGroupOrder(MUST); - wbAddGroupOrder(DLVW); - wbAddGroupOrder(WOOP); - wbAddGroupOrder(SHOU); - wbAddGroupOrder(EQUP); - wbAddGroupOrder(RELA); - wbAddGroupOrder(SCEN); - wbAddGroupOrder(ASTP); - wbAddGroupOrder(OTFT); - wbAddGroupOrder(ARTO); - wbAddGroupOrder(MATO); - if IsSSE then wbAddGroupOrder(VOLI); {New to SSE} - wbAddGroupOrder(MOVT); - wbAddGroupOrder(SNDR); - wbAddGroupOrder(DUAL); - wbAddGroupOrder(SNCT); - wbAddGroupOrder(SOPM); - wbAddGroupOrder(COLL); - wbAddGroupOrder(CLFM); - wbAddGroupOrder(REVB); - if IsSSE then wbAddGroupOrder(LENS); {New to SSE} -end; - -procedure DefineTES5; -begin - DefineTES5a; - DefineTES5b; - DefineTES5c; - DefineTES5d; - DefineTES5e; - DefineTES5f; - DefineTES5g; - DefineTES5h; - DefineTES5i; - DefineTES5j; - DefineTES5k; - DefineTES5l; - DefineTES5m; - DefineTES5n; - DefineTES5o; - DefineTES5p; - DefineTES5q; - - if IsSSE then begin - SetLength(wbOfficialDLC, 3); - wbOfficialDLC[0] := 'Dawnguard.esm'; - wbOfficialDLC[1] := 'HearthFires.esm'; - wbOfficialDLC[2] := 'Dragonborn.esm'; - end; - -end; - -initialization -end. diff --git a/lib/xedit/wbHelpers.pas b/lib/xedit/wbHelpers.pas deleted file mode 100644 index 117a6b6..0000000 --- a/lib/xedit/wbHelpers.pas +++ /dev/null @@ -1,1233 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} - -unit wbHelpers; - -{$I wbDefines.inc} - -interface - -uses - Classes, - Windows, - SysUtils, - Graphics, - ShellAPI, - ShlObj, - IniFiles, - Registry, - wbInterface, - Imaging, - ImagingTypes; - -Const - CRCSeed = $ffffffff; -{$IFDEF WIN64} - CRC32tab : Array[0..255] of DWord = ( - $00000000, $77073096, $ee0e612c, $990951ba, $076dc419, $706af48f, - $e963a535, $9e6495a3, $0edb8832, $79dcb8a4, $e0d5e91e, $97d2d988, - $09b64c2b, $7eb17cbd, $e7b82d07, $90bf1d91, $1db71064, $6ab020f2, - $f3b97148, $84be41de, $1adad47d, $6ddde4eb, $f4d4b551, $83d385c7, - $136c9856, $646ba8c0, $fd62f97a, $8a65c9ec, $14015c4f, $63066cd9, - $fa0f3d63, $8d080df5, $3b6e20c8, $4c69105e, $d56041e4, $a2677172, - $3c03e4d1, $4b04d447, $d20d85fd, $a50ab56b, $35b5a8fa, $42b2986c, - $dbbbc9d6, $acbcf940, $32d86ce3, $45df5c75, $dcd60dcf, $abd13d59, - $26d930ac, $51de003a, $c8d75180, $bfd06116, $21b4f4b5, $56b3c423, - $cfba9599, $b8bda50f, $2802b89e, $5f058808, $c60cd9b2, $b10be924, - $2f6f7c87, $58684c11, $c1611dab, $b6662d3d, $76dc4190, $01db7106, - $98d220bc, $efd5102a, $71b18589, $06b6b51f, $9fbfe4a5, $e8b8d433, - $7807c9a2, $0f00f934, $9609a88e, $e10e9818, $7f6a0dbb, $086d3d2d, - $91646c97, $e6635c01, $6b6b51f4, $1c6c6162, $856530d8, $f262004e, - $6c0695ed, $1b01a57b, $8208f4c1, $f50fc457, $65b0d9c6, $12b7e950, - $8bbeb8ea, $fcb9887c, $62dd1ddf, $15da2d49, $8cd37cf3, $fbd44c65, - $4db26158, $3ab551ce, $a3bc0074, $d4bb30e2, $4adfa541, $3dd895d7, - $a4d1c46d, $d3d6f4fb, $4369e96a, $346ed9fc, $ad678846, $da60b8d0, - $44042d73, $33031de5, $aa0a4c5f, $dd0d7cc9, $5005713c, $270241aa, - $be0b1010, $c90c2086, $5768b525, $206f85b3, $b966d409, $ce61e49f, - $5edef90e, $29d9c998, $b0d09822, $c7d7a8b4, $59b33d17, $2eb40d81, - $b7bd5c3b, $c0ba6cad, $edb88320, $9abfb3b6, $03b6e20c, $74b1d29a, - $ead54739, $9dd277af, $04db2615, $73dc1683, $e3630b12, $94643b84, - $0d6d6a3e, $7a6a5aa8, $e40ecf0b, $9309ff9d, $0a00ae27, $7d079eb1, - $f00f9344, $8708a3d2, $1e01f268, $6906c2fe, $f762575d, $806567cb, - $196c3671, $6e6b06e7, $fed41b76, $89d32be0, $10da7a5a, $67dd4acc, - $f9b9df6f, $8ebeeff9, $17b7be43, $60b08ed5, $d6d6a3e8, $a1d1937e, - $38d8c2c4, $4fdff252, $d1bb67f1, $a6bc5767, $3fb506dd, $48b2364b, - $d80d2bda, $af0a1b4c, $36034af6, $41047a60, $df60efc3, $a867df55, - $316e8eef, $4669be79, $cb61b38c, $bc66831a, $256fd2a0, $5268e236, - $cc0c7795, $bb0b4703, $220216b9, $5505262f, $c5ba3bbe, $b2bd0b28, - $2bb45a92, $5cb36a04, $c2d7ffa7, $b5d0cf31, $2cd99e8b, $5bdeae1d, - $9b64c2b0, $ec63f226, $756aa39c, $026d930a, $9c0906a9, $eb0e363f, - $72076785, $05005713, $95bf4a82, $e2b87a14, $7bb12bae, $0cb61b38, - $92d28e9b, $e5d5be0d, $7cdcefb7, $0bdbdf21, $86d3d2d4, $f1d4e242, - $68ddb3f8, $1fda836e, $81be16cd, $f6b9265b, $6fb077e1, $18b74777, - $88085ae6, $ff0f6a70, $66063bca, $11010b5c, $8f659eff, $f862ae69, - $616bffd3, $166ccf45, $a00ae278, $d70dd2ee, $4e048354, $3903b3c2, - $a7672661, $d06016f7, $4969474d, $3e6e77db, $aed16a4a, $d9d65adc, - $40df0b66, $37d83bf0, $a9bcae53, $debb9ec5, $47b2cf7f, $30b5ffe9, - $bdbdf21c, $cabac28a, $53b39330, $24b4a3a6, $bad03605, $cdd70693, - $54de5729, $23d967bf, $b3667a2e, $c4614ab8, $5d681b02, $2a6f2b94, - $b40bbe37, $c30c8ea1, $5a05df1b, $2d02ef8d ); -{$ENDIF} - -function wbDistance(const a, b: TwbVector): Single; overload -function wbDistance(const a, b: IwbMainRecord): Single; overload; -function wbStringToSignatures(aSignatures: string): TwbSignatures; -function wbGetSiblingREFRsWithin(const aMainRecord: IwbMainRecord; aDistance: Single): TDynMainRecords; -function wbGetSiblingRecords(const aElement: IwbElement; aSignatures: TwbSignatures; aOverrides: Boolean): TDynMainRecords; -function FindMatchText(Strings: TStrings; const Str: string): Integer; -function IsFileESM(const aFileName: string): Boolean; -function IsFileESP(const aFileName: string): Boolean; -function IsFileESL(const aFileName: string): Boolean; -procedure DeleteDirectory(const DirName: string); -function FullPathToFilename(aString: string): string; -procedure wbFlipBitmap(aBitmap: TBitmap; MirrorType: Integer); // MirrorType: 1 - horizontal, 2 - vertical, 0 - both -function wbAlphaBlend(DestDC, X, Y, Width, Height, - SrcDC, SrcX, SrcY, SrcWidth, SrcHeight, Alpha: integer): Boolean; -procedure SaveFont(aIni: TMemIniFile; aSection, aName: string; aFont: TFont); -procedure LoadFont(aIni: TMemIniFile; aSection, aName: string; aFont: TFont); -function wbDDSDataToBitmap(aData: TBytes; Bitmap: TBitmap): Boolean; -function wbDDSStreamToBitmap(aStream: TStream; Bitmap: TBitmap): Boolean; -function wbCRC32Data(aData: TBytes): Cardinal; -function wbCRC32File(aFileName: string): Cardinal; -function wbDecodeCRCList(const aList: string): TDynCardinalArray; -function wbSHA1Data(aData: TBytes): string; -function wbSHA1File(aFileName: string): string; -function wbMD5Data(aData: TBytes): string; -function wbMD5File(aFileName: string): string; -function wbIsAssociatedWithExtension(aExt: string): Boolean; -function wbAssociateWithExtension(aExt, aName, aDescr: string): Boolean; - -type - PnxLeveledListCheckCircularStack = ^TnxLeveledListCheckCircularStack; - TnxLeveledListCheckCircularStack = record - rllcLast : PnxLeveledListCheckCircularStack; - rllcMainRecord : IwbMainRecord; - end; - -procedure wbLeveledListCheckCircular(const aMainRecord: IwbMainRecord; aStack: PnxLeveledListCheckCircularStack); - -type - TnxFastStringList = class(TStringList) - protected - function CompareStrings(const S1, S2: string): Integer; override; - public - constructor CreateSorted(aDups : TDuplicates = dupError); - - procedure Clear(aFreeObjects: Boolean = False); reintroduce; - end; - - TnxFastStringListCS = class(TnxFastStringList) - public - procedure AfterConstruction; override; - end; - - TnxFastStringListIC = class(TnxFastStringList) - end; - -function wbExtractNameFromPath(aPathName: String): String; - -function wbCounterAfterSet(aCounterName: String; const aElement: IwbElement): Boolean; -function wbCounterByPathAfterSet(aCounterName: String; const aElement: IwbElement): Boolean; -function wbCounterContainerAfterSet(aCounterName: String; anArrayName: String; const aElement: IwbElement; DeleteOnEmpty: Boolean = True): Boolean; -function wbCounterContainerByPathAfterSet(aCounterName: String; anArrayName: String; const aElement: IwbElement): Boolean; -function wbFormVerDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement; aMinimum: Integer): Integer; -function wbFormVer78Decider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; - -// BSA helper - -function MakeDataFileName(FileName, DataPath: String): String; -function FindBSAs(IniName, DataPath: String; var bsaNames: TStringList; var bsaMissing: TStringList): Integer; -function HasBSAs(ModName, DataPath: String; Exact, modini: Boolean; var bsaNames: TStringList; var bsaMissing: TStringList): Integer; - -implementation - -uses - wbSort; - -procedure wbLeveledListCheckCircular(const aMainRecord: IwbMainRecord; aStack: PnxLeveledListCheckCircularStack); -var - Stack : TnxLeveledListCheckCircularStack; - s : string; - CER : IwbContainerElementRef; - LLE : IwbContainerElementRef; - i : Integer; - LVLO : IwbContainerElementRef; - Reference : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - Stack.rllcLast := aStack; - Stack.rllcMainRecord := aMainRecord; - - while Assigned(aStack) do begin - if aStack.rllcMainRecord.LoadOrderFormID = aMainRecord.LoadOrderFormID then begin - s := aMainRecord.Name; - aStack := Stack.rllcLast; - while Assigned(aStack) do begin - s := ' -> ' + s; - s := aStack.rllcMainRecord.Name + s; - if aStack.rllcMainRecord.LoadOrderFormID = aMainRecord.LoadOrderFormID then - Break; - aStack := aStack.rllcLast; - end; - s := 'Circular Leveled List found: ' + s; - raise Exception.Create(s); - end; - aStack := aStack.rllcLast; - end; - - if aMainRecord.IsTagged then - Exit; - aMainRecord.Tag; - - if Supports(aMainRecord, IwbContainerElementRef, CER) then begin - if Supports(CER.ElementByName['Leveled List Entries'], IwbContainerElementRef, LLE) then begin - for i := 0 to Pred(LLE.ElementCount) do - if Supports(LLE.Elements[i], IwbContainerElementRef, LVLO) then begin - if Supports(LVLO.ElementByName['Reference'], IwbContainerElementRef, Reference) then begin - if Supports(Reference.LinksTo, IwbMainRecord, MainRecord) then begin - if (MainRecord.Signature = aMainRecord.Signature) then begin - MainRecord := MainRecord.WinningOverride; - wbLeveledListCheckCircular(MainRecord, @Stack); - end; - end; - end; - end; - end; - end; -end; - -function Vec3Subtract(out vOut: TwbVector; const v1, v2: TwbVector): TwbVector; -begin - with vOut do - begin - x:= v1.x - v2.x; - y:= v1.y - v2.y; - z:= v1.z - v2.z; - end; - Result := vOut; -end; - -function Vec3Length(const v: TwbVector): Single; -begin - with v do Result:= Sqrt(x*x + y*y + z*z); -end; - -function wbDistance(const a, b: TwbVector): Single; -var - t: TwbVector; -begin - Result := Vec3Length(Vec3Subtract(t,a,b)); -end; - -function wbDistance(const a, b: IwbMainRecord): Single; overload; -var - PosA, PosB: TwbVector; -begin - if not a.GetPosition(PosA) then - raise Exception.Create('GetPosition failed'); - if not b.GetPosition(PosB) then - raise Exception.Create('GetPosition failed'); - Result := wbDistance(PosA, PosB); -end; - -function wbStringToSignatures(aSignatures: string): TwbSignatures; -var - i: integer; - s: AnsiString; -begin - with TStringList.Create do try - if Pos(',', aSignatures) <> 0 then Delimiter := ',' else Delimiter := ' '; - StrictDelimiter := True; - DelimitedText := aSignatures; - for i := 0 to Pred(Count) do begin - s := AnsiString(Strings[i]); - if Length(s) >= SizeOf(TwbSignature) then begin - SetLength(Result, Succ(Length(Result))); - System.Move(s[1], Result[Pred(Length(Result))][0], SizeOf(TwbSignature)); - end; - end; - finally - Free; - end; -end; - -function wbGetSiblingREFRsWithin(const aMainRecord: IwbMainRecord; aDistance: Single): TDynMainRecords; -var - Count : Integer; - Position : TwbVector; - MaxLoadOrder: Integer; - - procedure FindREFRs(const aElement: IwbElement); - var - MainRecord : IwbMainRecord; - Container : IwbContainerElementRef; - i : Integer; - Temp : TwbVector; - begin - if Supports(aElement, IwbMainRecord, MainRecord) then begin - if not (aMainRecord.LoadOrderFormID = MainRecord.LoadOrderFormID) and - MainRecord.GetPosition(Temp) and - (wbDistance(Temp,Position) <= aDistance) then begin - - if High(Result) < Count then - SetLength(Result, Length(Result) * 2); - Result[Count] := MainRecord.HighestOverrideOrSelf[MaxLoadOrder]; - Inc(Count); - - end; - end else - if Supports(aElement, IwbContainerElementRef, Container) then - for i := 0 to Pred(Container.ElementCount) do - FindREFRs(Container.Elements[i]); - end; - -var - GroupRecord : IwbGroupRecord; - CellMaster : IwbMainRecord; - i, j : Integer; -begin - Result := nil; - if not aMainRecord.GetPosition(Position) then - Exit; - if not Supports(aMainRecord.Container, IwbGroupRecord, GroupRecord) then - Exit; - if not (GroupRecord.GroupType in [8..10]) then - Exit; - CellMaster := GroupRecord.ChildrenOf; - if not Assigned(CellMaster) then - Exit; - CellMaster := CellMaster.MasterOrSelf; - MaxLoadOrder := aMainRecord._File.LoadOrder; - - Count := 0; - SetLength(Result, 1024); - FindREFRs(CellMaster.ChildGroup); - for i := 0 to Pred(CellMaster.OverrideCount) do - if CellMaster.Overrides[i]._File.LoadOrder <= aMainRecord._File.LoadOrder then - FindREFRs(CellMaster.Overrides[i]) - else - Break; - SetLength(Result, Count); - - - if Length(Result) > 1 then begin - wbMergeSort(@Result[0], Length(Result), CompareElementsFormIDAndLoadOrder); - - j := 0; - for i := Succ(Low(Result)) to High(Result) do begin - if (Result[j].LoadOrderFormID <> Result[i].LoadOrderFormID) and not (Result[j].IsDeleted) then - Inc(j); - if j <> i then - Result[j] := Result[i]; - end; - SetLength(Result, Succ(j)); - end; -end; - -function wbGetSiblingRecords(const aElement: IwbElement; aSignatures: TwbSignatures; aOverrides: Boolean): TDynMainRecords; - - procedure FindRecords(const aElement: IwbElement; var aSignatures: TwbSignatures; var Records: TDynMainRecords; var Count: Integer); - var - MainRecord : IwbMainRecord; - Container : IwbContainerElementRef; - i : Integer; - begin - if Supports(aElement, IwbMainRecord, MainRecord) then begin - for i := Low(aSignatures) to High(aSignatures) do - if MainRecord.Signature = aSignatures[i] then begin - if High(Records) < Count then - SetLength(Records, Length(Records) * 2); - Records[Count] := MainRecord; - Inc(Count); - Break; - end; - end else if Supports(aElement, IwbContainerElementRef, Container) then - for i := 0 to Pred(Container.ElementCount) do - FindRecords(Container.Elements[i], aSignatures, Records, Count); - end; - -var - MainRecord, Master : IwbMainRecord; - i, j, Count : Integer; -begin - Count := 0; - SetLength(Result, 4096); - if Supports(aElement, IwbMainRecord, MainRecord) then begin - FindRecords(MainRecord.ChildGroup, aSignatures, Result, Count); - // include overrides from plugins loaded later for that record - if aOverrides then begin - Master := MainRecord.MasterOrSelf; - for i := 0 to Pred(Master.OverrideCount) do - if Master.Overrides[i]._File.LoadOrder > MainRecord._File.LoadOrder then - FindRecords(Master.Overrides[i].ChildGroup, aSignatures, Result, Count); - end; - end else - // if Group or File object is passed, no overrides - FindRecords(aElement, aSignatures, Result, Count); - - SetLength(Result, Count); - // removing duplicates (overridden records) - if aOverrides and (Length(Result) > 1) then begin - wbMergeSort(@Result[0], Length(Result), CompareElementsFormIDAndLoadOrder); - j := 0; - for i := Succ(Low(Result)) to High(Result) do begin - if Result[j].LoadOrderFormID <> Result[i].LoadOrderFormID then - Inc(j); - if j <> i then - Result[j] := Result[i]; - end; - SetLength(Result, Succ(j)); - end; -end; - -function FindMatchText(Strings: TStrings; const Str: string): Integer; -begin - for Result := 0 to Strings.Count-1 do - if SameText(Strings[Result], Str) then - Exit; - Result := -1; -end; - -function IsFileESM(const aFileName: string): Boolean; -const - ghostesm = '.esm.ghost'; -begin - Result := SameText(ExtractFileExt(aFileName), '.esm') or - SameText(Copy(aFileName, Length(aFileName) - Length(ghostesm) + 1, Length(ghostesm)), ghostesm) -end; - -function IsFileESP(const aFileName: string): Boolean; -const - ghostesp = '.esp.ghost'; -begin - Result := SameText(ExtractFileExt(aFileName), '.esp') or - SameText(Copy(aFileName, Length(aFileName) - Length(ghostesp) + 1, Length(ghostesp)), ghostesp) -end; - -function IsFileESL(const aFileName: string): Boolean; -const - ghostesp = '.esl.ghost'; -begin - Result := SameText(ExtractFileExt(aFileName), '.esl') or - SameText(Copy(aFileName, Length(aFileName) - Length(ghostesp) + 1, Length(ghostesp)), ghostesp) -end; - -procedure DeleteDirectory(const DirName: string); -var - FileOp: TSHFileOpStruct; -begin - FillChar(FileOp, SizeOf(FileOp), 0); - FileOp.wFunc := FO_DELETE; - FileOp.pFrom := PChar(DirName+#0);//double zero-terminated - FileOp.fFlags := FOF_SILENT or FOF_NOERRORUI or FOF_NOCONFIRMATION; - SHFileOperation(FileOp); -end; - -function FullPathToFilename(aString: string): string; -var - i: Integer; - s: string; -begin - s := aString; - for i := Length(s) downto 1 do - if Copy(s, i, 3) = ' \ ' then begin - Delete(s, i, 1); - Delete(s, i+1, 1); - end else if Copy(s, i, 2) = ' \' then begin - Delete(s, i, 1); - end else if s[i] = '"' then - s[i] := '''' - else if s[i] = ':' then - s[i] := '-' - else if s[i] = '/' then - s[i] := ' '; - while (Length(s)>0) and (s[Length(s)]=' ') do - Delete(s, Length(s), 1); - Result := s; -end; - -procedure wbFlipBitmap(aBitmap: TBitmap; MirrorType: Integer); -var - MemBmp: TBitmap; - Dest: TRect; -begin - if not Assigned(aBitmap) then - Exit; - - MemBmp := TBitmap.Create; - try - MemBmp.Assign(aBitmap); - case MirrorType of - 1: - begin - Dest.Left := MemBmp.Width; - Dest.Top := 0; - Dest.Right := -MemBmp.Width; - Dest.Bottom := MemBmp.Height - end; - 2: - begin - Dest.Left := 0; - Dest.Top := MemBmp.Height; - Dest.Right := MemBmp.Width; - Dest.Bottom := -MemBmp.Height - end; - 0: - begin - Dest.Left := MemBmp.Width; - Dest.Top := MemBmp.Height; - Dest.Right := -MemBmp.Width; - Dest.Bottom := -MemBmp.Height - end; - end; - StretchBlt(MemBmp.Canvas.Handle, Dest.Left, Dest.Top, Dest.Right, Dest.Bottom, - MemBmp.Canvas.Handle, 0, 0, MemBmp.Width, MemBmp.Height, - SRCCOPY); - aBitmap.Assign(MemBmp); - finally - FreeAndNil(MemBmp); - end; -end; - -function wbAlphaBlend(DestDC, X, Y, Width, Height, - SrcDC, SrcX, SrcY, SrcWidth, SrcHeight, Alpha: integer): Boolean; -var - BlendFunc: TBlendFunction; -begin - BlendFunc.BlendOp := AC_SRC_OVER; - BlendFunc.BlendFlags := 0; - BlendFunc.SourceConstantAlpha := Alpha; - if Alpha = 255 then - BlendFunc.AlphaFormat := AC_SRC_ALPHA - else - BlendFunc.AlphaFormat := 0; - Result := Windows.AlphaBlend(DestDC, X, Y, Width, Height, SrcDC, SrcX, SrcY, SrcWidth, SrcHeight, BlendFunc); -end; - -procedure SaveFont(aIni: TMemIniFile; aSection, aName: string; aFont: TFont); -begin - aIni.WriteString(aSection, aName + 'Name', aFont.Name); - aIni.WriteInteger(aSection, aName + 'CharSet', aFont.CharSet); - aIni.WriteInteger(aSection, aName + 'Color', aFont.Color); - aIni.WriteInteger(aSection, aName + 'Size', aFont.Size); - aIni.WriteInteger(aSection, aName + 'Style', Byte(aFont.Style)); -end; - -procedure LoadFont(aIni: TMemIniFile; aSection, aName: string; aFont: TFont); -begin - aFont.Name := aIni.ReadString(aSection, aName + 'Name', aFont.Name); - aFont.CharSet := TFontCharSet(aIni.ReadInteger(aSection, aName + 'CharSet', aFont.CharSet)); - aFont.Color := TColor(aIni.ReadInteger(aSection, aName + 'Color', aFont.Color)); - aFont.Size := aIni.ReadInteger(aSection, aName + 'Size', aFont.Size); - aFont.Style := TFontStyles(Byte(aIni.ReadInteger(aSection, aName + 'Style', Byte(aFont.Style)))); -end; - -var - crctbl: array[0..7] of array[0..255] of cardinal; - -procedure CRCInit; -var - c: cardinal; - i, j: integer; -begin; - for i:=0 to 255 do begin; - c:=i; - for j:=1 to 8 do if odd(c) - then c:=(c shr 1) xor $EDB88320 - else c:=(c shr 1); - crctbl[0][i]:=c; - end; - - for i:=0 to 255 do begin; - c:=crctbl[0][i]; - for j:=1 to 7 do begin; - c:=(c shr 8) xor crctbl[0][byte(c)]; - crctbl[j][i]:=c; - end; - end; -end; - -{$IFDEF WIN64} -function crc32_update(inbuffer: pointer; buffersize, crc: DWord): DWord; -// crc-32. Processes 4 bytes at a time. -type - PDWord = ^DWord; - PByte = ^Byte; -var - currptr: pointer; - i: byte; -begin - currptr := inbuffer; - Result := crc; - while buffersize > 4 do - begin - Result := Result xor PDWord(currptr)^; - inc(PByte(currptr), 4); - Result := (Result shr 8) xor Crc32Tab[Byte(Result)]; - Result := (Result shr 8) xor Crc32Tab[Byte(Result)]; - Result := (Result shr 8) xor CRC32Tab[Byte(Result)]; - Result := (Result shr 8) xor crc32Tab[Byte(Result)]; - dec(buffersize, 4); - end; - for i := 1 to buffersize do - begin - Result := CRC32tab[Byte(Result xor DWord(PByte(currptr)^))] xor (Result shr 8); - inc(PByte(currptr), 1); - end; -end; -{$ENDIF} - -Function CRCend( crc : DWord ): DWord; -begin - CRCend := (crc xor CRCSeed); -end; - -function ShaCrcRefresh(OldCRC: cardinal; BufPtr: pointer; BufLen: integer): cardinal; -// Fast CRC32 calculator -// (c) Aleksandr Sharahov 2009 -// Free for any use -{$IFDEF WIN64} -begin - Result := crc32_update(BufPtr, BufLen, OldCRC); -{$ENDIF WIN64} -{$IFDEF WIN32} -asm - test edx, edx - jz @ret - neg ecx - jz @ret - push ebx -@head: - test dl, 3 - jz @bodyinit - movzx ebx, byte [edx] - inc edx - xor bl, al - shr eax, 8 - xor eax, [ebx*4 + crctbl] - inc ecx - jnz @head - pop ebx -@ret: - ret -@bodyinit: - sub edx, ecx - add ecx, 8 - jg @bodydone - push esi - push edi - mov edi, edx - mov edx, eax -@bodyloop: - mov ebx, [edi + ecx - 4] - xor edx, [edi + ecx - 8] - movzx esi, bl - mov eax, [esi*4 + crctbl + 1024*3] - movzx esi, bh - xor eax, [esi*4 + crctbl + 1024*2] - shr ebx, 16 - movzx esi, bl - xor eax, [esi*4 + crctbl + 1024*1] - movzx esi, bh - xor eax, [esi*4 + crctbl + 1024*0] - - movzx esi, dl - xor eax, [esi*4 + crctbl + 1024*7] - movzx esi, dh - xor eax, [esi*4 + crctbl + 1024*6] - shr edx, 16 - movzx esi, dl - xor eax, [esi*4 + crctbl + 1024*5] - movzx esi, dh - xor eax, [esi*4 + crctbl + 1024*4] - - add ecx, 8 - jg @done - - mov ebx, [edi + ecx - 4] - xor eax, [edi + ecx - 8] - movzx esi, bl - mov edx, [esi*4 + crctbl + 1024*3] - movzx esi, bh - xor edx, [esi*4 + crctbl + 1024*2] - shr ebx, 16 - movzx esi, bl - xor edx, [esi*4 + crctbl + 1024*1] - movzx esi, bh - xor edx, [esi*4 + crctbl + 1024*0] - - movzx esi, al - xor edx, [esi*4 + crctbl + 1024*7] - movzx esi, ah - xor edx, [esi*4 + crctbl + 1024*6] - shr eax, 16 - movzx esi, al - xor edx, [esi*4 + crctbl + 1024*5] - movzx esi, ah - xor edx, [esi*4 + crctbl + 1024*4] - - add ecx, 8 - jle @bodyloop - mov eax, edx -@done: - mov edx, edi - pop edi - pop esi -@bodydone: - sub ecx, 8 - jl @tail - pop ebx - ret -@tail: - movzx ebx, byte [edx + ecx]; - xor bl,al; - shr eax,8; - xor eax, [ebx*4 + crctbl]; - inc ecx; - jnz @tail; - pop ebx - ret -{$ENDIF WIN32} -end; - -function wbCRC32Data(aData: TBytes): Cardinal; -begin - Result := not ShaCrcRefresh($FFFFFFFF, @aData[0], Length(aData)); -end; - -function wbCRC32File(aFileName: string): Cardinal; -var - Data: TBytes; -begin - Result := 0; - if FileExists(aFileName) then - with TFileStream.Create(aFileName, fmOpenRead + fmShareDenyNone) do try - SetLength(Data, Size); - ReadBuffer(Data[0], Length(Data)); - Result := wbCRC32Data(Data); - finally - Free; - end; -end; - -function wbDecodeCRCList(const aList: string): TDynCardinalArray; -var - i: Integer; - s: string; - j: Int64; -begin - Result := nil; - try - with TStringList.Create do try - CommaText := aList; - for i := 0 to Pred(Count) do begin - s := Trim(Strings[i]); - if Length(s) <> 8 then - Abort; - j := StrToInt64('$'+s); - if (j < Low(Cardinal)) or (j > High(Cardinal)) then - Abort; - SetLength(Result, Succ(Length(Result))); - Result[High(Result)] := j; - end; - finally - Free; - end; - except - SetLength(Result, 1); - Result[0] := $FFFFFFFF; - end; -end; - -function CryptAcquireContext(var phProv: DWORD; - pszContainer, pszProvider: LPCSTR; dwProvType, dwFlags: DWORD): BOOL; - stdcall; external advapi32 name 'CryptAcquireContextA'; -function CryptCreateHash(hProv,Algid,hKey,dwFlags: DWORD; - var phHash: DWORD): BOOL; stdcall; external advapi32; -function CryptHashData(hHash: DWORD; pbData: PBYTE; dwDataLen, - dwFlags: DWORD): BOOL; stdcall; external advapi32; -function CryptGetHashParam(hHash, dwParam: DWORD; pbData: PBYTE; - var pdwDataLen: DWORD; dwFlags: DWORD): BOOL; stdcall; external advapi32; -function CryptDestroyHash(hHash: DWORD): BOOL; stdcall; external advapi32; -function CryptReleaseContext(hProv: DWORD; dwFlags: DWORD): BOOL; stdcall; external advapi32; - -function CryptoAPIGetHash(Data: Pointer; nSize: Cardinal; HashType: Cardinal): TBytes; -const - HP_HASHVAL = $0002; {hash value} - PROV_RSA_FULL = 1; - CRYPT_VERIFYCONTEXT = $F0000000; -var - hProv, hHash: Cardinal; -begin - if CryptAcquireContext(hProv, nil, nil, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT) then try - if CryptCreateHash(hProv, HashType, 0, 0, hHash) then try - if CryptHashData(hHash, Data, nSize, 0) then begin - if CryptGetHashParam(hHash, HP_HASHVAL, nil, nSize, 0) then begin - SetLength(Result, nSize); - if not CryptGetHashParam(hHash, HP_HASHVAL, @Result[0], nSize, 0) then - SetLength(Result, 0); - end; - end; - finally - CryptDestroyHash(hHash); - end; - finally - CryptReleaseContext(hProv, 0); - end; -end; - -const - ALG_CRC32 = $0001; - ALG_MD2 = $8001; - ALG_MD4 = $8002; - ALG_MD5 = $8003; - ALG_SHA = $8004; - -function wbCryptoApiHashData(aData: TBytes; aALG: Cardinal): string; - function BytesToHexStr(aBytes: TBytes): string; - var - i: Cardinal; - bt: Byte; - const - Hex = '0123456789abcdef'; - begin - Result:= ''; - for i:= Low(aBytes) to High(aBytes) do begin - bt := aBytes[i]; - Result:= Result + Hex[bt shr $4 + 1] + Hex[bt and $0f + 1] - end; - end; -begin - Result := BytesToHexStr(CryptoAPIGetHash(@aData[0], Length(aData), aALG)); -end; - -function wbSHA1Data(aData: TBytes): string; -begin - Result := wbCryptoApiHashData(aData, ALG_SHA); -end; - -function wbSHA1File(aFileName: string): string; -var - Data: TBytes; -begin - Result := ''; - if FileExists(aFileName) then - with TFileStream.Create(aFileName, fmOpenRead + fmShareDenyNone) do try - SetLength(Data, Size); - ReadBuffer(Data[0], Length(Data)); - Result := wbSHA1Data(Data); - finally - Free; - end; -end; - -function wbMD5Data(aData: TBytes): string; -begin - Result := wbCryptoApiHashData(aData, ALG_MD5); -end; - -function wbMD5File(aFileName: string): string; -var - Data: TBytes; -begin - Result := ''; - if FileExists(aFileName) then - with TFileStream.Create(aFileName, fmOpenRead + fmShareDenyNone) do try - SetLength(Data, Size); - ReadBuffer(Data[0], Length(Data)); - Result := wbMD5Data(Data); - finally - Free; - end; -end; - - -{ TnxFastStringList } - -procedure TnxFastStringList.Clear(aFreeObjects: Boolean); -var - i: Integer; -begin - if aFreeObjects then - for i := 0 to Pred(Count) do - Objects[i].Free; - inherited Clear; -end; - -function TnxFastStringList.CompareStrings(const S1, S2: string): Integer; -begin - {x$IFDEF DCC6OrLater} - if CaseSensitive then - Result := CompareStr(S1, S2) - else - {x$ENDIF} - Result := CompareText(S1, S2); -end; - -constructor TnxFastStringList.CreateSorted(aDups: TDuplicates); -begin - Create; - Duplicates := aDups; - Sorted := True; -end; - -{ TnxFastStringListCS } - -procedure TnxFastStringListCS.AfterConstruction; -begin - inherited; - {x$IFDEF DCC6OrLater} - CaseSensitive := True; - {x$ENDIF} -end; - -function wbExtractNameFromPath(aPathName: String): String; -begin - Result := aPathName; - while Pos('\', Result)>0 do - Delete(Result, 1, Pos('\', Result)) -end; - -function wbCounterAfterSet(aCounterName: String; const aElement: IwbElement): Boolean; -var - Element : IwbElement; - Container : IwbContainer; - SelfAsContainer : IwbContainer; -begin - Result := False; - if wbBeginInternalEdit then try - if (Length(aCounterName)>=4) and Supports(aElement.Container, IwbContainer, Container) and - Supports(aElement, IwbContainer, SelfAsContainer) then begin - Element := Container.ElementByName[aCounterName]; - if not Assigned(Element) then // Signatures not listed in mrDef cannot be added - Element := Container.Add(Copy(aCounterName, 1, 4)); - if Assigned(Element) and (SameText(Element.Name, aCounterName)) then try - if (Element.GetNativeValue<>SelfAsContainer.GetElementCount) then - Element.SetNativeValue(SelfAsContainer.GetElementCount); - Result := True; - except - // No exception if the value cannot be set, expected non value - end; - end; - finally - wbEndInternalEdit; - end; -end; - -function wbCounterByPathAfterSet(aCounterName: String; const aElement: IwbElement): Boolean; -var - Element : IwbElement; - Container : IwbContainer; - SelfAsContainer : IwbContainer; -begin - Result := False; - if wbBeginInternalEdit then try - if (Length(aCounterName)>=4) and Supports(aElement.Container, IwbContainer, Container) and - Supports(aElement, IwbContainer, SelfAsContainer) then begin - Element := Container.ElementByPath[aCounterName]; -// if not Assigned(Element) then // Signatures not listed in mrDef cannot be added -// Element := Container.Add(Copy(aCounterName, 1, 4)); - if Assigned(Element) and (SameText(Element.Name, wbExtractNameFromPath(aCounterName))) then try - if (Element.GetNativeValue<>SelfAsContainer.GetElementCount) then - Element.SetNativeValue(SelfAsContainer.GetElementCount); - Result := True; - except - // No exception if the value cannot be set, expected non value - end; - end; - finally - wbEndInternalEdit; - end; -end; - -function wbCounterContainerAfterSet(aCounterName: String; anArrayName: String; const aElement: IwbElement; DeleteOnEmpty: Boolean = True): Boolean; -var - Element : IwbElement; - Elems : IwbElement; - Container : IwbContainer; -begin - Result := False; // You may need to check alterative counter name - if wbBeginInternalEdit then try - if Supports(aElement, IwbContainer, Container) then begin - Element := Container.ElementByName[aCounterName]; - Elems := Container.ElementByName[anArrayName]; - if Assigned(Element) then begin - if not Assigned(Elems) then - if DeleteOnEmpty then - Container.RemoveElement(aCounterName) - else if Element.GetNativeValue <> 0 then - Element.SetNativeValue(0); - Result := True; // Counter member exists - end; - end; - finally - wbEndInternalEdit; - end; -end; - -function wbCounterContainerByPathAfterSet(aCounterName: String; anArrayName: String; const aElement: IwbElement): Boolean; -var - Element : IwbElement; - Elems : IwbElement; - Container : IwbContainer; -begin - Result := False; // You may need to check alterative counter name - if wbBeginInternalEdit then try - if Supports(aElement, IwbContainer, Container) then begin - Element := Container.ElementByPath[aCounterName]; - Elems := Container.ElementByName[anArrayName]; - if Assigned(Element) then begin - if not Assigned(Elems) then - if Element.GetNativeValue <> 0 then - Element.SetNativeValue(0); - Result := True; // Counter member exists - end; - end; - finally - wbEndInternalEdit; - end; -end; - -// BSA helper - -function MakeDataFileName(FileName, DataPath: String): String; -begin - // MO uses 3 chars aliases - if Length(FileName) < 3 then - Result := '' - else if not ((FileName[1] = '\') or (FileName[2] = ':')) then - Result := DataPath + FileName - else - Result := FileName; -end; - -function FindBSAs(IniName, DataPath: String; var bsaNames: TStringList; var bsaMissing: TStringList): Integer; -var - i: Integer; - j: Integer; - s: String; - t: String; -begin - Result := 0; - j := 0; - if Assigned(bsaNames) then - j := bsaNames.Count; - if Assigned(bsaMissing) then - j := j + bsaMissing.Count; - - if Assigned(bsaNames) then - // TIniFile uses GetPrivateProfileString() to read data, it is virtualized by MO - // TMemIniFile reads from string list directly, not supported by MO - with TIniFile.Create(iniName) do try - with TStringList.Create do try - if wbGameMode in [gmTES4, gmFO3, gmFNV] then - Text := StringReplace(ReadString('Archive', 'sArchiveList', ''), ',' ,#10, [rfReplaceAll]) - else if wbGameMode in [ gmTES5, gmSSE ] then - Text := StringReplace( - ReadString('Archive', 'sResourceArchiveList', '') + ',' + - ReadString('Archive', 'sResourceArchiveList2', ''), - ',', #10, [rfReplaceAll] - ) - else if wbGameMode = gmFO4 then - Text := StringReplace( - ReadString('Archive', 'sResourceIndexFileList', '') + ',' + - ReadString('Archive', 'sResourceStartUpArchiveList', '') + ',' + - ReadString('Archive', 'sResourceArchiveList', '') + ',' + - ReadString('Archive', 'sResourceArchiveList2', ''), - ',', #10, [rfReplaceAll] - ); - for i := 0 to Pred(Count) do begin - s := Trim(Strings[i]); - t := MakeDataFileName(s, DataPath); - if (Length(t)>0) then - if FileExists(t) then begin - if wbContainerHandler.ContainerExists(t) then - Continue; - bsaNames.Add(s); - end else - if Assigned(bsaMissing) then - bsaMissing.Add(s); - end; - Result := bsaNames.Count + bsaMissing.Count - j; // How many were added - finally - Free; - end; - finally - Free; - end; -end; - -function HasBSAs(ModName, DataPath: String; Exact, modini: Boolean; var bsaNames: TStringList; var bsaMissing: TStringList): Integer; -var - j: Integer; - t: String; - F: TSearchRec; -begin - Result := 0; - j := 0; - if Assigned(bsaNames) then - j := bsaNames.Count; - if Assigned(bsaMissing) then - j := j + bsaMissing.Count; - // All games prior to Skyrim load BSA files with partial matching, Skyrim requires exact name match and - // can use a private ini to specify the bsa to use. - if not exact then - ModName := ModName + '*'; - if FindFirst(DataPath + ModName + wbArchiveExtension, faAnyFile, F) = 0 then try - repeat - if wbContainerHandler.ContainerExists(DataPath + F.Name) then - Continue; - t := MakeDataFileName(F.Name, DataPath); - if (Length(t)>0) and FileExists(t) then begin - if not wbContainerHandler.ContainerExists(t) then - if Assigned(bsaNames) then - bsaNames.Add(F.Name); - end else - if Assigned(bsaMissing) then - bsaMissing.Add(F.Name); - until FindNext(F) <> 0; - Result := bsaNames.Count + bsaMissing.Count - j; - finally - FindClose(F); - end; - - if modIni then - Result := Result + FindBSAs(DataPath+ChangeFileExt(ModName, '.ini'), DataPath, bsaNames, bsaMissing); -end; - -function wbDDSDataToBitmap(aData: TBytes; Bitmap: TBitmap): Boolean; -var - img: TImageData; - ms: TMemoryStream; -begin - Result := False; - if not LoadImageFromMemory(@aData[0], Length(aData), img) then - Exit; - ms := TMemoryStream.Create; - try - if SaveImageToStream('BMP', ms, img) then begin - ms.Position := 0; - Bitmap.LoadFromStream(ms); - Result := True; - end; - finally - FreeImage(img); - ms.Free; - end; -end; - -function wbDDSStreamToBitmap(aStream: TStream; Bitmap: TBitmap): Boolean; -var - img: TImageData; - ms: TMemoryStream; -begin - Result := False; - if not LoadImageFromStream(aStream, img) then - Exit; - ms := TMemoryStream.Create; - try - if SaveImageToStream('BMP', ms, img) then begin - ms.Position := 0; - Bitmap.LoadFromStream(ms); - Result := True; - end; - finally - FreeImage(img); - ms.Free; - end; -end; - -function wbIsAssociatedWithExtension(aExt: string): Boolean; -var - Name: string; -begin - Result := False; - with TRegistry.Create do try - RootKey := HKEY_CURRENT_USER; - if OpenKey('\Software\Classes\' + LowerCase(aExt), False) then begin - Name := ReadString(''); - if OpenKey('\Software\Classes\' + Name + '\DefaultIcon', False) then - if SameText(ReadString(''), ParamStr(0)) then - Result := True; - end; - finally - Free; - end; -end; - -function wbAssociateWithExtension(aExt, aName, aDescr: string): Boolean; -begin - Result := False; - - if aExt = '' then - Exit - else - aExt := LowerCase(aExt); - - if aExt[1] <> '.' then - aExt := '.' + aExt; - - with TRegistry.Create do try - RootKey := HKEY_CURRENT_USER; - - if OpenKey('\Software\Classes\' + aExt, True) then - WriteString('', aName) - else - raise Exception.Create('Not enough rights to modify the registry'); - - if OpenKey('\Software\Classes\' + aName, True) then - WriteString('', aDescr); - - if OpenKey('\Software\Classes\' + aName + '\DefaultIcon', True) then - WriteString('', ParamStr(0)); - - if OpenKey('\Software\Classes\' + aName + '\shell\open\command', True) then - WriteString('', ParamStr(0) + ' "%1"'); - - Result := True; - finally - Free; - end; - - SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil); -end; - -function wbFormVerDecider(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement; aMinimum: Integer): Integer; -var - FormVer : Integer; - MainRecord : IwbMainRecord; - Element : IwbElement; -begin - Result := 1; - if not Assigned(aElement) then Exit; - MainRecord := aElement.GetContainingMainRecord; - if not Assigned(MainRecord) then Exit; - - Element := MainRecord.ElementByPath['Record Header\Form Version']; - if Assigned(Element) then begin - FormVer := Element.NativeValue; - if FormVer 0) and not Assigned(wbKeepAliveRoot) then - wbKeepAliveRoot := wbCreateKeepAliveRoot; -end; - -function wbEndKeepAlive: Integer; -begin - Result := Pred(wbKeepAliveCount); - wbKeepAliveCount := Result; - if Result = 0 then - wbKeepAliveRoot := nil; -end; - -const - TheEmptyPlugin = 'SavesEmptyPlugin.esp'; - -type - TwbMainRecordEntryHeader = record - mrehGeneration : Cardinal; - mrehHead : Pointer; - mrehTail : Pointer; - mrehCount : Cardinal; - mrehInUse : Boolean; - - procedure BeginUse; - procedure EndUse; - end; - -var - mreHeader: TwbMainRecordEntryHeader; - -function wbCopyElementToFile(const aSource: IwbElement; aFile: IwbFile; aAsNew, aDeepCopy: Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; -var - MainRecord : IwbMainRecord; - Container : IwbContainer; - Target : IwbElement; -begin - Inc(wbCopyIsRunning); - try - if (wbCurrentTick>0) and (wbCurrentTick+500 UpCase(t[i]) then - Exit; - Result := True; -end; - -type - IwbElementInternal = interface(IwbElement) - ['{556DF03C-2723-46FC-99C6-F50BB5E66F86}'] - procedure SetContainer(const aContainer: IwbContainer); - procedure SetSortOrder(aIndex: Integer); - procedure SetMemoryOrder(aIndex: Integer); - function GetMemoryOrder: Integer; - procedure SetModified(aValue: Boolean); - procedure SetInternalModified(aValue: Boolean); - function GetCountedRecordCount: Cardinal; - procedure PrepareSave; - procedure MasterCountUpdated(aOld, aNew: Byte); - procedure MasterIndicesUpdated(const aOld, aNew: TBytes); - procedure FindUsedMasters(aMasters: PwbUsedMasters); - procedure InvalidateStorage; - function Reached: Boolean; - - function BeginDecide: Boolean; - procedure EndDecide; - - property Modified: Boolean - read GetModified - write SetModified; - - property MemoryOrder: Integer - read GetMemoryOrder - write SetMemoryOrder; - - property InternalModified: Boolean - write SetInternalModified; - end; - - TwbElement = class(TInterfacedObject, IInterface, IwbElement, IwbElementInternal) - protected - eContainer : Pointer{IwbContainer}; //weak reference - eSortOrder : Integer; - eMemoryOrder : Integer; - eStates : TwbElementStates; - eSortKey : string; - eExtendedSortKey : string; - - eExternalRefs : Integer; - eContainerRef : IwbContainerElementRef; - - eUpdateCount : Integer; - - {---IInterface---} - function _AddRef: Integer; virtual; stdcall; - function _Release: Integer; virtual; stdcall; - - {---IwbElementInternal---} - function InternalAddRef: Integer; stdcall; - function InternalRelease: Integer; stdcall; - function IwbElementInternal._AddRef = InternalAddRef; - function IwbElementInternal._Release = InternalRelease; - function GetCountedRecordCount: Cardinal; virtual; - procedure PrepareSave; virtual; - procedure MasterCountUpdated(aOld, aNew: Byte); virtual; - procedure MasterIndicesUpdated(const aOld, aNew: TBytes); virtual; - procedure FindUsedMasters(aMasters: PwbUsedMasters); virtual; - procedure InvalidateStorage; virtual; - procedure InvalidateParentStorage; virtual; - function Reached: Boolean; virtual; - function LinksToParent: Boolean; virtual; - procedure SetMemoryOrder(aIndex: Integer); - function GetMemoryOrder: Integer; - - function BeginDecide: Boolean; - procedure EndDecide; - - procedure NotifyChanged(aContainer: Pointer); - procedure NotifyChangedInternal(aContainer: Pointer); virtual; - - procedure ReportRequiredMasters(aStrings: TStrings; aAsNew: Boolean; Recursive: Boolean = True; Initial: Boolean = false); virtual; - - function GetElementID: Cardinal; - function GetElementStates: TwbElementStates; - procedure SetElementState(aState: TwbElementState; Clear: Boolean = false); - function Equals(const aElement: IwbElement): Boolean; reintroduce; - - procedure Hide; - procedure Show; - function GetIsHidden: Boolean; - - function HasErrors: Boolean; virtual; - - function GetValue: string; virtual; - function GetCheck: string; virtual; - function GetSortKey(aExtended: Boolean): string; virtual; - function GetSortKeyInternal(aExtended: Boolean): string; virtual; - function GetSortPriority: Integer; virtual; - function GetName: string; virtual; - function GetBaseName: string; virtual; - function GetDisplayName: string; virtual; - function GetShortName: string; virtual; - function GetPath: string; virtual; - function GetFullPath: string; virtual; - function GetPathName: string; virtual; - function GetSkipped: Boolean; virtual; - function GetDef: IwbNamedDef; virtual; - function GetValueDef: IwbValueDef; virtual; - function GetResolvedValueDef: IwbValueDef; virtual; - function GetElementType: TwbElementType; virtual; - procedure DoReset(aForce: Boolean); virtual; - function GetContainer: IwbContainer; - function GetContainingMainRecord: IwbMainRecord; virtual; - function GetFile: IwbFile; virtual; - function GetReferenceFile: IwbFile; virtual; - function GetSortOrder: Integer; - procedure BuildRef; virtual; - procedure AddReferencedFromID(aFormID: Cardinal); virtual; - function CompareExchangeFormID(aOldFormID: Cardinal; aNewFormID: Cardinal): Boolean; virtual; - function GetIsEditable: Boolean; virtual; - function GetIsRemoveable: Boolean; virtual; - function GetEditValue: string; virtual; - procedure SetEditValue(const aValue: string); virtual; - function GetNativeValue: Variant; virtual; - procedure SetNativeValue(const aValue: Variant); virtual; - procedure RequestStorageChange(var aBasePtr, aEndPtr: Pointer; aNewSize: Cardinal); virtual; - function GetConflictPriority: TwbConflictPriority; virtual; - function GetConflictPriorityCanChange: Boolean; virtual; - function GetModified: Boolean; - procedure MarkModifiedRecursive; virtual; - function GetIsInjected: Boolean; virtual; - function GetReferencesInjected: Boolean; virtual; - function GetInjectionSourceFiles: TDynFiles; virtual; - function GetIsNotReachable: Boolean; virtual; - procedure SetModified(aValue: Boolean); virtual; - procedure SetInternalModified(aValue: Boolean); virtual; - function GetDataSize: Integer; virtual; - procedure SetDataSize(aSize: Integer); virtual; - procedure MergeStorage(var aBasePtr: Pointer; aEndPtr: Pointer); - procedure MergeStorageInternal(var aBasePtr: Pointer; aEndPtr: Pointer); virtual; - procedure InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); virtual; - procedure Remove; virtual; - function CanContainFormIDs: Boolean; virtual; - function AddIfMissing(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; - function AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; virtual; - procedure ResetConflict; virtual; - procedure ResetReachable; virtual; - function RemoveInjected(aCanRemove: Boolean): Boolean; virtual; - function GetEditType: TwbEditType; virtual; - function GetEditInfo: string; virtual; - function GetDontShow: Boolean; virtual; - procedure SetToDefault; - procedure SetToDefaultInternal; virtual; - - function CanAssign(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; - function CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; virtual; - function Assign(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; - function AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; virtual; - - procedure WriteToStream(aStream: TStream; aResetModified: Boolean); - procedure WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); virtual; - function GetLinksTo: IwbElement; virtual; - function GetNoReach: Boolean; - - procedure SetContainer(const aContainer: IwbContainer); virtual; - procedure SetSortOrder(aIndex: Integer); - - procedure DoAfterSet(const aOldValue, aNewValue: Variant); virtual; - - procedure MoveUp; - procedure MoveDown; - function CanMoveUp: Boolean; - function CanMoveDown: Boolean; - - procedure NextMember; - procedure PreviousMember; - function CanChangeMember: Boolean; - - procedure Tag; - procedure ResetTags; virtual; - function IsTagged: Boolean; - - function CopyInto(const aFile: IwbFile; aAsNew, aDeepCopy: Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; - - function BeginUpdate: Integer; - function EndUpdate: Integer; - procedure UpdatedEnded; virtual; - - constructor Create(const aContainer: IwbContainer); - procedure BeforeDestruction; override; - procedure AfterConstruction; override; - class function NewInstance: TObject; override; - procedure FreeInstance; override; - - function GetTreeHead: Boolean; // Is the element expected to be a "header record" in the tree navigator - function GetTreeBranch: Boolean; // Is the element expected to show in the tree navigator - end; - - TDynElementInternals = array of IwbElementInternal; - - IwbContainerInternal = interface(IwbContainer) - ['{8D9AC0D3-3961-4320-A036-EB4771B081CD}'] - - function ReleaseElements: TDynElementInternals; - procedure ElementChanged(const aElement: IwbElement; aContainer: Pointer); - procedure SortBySortOrder; - procedure CreatedEmpty; - - procedure MoveElementUp(const aElement: IwbElement); - procedure MoveElementDown(const aElement: IwbElement); - function CanMoveElementUp(const aElement: IwbElement): Boolean; - function CanMoveElementDown(const aElement: IwbElement): Boolean; - - procedure NextElementMember(const aElement: IwbElement); - procedure PreviousElementMember(const aElement: IwbElement); - function CanChangeElementMember(const aElement: IwbElement): Boolean; - end; - - TwbContainer = class(TwbElement, IwbContainerElementRef, IwbContainer, IwbContainerInternal) - protected - cntElements : TDynElementInternals; - cntElementsMap : TDynCardinalArray; - cntElementRefs : Integer; - cntStates : TwbContainerStates; - cntKeepAliveNext : IwbContainerElementRef; - - function _AddRef: Integer; override; stdcall; - function _Release: Integer; override; stdcall; - - {---IwbContainerElementRef---} - function ElementAddRef: Integer; stdcall; - function ElementRelease: Integer; stdcall; - function IwbContainerElementRef._AddRef = ElementAddRef; - function IwbContainerElementRef._Release = ElementRelease; - function GetCountedRecordCount: Cardinal; override; - procedure PrepareSave; override; - procedure MasterCountUpdated(aOld, aNew: Byte); override; - procedure MasterIndicesUpdated(const aOld, aNew: TBytes); override; - procedure FindUsedMasters(aMasters: PwbUsedMasters); override; - - procedure SortBySortOrder; virtual; - procedure CreatedEmpty; - - function Reached: Boolean; override; - function RemoveInjected(aCanRemove: Boolean): Boolean; override; - - procedure ReportRequiredMasters(aStrings: TStrings; aAsNew: Boolean; Recursive: Boolean = True; Initial: Boolean = false); override; - procedure ResetConflict; override; - procedure ResetReachable; override; - - procedure DoReset(aForce: Boolean); override; - procedure DoInit; virtual; - - function HasErrors: Boolean; override; - - function GetSortKeyInternal(aExtended: Boolean): string; override; - function GetDataSize: Integer; override; - procedure MergeStorageInternal(var aBasePtr: Pointer; aEndPtr: Pointer); override; - procedure InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); override; - procedure BuildRef; override; - procedure MarkModifiedRecursive; override; - - function CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; override; - function AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; override; - function GetIsInSK(aIndex: Integer): Boolean; virtual; - - procedure SetToDefaultInternal; override; - - procedure WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); override; - - function GetElement(aIndex: Integer): IwbElement; - function GetElementCount: Integer; - function GetElementByName(const aName: string): IwbElement; - function GetRecordBySignature(const aSignature: TwbSignature): IwbRecord; - function GetElementByMemoryOrder(aSortOrder: Integer): IwbElement; - function GetElementBySignature(const aSignature: TwbSignature): IwbElement; - function GetElementBySortOrder(aSortOrder: Integer): IwbElement; - function GetAdditionalElementCount: Integer; virtual; - procedure ReverseElements; - function GetContainerStates: TwbContainerStates; - function GetElementByPath(const aPath: string): IwbElement; - function GetElementValue(const aName: string): string; - function GetElementExists(const aName: string): Boolean; - function GetElementEditValue(const aName: string): string; - procedure SetElementEditValue(const aName, aValue: string); - function GetElementNativeValue(const aName: string): Variant; - procedure SetElementNativeValue(const aName: string; const aValue: Variant); - function GetElementLinksTo(const aName: string): IwbElement; - function GetElementSortKey(const aName: string; aExtended: Boolean): string; - - function ResolveElementName(aName: string; out aRemainingName: string; aCanCreate: Boolean = False): IwbElement; virtual; - - procedure AddElement(const aElement: IwbElement); virtual; - procedure InsertElement(aPosition: Integer; const aElement: IwbElement); - function RemoveElement(aPos: Integer; aMarkModified: Boolean = False): IwbElement; overload; virtual; - function RemoveElement(const aElement: IwbElement; aMarkModified: Boolean = False): IwbElement; overload; virtual; - function RemoveElement(const aName: string): IwbElement; overload; - function LastElement: IwbElement; - - function CanElementReset: Boolean; virtual; - - function GetAddList: TDynStrings; virtual; - function Add(const aName: string; aSilent: Boolean): IwbElement; virtual; - - function IsElementRemoveable(const aElement: IwbElement): Boolean; virtual; - function IsElementEditable(const aElement: IwbElement): Boolean; virtual; - - function IndexOf(const aElement: IwbElement): Integer; virtual; - - function ReleaseElements: TDynElementInternals; - procedure ElementChanged(const aElement: IwbElement; aContainer: Pointer); virtual; - procedure NotifyChangedInternal(aContainer: Pointer); override; - - function CompareExchangeFormID(aOldFormID: Cardinal; aNewFormID: Cardinal): Boolean; override; - - procedure Init; virtual; - procedure Reset; virtual; - procedure Bar; - function ReleaseKeepAlive: IwbContainerElementRef; - - procedure MoveElementUp(const aElement: IwbElement); - procedure MoveElementDown(const aElement: IwbElement); - function CanMoveElementUp(const aElement: IwbElement): Boolean; - function CanMoveElementDown(const aElement: IwbElement): Boolean; - function CanMoveElement: Boolean; virtual; - - procedure NextElementMember(const aElement: IwbElement); - procedure PreviousElementMember(const aElement: IwbElement); - function CanChangeElementMember(const aElement: IwbElement): Boolean; - - function FindBySortKey(const aSortKey: string; aExtended: Boolean; out aIndex: Integer): Boolean; - - procedure AfterConstruction; override; - procedure BeforeDestruction; override; - class function NewInstance: TObject; override; - destructor Destroy; override; - procedure FreeInstance; override; - - procedure ResetTags; override; - end; - - IwbFileInternal = interface(IwbFile) - ['{E1334034-06D0-4299-BFE0-E0DE97C128E2}'] - procedure AddMainRecord(const aRecord: IwbMainRecord); - procedure RemoveMainRecord(const aRecord: IwbMainRecord); - procedure InjectMainRecord(const aRecord: IwbMainRecord); - procedure RemoveInjectedMainRecord(const aRecord: IwbMainRecord); - procedure ForceClosed; - procedure GetMasters(aMasters: TStrings); - end; - - TwbFile = class(TwbContainer, IwbFile, IwbFileInternal) - protected - flFileName : string; - flLoadOrder : Integer; - flCompareTo : string; - flStates : TwbFileStates; - flUnsavedSince : TDateTime; - - flFileHandle : THandle; - flMapHandle : THandle; - - flView : Pointer; - flEndPtr : Pointer; - - flMasters : array of IwbFile; - - flRecords : array of IwbMainRecord; - flRecordsCount : Integer; {only used during loading} - - flRecordsByEditorID : array of IwbMainRecord; - flRecordsByEditorIDCount : Integer; {only used during loading} - - flLoadFinished : Boolean; - flFormIDsSorted : Boolean; - - flInjectedRecords : array of IwbMainRecord; - - procedure flOpenFile; virtual; - procedure flCloseFile; virtual; - procedure flProgress(const aStatus: string); - - function Reached: Boolean; override; - - function GetElementType: TwbElementType; override; - function GetFile: IwbFile; override; - function GetReferenceFile: IwbFile; override; - function GetName: string; override; - function GetBaseName: string; override; - procedure PrepareSave; override; - procedure SetModified(aValue: Boolean); override; - - procedure BuildRef; override; - - function FindFormID(aFormID: Cardinal; var Index: Integer): Boolean; - function FindInjectedID(aFormID: Cardinal; var Index: Integer): Boolean; - function FindEditorID(const aEditorID: string; var Index: Integer): Boolean; - function GetMasterRecordByFormID(aFormID: Cardinal; aAllowInjected: Boolean): IwbMainRecord; - - function GetAddList: TDynStrings; override; - function Add(const aName: string; aSilent: Boolean): IwbElement; override; - - function IsElementRemoveable(const aElement: IwbElement): Boolean; override; - function IsElementEditable(const aElement: IwbElement): Boolean; override; - function GetIsEditable: Boolean; override; - function GetIsRemoveable: Boolean; override; - - procedure WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); override; - - function AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; override; - - function NewFormID: Cardinal; - - {---IwbFile---} - function GetFileName: string; - function GetUnsavedSince: TDateTime; - function HasMaster(const aFileName: string): Boolean; - function GetMaster(aIndex: Integer): IwbFile; - function GetMasterCount: Integer; - function GetRecordByFormID(aFormID: Cardinal; aAllowInjected: Boolean): IwbMainRecord; - function GetRecordByEditorID(const aEditorID: string): IwbMainRecord; - function GetGroupBySignature(const aSignature: TwbSignature): IwbGroupRecord; - function HasGroup(const aSignature: TwbSignature): Boolean; - function GetFileStates: TwbFileStates; - function GetRecord(aIndex: Integer): IwbMainRecord; - function GetRecordCount: Integer; - function GetHeader: IwbMainRecord; - - function GetLoadOrder: Integer; - procedure ForceLoadOrder(aValue: Integer); - procedure SetLoadOrder(aValue: Integer); - - function LoadOrderFormIDtoFileFormID(aFormID: Cardinal): Cardinal; - function FileFormIDtoLoadOrderFormID(aFormID: Cardinal): Cardinal; - - function LoadOrderFileIDtoFileFileID(aFileID: Byte): Byte; - function FileFileIDtoLoadOrderFileID(aFileID: Byte): Byte; - - procedure AddMasters(aMasters: TStrings); - procedure AddMasterIfMissing(const aMaster: string); - procedure SortMasters; - procedure CleanMasters; - - procedure BuildReachable; - - function GetIsESM: Boolean; - procedure SetIsESM(Value: Boolean); - - function GetIsLocalized: Boolean; - procedure SetIsLocalized(Value: Boolean); - - function GetNextObjectID: Cardinal; - procedure SetNextObjectID(aObjectID: Cardinal); - - function GetIsNotPlugin: Boolean; - function GetHasNoFormID: Boolean; - procedure SetHasNoFormID(Value: Boolean); - - {---IwbFileInternal---} - procedure AddMainRecord(const aRecord: IwbMainRecord); - procedure RemoveMainRecord(const aRecord: IwbMainRecord); - procedure InjectMainRecord(const aRecord: IwbMainRecord); - procedure RemoveInjectedMainRecord(const aRecord: IwbMainRecord); - procedure ForceClosed; - procedure GetMasters(aMasters: TStrings); virtual; - - procedure Scan; virtual; - procedure SortRecords; - procedure SortRecordsByEditorID; - - procedure AddMaster(const aFileName: string; isTemporary: Boolean = False); overload; - procedure AddMaster(const aFile: IwbFile); overload; - - constructor Create(const aFileName: string; aLoadOrder: Integer; aCompareTo: string; aOnlyHeader: Boolean; IsTemporary: Boolean = False); - constructor CreateNew(const aFileName: string; aLoadOrder: Integer); - public - destructor Destroy; override; - end; - - TwbFileSource = class(TwbFile) - protected - procedure Scan; override; - constructor CreateNew(const aFileName: string; aLoadOrder: Integer); - procedure GetMasters(aMasters: TStrings); override; - end; - - TwbDataContainerFlag = ( - dcfDontCompare, - dcfDontMerge, - dcfDontSave, - dcfStorageInvalid - ); - - TwbDataContainerFlags = set of TwbDataContainerFlag; - - IwbDataContainerInternal = interface(IwbDataContainer) - ['{E13AE2AD-20CB-4429-86C2-0DEC3ECEE38B}'] - procedure UpdateStorageFromElements; - end; - - TwbDataContainer = class(TwbContainer, IwbDataContainer, IwbDataContainerInternal) - protected - dcBasePtr : Pointer; - dcEndPtr : Pointer; - dcDataBasePtr : Pointer; - dcDataEndPtr : Pointer; - dcDataStorage : TBytes; - dcFlags : TwbDataContainerFlags; - - constructor Create(const aContainer : IwbContainer; - var aBasePtr : Pointer; - aEndPtr : Pointer; - const aPrevMainRecord : IwbMainRecord); virtual; - procedure InitDataPtr; virtual; abstract; - function GetDataPrefixSize: Integer; virtual; - - function GetResolvedValueDef: IwbValueDef; override; - - procedure InvalidateStorage; override; - procedure SetContainer(const aContainer: IwbContainer); override; - - procedure SetModified(aValue: Boolean); override; - procedure RequestStorageChange(var aBasePtr, aEndPtr: Pointer; aNewSize: Cardinal); override; - - procedure WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); override; - procedure MergeStorageInternal(var aBasePtr: Pointer; aEndPtr: Pointer); override; - procedure InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); override; - function DoCheckSizeAfterWrite: Boolean; virtual; - procedure SetToDefaultInternal; override; - function IsFlags: Boolean; virtual; - - function GetEditType: TwbEditType; override; - function GetEditInfo: string; override; - - function GetConflictPriority: TwbConflictPriority; override; - - {---IwbDataContainer---} - function GetDataBasePtr: Pointer; - function GetDataEndPtr: Pointer; - function GetDataSize: Integer; override; - procedure SetDataSize(aSize: Integer); override; - function GetDontCompare: Boolean; - function GetDontSave: Boolean; - function IsValidOffset(aBasePtr, aEndPtr: Pointer; anOffset: Integer): Boolean; - function IsLocalOffset(anOffset: Integer): Boolean; - - {--- IwbDataContainerInternal ---} - procedure UpdateStorageFromElements; virtual; - end; - - TwbRecordClass = class of TwbRecord; - TwbRecord = class(TwbDataContainer, IwbRecord, IwbHasSignature) - protected - recSkipped : Boolean; - protected - constructor Create(const aContainer : IwbContainer; - var aBasePtr : Pointer; - aEndPtr : Pointer; - const aPrevMainRecord : IwbMainRecord); overload; override; - - function GetSignature: TwbSignature; - procedure ScanData; virtual; abstract; - procedure InformPrevMainRecord(const aPrevMainRecord : IwbMainRecord); virtual; - procedure SortBySortOrder; override; - public - class function CreateForPtr(var aPtr : Pointer; - aEndPtr : Pointer; - const aContainer : IwbContainer; - const aPrevMainRecord : IwbMainRecord) - : IwbRecord; - - function GetName: string; override; - function GetSkipped: Boolean; override; - end; - - PwbMainRecordStruct = ^TwbMainRecordStruct; - TwbMainRecordStruct = packed record - mrsSignature : TwbSignature; - mrsDataSize : Cardinal; - mrsFlags : TwbMainRecordStructFlags; - mrsFormID : Cardinal; - mrsVCS1 : Cardinal; - mrsVersion : Word; - mrsVCS2 : Word; - end; - - IwbMainRecordInternal = interface(IwbMainRecord) - ['{405C85E0-2261-4078-B99C-199007D31544}'] - procedure AddOverride(const aMainRecord: IwbMainRecord); - procedure RemoveOverride(const aMainRecord: IwbMainRecord); - procedure SetMaster(const aMaster: IwbMainRecord); - procedure YouAreTheMaster(const aOverrides, aReferencedBy: TDynMainRecords); overload; - procedure YouAreTheMaster(const aOldMaster: IwbMainRecord; const aOverrides, aReferencedBy: TDynMainRecords); overload; - procedure YouGotAMaster(const aMaster: IwbMainRecord); - procedure SetChildGroup(const aGroup: IwbGroupRecord); - procedure RemoveChildGroup(const aGroup: IwbGroupRecord); - procedure SetReferencesInjected(aValue: Boolean); - procedure ClearForRelease; - - procedure MakeHeaderWriteable; - function mrStruct: PwbMainRecordStruct; - end; - - IwbMainRecordEntry = interface(IwbMainRecordInternal) - ['{0C89F580-C95A-4A6C-85EA-BD5E411788A4}'] - procedure RemoveEntry; - procedure RemoveEntryInternal; - - procedure InsertEntryAfter(const aEntry: IwbMainRecordEntry); - procedure InsertEntryHead; - procedure InsertEntryTail; - - function GetPrevEntry: IwbMainRecordEntry; - procedure SetPrevEntry(const aEntry: IwbMainRecordEntry); - - function GetNextEntry: IwbMainRecordEntry; - procedure SetNextEntry(const aEntry: IwbMainRecordEntry); - - function GetIsInList: Boolean; - - property PrevEntry: IwbMainRecordEntry - read GetPrevEntry - write SetPrevEntry; - - property NextEntry: IwbMainRecordEntry - read GetNextEntry - write SetNextEntry; - - property IsInList: Boolean - read GetIsInList; - end; - - TwbMainRecordState = ( - mrsBuildingRef, - mrsReferencedByUnsorted, - mrsIsInjected, - mrsIsInjectedChecked, - mrsReferencesInjected, - mrsReferencesInjectedChecked, - mrsSearchedChildGroup, - mrsHasVWDMeshChecked, - mrsHasVWDMesh, - mrsHasPrecombinedMeshChecked, - mrsHasPrecombinedMesh, - mrsBaseRecordChecked, - mrsQuickInit, - mrsQuickInitDone, - mrsHasMeshChecked, - mrsHasMesh, - mrsNoUpdateRefs, - mrBasePtrAllocated - ); - - TwbMainRecordStates = set of TwbMainRecordState; - - IwbContainedIn = interface - ['{002F064A-81B8-40EB-AA09-E5F7AE061D9E}'] - procedure ContainerChanged; - end; - - TwbMainRecord = class(TwbRecord, IwbMainRecord, IwbMainRecordInternal, IwbMainRecordEntry, IwbContainedIn) - protected - mrDef : IwbRecordDef; - mrLoadOrderFormID : Cardinal; - mrFixedFormID : Cardinal; - mrMaster : Pointer{IwbMainRecord}; - mrOverrides : TDynMainRecords; - mrOverridesSorted : Boolean; - mrEditorID : string; - mrFullName : string; - mrStates : TwbMainRecordStates; - mrBaseRecordID : Cardinal; - mrPrecombinedCellID: Cardinal; - mrPrecombinedID : Cardinal; - mrConflictAll : TConflictAll; - mrConflictThis : TConflictThis; - mrDataStorage : TBytes; - mrGroup : IwbGroupRecord; - - mrReferencedBy : TDynMainRecords; - mrReferences : TDynCardinalArray; - mrTmpRefFormIDs : TDynCardinalArray; - mrTmpRefFormIDHigh : Integer; - - mreGeneration : Integer; - mrePrev : Pointer; - mreNext : Pointer; - - function mrStruct: PwbMainRecordStruct; inline; - - procedure ElementChanged(const aElement: IwbElement; aContainer: Pointer); override; - function RemoveElement(aPos: Integer; aMarkModified: Boolean = False): IwbElement; overload; override; - function ResolveElementName(aName: string; out aRemainingName: string; aCanCreate: Boolean = False): IwbElement; override; - - function GetIsInjected: Boolean; override; - function GetReferencesInjected: Boolean; override; - function GetInjectionSourceFiles: TDynFiles; override; - function RemoveInjected(aCanRemove: Boolean): Boolean; override; - function GetIsNotReachable: Boolean; override; - function GetCountedRecordCount: Cardinal; override; - procedure InitDataPtr; override; - procedure DecompressIfNeeded; - procedure ScanData; override; - procedure WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); override; - procedure MergeStorageInternal(var aBasePtr: Pointer; aEndPtr: Pointer); override; - procedure InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); override; - function CanContainFormIDs: Boolean; override; - function CompareExchangeFormID(aOldFormID: Cardinal; aNewFormID: Cardinal): Boolean; override; - function CanElementReset: Boolean; override; - procedure Remove; override; - procedure PrepareSave; override; - procedure MasterCountUpdated(aOld, aNew: Byte); override; - procedure MasterIndicesUpdated(const aOld, aNew: TBytes); override; - procedure FindUsedMasters(aMasters: PwbUsedMasters); override; - function GetReferenceFile: IwbFile; override; - procedure ReportRequiredMasters(aStrings: TStrings; aAsNew: Boolean; Recursive: Boolean = True; Initial: Boolean = false); override; - function LinksToParent: Boolean; override; - function Reached: Boolean; override; - function GetContainingMainRecord: IwbMainRecord; override; - - procedure DoBuildRef(aRemove: Boolean); - procedure BuildRef; override; - procedure AddReferencedFromID(aFormID: Cardinal); override; - procedure ResetConflict; override; - procedure ResetReachable; override; - - procedure Init; override; - procedure Reset; override; - - function GetPath: string; override; - function GetValue: string; override; - function GetSortKeyInternal(aExtended: Boolean): string; override; - function GetSortPriority: Integer; override; - function GetAdditionalElementCount: Integer; override; - function GetIsEditable: Boolean; override; - function GetEditValue: string; override; - procedure SetEditValue(const aValue: string); override; - function GetNativeValue: Variant; override; - procedure SetNativeValue(const aValue: Variant); override; - function IsElementRemoveable(const aElement: IwbElement): Boolean; override; - procedure SetContainer(const aContainer: IwbContainer); override; - - function FindReferencedBy(const aMainRecord: IwbMainRecord; var Index: Integer): Boolean; - - function CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; override; - function AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; override; - function AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; override; - - procedure CollapseStorage; - - function GetAddList: TDynStrings; override; - function Add(const aName: string; aSilent: Boolean): IwbElement; override; - - function CheckChildOfCell: Boolean; - procedure UpdateCellChildGroup; - procedure UpdateInteriorCellGroup; - - procedure MarkModifiedRecursive; override; - - {---IwbMainRecord---} - function GetDef: IwbNamedDef; override; - function GetElementType: TwbElementType; override; - function GetFormID: Cardinal; - function GetFixedFormID: Cardinal; - function GetLoadOrderFormID: Cardinal; - procedure SetLoadOrderFormID(aFormID: Cardinal); - function GetEditorID: string; - function GetCanHaveEditorID: Boolean; - procedure SetEditorID(const aValue: string); - function GetFullName: string; - function GetDisplayNameKey: string; - function GetMaster: IwbMainRecord; - function GetIsMaster: Boolean; - function GetMasterOrSelf: IwbMainRecord; - function GetOverride(aIndex: Integer): IwbMainRecord; - function GetOverrideCount: Integer; - procedure AddReferencedBy(aMainRecord: IwbMainRecord); - procedure RemoveReferencedBy(aMainRecord: IwbMainRecord); - procedure SortReferencedBy; - function GetReferencedBy(aIndex: Integer): IwbMainRecord; - function GetReferencedByCount: Integer; - function GetCheck: string; override; - function GetIsWinningOverride: Boolean; - function GetWinningOverride: IwbMainRecord; - function GetHighestOverrideOrSelf(aMaxLoadOrder: Integer): IwbMainRecord; - function GetFlags: TwbMainRecordStructFlags; - function GetFlagsPtr: PwbMainRecordStructFlags; - function GetChildGroup: IwbGroupRecord; - function EnsureChildGroup: IwbGroupRecord; - function GetBaseRecord: IwbMainRecord; - function GetBaseRecordID: Cardinal; - - procedure MakeHeaderWriteable; - - function GetConflictAll: TConflictAll; - procedure SetConflictAll(aValue: TConflictAll); - function GetConflictThis: TConflictThis; - procedure SetConflictThis(aValue: TConflictThis); - - function GetIsESM: Boolean; - procedure SetIsESM(aValue: Boolean); - function GetIsLocalized: Boolean; - procedure SetIsLocalized(aValue: Boolean); - function GetIsPersistent: Boolean; - procedure SetIsPersistent(aValue: Boolean); - function GetIsDeleted: Boolean; - procedure SetIsDeleted(aValue: Boolean); - function GetIsCompressed: Boolean; - procedure SetIsCompressed(aValue: Boolean); - function GetIsVisibleWhenDistant: Boolean; - procedure SetIsVisibleWhenDistant(aValue: Boolean); - function GetHasVisibleWhenDistantMesh: Boolean; - function GetHasMesh: Boolean; - function GetHasPrecombinedMesh: Boolean; - function GetPrecombinedMesh: string; - function GetIsInitiallyDisabled: Boolean; - procedure SetIsInitiallyDisabled(aValue: Boolean); - - procedure UpdateRefs; - - function GetPosition(out aPosition: TwbVector): Boolean; - function SetPosition(const aPosition: TwbVector): Boolean; - function GetRotation(out aRotation: TwbVector): Boolean; - function GetScale(out aScale: Single): Boolean; - function GetGridCell(out aGridCell: TwbGridCell): Boolean; - function GetFormVersion: Cardinal; {>>> Form Version access <<<} - procedure SetFormVersion(aFormVersion: Cardinal); {>>> Form Version access <<<} - procedure ChangeFormSignature(aSignature: TwbSignature); - procedure ClampFormID(aIndex: Cardinal); - - procedure Delete; - procedure DeleteInto(const aFile: IwbFile); - - function MasterRecordsFromMasterFilesAndSelf: TDynMainRecords; - - {---IwbMainRecordInternal---} - procedure AddOverride(const aMainRecord: IwbMainRecord); - procedure RemoveOverride(const aMainRecord: IwbMainRecord); - procedure SetMaster(const aMaster: IwbMainRecord); - procedure YouAreTheMaster(const aOverrides, aReferencedBy: TDynMainRecords); overload; - procedure YouAreTheMaster(const aOldMaster: IwbMainRecord; const aOverrides, aReferencedBy: TDynMainRecords); overload; - procedure YouGotAMaster(const aMaster: IwbMainRecord); - procedure SetChildGroup(const aGroup: IwbGroupRecord); - procedure RemoveChildGroup(const aGroup: IwbGroupRecord); - procedure SetReferencesInjected(aValue: Boolean); - procedure ClearForRelease; - - {---IwbMainRecordEntry---} - procedure RemoveEntry; - procedure RemoveEntryInternal; - - procedure InsertEntryAfter(const aEntry: IwbMainRecordEntry); - procedure InsertEntryHead; - procedure InsertEntryTail; - - function GetPrevEntry: IwbMainRecordEntry; - procedure SetPrevEntry(const aEntry: IwbMainRecordEntry); - - function GetNextEntry: IwbMainRecordEntry; - procedure SetNextEntry(const aEntry: IwbMainRecordEntry); - - function GetIsInList: Boolean; - - {--- IwbContainedIn ---} - procedure ContainerChanged; - public - constructor Create(const aContainer : IwbContainer; - var aBasePtr : Pointer; - aEndPtr : Pointer; - const aPrevMainRecord : IwbMainRecord); override; - constructor Create(const aContainer : IwbContainer; - const aSignature : TwbSignature; - aFormID : Cardinal); overload; - destructor Destroy; override; - - function GetName: string; override; - function GetShortName: string; override; - function GetDisplayName: string; override; - end; - - PwbSubRecordHeaderStruct = ^TwbSubRecordHeaderStruct; - TwbSubRecordHeaderStruct = packed record - srsSignature : TwbSignature; - srsDataSize : Word; - end; - - IwbSubRecordInternal = interface(IwbSubRecord) - ['{AB66BAE8-2618-4B85-80CE-A108C3B80808}'] - procedure SetDef(const aDef: IwbSubRecordDef); - end; - - TwbSubRecordState = ( - srsIsArray, - srsIsFlags, - srsIsUnion, - srsSorted, - srsSortInvalid - ); - - TwbSubRecordStates = set of TwbSubRecordState; - - TwbSubRecord = class(TwbRecord, IwbSubRecord, IwbSubRecordInternal, IwbSortableContainer) - protected {private} - srDef : IwbSubRecordDef; - srValueDef : IwbValueDef; - srStates : TwbSubRecordStates; - srArraySizePrefix : Integer; - protected - constructor Create(const aContainer : IwbContainer; - const aSubRecordDef: IwbSubRecordDef); overload; - destructor Destroy; override; - - procedure SetDef(const aDef: IwbSubRecordDef); - function srStruct: PwbSubRecordHeaderStruct; inline; - - procedure InitDataPtr; override; - procedure ScanData; override; - - procedure DoInit; override; - procedure Init; override; - procedure Reset; override; - - function GetDataPrefixSize: Integer; override; - procedure CheckCount; - - function GetName: string; override; - function GetDisplayName: string; override; - - function IsFlags: Boolean; override; - - function GetValue: string; override; - function GetCheck: string; override; - function GetSortKeyInternal(aExtended: Boolean): string; override; - function GetIsEditable: Boolean; override; - function GetValueDef: IwbValueDef; override; - function GetEditValue: string; override; - procedure SetEditValue(const aValue: string); override; - function GetNativeValue: Variant; override; - procedure SetNativeValue(const aValue: Variant); override; - procedure BuildRef; override; - function CompareExchangeFormID(aOldFormID: Cardinal; aNewFormID: Cardinal): Boolean; override; - procedure MasterCountUpdated(aOld, aNew: Byte); override; - procedure MasterIndicesUpdated(const aOld, aNew: TBytes); override; - procedure FindUsedMasters(aMasters: PwbUsedMasters); override; - procedure MergeStorageInternal(var aBasePtr: Pointer; aEndPtr: Pointer); override; - procedure InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); override; - function IsElementRemoveable(const aElement: IwbElement): Boolean; override; - procedure SetModified(aValue: Boolean); override; - function CanContainFormIDs: Boolean; override; - function CanElementReset: Boolean; override; - function GetLinksTo: IwbElement; override; - procedure ElementChanged(const aElement: IwbElement; aContainer: Pointer); override; - procedure PrepareSave; override; - function RemoveInjected(aCanRemove: Boolean): Boolean; override; - - procedure SetToDefaultInternal; override; - - procedure WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); override; - - function CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; override; - function AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; override; - function AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; override; - function GetIsInSK(aIndex: Integer): Boolean; override; - function DoCheckSizeAfterWrite: Boolean; override; - - function GetDef: IwbNamedDef; override; - function GetElementType: TwbElementType; override; - - function GetDataSize: Integer; override; - - function CanMoveElement: Boolean; override; - - procedure CheckTerminator; - - {--- IwbSubRecord ---} - function GetSubRecordHeaderSize: Integer; - - {--- IwbSortableContainer ---} - function GetSorted: Boolean; - end; - - TwbValueBase = class(TwbDataContainer) - protected - vbValueDef : IwbValueDef; - vbNameSuffix : string; - protected - procedure InitDataPtr; override; - - function GetDef: IwbNamedDef; override; - function GetValueDef: IwbValueDef; override; - - function GetName: string; override; - function GetBaseName: string; override; - function GetDisplayName: string; override; - - function GetCheck: string; override; - function GetValue: string; override; - function GetSortKeyInternal(aExtended: Boolean): string; override; - - function GetIsEditable: Boolean; override; - function CanElementReset: Boolean; override; - - function GetEditValue: string; override; - procedure SetEditValue(const aValue: string); override; - - function GetNativeValue: Variant; override; - procedure SetNativeValue(const aValue: Variant); override; - - procedure BuildRef; override; - function CanContainFormIDs: Boolean; override; - function GetLinksTo: IwbElement; override; - function GetDataSize: Integer; override; - function DoCheckSizeAfterWrite: Boolean; override; - - procedure SetToDefaultInternal; override; - - function GetIsInSK(aIndex: Integer): Boolean; override; - public - constructor Create(const aContainer : IwbContainer; - var aBasePtr : Pointer; - aEndPtr : Pointer; - const aValueDef : IwbValueDef; - const aNameSuffix : string; - aDontCompare: Boolean = False); reintroduce; overload; - constructor Create(const aContainer : IwbContainer; - const aValueDef : IwbValueDef; - const aSource : IwbElement; - const aOnlySK : Boolean; - const aNameSuffix : string); reintroduce; overload; - end; - - TwbArray = class(TwbValueBase, IwbSortableContainer) - protected {private} - arrSorted : Boolean; - arrSortInvalid : Boolean; - arrSizePrefix : Integer; - protected - procedure DoInit; override; - procedure Init; override; - procedure Reset; override; - - function GetElementType: TwbElementType; override; - function IsElementRemoveable(const aElement: IwbElement): Boolean; override; - procedure SetModified(aValue: Boolean); override; - procedure ElementChanged(const aElement: IwbElement; aContainer: Pointer); override; - - function CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; override; - function AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; override; - function AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; override; - - procedure PrepareSave; override; - procedure CheckTerminator; - - function GetDataPrefixSize: Integer; override; - procedure CheckCount; - - function CanMoveElement: Boolean; override; - - {--- IwbSortableContainer ---} - function GetSorted: Boolean; - end; - - TwbStruct = class(TwbValueBase) - protected - szCompressedSize : Integer; - szUncompressedSize : Cardinal; - szCompressedType : TwbStructCompression; - procedure Init; override; - procedure Reset; override; - - function GetElementType: TwbElementType; override; - procedure DecompressIfNeeded; - function GetIsCompressed: TwbStructCompression; - property IsCompressed: TwbStructCompression read GetIsCompressed; - end; - - TwbFileHeader = class(TwbStruct, IwbFileHeader) - protected - function GetFileMagic: TwbFileMagic; - end; - - TwbChapter = class(TwbStruct, IwbChapter) - protected - cChapterSkipped : Boolean; - protected - function GetSkipped: Boolean; override; - function GetElementType: TwbElementType; override; - function GetChapterType: Integer; - function GetChapterTypeName: String; - function GetChapterName: String; - public - constructor Create(const aContainer : IwbContainer; - const aValueDef : IwbValueDef; - const aSource : IwbElement; - const aOnlySK : Boolean; - const aNameSuffix : string); reintroduce; overload; - end; - - TwbUnion = class(TwbValueBase) - protected - function CompareExchangeFormID(aOldFormID: Cardinal; aNewFormID: Cardinal): Boolean; override; - procedure Init; override; - procedure Reset; override; - - function GetElementType: TwbElementType; override; - procedure MasterCountUpdated(aOld, aNew: Byte); override; - procedure MasterIndicesUpdated(const aOld, aNew: TBytes); override; - procedure FindUsedMasters(aMasters: PwbUsedMasters); override; - end; - - TwbRecordHeaderStruct = class(TwbStruct) - protected - function CanContainFormIDs: Boolean; override; - procedure BuildRef; override; - function CompareExchangeFormID(aOldFormID: Cardinal; aNewFormID: Cardinal): Boolean; override; - function IsElementEditable(const aElement: IwbElement): Boolean; override; - function GetIsEditable: Boolean; override; - procedure ElementChanged(const aElement: IwbElement; aContainer: Pointer); override; - function AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; override; - end; - - TwbValue = class(TwbValueBase, IwbSortableContainer) - protected {private} - vIsFlags : Boolean; - protected - function GetValue: string; override; - function CompareExchangeFormID(aOldFormID: Cardinal; aNewFormID: Cardinal): Boolean; override; - procedure MasterCountUpdated(aOld, aNew: Byte); override; - procedure MasterIndicesUpdated(const aOld, aNew: TBytes); override; - procedure FindUsedMasters(aMasters: PwbUsedMasters); override; - function AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; override; - - function IsFlags: Boolean; override; - - procedure Init; override; - procedure Reset; override; - - function GetElementType: TwbElementType; override; - procedure SetEditValue(const aValue: string); override; - procedure SetNativeValue(const aValue: Variant); override; - - {--- IwbSortableContainer ---} - function GetSorted: Boolean; - end; - - TwbContainedInElement = class(TwbValue, IwbContainedIn) - protected {private} - cieLockCount: Integer; - protected - procedure InvalidateParentStorage; override; - function CanContainFormIDs: Boolean; override; - procedure BuildRef; override; - function CompareExchangeFormID(aOldFormID: Cardinal; aNewFormID: Cardinal): Boolean; override; - function IsElementEditable(const aElement: IwbElement): Boolean; override; - procedure ElementChanged(const aElement: IwbElement; aContainer: Pointer); override; - procedure SetModified(aValue: Boolean); override; - procedure DoAfterSet(const aOldValue, aNewValue: Variant); override; - - {--- IwbContainedIn ---} - procedure ContainerChanged; - public - constructor Create(const aMainRecord: IwbMainRecord); - end; - - IwbStringListTerminator = interface - ['{0D8ED4AA-1AFE-4283-87D7-2B66C5496227}'] - end; - - TwbStringListTerminator = class(TwbElement, IwbStringListTerminator) - function GetName: string; override; - function GetElementType: TwbElementType; override; - function GetConflictPriority: TwbConflictPriority; override; - function GetSortKeyInternal(aExtended: Boolean): string; override; - procedure SetEditValue(const aValue: string); override; - procedure SetNativeValue(const aValue: Variant); override; - function GetDataSize: Integer; override; - procedure WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); override; - procedure MergeStorageInternal(var aBasePtr: Pointer; aEndPtr: Pointer); override; - procedure InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); override; - function CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; override; - function AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; override; - end; - - IwbFlag = interface(IwbElement) - ['{EED55516-C6D5-4ADD-B147-36B115E7449D}'] - function GetFlagsDef: IwbFlagsDef; - function GetFlagIndex: Integer; - - property FlagsDef: IwbFlagsDef - read GetFlagsDef; - property FlagIndex: Integer - read GetFlagIndex; - end; - - TwbFlag = class(TwbElement, IwbFlag) - protected {private} - fBasePtr : Pointer; - fEndPtr : Pointer; - fIntegerDef : IwbIntegerDef; - fFlagsDef : IwbFlagsDef; - fLastDefID : Cardinal; - fIndex : Integer; - protected - constructor Create(const aContainer : IwbContainer; - aBasePtr : Pointer; - aEndPtr : Pointer; - const aIntegerDef : IwbIntegerDef; - const aFlagsDef : IwbFlagsDef; - aIndex : Integer); - - function GetName: string; override; - function GetDef: IwbNamedDef; override; - function GetValueDef: IwbValueDef; override; - - function GetValue: string; override; - function GetSortKey(aExtended: Boolean): string; override; - function GetSortKeyInternal(aExtended: Boolean): string; override; - function GetConflictPriority: TwbConflictPriority; override; - function GetDontShow: Boolean; override; - procedure InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); override; - function GetDataSize: Integer; override; - procedure InvalidateParentStorage; override; - - function GetIsEditable: Boolean; override; - function GetIsRemoveable: Boolean; override; - - procedure Remove; override; - - function GetEditValue: string; override; - procedure SetEditValue(const aValue: string); override; - - function GetNativeValue: Variant; override; - procedure SetNativeValue(const aValue: Variant); override; - - function GetElementType: TwbElementType; override; - - {--- IwbFlag ---} - function GetFlagsDef: IwbFlagsDef; - function GetFlagIndex: Integer; - end; - - PwbGroupRecordStruct = ^TwbGroupRecordStruct; - TwbGroupRecordStruct = packed record - grsSignature : TwbSignature; - grsGroupSize : Cardinal; - grsLabel : Cardinal; - grsGroupType : Integer; - grsStamp : Cardinal; - grsUnknown : Cardinal; - end; - - IwbGroupRecordInternal = interface(IwbGroupRecord) - ['{0BDDCF46-DFF6-4771-8FBB-0BC78828999B}'] - procedure Sort; - procedure SetModified(aValue: Boolean); - end; - - TwbGroupState = ( - gsSorted, - gsSorting, - gsSortPostponed - ); - - TwbGroupStates = set of TwbGroupState; - - TwbGroupRecord = class(TwbRecord, IwbGroupRecord, IwbGroupRecordInternal) - protected {private} - grStates: TwbGroupStates; - protected - constructor Create(const aContainer : IwbContainer; - const aSignature : TwbSignature); overload; - constructor Create(const aContainer : IwbContainer; - aType : Integer; - const aMainRecord : IwbMainRecord); overload; - constructor Create(const aContainer : IwbContainer; - aType : Integer; - aLabel : Cardinal); overload; - destructor Destroy; override; - - function grStruct: PwbGroupRecordStruct; inline; - - function GetCountedRecordCount: Cardinal; override; - procedure InitDataPtr; override; - procedure ScanData; override; - procedure InformPrevMainRecord(const aPrevMainRecord : IwbMainRecord); override; - - function GetName: string; override; - function GetShortName: string; override; - function GetElementType: TwbElementType; override; - function GetSortKeyInternal(aExtended: Boolean): string; override; - function IsElementRemoveable(const aElement: IwbElement): Boolean; override; - procedure Remove; override; - procedure NotifyChangedInternal(aContainer: Pointer); override; - - function GetAddList: TDynStrings; override; - function Add(const aName: string; aSilent: Boolean): IwbElement; override; - procedure Sort; - - procedure UpdatedEnded; override; - - procedure SetModified(aValue: Boolean); override; - - procedure PrepareSave; override; - procedure WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); override; - procedure MasterCountUpdated(aOld, aNew: Byte); override; - procedure MasterIndicesUpdated(const aOld, aNew: TBytes); override; - procedure FindUsedMasters(aMasters: PwbUsedMasters); override; - - function AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; override; - - procedure MakeHeaderWriteable; - - procedure BuildRef; override; - function LinksToParent: Boolean; override; - function Reached: Boolean; override; - - function FindChildGroup(aType: Integer; aMainRecord: IwbMainRecord): IwbGroupRecord; - - function GetMainRecordByEditorID(const aEditorID: string): IwbMainRecord; - function GetMainRecordByFormID(const aFormID: Cardinal): IwbMainRecord; - - function GetGroupType: Integer; - function GetGroupLabel: Cardinal; - procedure SetGroupLabel(aLabel: Cardinal); - function GetChildrenOf: IwbMainRecord; - - procedure AddElement(const aElement: IwbElement); override; - end; - - IwbSubRecordArrayInternal = interface(IwbSubRecordArray) - ['{4400F93F-9D13-43CA-B43D-727725EC73C8}'] - - procedure DoProcess(const aContainer : IwbContainer; - aPos : Integer); - end; - - TwbSubRecordArray = class(TwbContainer, IwbSubRecordArray, IwbSubRecordArrayInternal, IwbSortableContainer, IwbHasSignature) - protected {private} - arcDef : IwbSubRecordArrayDef; - arcSorted : Boolean; - arcSortInvalid : Boolean; - protected - constructor Create(const aOwner : IwbContainer; - const aContainer : IwbContainer; - aPos : Integer; - const aDef : IwbSubRecordArrayDef); - - procedure DoProcess(const aContainer : IwbContainer; - aPos : Integer); - - procedure DoInit; override; - - function GetName: string; override; - function GetDef: IwbNamedDef; override; - function GetElementType: TwbElementType; override; - function IsElementRemoveable(const aElement: IwbElement): Boolean; override; - procedure SetModified(aValue: Boolean); override; - function CanContainFormIDs: Boolean; override; - function CanElementReset: Boolean; override; - procedure ElementChanged(const aElement: IwbElement; aContainer: Pointer); override; - - function CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; override; - function AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; override; - function AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; override; - - function CanMoveElement: Boolean; override; - - {---IwbSortableContainer---} - function GetSorted: Boolean; - - {--- IwbHasSignature ---} - function GetSignature: TwbSignature; - end; - - TwbSubRecordStruct = class(TwbContainer, IwbHasSignature) - protected {private} - srcDef: IwbRecordDef; - protected - constructor Create(const aOwner : IwbContainer; - const aContainer : IwbContainer; - aPos : Integer; - const aDef : IwbSubRecordStructDef); - - procedure AddRequiredElements; - function Add(const aName: string; aSilent: Boolean): IwbElement; override; - - function GetSortKeyInternal(aExtended: Boolean): string; override; - function GetName: string; override; - function GetDef: IwbNamedDef; override; - function GetElementType: TwbElementType; override; - function IsElementRemoveable(const aElement: IwbElement): Boolean; override; - function CanContainFormIDs: Boolean; override; - function CanElementReset: Boolean; override; - function RemoveInjected(aCanRemove: Boolean): Boolean; override; - - function CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; override; - function AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; override; - function AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; override; - function GetIsInSK(aIndex: Integer): Boolean; override; - - {--- IwbHasSignature ---} - function GetSignature: TwbSignature; - end; - -const - NONE : TwbSignature = #0#0#0#0; - -function CompareFormIDs(Item1, Item2: Pointer): Integer; -asm -{$IFDEF WIN32} - xor ecx, ecx - cmp eax, edx - ja @@GT - je @@EQ -@@LT: - dec ecx - dec ecx -@@GT: - inc ecx -@@EQ: - mov eax, ecx -{$ENDIF WIN32} -{$IFDEF WIN64} - xor rax, rax - cmp rcx, rdx - ja @@GT - je @@EQ -@@LT: - dec rax - dec rax -@@GT: - inc rax -@@EQ: -{$ENDIF WIN64} -end; - -function CompareSubRecords(Item1, Item2: Pointer): Integer; -var - SortOrder1: Integer; - SortOrder2: Integer; -begin - if Item1 = Item2 then begin - Result := 0; - Exit; - end; - - SortOrder1 := IwbElement(Item1).SortOrder; - SortOrder2 := IwbElement(Item2).SortOrder; - - Result := CmpI32(SortOrder1, SortOrder2); - - if Result = 0 then begin - Result := CmpW32(Ord(IwbElement(Item1).ElementType), Ord(IwbElement(Item2).ElementType)); - if Result = 0 then begin - if IwbElement(Item1).ElementType = etSubRecord then - Result := CmpW32( - Cardinal((IwbElement(Item1) as IwbSubRecord).DataBasePtr), - Cardinal((IwbElement(Item2) as IwbSubRecord).DataBasePtr) - ); - end; - end; -end; - -function CompareSortKeys(Item1, Item2: Pointer): Integer; -var - SortKey1 : string; - SortKey2 : string; -// Container1 : IwbContainer; -// Container2 : IwbContainer; -begin - if Item1 = Item2 then begin - Result := 0; - Exit; - end; - - SortKey1 := IwbElement(Item1).SortKey[True]; - SortKey2 := IwbElement(Item2).SortKey[True]; - - Result := CompareStr(SortKey1, SortKey2); - - if Result = 0 then begin - SortKey1 := IwbElement(Item1).Value; - SortKey2 := IwbElement(Item1).Value; - - Result := CompareStr(SortKey1, SortKey2); - - if Result = 0 then begin - Result := CmpW32(Ord(IwbElement(Item1).ElementType), Ord(IwbElement(Item2).ElementType)); - if Result = 0 then begin - if IwbElement(Item1).ElementType = etSubRecord then - Result := CmpW32( - Cardinal((IwbElement(Item1) as IwbSubRecord).DataBasePtr), - Cardinal((IwbElement(Item2) as IwbSubRecord).DataBasePtr) - ){ - else try - if Supports(IwbElement(Item1), IwbContainer, Container1) and Supports(IwbElement(Item2), IwbContainer, Container2) then - Result := CmpW32( - Cardinal((Container1 as TwbContainer).cntElements), // Arbitrary value that should not change during the sort - Cardinal((Container2 as TwbContainer).cntElements) - ); - except - // If an Element supporting IwbContainer could NOT be a TwbContainer - end}; - end; - end; - end; -end; - - -function CompareSortOrder(Item1, Item2: Pointer): Integer; -var - SortOrder1: Integer; - SortOrder2: Integer; -begin - if Item1 = Item2 then begin - Result := 0; - Exit; - end; - - SortOrder1 := IwbElement(Item1).SortOrder; - SortOrder2 := IwbElement(Item2).SortOrder; - - Result := CmpI32(SortOrder1, SortOrder2); -end; - -function CompareLoadOrder(Item1, Item2: Pointer): Integer; -var - LoadOrder1: Integer; - LoadOrder2: Integer; -begin - if Item1 = Item2 then begin - Result := 0; - Exit; - end; - - LoadOrder1 := IwbFile(Item1).LoadOrder; - LoadOrder2 := IwbFile(Item2).LoadOrder; - - Result := CmpI32(LoadOrder1, LoadOrder2); - if Result = 0 then - Result := CmpW32(IwbFile(Item1).ElementID, IwbFile(Item2).ElementID); -end; - -{ TwbFile } - -procedure TwbFile.AddMaster(const aFileName: string; IsTemporary: Boolean); -var - _File : IwbFile; - s : string; - t : string; - i : Integer; -begin - if not wbRequireLoadorder and IsTemporary then begin - for i := 0 to Pred(GetMasterCount) do - if SameText(ExtractFileName(aFileName), GetMaster(i).FileName) then - Exit; - end; - - s := ExtractFilePath(aFileName); - t := ExtractFileName(aFileName); - if s = '' then - s := ExtractFilePath(flFileName); - if s <> '' then - s := IncludeTrailingPathDelimiter(s); - - flProgress('Adding master "' + t + '"'); - _File := wbFile(s + t, -1, '', IsTemporary, False); - if not (wbToolMode in [tmDump, tmExport]) and (wbRequireLoadOrder and (_File.LoadOrder < 0)) then - raise Exception.Create('"' + GetFileName + '" requires master "' + aFileName + '" to be loaded before it.') - else - AddMaster(_File); -end; - -function TwbFile.Add(const aName: string; aSilent: Boolean): IwbElement; -var - Signature : TwbSignature; - Dummy : Integer; -begin - if not IsElementEditable(nil) then - raise Exception.Create('File "'+GetFileName+'" is not editable'); - - Result := nil; - - if Length(aName) < 4 then - Exit; - - Signature := StrToSignature(aName); - - Result := GetGroupBySignature(Signature); - - if Assigned(Result) then - Exit; - - if not wbGroupOrder.Find(Signature, Dummy) then - Exit; - if GroupToSkip.Find(Signature, Dummy) then - Exit; - if RecordToSkip.Find(Signature, Dummy) then - Exit; - - Result := TwbGroupRecord.Create(Self, Signature); - - if Length(cntElements) > 1 then - wbMergeSort(@cntElements[1], High(cntElements), CompareSortOrder); -end; - -function TwbFile.AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; -var - GroupRecord : IwbGroupRecord; - Dummy : Integer; - Signature : TwbSignature; - SelfRef : IwbContainerElementRef; - i : Integer; -begin - if not IsElementEditable(nil) then - raise Exception.Create('File "'+GetFileName+'" is not editable'); - - SelfRef := Self as IwbContainerElementRef; - if not Supports(aElement, IwbGroupRecord, GroupRecord) then - raise Exception.Create('Only group records can be added to files'); - if GroupRecord.GroupType <> 0 then - raise Exception.Create('Only top level group records can be added to files'); - Signature := TwbSignature(GroupRecord.GroupLabel); - if not wbGroupOrder.Find(Signature, Dummy) then - raise Exception.Create(Signature + 'is not a valid group label'); - Result := GetGroupBySignature(Signature); - if not Assigned(Result) then begin - Result := TwbGroupRecord.Create(Self, Signature); - if Length(cntElements) > 1 then - wbMergeSort(@cntElements[1], High(cntElements), CompareSortOrder); - end; - - if aDeepCopy then - for i := 0 to Pred(GroupRecord.ElementCount) do - Result.AddIfMissing(GroupRecord.Elements[i], aAsNew, True, aPrefixRemove, aPrefix, aSuffix); -end; - -procedure TwbFile.AddMainRecord(const aRecord: IwbMainRecord); -const - MGEF : TwbSignature = 'MGEF'; - GMST : TwbSignature = 'GMST'; -var - FormID : Cardinal; - s : string; - i : Integer; - Master : IwbMainRecord; - FileID : Byte; - Signature : TwbSignature; -begin - if not Assigned(aRecord) then - Exit; - FormID := aRecord.FormID; - if FormID <> 0 then begin - - if flFormIDsSorted then begin - - if Length(flRecords) > 0 then begin - if FindFormID(FormID, i) then - raise Exception.Create('Duplicate FormID ['+IntToHex64(FormID, 8)+'] in file ' + GetName); - end else - i := 0; - - SetLength(flRecords, Succ(Length(flRecords))); - if i < High(flRecords) then begin - Move(flRecords[i], flRecords[Succ(i)], SizeOf(Pointer) * (High(flRecords) - i)); - Pointer(flRecords[i]) := nil; - end; - flRecords[i] := aRecord; - - end else begin - - if flRecordsCount >= Length(flRecords) then - SetLength(flRecords, Succ(flRecordsCount)); - - flRecords[flRecordsCount] := aRecord; - Inc(flRecordsCount); - - end; - - FileID := FormID shr 24; - if FileID >= Cardinal(GetMasterCount) then begin - {new record...} - end else try - Master := GetMasterRecordByFormID(FormID, True); - if Assigned(Master) then - (Master as IwbMainRecordInternal).AddOverride(aRecord) - else - (GetMaster(FileID) as IwbFileInternal).InjectMainRecord(aRecord); - except - on E: Exception do - if Assigned(wbProgressCallback) then - wbProgressCallback('Error: <'+e.Message+'> while trying to determine master record for ' + aRecord.Name); - end; - end; - - if flFormIDsSorted then - Exit; - - Signature := aRecord.Signature; - - if (Cardinal(Signature) = Cardinal(MGEF)) or (Cardinal(Signature) = Cardinal(GMST)) or wbTrackAllEditorID then begin - s := aRecord.EditorID; - if s <> '' then begin - if flRecordsByEditorIDCount >= Length(flRecordsByEditorID) then - SetLength(flRecordsByEditorID, Succ(flRecordsByEditorIDCount)); - - flRecordsByEditorID[flRecordsByEditorIDCount] := aRecord; - Inc(flRecordsByEditorIDCount); - end; - end; -end; - -procedure TwbFile.AddMaster(const aFile: IwbFile); -begin - SetLength(flMasters, Succ(Length(flMasters))); - flMasters[High(flMasters)] := aFile; -end; - -procedure TwbFile.AddMasterIfMissing(const aMaster: string); -var - i : Integer; - Masters : TStringList; -begin - for i := 0 to Pred(GetMasterCount) do - if SameText(aMaster, GetMaster(i).FileName) then - Exit; - Masters := TStringList.Create; - try - Masters.Add(aMaster); - AddMasters(Masters); - SortMasters; - finally - Masters.Free; - end; -end; - -procedure TwbFile.AddMasters(aMasters: TStrings); -var - OldMasterCount : Integer; - Header : IwbContainerElementRef; - MasterFiles : IwbContainerElementRef; - IsNew : Boolean; - rec : IwbRecord; - i, j : Integer; -begin - OldMasterCount := GetMasterCount; - - if not IsElementEditable(nil) then - raise Exception.Create('File "'+GetFileName+'" is not editable'); - - if GetIsNotPlugin then - Exit; - - if (GetElementCount < 1) or not Supports(GetElement(0), IwbContainerElementRef, Header) then - raise Exception.CreateFmt('Unexpected error reading file "%s"', [flFileName]); - - IsNew := False; - MasterFiles := Header.ElementByName['Master Files'] as IwbContainerElementRef; - if not Assigned(MasterFiles) then begin - Header.Assign(5, nil, False); - MasterFiles := Header.ElementByName['Master Files'] as IwbContainerElementRef; - Assert(Assigned(MasterFiles)); - IsNew := True; - end; - - for i := 0 to Pred(aMasters.Count) do begin - if IsNew then begin - Assert(MasterFiles.ElementCount = 1); - Rec := (MasterFiles[0] as IwbContainer).RecordBySignature['MAST']; - IsNew := False; - end else begin - j := MasterFiles.ElementCount; - MasterFiles.Assign(High(Integer), nil, False); - Assert(MasterFiles.ElementCount = Succ(j)); - Rec := (MasterFiles[j] as IwbContainer).RecordBySignature['MAST']; - end; - - Assert(Assigned(Rec)); - Assert(Rec.EditValue = ''); - - Rec.EditValue := aMasters[i]; - AddMaster(aMasters[i]); - end; - - MasterCountUpdated(OldMasterCount, GetMasterCount); - SortRecords; -end; - -procedure TwbFile.BuildReachable; -var - Group : IwbGroupRecord; - i : Integer; - Rec : IwbMainRecord; - Cnt : IwbContainerElementRef; - Cnt2 : IwbContainerElementRef; - Flg : IwbElement; - s : string; -begin - Assert(Length(cntElements) > 0); - cntElements[0].Reached; - - for i := Low(flRecords) to High(flRecords) do - if flRecords[i].LoadOrderFormID > $800 then - break - else - if flRecords[i].IsWinningOverride then - (flRecords[i] as IwbElementInternal).Reached; - - Group := GetGroupBySignature('GMST'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - (Group.Elements[i] as IwbElementInternal).Reached; - Group := GetGroupBySignature('ANIO'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - (Group.Elements[i] as IwbElementInternal).Reached; - Group := GetGroupBySignature('IDLE'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - (Group.Elements[i] as IwbElementInternal).Reached; - Group := GetGroupBySignature('LSCR'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - (Group.Elements[i] as IwbElementInternal).Reached; - - if wbGameMode = gmTES4 then begin - Group := GetGroupBySignature('SKIL'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - (Group.Elements[i] as IwbElementInternal).Reached; - Group := GetGroupBySignature('BSGN'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - (Group.Elements[i] as IwbElementInternal).Reached; - - Group := GetGroupBySignature('CLAS'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - if Supports(Group.Elements[i], IwbMainRecord, Rec) then begin - if Rec.IsWinningOverride then begin - Cnt := Rec as IwbContainerElementRef; - if Supports(Cnt.RecordBySignature['DATA'], IwbContainerElementRef, Cnt) then begin - Flg := Cnt.ElementByName['Flags']; - if Assigned(Flg) then begin - s := Flg.EditValue; - if (Length(s) > 0) and (s[1]='1') then - (Rec as IwbElementInternal).Reached; - end; - end; - end; - end; - end else begin - Group := GetGroupBySignature('AVIF'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - (Group.Elements[i] as IwbElementInternal).Reached; - Group := GetGroupBySignature('ADDN'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - (Group.Elements[i] as IwbElementInternal).Reached; - Group := GetGroupBySignature('CAMS'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - (Group.Elements[i] as IwbElementInternal).Reached; - Group := GetGroupBySignature('CPTH'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - (Group.Elements[i] as IwbElementInternal).Reached; - Group := GetGroupBySignature('NAVI'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - (Group.Elements[i] as IwbElementInternal).Reached; - Group := GetGroupBySignature('RADS'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - (Group.Elements[i] as IwbElementInternal).Reached; - - Group := GetGroupBySignature('PERK'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - if Supports(Group.Elements[i], IwbMainRecord, Rec) then begin - if Rec.IsWinningOverride then begin - Cnt := Rec as IwbContainerElementRef; - if Supports(Cnt.RecordBySignature['DATA'], IwbContainerElementRef, Cnt) then begin - Flg := Cnt.ElementByName['Playable']; - if Assigned(Flg) then begin - if Flg.NativeValue <> 0 then - (Rec as IwbElementInternal).Reached; - end; - end; - end; - end; - - Group := GetGroupBySignature('HDPT'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - if Supports(Group.Elements[i], IwbMainRecord, Rec) then begin - if Rec.IsWinningOverride then begin - Cnt := Rec as IwbContainerElementRef; - if Supports(Cnt.RecordBySignature['DATA'], IwbContainerElementRef, Cnt) then begin - if (Integer(Cnt.NativeValue) and 1) <> 0 then - (Rec as IwbElementInternal).Reached; - end; - end; - end; - - Group := GetGroupBySignature('DIAL'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - if Supports(Group.Elements[i], IwbMainRecord, Rec) then begin - if Rec.IsWinningOverride then begin - Cnt := Rec as IwbContainerElementRef; - if Supports(Cnt.RecordBySignature['DATA'], IwbContainerElementRef, Cnt2) then begin - Flg := Cnt2.ElementByName['Flags']; - if Assigned(Flg) then begin - s := Flg.SortKey[False]; - if (Length(s)>1) and (s[2] = '1') then - (Rec as IwbElementInternal).Reached; - end; - end; - end; - end; - - Group := GetGroupBySignature('NPC_'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - if Supports(Group.Elements[i], IwbMainRecord, Rec) then begin - if Rec.IsWinningOverride then begin - Cnt := Rec as IwbContainerElementRef; - if Supports(Cnt.RecordBySignature['ACBS'], IwbContainerElementRef, Cnt) then begin - Flg := Cnt.ElementByName['Flags']; - if Assigned(Flg) then begin - s := Flg.EditValue; - if (Length(s) > 2) and (s[3]='1') then - (Rec as IwbElementInternal).Reached; - end; - end; - end; - end; - end; - - Group := GetGroupBySignature('RACE'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - if Supports(Group.Elements[i], IwbMainRecord, Rec) then begin - if Rec.IsWinningOverride then begin - Cnt := Rec as IwbContainerElementRef; - if Supports(Cnt.RecordBySignature['DATA'], IwbContainerElementRef, Cnt) then begin - Flg := Cnt.ElementByName['Flags']; - if Assigned(Flg) then begin - s := Flg.EditValue; - if (Length(s) > 0) and (s[1]='1') then - (Rec as IwbElementInternal).Reached; - end; - end; - end; - end; - - Group := GetGroupBySignature('QUST'); - if Assigned(Group) then - for i := 0 to Pred(Group.ElementCount) do - if Supports(Group.Elements[i], IwbMainRecord, Rec) then begin - if Rec.IsWinningOverride then begin - Cnt := Rec as IwbContainerElementRef; - if Supports(Cnt.RecordBySignature['DATA'], IwbContainerElementRef, Cnt) then begin - Flg := Cnt.Elements[0]; - if Assigned(Flg) then begin - s := Flg.EditValue; - if (Length(s) > 0) and (s[1]='1') then - (Rec as IwbElementInternal).Reached; - end; - end; - end; - end; -end; - -procedure TwbFile.BuildRef; -begin - inherited; -end; - -procedure TwbFile.CleanMasters; -var - i, j, k : Integer; - Old,New : TBytes; - Header : IwbContainerElementRef; - MasterFiles : IwbContainerElementRef; - Rec : IwbRecord; - UsedMasters : TwbUsedMasters; -begin - if not IsElementEditable(nil) then - raise Exception.Create('File "'+GetFileName+'" is not editable'); - if (GetElementCount < 1) or not Supports(GetElement(0), IwbContainerElementRef, Header) then - raise Exception.CreateFmt('Unexpected error reading file "%s"', [flFileName]); - - if Length(flMasters) >= 1 then begin - MasterFiles := Header.ElementByName['Master Files'] as IwbContainerElementRef; - Assert(Assigned(MasterFiles)); - Assert(MasterFiles.ElementCount = Length(flMasters)); - - for i := Low(flMasters) to High(flMasters) do begin - Rec := (MasterFiles[i] as IwbContainer).RecordBySignature['MAST']; - Assert(Assigned(Rec)); - Assert(SameText(Rec.Value, flMasters[i].FileName)); - MasterFiles[i].SortOrder := i; - end; - - FillChar(UsedMasters, SizeOf(UsedMasters), 0); - FindUsedMasters(@UsedMasters); - - Old := nil; - New := nil; - j := 0; - for i := Low(flMasters) to High(flMasters) do - if UsedMasters[i] then begin - if i <> j then begin - flMasters[j] := flMasters[i]; - - MasterFiles[i].SortOrder := j; - SetLength(Old, Succ(Length(Old))); - Old[High(Old)] := i; - SetLength(New, Succ(Length(New))); - New[High(New)] := j; - end; - Inc(j); - end else - MasterFiles[i].SortOrder := $100; - - k := Length(flMasters); - if j <> k then begin - SetLength(flMasters, j); - - (MasterFiles as IwbContainerInternal).SortBySortOrder; - for i := Pred(MasterFiles.ElementCount) downto 0 do - if MasterFiles[i].SortOrder = $100 then - MasterFiles.RemoveElement(i); - - Assert(Length(flMasters) = MasterFiles.ElementCount); - - for i := Low(flMasters) to High(flMasters) do begin - Rec := (MasterFiles[i] as IwbContainer).RecordBySignature['MAST']; - Assert(Assigned(Rec)); - Assert(SameText(Rec.Value, flMasters[i].FileName)); - end; - - if Length(Old) > 0 then - MasterIndicesUpdated(Old, New); - MasterCountUpdated(k, j); - SortRecords; - end; - end; -end; - -constructor TwbFile.Create(const aFileName: string; aLoadOrder: Integer; aCompareTo: string; aOnlyHeader: Boolean; IsTemporary: Boolean = False); -begin - if IsTemporary then - Include(flStates, fsIsTemporary); - if aCompareTo <> '' then begin - Include(flStates, fsIsCompareLoad); - if SameText(ExtractFileName(aFileName), wbGameName + wbHardcodedDat) then - Include(flStates, fsIsHardcoded); - end else if SameText(ExtractFileName(aFileName), wbGameName + '.esm') then - Include(flStates, fsIsGameMaster); - if aOnlyHeader then - Include(flStates, fsOnlyHeader); - flCompareTo := aCompareTo; - flLoadOrder := aLoadOrder; - flFileName := aFileName; - flOpenFile; - Scan; -end; - -constructor TwbFile.CreateNew(const aFileName: string; aLoadOrder: Integer); -var - Header : IwbMainRecord; -begin - Include(flStates, fsIsNew); - flLoadOrder := aLoadOrder; - flFileName := aFileName; - Header := TwbMainRecord.Create(Self, wbHeaderSignature, 0); - if wbGameMode = gmFNV then - Header.RecordBySignature['HEDR'].Elements[0].EditValue := '1.34' - else if wbGameMode = gmFO3 then - Header.RecordBySignature['HEDR'].Elements[0].EditValue := '0.94' - else if wbGameMode = gmTES3 then - Header.RecordBySignature['HEDR'].Elements[0].EditValue := '1.30' - else if wbGameMode = gmTES4 then - Header.RecordBySignature['HEDR'].Elements[0].EditValue := '1.0' - else if wbGameMode = gmTES5 then - Header.RecordBySignature['HEDR'].Elements[0].EditValue := '1.7' - else if wbGameMode = gmSSE then - Header.RecordBySignature['HEDR'].Elements[0].EditValue := '1.7' - else if wbGameMode = gmFO4 then - Header.RecordBySignature['HEDR'].Elements[0].EditValue := '0.95'; - Header.RecordBySignature['HEDR'].Elements[2].EditValue := '2048'; - flLoadFinished := True; -end; - -destructor TwbFile.Destroy; -begin - flCloseFile; - inherited; -end; - -function TwbFile.FileFileIDtoLoadOrderFileID(aFileID: Byte): Byte; -var - NewFileID : Integer; -begin - if aFileID >= GetMasterCount then - NewFileID := GetLoadOrder - else - NewFileID := flMasters[aFileID].LoadOrder; - - if NewFileID < 0 then - raise Exception.Create('File FormID ['+IntToHex64(aFileID, 2)+'] can not be mapped to load order FormID for file "'+GetFileName+'"'); - - Result := NewFileID; -end; - -function TwbFile.FileFormIDtoLoadOrderFormID(aFormID: Cardinal): Cardinal; -var - FileID : Integer; - NewFileID : Integer; -begin - if aFormID = 0 then begin - Result := 0; - Exit; - end; - - FileID := aFormID shr 24; - if FileID >= GetMasterCount then - NewFileID := GetLoadOrder - else - NewFileID := flMasters[FileID].LoadOrder; - - if NewFileID < 0 then - raise Exception.Create('File FormID ['+IntToHex64(aFormID, 8)+'] can not be mapped to load order FormID for file "'+GetFileName+'"'); - - Result := (aFormID and $00FFFFFF) or (Cardinal(NewFileID) shl 24); -end; - -function TwbFile.FindEditorID(const aEditorID: string; var Index: Integer): Boolean; -var - L, H, I, C: Integer; -begin - Result := False; - if not flLoadFinished then - Exit; - - L := Low(flRecordsByEditorID); - H := High(flRecordsByEditorID); - while L <= H do begin - I := (L + H) shr 1; - C := CompareText(flRecordsByEditorID[I].EditorID, aEditorID); - if C < 0 then - L := I + 1 - else begin - H := I - 1; - if C = 0 then begin - Result := True; - L := I; - end; - end; - end; - Index := L; -end; - -function TwbFile.FindFormID(aFormID: Cardinal; var Index: Integer): Boolean; -var - L, H, I, C: Integer; -begin - Result := False; - if not flFormIDsSorted then begin - Exit; - - for i := 0 to Pred(flRecordsCount) do - if flRecords[I].FixedFormID = aFormID then begin - Index := i; - Result := True; - Exit; - end; - Exit; - end; - - if (aFormID shr 24) > Cardinal(GetMasterCount) then - aFormID := (aFormID and $00FFFFFF) or (Cardinal(GetMasterCount) shl 24); - - L := Low(flRecords); - H := High(flRecords); - while L <= H do begin - I := (L + H) shr 1; - C := CmpW32(flRecords[I].FixedFormID, aFormID); - if C < 0 then - L := I + 1 - else begin - H := I - 1; - if C = 0 then begin - Result := True; - L := I; - end; - end; - end; - Index := L; -end; - -function TwbFile.FindInjectedID(aFormID: Cardinal; var Index: Integer): Boolean; -var - L, H, I, C: Integer; -begin - Result := False; - aFormID := aFormID and $00FFFFFF; - - L := Low(flInjectedRecords); - H := High(flInjectedRecords); - while L <= H do begin - I := (L + H) shr 1; - C := CmpW32(flInjectedRecords[I].FormID and $00FFFFFF, aFormID); - if C < 0 then - L := I + 1 - else begin - H := I - 1; - if C = 0 then begin - Result := True; - L := I; - end; - end; - end; - Index := L; -end; - -procedure TwbFile.flCloseFile; -begin - if Assigned(flView) then begin - UnmapViewOfFile(flView); - flView := nil; - end; - - if (flMapHandle <> INVALID_HANDLE_VALUE) and (flMapHandle <> 0) then begin - CloseHandle(flMapHandle); - flMapHandle := INVALID_HANDLE_VALUE; - end; - - if (flFileHandle <> INVALID_HANDLE_VALUE) and (flFileHandle <> 0) then begin - CloseHandle(flFileHandle); - flFileHandle := INVALID_HANDLE_VALUE; - end; - if fsIsTemporary in flStates then - try - DeleteFile(Self.flFileName); - except - wbProgressCallback('Could not delete temporary file '+flFileName); - end; -end; - -procedure TwbFile.flOpenFile; -const - FileAccessMode: array[Boolean] of Cardinal = (GENERIC_READ, GENERIC_READ or GENERIC_WRITE); - FileShareMode: array[Boolean] of Cardinal = (FILE_SHARE_READ, 0); - PageProtection: array[Boolean] of Cardinal = (PAGE_READONLY, PAGE_READWRITE); - ViewAccessMode: array[Boolean] of Cardinal = (FILE_MAP_READ, FILE_MAP_READ or FILE_MAP_WRITE); -begin - flProgress('Loading file'); - - flFileHandle := CreateFile( - PChar(flFileName), - FileAccessMode[False], - FileShareMode[False], - nil, - OPEN_EXISTING, - FILE_FLAG_RANDOM_ACCESS, - 0 - ); - if (flFileHandle = INVALID_HANDLE_VALUE) or (flFileHandle = 0) then - RaiseLastOSError; - - flMapHandle := CreateFileMapping( - flFileHandle, - nil, - PageProtection[False], - 0, - 0, - nil - ); - if (flMapHandle = INVALID_HANDLE_VALUE) or (flMapHandle = 0) then - RaiseLastOSError; - - flView := MapViewOfFileEx( - flMapHandle, - ViewAccessMode[False], - 0, - 0, - 0, - nil - ); - - if not Assigned(flView) then - RaiseLastOSError; - - flEndPtr := Pointer( Cardinal(flView) + GetFileSize(flFileHandle, nil) ); - - flProgress('File loaded'); -end; - -procedure TwbFile.flProgress(const aStatus: string); -begin - if Assigned(wbProgressCallback) then - wbProgressCallback('['+GetFileName+'] ' + aStatus); -end; - -procedure TwbFile.ForceClosed; -var - i: Integer; -begin - for i := High(flRecords) downto Low(flRecords) do - (flRecords[i] as IwbMainRecordInternal).ClearForRelease; - for i := High(flInjectedRecords) downto Low(flInjectedRecords) do - (flInjectedRecords[i] as IwbMainRecordInternal).ClearForRelease; - flMasters := nil; - flRecords := nil; - flRecordsByEditorID := nil; - flInjectedRecords := nil; - ReleaseElements; - flCloseFile; -end; - -procedure TwbFile.ForceLoadOrder(aValue: Integer); -begin - flLoadOrder := aValue; -end; - -function TwbFile.GetAddList: TDynStrings; -var - i, j : Integer; - GroupRecord : IwbGroupRecord; - RecordDef : PwbRecordDef; -begin - Result := nil; - - if not IsElementEditable(nil) then - Exit; - - with TStringList.Create do try - Sorted := True; - Duplicates := dupIgnore; - - AddStrings(wbGroupOrder); - - for i := 0 to Pred(GroupToSkip.Count) do - if Find(GroupToSkip[i], j) then - Delete(j); - for i := 0 to Pred(RecordToSkip.Count) do - if Find(RecordToSkip[i], j) then - Delete(j); - for i := Succ(Low(cntElements)) to High(cntElements) do - if Supports(cntElements[i], IwbGroupRecord, GroupRecord) then - if GroupRecord.GroupType = 0 then - if Find(TwbSignature(GroupRecord.GroupLabel), j) then - Delete(j); - - Sorted := False; - - for i := Pred(Count) downto 0 do - if wbFindRecordDef(AnsiString(Strings[i]), RecordDef) then - Strings[i] := Strings[i] + ' - ' + RecordDef.Name - else - Delete(i); - - SetLength(Result, Count); - for i := 0 to Pred(Count) do - Result[i] := Strings[i]; - finally - Free; - end; -end; - -function TwbFile.GetBaseName: string; -begin - Result := GetFileName; - if fsIsHardcoded in flStates then - Result := wbGameName + '.exe'; -end; - -function TwbFile.GetElementType: TwbElementType; -begin - Result := etFile; -end; - -function TwbFile.GetFile: IwbFile; -begin - Result := Self; -end; - -function TwbFile.GetFileName: string; -begin - Result := ExtractFileName(flFileName); -end; - -function TwbFile.GetFileStates: TwbFileStates; -begin - Result := flStates; -end; - -function TwbFile.GetGroupBySignature(const aSignature: TwbSignature): IwbGroupRecord; -var - SelfRef: IwbContainerElementRef; - i: Integer; -begin - SelfRef := Self; - DoInit; - - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbGroupRecord, Result) and - (Result.GroupType = 0) and - (TwbSignature(Result.GroupLabel) = aSignature) then - Exit; - - Result := nil; -end; - -function TwbFile.GetHasNoFormID: Boolean; -begin - Result := GetIsNotPlugin or (fsHasNoFormID in flStates); -end; - -function TwbFile.GetHeader: IwbMainRecord; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self; - DoInit; - - if (Length(cntElements) > 0) and - (Supports(cntElements[0], IwbMainRecord, Result)) and - (Result.Signature = wbHeaderSignature) then begin - {Result already set} - end else - Result := nil; -end; - -function TwbFile.GetIsEditable: Boolean; -begin - Result := wbIsInternalEdit or ( - wbEditAllowed and - not (fsIsGameMaster in flStates) and - not (fsIsHardcoded in flStates) and - not (fsIsCompareLoad in flStates) - ); -end; - -function TwbFile.GetIsESM: Boolean; -var - Header : IwbMainRecord; -begin - if GetIsNotPlugin then begin - Result := False; - Exit; - end; - - if (GetElementCount < 1) or not Supports(GetElement(0), IwbMainRecord, Header) then - raise Exception.CreateFmt('Unexpected error reading file "%s"', [flFileName]); - - Result := Header.IsESM; -end; - -function TwbFile.GetIsLocalized: Boolean; -var - Header : IwbMainRecord; -begin - if GetIsNotPlugin then begin - Result := False; - Exit; - end; - - if (GetElementCount < 1) or not Supports(GetElement(0), IwbMainRecord, Header) then - raise Exception.CreateFmt('Unexpected error reading file "%s"', [flFileName]); - - Result := Header.IsLocalized; -end; - -function TwbFile.GetNextObjectID: Cardinal; -var - Header : IwbContainerElementRef; -begin - if (GetElementCount > 0) and Supports(GetElement(0), IwbContainerElementRef, Header) then - Result := Cardinal(Header.ElementNativeValues['HEDR\Next Object ID']) - else - Result := 0; -end; - -procedure TwbFile.SetNextObjectID(aObjectID: Cardinal); -var - Header : IwbMainRecord; -begin - if (GetElementCount > 0) and Supports(GetElement(0), IwbContainerElementRef, Header) then - Header.ElementNativeValues['HEDR\Next Object ID'] := aObjectID; -end; - -function TwbFile.GetIsNotPlugin: Boolean; -begin - Result := not wbIsPlugin(flFileName); -end; - -function TwbFile.GetIsRemoveable: Boolean; -begin - Result := False; -end; - -function TwbFile.GetLoadOrder: Integer; -begin - Result := flLoadOrder; -end; - -function TwbFile.GetMaster(aIndex: Integer): IwbFile; -begin - Result := flMasters[aIndex]; -end; - -function TwbFile.GetMasterCount: Integer; -begin - Result := Length(flMasters); -end; - -function TwbFile.GetMasterRecordByFormID(aFormID: Cardinal; aAllowInjected: Boolean): IwbMainRecord; -var - FileID : Byte; - Master : IwbFile; -begin - FileID := aFormID shr 24; - - if FileID >= Cardinal(GetMasterCount) then begin - Result := nil; - end else begin - Master := flMasters[FileID]; - Result := Master.RecordByFormID[(aFormID and $00FFFFFF) or (Cardinal(Master.MasterCount) shl 24), aAllowInjected]; - end; -end; - -procedure TwbFile.GetMasters(aMasters: TStrings); -var - Header : IwbMainRecord; - MasterFiles : IwbContainerElementRef; - Rec : IwbRecord; - i : Integer; -begin - if (GetElementCount <> 1) or not Supports(GetElement(0), IwbMainRecord, Header) then - raise Exception.CreateFmt('Unexpected error reading file "%s"', [flFileName]); - - if Header.Signature <> wbHeaderSignature then - raise Exception.CreateFmt('Expected header signature '+wbHeaderSignature+', found %s in file "%s"', [String(Header.Signature), flFileName]); - - MasterFiles := Header.ElementByName['Master Files'] as IwbContainerElementRef; - if Assigned(MasterFiles) then - for i := 0 to Pred(MasterFiles.ElementCount) do begin - Rec := (MasterFiles[i] as IwbContainer).RecordBySignature['MAST']; - if not Assigned(Rec) then - raise Exception.CreateFmt('Unexpected error reading master list for file "%s"', [flFileName]); - aMasters.Add(Rec.Value); - end; -end; - -function TwbFile.GetName: string; -begin - Result := GetFileName; - if fsIsHardcoded in flStates then - Result := wbGameName + '.exe'; - if flLoadOrder >= 0 then - Result := '['+IntToHex64(flLoadOrder, 2)+'] ' + Result; -end; - -function TwbFile.GetRecord(aIndex: Integer): IwbMainRecord; -begin - Result := flRecords[aIndex]; -end; - -function TwbFile.GetRecordByEditorID(const aEditorID: string): IwbMainRecord; -var - i: Integer; -begin - Result := nil; - if FindEditorID(aEditorID, i) then - Result := flRecordsByEditorID[i] - else - for i := Pred(GetMasterCount) downto 0 do begin - Result := GetMaster(i).RecordByEditorID[aEditorID]; - if Assigned(Result) then - Exit; - end; -end; - -function TwbFile.GetRecordByFormID(aFormID: Cardinal; aAllowInjected: Boolean): IwbMainRecord; -var - i: Integer; -begin - if FindFormID(aFormID, i) then begin - Result := flRecords[i]; - Exit; - end else if aAllowInjected and ((aFormID shr 24) >= Cardinal(GetMasterCount)) and FindInjectedID(aFormID, i) then begin - Result := flInjectedRecords[i]; - Exit; - end; - - Result := GetMasterRecordByFormID(aFormID, aAllowInjected); -end; - -function TwbFile.GetRecordCount: Integer; -begin - Result := Length(flRecords); -end; - -function TwbFile.GetReferenceFile: IwbFile; -begin - Result := Self; -end; - -function TwbFile.GetUnsavedSince: TDateTime; -begin - Result := flUnsavedSince; -end; - -function TwbFile.HasGroup(const aSignature: TwbSignature): Boolean; -begin - Result := GetGroupBySignature(aSignature) <> nil; -end; - -function TwbFile.HasMaster(const aFileName: string): Boolean; -var - i: Integer; -begin - Result := False; - for i := 0 to Pred(GetMasterCount) do begin - Result := SameText(GetMaster(i).FileName, aFileName); - if Result then - Exit; - end; - -end; - -procedure TwbFile.InjectMainRecord(const aRecord: IwbMainRecord); -var - i: Integer; -begin - if Length(flInjectedRecords) > 0 then begin - if FindInjectedID(aRecord.FormID, i) then begin - if [fsIsHardcoded, fsIsCompareLoad] * flInjectedRecords[i]._File.FileStates = [] then begin - if Assigned(wbProgressCallback) then - wbProgressCallback(''); - end; - (flInjectedRecords[i] as IwbMainRecordInternal).AddOverride(aRecord); - Exit; - end - end else - i := 0; - - if [fsIsHardcoded, fsIsCompareLoad] * aRecord._File.FileStates = [] then begin - if Assigned(wbProgressCallback) then - wbProgressCallback(''); - end; - - SetLength(flInjectedRecords, Succ(Length(flInjectedRecords))); - if i < High(flInjectedRecords) then begin - Move(flInjectedRecords[i], flInjectedRecords[Succ(i)], SizeOf(Pointer) * (High(flInjectedRecords) - i)); - Pointer(flInjectedRecords[i]) := nil; - end; - flInjectedRecords[i] := aRecord; -end; - -function TwbFile.IsElementEditable(const aElement: IwbElement): Boolean; -begin - Result := wbIsInternalEdit or GetIsEditable; -end; - -function TwbFile.IsElementRemoveable(const aElement: IwbElement): Boolean; -begin - Result := False; - - if not IsElementEditable(aElement) then - Exit; - - if Assigned(aElement) then - case aElement.ElementType of - etMainRecord: Result := (aElement as IwbMainRecord).Signature <> wbHeaderSignature; {can't remove the file header} - etGroupRecord: Result := True; - else - Assert(False); - end; -end; - -function TwbFile.LoadOrderFileIDtoFileFileID(aFileID: Byte): Byte; -var - NewFileID : Integer; - i : Integer; -begin - NewFileID := -1; - if aFileID = GetLoadOrder then - NewFileID := GetMasterCount - else - for i := 0 to Pred(GetMasterCount) do - if flMasters[i].LoadOrder = aFileID then begin - NewFileID := i; - Break; - end; - if NewFileID < 0 then - raise Exception.Create('Load order FileID ['+IntToHex64(aFileID, 2)+'] can not be mapped to file FileID for file "'+GetFileName+'"'); - Result := NewFileID; -end; - -function TwbFile.LoadOrderFormIDtoFileFormID(aFormID: Cardinal): Cardinal; -var - FileID : Integer; - NewFileID : Integer; - i : Integer; -begin - if aFormID = 0 then begin - Result := 0; - Exit; - end; - - FileID := aFormID shr 24; - NewFileID := -1; - if FileID = GetLoadOrder then - NewFileID := GetMasterCount - else - for i := 0 to Pred(GetMasterCount) do - if flMasters[i].LoadOrder = FileID then begin - NewFileID := i; - Break; - end; - if NewFileID < 0 then - raise Exception.Create('Load order FormID ['+IntToHex64(aFormID, 8)+'] can not be mapped to file FormID for file "'+GetFileName+'"'); - Result := (aFormID and $00FFFFFF) or (Cardinal(NewFileID) shl 24); -end; - -function TwbFile.NewFormID: Cardinal; -var - SelfRef : IwbContainerElementRef; - FileHeader : IwbMainRecord; - HEDR : IwbRecord; - -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if Length(cntElements) < 1 then - raise Exception.Create('File '+GetFileName+' has no file header'); - - if cntElements[0].ElementType <> etMainRecord then - raise Exception.Create('File '+GetFileName+' has invalid record '+cntElements[0].Name+' as file header.'); - - FileHeader := cntElements[0] as IwbMainRecord; - if FileHeader.Signature <> wbHeaderSignature then - raise Exception.Create('File '+GetFileName+' has invalid record '+cntElements[0].Name+' with invalid signature as file header.'); - - HEDR := FileHeader.RecordBySignature['HEDR']; - if not Assigned(HEDR) then - raise Exception.Create('File '+GetFileName+' has a file header with missing HEDR subrecord'); - - Result := StrToInt64Def(HEDR.Elements[2].EditValue, 2048); - Result := Result and $00FFFFFF; - - if (Result = 0) or (Result = $00FFFFFF) then - Result := StrToInt64Def(HEDR.Elements[1].EditValue, 2048); - - if Result < 2048 then - Result := 2048; - - Result := (Result and $00FFFFFF) or (Cardinal(GetMasterCount) shl 24); - while GetRecordByFormID(Result, True) <> nil do begin - Inc(Result); - if Cardinal(Result shr 24) <> Cardinal(Length(flMasters)) then - Result := Cardinal(2048) or (Cardinal(GetMasterCount) shl 24); - end; - HEDR.Elements[2].EditValue := IntToStr(Succ(Result) and $00FFFFFF); -end; - -procedure TwbFile.PrepareSave; -var - SelfRef : IwbContainerElementRef; - i, j, k : Integer; - GroupRecord : IwbGroupRecord; - Groups : array of Boolean; - RecordCount : Cardinal; - - FileHeader: IwbMainRecord; - HEDR: IwbRecord; - MasterFiles : IwbContainerElementRef; - MasterFile : IwbContainerElementRef; - ONAMs: IwbContainerElementRef; - NewONAM: IwbElement; - Current: IwbMainRecord; - FormID: Cardinal; - FileID: Cardinal; - Signature : TwbSignature; - Master : IwbMainRecord; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if Length(cntElements) < 1 then - raise Exception.Create('File '+GetFileName+' has no file header'); - - if not GetIsNotPlugin then begin - if cntElements[0].ElementType <> etMainRecord then - raise Exception.Create('File '+GetFileName+' has invalid record '+cntElements[0].Name+' as file header.'); - - FileHeader := cntElements[0] as IwbMainRecord; - if FileHeader.Signature <> wbHeaderSignature then - raise Exception.Create('File '+GetFileName+' has invalid record '+cntElements[0].Name+' with invalid signature as file header.'); - - HEDR := FileHeader.RecordBySignature['HEDR']; - if not Assigned(HEDR) then - raise Exception.Create('File '+GetFileName+' has a file header with missing HEDR subrecord'); - - inherited; - - SetLength(Groups, wbGroupOrder.Count); - for i := Succ(Low(cntElements)) to High(cntElements) do begin - if not Supports(cntElements[i], IwbGroupRecord, GroupRecord) then - raise Exception.Create('File '+GetFileName+' contains invalid top level record: '+ cntElements[i].Name); - if GroupRecord.GroupType <> 0 then - raise Exception.Create('File '+GetFileName+' contains invalid top level group type '+IntToStr(GroupRecord.GroupType)+' for group: '+ cntElements[i].Name); - if GroupRecord.SortOrder < 0 then - raise Exception.Create('File '+GetFileName+' contains top level group without known sort order: '+ cntElements[i].Name); - if GroupRecord.SortOrder > High(Groups) then - raise Exception.Create('File '+GetFileName+' contains top level group with invalid sort order: '+ cntElements[i].Name); - if Groups[GroupRecord.SortOrder] then - raise Exception.Create('File '+GetFileName+' contains duplicated top level group: '+ cntElements[i].Name); - Groups[GroupRecord.SortOrder] := True; - end; - - if Length(cntElements) > 1 then - wbMergeSort(@cntElements[1], High(cntElements), CompareSortOrder); - - RecordCount := GetCountedRecordCount; - if RecordCount < 1 then - raise Exception.Create('File '+GetFileName+' has an invalid record count'); - - HEDR.Elements[1].EditValue := IntToStr(Pred(RecordCount)); - - j := 0; - ONAMs := nil; - if wbGameMode in [gmFO3, gmFNV, gmTES5, gmSSE, gmFO4] then begin - Include(TwbMainRecord(FileHeader).mrStates, mrsNoUpdateRefs); - while FileHeader.RemoveElement('ONAM') <> nil do - ; - if Supports(FileHeader.ElementByName['Master Files'], IwbContainerElementRef, MasterFiles) then - for i := 0 to Pred(MasterFiles.ElementCount) do begin - if Supports(MasterFiles.Elements[i], IwbContainerElementRef, MasterFile) then begin - // Fallout 4 CK creates ONAMs in ESP too - if FileHeader.IsESM or (wbGameMode = gmFO4) then - while j <= High(flRecords) do begin - Current := flRecords[j]; - FormID := Current.FixedFormID; - FileID := FormID shr 24; - if FileID > i then - Break; - Assert(FileID = i); - Inc(j); - - Signature := Current.Signature; - - if (Signature = 'NAVM') or - (Signature = 'LAND') or - (Signature = 'REFR') or - (Signature = 'PGRE') or - (Signature = 'PMIS') or - (Signature = 'ACHR') or - (Signature = 'ACRE') or - (Signature = 'PARW') or {>>> Skyrim <<<} - (Signature = 'PBEA') or {>>> Skyrim <<<} - (Signature = 'PFLA') or {>>> Skyrim <<<} - (Signature = 'PCON') or {>>> Skyrim <<<} - (Signature = 'PBAR') or {>>> Skyrim <<<} - (Signature = 'PHZD') or {>>> Skyrim <<<} - // Fallout 4 (and later games?) - ((wbGameMode >= gmFO4) and ( - (Signature = 'SCEN') or - (Signature = 'DLBR') or - (Signature = 'DIAL') or - (Signature = 'INFO') - )) - then begin - - if (not wbMasterUpdateFilterONAM) or Current.IsWinningOverride then begin - // ONAMs are for overridden temporary refs only - if Current.IsPersistent then - Continue; - - if not Assigned(ONAMs) then begin - if not Supports(FileHeader.Add('ONAM', True), IwbContainerElementRef, ONAMs) then - Assert(False); - Assert(ONAMs.ElementCount = 1); - NewONAM := ONAMs.Elements[0]; - end else - NewONAM := ONAMs.Assign(High(Integer), nil, True); - - NewONAM.NativeValue := FormID; - - if wbMasterUpdateFixPersistence and not Current.IsPersistent and not Current.IsMaster then begin - Master := Current.Master; - if Assigned(Master) then begin - if Master.IsPersistent then begin - flProgress('Setting Persistent: ' + Current.Name); - Current.IsPersistent := True; - end else - for k := 0 to Pred(Master.OverrideCount) do - if Current.Equals(Master.Overrides[k]) then - Break - else - if Master.Overrides[k].IsPersistent then begin - flProgress('Setting Persistent: ' + Current.Name); - Current.IsPersistent := True; - Break; - end; - end; - end; - - end; - - end; - - end; - end; - if j > High(flRecords) then - Break; - end; - Exclude(TwbMainRecord(FileHeader).mrStates, mrsNoUpdateRefs); - FileHeader.UpdateRefs; - end; - - if wbClampFormID then begin - if Supports(FileHeader.ElementByName['Master Files'], IwbContainerElementRef, MasterFiles) then - k := MasterFiles.ElementCount - else - k := 0; - for i := Low(flRecords) to High(flRecords) do - flRecords[i].ClampFormID(k); - end; - end else - inherited; -end; - -function TwbFile.Reached: Boolean; -begin - Result := False; -end; - -procedure TwbFile.RemoveInjectedMainRecord(const aRecord: IwbMainRecord); -var - i: Integer; -begin - if (Length(flInjectedRecords) > 0) and FindInjectedID(aRecord.FormID, i) then begin - - Assert( (aRecord as IwbElement) = (flInjectedRecords[i] as IwbElement) ); - - flInjectedRecords[i] := nil; - if i < High(flInjectedRecords) then begin - Move(flInjectedRecords[Succ(i)], flInjectedRecords[i], SizeOf(Pointer) * (High(flInjectedRecords) - i)); - Pointer(flInjectedRecords[High(flInjectedRecords)]) := nil; - end; - SetLength(flInjectedRecords, Pred(Length(flInjectedRecords))); - - end; -end; - -procedure TwbFile.RemoveMainRecord(const aRecord: IwbMainRecord); -var - i : Integer; - Master : IwbMainRecord; - FileID : Byte; -begin - if not Assigned(aRecord) then - Exit; - if aRecord.FormID <> 0 then begin - Assert(flLoadFinished); - - if (Length(flRecords) < 1) or not FindFormID(aRecord.FormID, i) then - raise Exception.Create('Can''t remove FormID ['+IntToHex64(aRecord.FormID, 8)+'] from file '+GetName+': FormID not registered'); - - flRecords[i] := nil; - if i < High(flRecords) then begin - Move(flRecords[Succ(i)], flRecords[i], SizeOf(Pointer) * (High(flRecords) - i)); - Pointer(flRecords[High(flRecords)]) := nil; - end; - SetLength(flRecords, Pred(Length(flRecords))); - - FileID := aRecord.FormID shr 24; - if FileID >= Cardinal(GetMasterCount) then begin - {record for this file} - end else try - Master := GetMasterRecordByFormID(aRecord.FormID, True); - if Assigned(Master) and ((Master as IwbElement) <> (aRecord as IwbElement)) then - (Master as IwbMainRecordInternal).RemoveOverride(aRecord) - else - (GetMaster(FileID) as IwbFileInternal).RemoveInjectedMainRecord(aRecord); - except - on E: Exception do - if Assigned(wbProgressCallback) then - wbProgressCallback('Error: <'+e.Message+'> while trying to determine master record for ' + aRecord.Name); - end; - end; -end; - -procedure TwbFile.Scan; -var - CurrentPtr : Pointer; - Header : IwbMainRecord; - HEDR : IwbRecord; - MasterFiles : IwbContainerElementRef; - Rec : IwbRecord; - i, j : Integer; - SelfRef : IwbContainerElementRef; - - Groups : array of IwbGroupRecord; - GroupRecord : IwbGroupRecord; - - IsInternal : Boolean; -begin - SelfRef := Self as IwbContainerElementRef; - flProgress('Start processing'); - - CurrentPtr := flView; - TwbRecord.CreateForPtr(CurrentPtr, flEndPtr, Self, nil); - - if (GetElementCount <> 1) or not Supports(GetElement(0), IwbMainRecord, Header) then - raise Exception.CreateFmt('Unexpected error reading file "%s"', [flFileName]); - - if Header.Signature <> wbHeaderSignature then - raise Exception.CreateFmt('Expected header signature TES4, found %s in file "%s"', [String(Header.Signature), flFileName]); - - if fsOnlyHeader in flStates then - Exit; - - MasterFiles := Header.ElementByName['Master Files'] as IwbContainerElementRef; - if Assigned(MasterFiles) then - for i := 0 to Pred(MasterFiles.ElementCount) do begin - Rec := (MasterFiles[i] as IwbContainer).RecordBySignature['MAST']; - if not Assigned(Rec) then - raise Exception.CreateFmt('Unexpected error reading master list for file "%s"', [flFileName]); - AddMaster(Rec.Value); - end; - - if flCompareTo <> '' then - AddMaster(flCompareTo); - - flRecordsCount := 0; - HEDR := Header.RecordBySignature['HEDR']; - if Assigned(HEDR) then begin - SetLength(flRecords, StrToInt(HEDR.Elements[1].Value)); - end; - - flProgress('Header processed. Expecting ' + IntToStr(Length(flRecords)) + ' records'); - - while Cardinal(CurrentPtr) < Cardinal(flEndPtr) do begin - Rec := TwbRecord.CreateForPtr(CurrentPtr, flEndPtr, Self, nil); - flProgress(Rec.Name + ' processed'); - end; - - if flRecordsCount < Length(flRecords) then - SetLength(flRecords, flRecordsCount); - - flProgress('Building FormID index'); - if flRecordsCount < Length(flRecords) then - SetLength(flRecords, flRecordsCount); - SortRecords; - flProgress('FormID index built'); - - flProgress('Building EditorID index'); - if flRecordsByEditorIDCount < Length(flRecordsByEditorID) then - SetLength(flRecordsByEditorID, flRecordsByEditorIDCount); - SortRecordsByEditorID; - flProgress('EditorID index built'); - - if wbGameMode in [gmFNV, gmTES5, gmSSE, gmFO4] then begin - IsInternal := not GetIsEditable and wbBeginInternalEdit(True); - try - SetLength(Groups, wbGroupOrder.Count); - for i := High(cntElements) downto Succ(Low(cntElements)) do begin - if not Supports(cntElements[i], IwbGroupRecord, GroupRecord) then begin - flProgress('Error: File contains invalid top level record: '+ cntElements[i].Name); - Continue; - end; - if GroupRecord.GroupType <> 0 then begin - flProgress('Error: File contains invalid top level group type '+IntToStr(GroupRecord.GroupType)+' for group: '+ cntElements[i].Name); - Continue; - end; - if GroupRecord.SortOrder < 0 then begin - flProgress('Error: File contains top level group without known sort order: '+ cntElements[i].Name); - Continue; - end; - if GroupRecord.SortOrder > High(Groups) then begin - flProgress('Error: File contains top level group with invalid sort order: '+ cntElements[i].Name); - Continue; - end; - if Assigned(Groups[GroupRecord.SortOrder]) then begin - flProgress('Warning: File contains duplicated top level group: ' + cntElements[i].Name); - if wbBeginInternalEdit(True) then try - if Groups[GroupRecord.SortOrder].ElementCount = 0 then begin - Groups[GroupRecord.SortOrder].Remove; - Groups[GroupRecord.SortOrder] := nil; - Groups[GroupRecord.SortOrder] := GroupRecord; - end else begin - j := 0; - while GroupRecord.ElementCount > 0 do begin - Groups[GroupRecord.SortOrder].AddElement(GroupRecord.RemoveElement(0, True)); - Inc(j); - end; - (Groups[GroupRecord.SortOrder] as IwbGroupRecordInternal).Sort; - (Groups[GroupRecord.SortOrder] as IwbGroupRecordInternal).SetModified(True); - flProgress('Merged ' + IntToStr(j) + ' record from duplicated group: ' + cntElements[i].Name); - GroupRecord.Remove; - end; - finally - wbEndInternalEdit; - end; - Continue; - end; - Groups[GroupRecord.SortOrder] := GroupRecord; - end; - finally - if IsInternal then - wbEndInternalEdit; - end; - end; - - flProgress('Processing completed'); - flLoadFinished := True; -end; - -procedure TwbFile.SetHasNoFormID(Value: Boolean); -begin - if Value or GetIsNotPlugin then - Include(flStates, fsHasNoFormID) - else - Exclude(flStates, fsHasNoFormID); -end; - -procedure TwbFile.SetIsESM(Value: Boolean); -var - Header : IwbMainRecord; -begin - if GetIsNotPlugin then begin - Exit; - end; - - if (GetElementCount < 1) or not Supports(GetElement(0), IwbMainRecord, Header) then - raise Exception.CreateFmt('Unexpected error reading file "%s"', [flFileName]); - - if Value <> Header.IsESM then begin - if not IsElementEditable(nil) then - raise Exception.Create('File "'+GetFileName+'" is not editable'); - - Header.IsESM := Value; - end; -end; - -procedure TwbFile.SetIsLocalized(Value: Boolean); -var - Header : IwbMainRecord; -begin - if GetIsNotPlugin then begin - Exit; - end; - - if (GetElementCount < 1) or not Supports(GetElement(0), IwbMainRecord, Header) then - raise Exception.CreateFmt('Unexpected error reading file "%s"', [flFileName]); - - if Value <> Header.IsLocalized then begin - if not IsElementEditable(nil) then - raise Exception.Create('File "'+GetFileName+'" is not editable'); - - Header.IsLocalized := Value; - end; -end; - -procedure TwbFile.SetLoadOrder(aValue: Integer); -begin - flLoadOrder := aValue; -end; - -procedure TwbFile.SetModified(aValue: Boolean); -begin - if not (esUnsaved in eStates) and not wbIsInternalEdit then - flUnsavedSince := Now; - - inherited; -end; - -function CompareRecords(Item1, Item2: Pointer): Integer; -var - FormID1 : Cardinal; - FormID2 : Cardinal; -begin - FormID1 := IwbMainRecord(Item1).FixedFormID; - FormID2 := IwbMainRecord(Item2).FixedFormID; - - if FormID1 < FormID2 then - Result := -1 - else if FormID1 = FormID2 then - Result := 0 - else - Result := 1; -end; - -function CompareOverrides(Item1, Item2: Pointer): Integer; -var - LoadOrder1 : Cardinal; - LoadOrder2 : Cardinal; -begin - LoadOrder1 := IwbMainRecord(Item1)._File.LoadOrder; - LoadOrder2 := IwbMainRecord(Item2)._File.LoadOrder; - - if LoadOrder1 < LoadOrder2 then - Result := -1 - else if LoadOrder1 = LoadOrder2 then - Result := 0 - else - Result := 1; -end; - -function CompareRecordsByEditorID(Item1, Item2: Pointer): Integer; -begin - Result := CompareText(IwbMainRecord(Item1).EditorID, IwbMainRecord(Item2).EditorID); -end; - -procedure TwbFile.SortMasters; -var - OldList : TStringList; - i, j : Integer; - Old,New : TBytes; - Header : IwbContainerElementRef; - MasterFiles : IwbContainerElementRef; - Rec : IwbRecord; -begin - if not IsElementEditable(nil) then - raise Exception.Create('File "'+GetFileName+'" is not editable'); - if GetIsNotPlugin then - Exit; - - if (GetElementCount < 1) or not Supports(GetElement(0), IwbContainerElementRef, Header) then - raise Exception.CreateFmt('Unexpected error reading file "%s"', [flFileName]); - - if Length(flMasters) > 1 then begin - MasterFiles := Header.ElementByName['Master Files'] as IwbContainerElementRef; - Assert(Assigned(MasterFiles)); - Assert(MasterFiles.ElementCount = Length(flMasters)); - OldList := TStringList.Create; - OldList.Sorted := True; - OldList.Duplicates := dupError; - try - for i := Low(flMasters) to High(flMasters) do begin - Rec := (MasterFiles[i] as IwbContainer).RecordBySignature['MAST']; - Assert(Assigned(Rec)); - Assert(SameText(Rec.Value, flMasters[i].FileName)); - OldList.AddObject(flMasters[i].FileName, Pointer(i)); - MasterFiles[i].SortOrder := i; - end; - - wbMergeSort(@flMasters[0], Length(flMasters), CompareLoadOrder); - - Old := nil; - New := nil; - for i := Low(flMasters) to High(flMasters) do begin - j := Integer(OldList.Objects[OldList.IndexOf(flMasters[i].FileName)]); - if i <> j then begin - MasterFiles[j].SortOrder := i; - SetLength(Old, Succ(Length(Old))); - Old[High(Old)] := j; - SetLength(New, Succ(Length(New))); - New[High(New)] := i; - end; - end; - if Length(Old) > 0 then begin - (MasterFiles as IwbContainerInternal).SortBySortOrder; - MasterIndicesUpdated(Old, New); - end; - finally - OldList.Free; - end; - SortRecords; - end; -end; - -type - TwbRecordSortEntry = record - rseFormID : Cardinal; - rseMainRecord : Pointer; - end; - TwbRecordSortEntries = array of TwbRecordSortEntry; - - PwbRecordSortEntry = ^TwbRecordSortEntry; - TwbRecordSortEntryPtrs = array of PwbRecordSortEntry; - -function CompareSortEntryPtrs(Item1{eax}, Item2{edx}: Pointer): Integer; -asm - {$IFDEF WIN32} - mov ecx, [eax + TwbRecordSortEntry.rseFormID] - mov edx, [edx + TwbRecordSortEntry.rseFormID] - xor eax, eax - cmp ecx, edx - mov ecx, -1 - cmovb eax, ecx - seta al - {$ENDIF WIN32} - {$IFDEF WIN64} - mov rcx, [rcx + TwbRecordSortEntry.rseFormID] - mov rdx, [rdx + TwbRecordSortEntry.rseFormID] - xor rax, rax - cmp rcx, rdx - mov rcx, -1 - cmovb rax, rcx - seta al - {$ENDIF WIN64} -end; - -procedure TwbFile.SortRecords; -var - SortEntries : TwbRecordSortEntries; - SortEntryPtrs : TwbRecordSortEntryPtrs; - i : Integer; -begin - i := Length(flRecords); - if i > 0 then begin - SetLength(SortEntries, i); - SetLength(SortEntryPtrs, i); - for i := Low(flRecords) to High(flRecords) do begin - SortEntries[i].rseFormID := flRecords[i].FixedFormID; - SortEntries[i].rseMainRecord := Pointer(flRecords[i]); - SortEntryPtrs[i] := @SortEntries[i]; - end; - wbMergeSort(@SortEntryPtrs[0], Length(SortEntryPtrs), CompareSortEntryPtrs); - for i := Low(flRecords) to High(flRecords) do - Pointer(flRecords[i]) := SortEntryPtrs[i].rseMainRecord; - end; - flFormIDsSorted := True; -end; - -procedure TwbFile.SortRecordsByEditorID; -begin - if Length(flRecordsByEditorID) > 0 then - wbMergeSort(@flRecordsByEditorID[0], Length(flRecordsByEditorID), CompareRecordsByEditorID); -end; - -procedure TwbFile.WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - PrepareSave; - inherited WriteToStreamInternal(aStream, aResetModified); - - Exclude(eStates, esUnsaved); - if aResetModified then begin - Exclude(eStates, esModified); - Exclude(eStates, esInternalModified); - end; -end; - -type - TwbUnionFlags = ( - ufNone, - ufArray, - ufSortedArray, - ufFlags - ); - -function ArrayDoInit(const aValueDef: IwbValueDef; const aContainer: IwbContainer; var aBasePtr: Pointer; aEndPtr: Pointer; out SizePrefix: Integer): Boolean; forward; -procedure StructDoInit(const aValueDef: IwbValueDef; const aContainer: IwbContainer; var aBasePtr: Pointer; aEndPtr: Pointer); forward; -function UnionDoInit(const aValueDef: IwbValueDef; const aContainer: IwbContainer; var aBasePtr: Pointer; aEndPtr: Pointer): TwbUnionFlags; forward; -function ValueDoInit(const aValueDef: IwbValueDef; const aContainer: IwbContainer; var aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Boolean; forward; - -{ TwbContainer } - -function TwbContainer.Add(const aName: string; aSilent: Boolean): IwbElement; -begin - Result := nil; -end; - -procedure TwbContainer.AddElement(const aElement: IwbElement); -begin - if not Assigned(aElement) then - Exit; - - SetLength(cntElements, Succ(Length(cntElements))); - cntElements[High(cntElements)] := aElement as IwbElementInternal; - cntElements[High(cntElements)].SetContainer(Self); - NotifyChanged(eContainer); -end; - -function TwbContainer.IndexOf(const aElement: IwbElement): Integer; -var - i: Integer; -begin - Result := -1; - if Assigned(aElement) then - for i := Low(cntElements) to High(cntElements) do - if aElement.Equals(cntElements[i]) then begin - Result := i; - Exit; - end; -end; - -procedure TwbContainer.InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); -var - i: Integer; - j: Integer; - k: Integer; - l: Integer; - m: Integer; - n: Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - m := Low(Integer); - for l := Low(cntElements) to High(cntElements) do - if cntElements[l].MemoryOrder > m then - m := cntElements[l].MemoryOrder; - for l := Low(cntElements) to High(cntElements) do - if cntElements[l].MemoryOrder = Low(Integer) then begin - cntElements[l].MemoryOrder := m + 1; - Inc(m); - end; - m := Low(Integer); - k := Low(Integer); - for i := Low(cntElements) to High(cntElements) do begin - n := k; - j := High(Integer); - for l := Low(cntElements) to High(cntElements) do begin - if (m= Low(cntElements)); - Assert(k <> n); - m := cntElements[k].MemoryOrder; - cntElements[k].InformStorage(aBasePtr, aEndPtr); - end; -end; - -procedure TwbContainer.InsertElement(aPosition: Integer; const aElement: IwbElement); -begin - if not Assigned(aElement) then - Exit; - - SetLength(cntElements, Succ(Length(cntElements))); - - if aPosition < Low(cntElements) then - aPosition := Low(cntElements) - else if aPosition > High(cntElements) then - aPosition := High(cntElements); - - if aPosition < High(cntElements) then begin - Move(cntElements[aPosition], cntElements[Succ(aPosition)], (High(cntElements) - aPosition) * SizeOf(Pointer)); - Pointer(cntElements[aPosition]) := nil; - end; - - cntElements[aPosition] := aElement as IwbElementInternal; - cntElements[aPosition].SetContainer(Self); - NotifyChanged(eContainer); -end; - -function TwbContainer.IsElementEditable(const aElement: IwbElement): Boolean; -begin - if Assigned(eContainer) then - Result := IwbContainer(eContainer).IsElementEditable(Self) - else - Result := True; -end; - -function TwbContainer.IsElementRemoveable(const aElement: IwbElement): Boolean; -begin - Result := False; -end; - -function LockedInc(var Target: Integer): Integer; register; -asm - {$IFDEF WIN32} - mov ecx, eax - mov eax, 1 - lock xadd [ecx], eax - inc eax - {$ENDIF WIN32} - {$IFDEF WIN64} - mov rax, 1 - lock xadd [rcx], rax - inc rax - {$ENDIF WIN64} -end; - -function LockedDec(var Target: Integer): Integer; register; -asm - {$IFDEF WIN32} - mov ecx, eax - mov eax, -1 - lock xadd [ecx], eax - dec eax - {$ENDIF WIN32} - {$IFDEF WIN64} - mov rax, -1 - lock xadd [rcx], rax - dec rax - {$ENDIF WIN64} -end; - -procedure TwbContainer.AfterConstruction; -begin - inherited; - {$IFDEF WIN64} - LockedDec(cntElementRefs); - {$ENDIF WIN64} - {$IFDEF WIN32} - asm - mov eax, [Self] - lock dec dword ptr [eax + cntElementRefs] - end; - {$ENDIF WIN32} -end; - -function TwbContainer.AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; -var - Container : IwbContainer; - uContainer : IwbContainerElementRef; - sElement : IwbElement; - BasePtr : Pointer; - i, j : Integer; - SelfRef : IwbContainerElementRef; - ValueDef : IwbValueDef; - UnionDef : IwbUnionDef; - HasMap : Boolean; - StructDef : IwbStructDef; - OurSize : Integer; -begin - Result := nil; - - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be assigned.'); - - SelfRef := Self as IwbContainerElementRef; - - if Assigned(eContainer) then - if not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - - DoInit; - - if inherited CanAssignInternal(aIndex, aElement, False) then - Result := inherited AssignInternal(aIndex, aElement, aOnlySK); - - if (aIndex = Low(Integer)) and (Length(cntElements) > 0) then begin - - if Supports(aElement, IwbContainer, Container) and (Container.ElementCount = GetElementCount) then begin - - ValueDef := GetValueDef; - if (ValueDef = aElement.ValueDef) or - ( Assigned(ValueDef) and - ( - ValueDef.Equals(aElement.ValueDef) or - ValueDef.CanAssign(Self, aIndex, aElement.ValueDef) - ) - ) then begin - HasMap := Length(cntElementsMap) > 0; - if HasMap then begin - Assert(Length(cntElements) = Length(cntElementsMap)); - //if the elements haven't got their space allocated yet, we need - //to make sure they are first written to in the "on disk" order - //before copying in the mapped order below - SetToDefault; - end; - for i := Low(cntElements) to High(cntElements) do begin - if HasMap then - j := cntElementsMap[i] - else - j := i; - - // if we have a union, we cannot progress until the union has been resolved and its cntElements is populated - sElement := Container.Elements[i]; - if (sElement.ElementType = etUnion) and - Supports(cntElements[j], IwbContainerElementRef, uContainer) and - Supports(uContainer.GetValueDef, IwbUnionDef, UnionDef) then begin - if (uContainer.ElementCount = 1) then begin // At this point it is usually the default choice set by default - uContainer.RemoveElement(0); - end; - if (uContainer.ElementCount = 0) then begin - BasePtr := nil; - UnionDoInit(UnionDef, uContainer as IwbContainer, BasePtr, nil); - end; - end; - if (not aOnlySK or GetIsInSK(cntElements[j].SortOrder)) then begin - if cntElements[j].CanAssign(Low(Integer), sElement, False) then - cntElements[j].Assign(Low(Integer), sElement, aOnlySK) - else if Supports(sElement.ValueDef, IwbEmptyDef) then begin - // this might be a case the source begin a struct - // with "OptionalFromElement" empty elements at the end - If Supports(Container.ResolvedValueDef, IwbStructDef, StructDef) then - if StructDef.OptionalFromElement >= 0 then - if StructDef.OptionalFromElement <= j then begin - //yes it is - Assert(not HasMap); //this would be really tricky to handle with mapped elements... - Assert(Self is TwbDataContainer); //if the source is a struct and is assignable to us, this should be guaranteed - OurSize := 0; - for j := Low(cntElements) to Pred(i) do - Inc(OurSize, cntElements[j].DataSize); - if GetDataSize > OurSize then - with TwbDataContainer(Self) do begin - UpdateStorageFromElements; - Assert(Length(dcDataStorage) >= OurSize); - Assert(not (dcfStorageInvalid in dcFlags)); - Reset; - SetLength(dcDataStorage, OurSize); - if OurSize > 0 then begin - dcDataBasePtr := @dcDataStorage[Low(dcDataStorage)]; - dcDataEndPtr := Pointer( Cardinal(dcDataBasePtr) + OurSize ); - end else begin - dcDataBasePtr := @EmptyPtr; - dcDataEndPtr := @EmptyPtr; - end; - Init; - end; - Exit; - end; - end; - end; - end; - end; - end; - - end; -end; - -procedure TwbContainer.Bar; -begin - -end; - -procedure TwbContainer.BeforeDestruction; -begin - Assert(cntElementRefs = 0); - inherited BeforeDestruction; - {$IFDEF WIN64} - LockedInc(cntElementRefs); - {$ENDIF WIN64} - {$IFDEF WIN32} - asm - mov eax, [Self] - lock inc dword ptr [eax + cntElementRefs] - end; - {$ENDIF WIN32} -end; - -procedure TwbContainer.BuildRef; -var - i: Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - Include(cntStates, csRefsBuild); - for i := Low(cntElements) to High(cntElements) do - if cntElements[i].CanContainFormIDs then - cntElements[i].BuildRef; -end; - -function TwbContainer.CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; -var - Container : IwbContainer; - i : Integer; - SelfRef : IwbContainerElementRef; - ValueDef : IwbValueDef; -begin - Result := False; - if not wbEditAllowed then - Exit; - - if not Assigned(aElement) then - Exit; - - if Assigned(eContainer) then - if not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - - SelfRef := Self as IwbContainerElementRef; - - Result := inherited CanAssignInternal(aIndex, aElement, aCheckDontShow); - - DoInit; - - if not Result and (aIndex = Low(Integer)) and (Length(cntElements) > 0) then begin - - if Supports(aElement, IwbContainer, Container) and (Container.ElementCount = GetElementCount) then begin - ValueDef := GetValueDef; - Result := (ValueDef = aElement.ValueDef) or - ( Assigned(ValueDef) and - ( - ValueDef.Equals(aElement.ValueDef) or - ValueDef.CanAssign(Self, aIndex, aElement.ValueDef) - ) - ); - end; - - if Result then - for i := Low(cntElements) to High(cntElements) do begin - Result := - (cntElements[i].ConflictPriority = cpIgnore) or - (Container.Elements[i].ConflictPriority = cpIgnore) or - cntElements[i].CanAssign(Low(Integer), Container.Elements[i], aCheckDontShow); - if not Result then - Exit; - end; - end; -end; - -function TwbContainer.CanChangeElementMember(const aElement: IwbElement): Boolean; -var - SubRecordArrayDef : IwbSubRecordArrayDef; -begin - Result := Supports(GetDef, IwbSubRecordArrayDef, SubRecordArrayDef) and - Supports(SubRecordArrayDef.Element, IwbSubRecordUnionDef) and - IsElementEditable(Self); -end; - -function TwbContainer.CanMoveElement: Boolean; -begin - Result := False; -end; - -function TwbContainer.CanMoveElementDown(const aElement: IwbElement): Boolean; -var - i: Integer; -begin - Result := False; - if Assigned(eContainer) and not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - if not CanMoveElement then - Exit; - if Length(cntElements) < 2 then - Exit; - if cntElements[High(cntElements)].Equals(aElement) then - Exit; - Result := True; - for i := 0 to Pred(High(cntElements)) do - if cntElements[i].Equals(aElement) then - Exit; - Result := False; -end; - -function TwbContainer.CanMoveElementUp(const aElement: IwbElement): Boolean; -var - i: Integer; -begin - Result := False; - if Assigned(eContainer) and not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - if not CanMoveElement then - Exit; - if Length(cntElements) < 2 then - Exit; - if cntElements[0].Equals(aElement) then - Exit; - Result := True; - for i := 1 to High(cntElements) do - if cntElements[i].Equals(aElement) then - Exit; - Result := False; -end; - -function TwbContainer.CanElementReset: Boolean; -begin - if Assigned(eContainer) then - Result := IwbContainer(eContainer).CanElementReset - else - Result := True; -end; - -function TwbContainer.CompareExchangeFormID(aOldFormID, aNewFormID: Cardinal): Boolean; -var - i: Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - Result := False; - for i := Low(cntElements) to High(cntElements) do - if cntElements[i].CanContainFormIDs then - Result := cntElements[i].CompareExchangeFormID(aOldFormID, aNewFormID) or Result; -end; - -procedure TwbContainer.CreatedEmpty; -begin - Include(cntStates, csAsCreatedEmpty); -end; - -procedure TwbContainer.Init; -begin - { can be overriden } -end; - -destructor TwbContainer.Destroy; -begin - ReleaseElements; - inherited; -end; - -procedure TwbContainer.DoInit; -var - i : Integer; - ValueDef : IwbValueDef; - KAC : PwbKeepAliveContext; -begin - if esDestroying in eStates then - Exit; - if csInit in cntStates then - Exit; - if [csInitializing, csReseting] * cntStates <> [] then - Exit; - Include(cntStates, csInitializing); - try - cntElementsMap := nil; - Include(cntStates, csInit); - Include(cntStates, csInitOnce); - Init; - Include(cntStates, csInitDone); - for i := Low(cntElements) to High(cntElements) do - cntElements[i].MemoryOrder := i; - ValueDef := GetValueDef; - if Assigned(ValueDef) then - cntElementsMap := ValueDef.GetElementMap; - if not wbSpeedOverMemory then - if not (GetElementType in [etMainRecord, etGroupRecord]) then - if not Assigned(cntKeepAliveNext) and (Length(cntElements) > 0) then begin - KAC := wbKeepAliveContext; - if Assigned(KAC) then begin - cntKeepAliveNext := KAC.kacHead; - KAC.kacHead := Self as IwbContainerElementRef; - end; - end; - finally - Exclude(cntStates, csInitializing); - end; -end; - -procedure TwbContainer.DoReset(aForce: Boolean); -begin - if not aForce then begin - if Length(cntElements) = 0 then - Exit; - if not (csInit in cntStates) then - Exit; - if esModified in eStates then - Exit; - if cntElementRefs > 0 then - Exit; - if not CanElementReset then - Exit; - end; - - if [csInitializing, csReseting] * cntStates <> [] then - Exit; - - {$IFDEF WIN64} - LockedInc(cntElementRefs); - {$ENDIF WIN64} - {$IFDEF WIN32} - asm - mov eax, [Self] - lock inc dword ptr [eax + cntElementRefs] - end; - {$ENDIF WIN32} - try - Include(cntStates, csReseting); - Exclude(cntStates, csInitDone); - Reset; - cntElementsMap := nil; - finally - Exclude(cntStates, csReseting); - {$IFDEF WIN64} - LockedDec(cntElementRefs); - {$ENDIF WIN64} - {$IFDEF WIN32} - asm - mov eax, [Self] - lock dec dword ptr [eax + cntElementRefs] - end; - {$ENDIF WIN32} - Exclude(cntStates, csInit); - end; -end; - -{$D-} -function TwbContainer.ElementAddRef: Integer; -begin - {$IFDEF WIN64} - LockedInc(cntElementRefs); - {$ENDIF WIN64} - {$IFDEF WIN32} - asm - mov eax, [Self] - lock inc dword ptr [eax + cntElementRefs] - end; - {$ENDIF WIN32} - Result := inherited _AddRef; -end; -{$D+} - -procedure TwbContainer.ElementChanged(const aElement: IwbElement; aContainer: Pointer); -begin - NotifyChanged(aContainer); -end; - -{$D-} -function TwbContainer.ElementRelease: Integer; -label - Skip; -begin - {$IFDEF WIN64} - if LockedDec(cntElementRefs) = 0 then - {$ENDIF WIN64} - {$IFDEF WIN32} - asm - mov eax, -1 - mov ecx, [Self] - lock xadd dword ptr [ecx + cntElementRefs], eax - cmp eax, 1 - jne Skip - end; - {$ENDIF WIN32} - DoReset(False); -Skip: - - Result := inherited _Release; -end; -{$D+} - -function TwbContainer.FindBySortKey(const aSortKey: string; aExtended: Boolean; out aIndex: Integer): Boolean; -var - L, H, I, C: Integer; -begin - Result := False; - - L := Low(cntElements); - H := High(cntElements); - while L <= H do begin - I := (L + H) shr 1; - C := CompareStr(cntElements[I].SortKey[aExtended], aSortKey); - if C < 0 then - L := I + 1 - else begin - H := I - 1; - if C = 0 then begin - Result := True; - L := I; - end; - end; - end; - aIndex := L; -end; - -procedure TwbContainer.FindUsedMasters(aMasters: PwbUsedMasters); -var - i : Integer; - SelfRef : IwbContainerElementRef; -begin - inherited; - SelfRef := Self as IwbContainerElementRef; - DoInit; - for i := Low(cntElements) to High(cntElements) do - if cntElements[i].CanContainFormIDs then - cntElements[i].FindUsedMasters(aMasters); -end; - -procedure TwbContainer.FreeInstance; -begin - Assert(cntElementRefs = 1); - inherited; -end; - -function TwbContainer.GetAdditionalElementCount: Integer; -begin - Result := 0; -end; - -function TwbContainer.GetAddList: TDynStrings; -begin - Result := nil; -end; - -function TwbContainer.GetContainerStates: TwbContainerStates; -begin - Result := cntStates; -end; - -function TwbContainer.GetDataSize: Integer; -var - i : Integer; - SelfRef : IwbContainerElementRef; - DataContainer : IwbDataContainer; -begin - SelfRef := Self as IwbContainerElementRef; - Result := 0; - DoInit; - for i := Low(cntElements) to High(cntElements) do begin - if Supports(cntElements[i], IwbDataContainer, DataContainer) and DataContainer.DontSave then - Continue; - - Inc(Result, cntElements[i].DataSize); - end; -end; - -function TwbContainer.GetElement(aIndex: Integer): IwbElement; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - if not Assigned(cntElements) or (aIndex>=Length(cntElements)) then begin // Using the wrong contained array at the time - if wbMoreInfoForIndex and (DebugHook <> 0) and Assigned(wbProgressCallback) then - wbProgressCallback('Debugger: ['+ IwbElement(Self).Path +'] Index ' + IntToStr(aIndex) + ' greater than max '+ - IntToStr(Length(cntElements)-1)); - Result := nil - end else begin - if Length(cntElementsMap) = Length(cntElements) then - aIndex := cntElementsMap[aIndex]; - Result := IInterface(cntElements[aIndex]) as IwbElement; - end; -end; - -function TwbContainer.GetElementByName(const aName: string): IwbElement; -var - i: integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - Result := nil; - for i := Low(cntElements) to High(cntElements) do - if SameText(cntElements[i].Name, aName) then begin - Result := IInterface(cntElements[i]) as IwbElement; - Exit; - end; - for i := Low(cntElements) to High(cntElements) do - if SameText(cntElements[i].DisplayName, aName) then begin - Result := IInterface(cntElements[i]) as IwbElement; - Exit; - end; -end; - -function TwbContainer.GetElementByPath(const aPath: string): IwbElement; -var - SelfRef : IwbContainerElementRef; - Element : IwbElement; - Path : string; - Container : IwbContainerElementRef; -begin - Result := nil; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Element := ResolveElementName(aPath, Path); - if not Assigned(Element) then - Exit; - - if Path = '' then - Result := Element - else if Supports(Element, IwbContainerElementRef, Container) then - Result := Container.ElementByPath[Path]; -end; - -function TwbContainer.GetElementByMemoryOrder(aSortOrder: Integer): IwbElement; -var - i: integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - Dec(aSortOrder, GetAdditionalElementCount); - Result := nil; - for i := Low(cntElements) to High(cntElements) do - if cntElements[i].MemoryOrder = aSortOrder then begin - Result := IInterface(cntElements[i]) as IwbElement; - Exit; - end; -end; - -function TwbContainer.GetElementBySignature(const aSignature: TwbSignature): IwbElement; -var - i: integer; - HasSignature: IwbHasSignature; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - Result := nil; - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbHasSignature, HasSignature) then - if HasSignature.Signature = aSignature then begin - Result := HasSignature; - Exit; - end; -end; - -function TwbContainer.GetElementBySortOrder(aSortOrder: Integer): IwbElement; -var - i: integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - Dec(aSortOrder, GetAdditionalElementCount); - Result := nil; - for i := Low(cntElements) to High(cntElements) do - if cntElements[i].SortOrder = aSortOrder then begin - Result := IInterface(cntElements[i]) as IwbElement; - Exit; - end; -end; - -function TwbContainer.GetElementCount: Integer; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - Result := Length(cntElements); -end; - -function TwbContainer.GetElementEditValue(const aName: string): string; -var - SelfRef : IwbContainerElementRef; - Element : IwbElement; - Name : string; - Container : IwbContainerElementRef; -begin - Result := ''; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Element := ResolveElementName(aName, Name); - if not Assigned(Element) then - Exit; - - if Name = '' then - Result := Element.EditValue - else if Supports(Element, IwbContainerElementRef, Container) then - Result := Container.ElementEditValues[Name]; -end; - -function TwbContainer.GetElementExists(const aName: string): Boolean; -var - SelfRef : IwbContainerElementRef; - Element : IwbElement; - Name : string; - Container : IwbContainerElementRef; -begin - Result := False; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Element := ResolveElementName(aName, Name); - if not Assigned(Element) then - Exit; - - if Name = '' then - Result := True - else if Supports(Element, IwbContainerElementRef, Container) then - Result := Container.ElementExists[Name]; -end; - -function TwbContainer.GetElementLinksTo(const aName: string): IwbElement; -var - SelfRef : IwbContainerElementRef; - Element : IwbElement; - Name : string; - Container : IwbContainerElementRef; -begin - Result := nil; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Element := ResolveElementName(aName, Name); - if not Assigned(Element) then - Exit; - - if Name = '' then - Result := Element.LinksTo - else if Supports(Element, IwbContainerElementRef, Container) then - Result := Container.ElementLinksTo[Name]; -end; - -function TwbContainer.GetElementNativeValue(const aName: string): Variant; -var - SelfRef : IwbContainerElementRef; - Element : IwbElement; - Name : string; - Container : IwbContainerElementRef; -begin - VarClear(Result); - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Element := ResolveElementName(aName, Name); - if not Assigned(Element) then - Exit; - - if Name = '' then - Result := Element.NativeValue - else if Supports(Element, IwbContainerElementRef, Container) then - Result := Container.ElementNativeValues[Name]; -end; - -function TwbContainer.GetElementSortKey(const aName: string; - aExtended: Boolean): string; -var - SelfRef : IwbContainerElementRef; - Element : IwbElement; - Name : string; - Container : IwbContainerElementRef; -begin - Result := ''; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Element := ResolveElementName(aName, Name); - if not Assigned(Element) then - Exit; - - if Name = '' then - Result := Element.SortKey[aExtended] - else if Supports(Element, IwbContainerElementRef, Container) then - Result := Container.ElementSortKeys[Name, aExtended]; -end; - -function TwbContainer.GetElementValue(const aName: string): string; -var - SelfRef : IwbContainerElementRef; - Element : IwbElement; - Name : string; - Container : IwbContainerElementRef; -begin - Result := ''; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Element := ResolveElementName(aName, Name); - if not Assigned(Element) then - Exit; - - if Name = '' then - Result := Element.Value - else if Supports(Element, IwbContainerElementRef, Container) then - Result := Container.ElementValues[Name]; -end; - -function TwbContainer.GetIsInSK(aIndex: Integer): Boolean; -begin - Result := False; -end; - -function TwbContainer.GetRecordBySignature(const aSignature: TwbSignature): IwbRecord; -var - i: integer; - lRecord: IwbRecord; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - Result := nil; - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbRecord, lRecord) then - if lRecord.Signature = aSignature then begin - Result := lRecord; - Exit; - end; -end; - -function TwbContainer.GetCountedRecordCount: Cardinal; -var - i: Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - Result := 0; - DoInit; - for i := Low(cntElements) to High(cntElements) do - Inc(Result, cntElements[i].GetCountedRecordCount); -end; - -function TwbContainer.GetSortKeyInternal(aExtended: Boolean): string; -var - i: Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - Result := ''; - for i := Low(cntElements) to High(cntElements) do begin - Result := Result + cntElements[i].SortKey[aExtended]; - if i < High(cntElements) then - Result := Result + '|'; - end; -end; - -function TwbContainer.HasErrors: Boolean; -var - SelfRef : IwbContainerElementRef; - i : Integer; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Result := inherited HasErrors; - if Result then - Exit; - - for i := Low(cntElements) to High(cntElements) do begin - Result := cntElements[i].HasErrors; - if Result then - Exit; - end; -end; - -function TwbContainer.LastElement: IwbElement; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - if Length(cntElements) > 0 then - Result := IInterface(cntElements[High(cntElements)]) as IwbElement - else - Result := nil; -end; - -procedure TwbContainer.MarkModifiedRecursive; -var - i: Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - for i := Low(cntElements) to High(cntElements) do - cntElements[i].MarkModifiedRecursive; - inherited; -end; - -procedure TwbContainer.MasterCountUpdated(aOld, aNew: Byte); -var - i: Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - for i := Low(cntElements) to High(cntElements) do - if cntElements[i].CanContainFormIDs then - cntElements[i].MasterCountUpdated(aOld, aNew); -end; - -procedure TwbContainer.MasterIndicesUpdated(const aOld, aNew: TBytes); -var - i : Integer; - SelfRef : IwbContainerElementRef; -begin - inherited; - SelfRef := Self as IwbContainerElementRef; - DoInit; - for i := Low(cntElements) to High(cntElements) do - if cntElements[i].CanContainFormIDs then - cntElements[i].MasterIndicesUpdated(aOld, aNew); -end; - -procedure TwbContainer.MergeStorageInternal(var aBasePtr: Pointer; aEndPtr: Pointer); -var - i: Integer; - j: Integer; - k: Integer; - l: Integer; - m: Integer; - n: Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - If GetElementType in SortedElementTypes then - begin - m := Low(Integer); - for l := Low(cntElements) to High(cntElements) do - if (cntElements[l].MemoryOrder > m) and not Supports(cntElements[l], IwbStringListTerminator) then - m := cntElements[l].MemoryOrder; - for l := Low(cntElements) to High(cntElements) do - if cntElements[l].MemoryOrder = Low(Integer) then begin - cntElements[l].MemoryOrder := m + 1; - Inc(m); - end; - for l := Low(cntElements) to High(cntElements) do - if Supports(cntElements[l], IwbStringListTerminator) then - cntElements[l].MemoryOrder := m+1; - m := Low(Integer); - k := Low(Integer); - for i := Low(cntElements) to High(cntElements) do begin - n := k; - j := High(Integer); - for l := Low(cntElements) to High(cntElements) do begin - if (m= Low(cntElements)); - if k = n then - Assert(k <> n); - m := cntElements[k].MemoryOrder; - cntElements[k].MergeStorage(aBasePtr, aEndPtr); - end; - end - else - for l := Low(cntElements) to High(cntElements) do - cntElements[l].MergeStorage(aBasePtr, aEndPtr); -end; - -procedure TwbContainer.MoveElementDown(const aElement: IwbElement); -var - i: Integer; -begin - if Assigned(eContainer) and not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - if not CanMoveElement then - Exit; - if Length(cntElements) < 2 then - Exit; - if cntElements[High(cntElements)].Equals(aElement) then - Exit; - for i := 0 to Pred(High(cntElements)) do - if cntElements[i].Equals(aElement) then begin - SetModified(True); - InvalidateStorage; - cntElements[i] := cntElements[Succ(i)]; - cntElements[Succ(i)] := aElement as IwbElementInternal; - Exit; - end; -end; - -procedure TwbContainer.MoveElementUp(const aElement: IwbElement); -var - i: Integer; -begin - if Assigned(eContainer) and not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - if not CanMoveElement then - Exit; - if Length(cntElements) < 2 then - Exit; - if cntElements[0].Equals(aElement) then - Exit; - for i := 1 to High(cntElements) do - if cntElements[i].Equals(aElement) then begin - SetModified(True); - InvalidateStorage; - cntElements[i] := cntElements[Pred(i)]; - cntElements[Pred(i)] := aElement as IwbElementInternal; - Exit; - end; -end; - -class function TwbContainer.NewInstance: TObject; -begin - Result := inherited NewInstance; - TwbContainer(Result).cntElementRefs := 1; -end; - -procedure TwbContainer.NextElementMember(const aElement: IwbElement); -var - ElementIndex : Integer; - ElementDef : IwbRecordMemberDef; - Element : IwbElement; - Container : IwbContainer; - SubRecordArrayDef : IwbSubRecordArrayDef; - SubRecordUnionDef : IwbSubRecordUnionDef; - RecordDef : IwbRecordDef; - i : Integer; -begin - if Assigned(eContainer) and not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - if not CanChangeElementMember(aElement) then - Exit; - if not Supports(GetDef, IwbSubRecordArrayDef, SubRecordArrayDef) or - not Supports(SubRecordArrayDef.Element, IwbSubRecordUnionDef, SubRecordUnionDef) then - Exit; - if not Supports(SubRecordArrayDef.Element, IwbRecordDef, RecordDef) then - Exit; - if Supports(aElement.Container, IwbContainer, Container) then begin - for i := 0 to Pred(RecordDef.MemberCount) do - if RecordDef.Members[i].Equals(aElement.Def) then - break; - if i < RecordDef.MemberCount then begin - RemoveElement(aElement); - ElementIndex := (i + 1) mod RecordDef.MemberCount; - ElementDef := RecordDef.Members[ElementIndex]; - - case ElementDef.DefType of - dtSubRecord: - Element := TwbSubRecord.Create(Self, ElementDef as IwbSubRecordDef); - dtSubRecordArray: - Element := TwbSubRecordArray.Create(Self, nil, Low(Integer), ElementDef as IwbSubRecordArrayDef); - dtSubRecordStruct: - Element := TwbSubRecordStruct.Create(Self, nil, Low(Integer), ElementDef as IwbSubRecordStructDef); - else - Assert(False); - end; - - if Assigned(Element) and Assigned(aElement) then try - Element.Assign(Low(Integer), nil, False); - if csAsCreatedEmpty in cntStates then - Exclude(cntStates, csAsCreatedEmpty); - except - Element.Container.RemoveElement(Element); - raise; - end; - end; - end; -end; - -procedure TwbContainer.NotifyChangedInternal(aContainer: Pointer); -begin - if [csInitializing, csReseting] * cntStates <> [] then - Exit; - if csAsCreatedEmpty in cntStates then - Exclude(cntStates, csAsCreatedEmpty); - - inherited; - - if esModified in eStates then - DoAfterSet(varEmpty, varEmpty); -end; - -procedure TwbContainer.PrepareSave; -var - i: Integer; - SelfRef : IwbContainerElementRef; -begin - if wbDelayLoadRecords then - if not (esModified in eStates) then - Exit; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - for i := High(cntElements) downto Low(cntElements) do - cntElements[i].PrepareSave; -end; - -procedure TwbContainer.PreviousElementMember(const aElement: IwbElement); -var - ElementIndex : Integer; - ElementDef : IwbRecordMemberDef; - Element : IwbElement; - Container : IwbContainer; - SubRecordArrayDef : IwbSubRecordArrayDef; - SubRecordUnionDef : IwbSubRecordUnionDef; - RecordDef : IwbRecordDef; - i : Integer; -begin - if Assigned(eContainer) and not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - if not CanChangeElementMember(aElement) then - Exit; - if not Supports(GetDef, IwbSubRecordArrayDef, SubRecordArrayDef) or - not Supports(SubRecordArrayDef.Element, IwbSubRecordUnionDef, SubRecordUnionDef) then - Exit; - if not Supports(SubRecordArrayDef.Element, IwbRecordDef, RecordDef) then - Exit; - if Supports(aElement.Container, IwbContainer, Container) then begin - for i := 0 to Pred(RecordDef.MemberCount) do - if RecordDef.Members[i].Equals(aElement.Def) then - break; - if i < RecordDef.MemberCount then begin - RemoveElement(aElement); - ElementIndex := (i - 1) mod RecordDef.MemberCount; - ElementDef := RecordDef.Members[ElementIndex]; - - case ElementDef.DefType of - dtSubRecord: - Element := TwbSubRecord.Create(Self, ElementDef as IwbSubRecordDef); - dtSubRecordArray: - Element := TwbSubRecordArray.Create(Self, nil, Low(Integer), ElementDef as IwbSubRecordArrayDef); - dtSubRecordStruct: - Element := TwbSubRecordStruct.Create(Self, nil, Low(Integer), ElementDef as IwbSubRecordStructDef); - else - Assert(False); - end; - - if Assigned(Element) and Assigned(aElement) then try - Element.Assign(Low(Integer), nil, False); - if csAsCreatedEmpty in cntStates then - Exclude(cntStates, csAsCreatedEmpty); - except - Element.Container.RemoveElement(Element); - raise; - end; - end; - end; -end; - -function TwbContainer.Reached: Boolean; -var - i : Integer; - SelfRef : IwbContainerElementRef; -begin - Result := False; - - if GetDontShow then - Exit; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Result := inherited Reached; - if not Result then - Exit; - - for i := Low(cntElements) to High(cntElements) do - if cntElements[i].CanContainFormIDs then - cntElements[i].Reached; -end; - -function TwbContainer.ReleaseElements: TDynElementInternals; -var - i: Integer; - SelfRef : IwbContainerElementRef; -begin - if not (esDestroying in eStates) then - SelfRef := Self as IwbContainerElementRef; - - Result := cntElements; - cntElements := nil; - for i := Low(Result) to High(Result) do - Result[i].SetContainer(nil); - Exclude(cntStates, csAsCreatedEmpty); -end; - -function TwbContainer.ReleaseKeepAlive: IwbContainerElementRef; -begin - Result := cntKeepAliveNext; - cntKeepAliveNext := nil; -end; - -function TwbContainer.RemoveElement(const aElement: IwbElement; aMarkModified: Boolean = False): IwbElement; -var - i: Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - Result := aElement; - if not Assigned(aElement) then - Exit; - - if Length(cntElements) > 0 then begin - if cntElements[High(cntElements)].Equals(aElement) then begin - Result := RemoveElement(High(cntElements), aMarkModified); - Exit; - end; - - for i := Low(cntElements) to Pred(High(cntElements)) do - if cntElements[i].Equals(aElement) then begin - Result := RemoveElement(i, aMarkModified); - Exit; - end; - end; - - Result := nil; - Exit; -end; - -function TwbContainer.RemoveElement(const aName: string): IwbElement; -var - SelfRef : IwbContainerElementRef; - Name : string; - Container : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Result := ResolveElementName(aName, Name); - if not Assigned(Result) then - Exit; - - if Name = '' then - Result.Remove - else if Supports(Result, IwbContainerElementRef, Container) then - Result := Container.RemoveElement(Name) - else - Result := nil; -end; - -function TwbContainer.RemoveInjected(aCanRemove: Boolean): Boolean; -var - i : Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Result := GetReferencesInjected; - if not Result then - for i := High(cntElements) downto Low(cntElements) do - if cntElements[i].CanContainFormIDs then begin - Result := cntElements[i].RemoveInjected(True) or Result; - if Result and aCanRemove then - Break; - end; - if Result and aCanRemove and GetIsRemoveable then begin - Result := False; - Remove; - end; -end; - -procedure TwbContainer.ReportRequiredMasters(aStrings: TStrings; aAsNew: Boolean; Recursive: Boolean = True; Initial: Boolean = false); -var - i: Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - inherited; - if Recursive or (Initial and not Supports(Self, IwbGroupRecord)) then - for i := Low(cntElements) to High(cntElements) do - if cntElements[i].CanContainFormIDs then - cntElements[i].ReportRequiredMasters(aStrings, aAsNew, Recursive); -end; - -function TwbContainer.RemoveElement(aPos: Integer; aMarkModified: Boolean = False): IwbElement; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - Result := nil; - - if aPos < Low(cntElements) then - Exit - else if aPos > High(cntElements) then - Exit; - - if aMarkModified then begin - SetModified(True); - InvalidateStorage; - end; - - Result := IInterface(cntElements[aPos]) as IwbElement; - cntElements[aPos].SetContainer(nil); - cntElements[aPos] := nil; - - if aPos < High(cntElements) then begin - Move(cntElements[Succ(aPos)], cntElements[aPos], (High(cntElements) - aPos) * SizeOf(Pointer)); - Pointer(cntElements[High(cntElements)]) := nil; - end; - - SetLength(cntElements, Pred(Length(cntElements))); - NotifyChanged(eContainer); -end; - -procedure TwbContainer.Reset; -begin - { can be overriden } -end; - -procedure TwbContainer.ResetConflict; -var - i : Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; -// DoInit; elements that don't exist yet don't have anything to reset... - inherited; - for i := Low(cntElements) to High(cntElements) do - cntElements[i].ResetConflict; -end; - -procedure TwbContainer.ResetReachable; -var - i : Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; -// DoInit; elements that don't exist yet don't have anything to reset... - inherited; - for i := Low(cntElements) to High(cntElements) do - cntElements[i].ResetReachable; -end; - -procedure TwbContainer.ResetTags; -var - i: Integer; -begin - inherited; - for i := Low(cntElements) to High(cntElements) do - cntElements[i].ResetTags; -end; - -function TwbContainer.ResolveElementName(aName: string; out aRemainingName: string; aCanCreate: Boolean = False): IwbElement; -var - i : Integer; -begin - aRemainingName := ''; - i := Pos('\', aName); - if i > 0 then begin - aRemainingName := Copy(aName, Succ(i), High(Integer)); - Delete(aName, i, High(Integer)); - end; - if aName = '..' then - Result := GetContainer - else if (Length(aName) > 0) and (aName[1] = '[') and (aName[Length(aName)] = ']') then begin - i := StrToIntDef(Copy(aName, 2, Length(aName) - 2), 0); - Result := GetElement(i); - end - else - Result := GetElementByName(aName); - if not Assigned(Result) and (Length(aName) = 4) then - Result := GetElementBySignature(StrToSignature(aName)); -end; - -procedure TwbContainer.ReverseElements; -var - Temp: TDynElementInternals; - i: Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - SetLength(Temp, Length(cntElements)); - for i := Low(cntElements) to High(cntElements) do - Temp[High(cntElements)-i] := cntElements[i]; - cntElements := Temp; -end; - -procedure TwbContainer.SetElementEditValue(const aName, aValue: string); -var - SelfRef : IwbContainerElementRef; - Element : IwbElement; - Name : string; - Container : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Element := ResolveElementName(aName, Name, True); - if not Assigned(Element) then - Exit; - - if Name = '' then - Element.EditValue := aValue - else if Supports(Element, IwbContainerElementRef, Container) then - Container.ElementEditValues[Name] := aValue; -end; - -procedure TwbContainer.SetElementNativeValue(const aName: string; const aValue: Variant); -var - SelfRef : IwbContainerElementRef; - Element : IwbElement; - Name : string; - Container : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Element := ResolveElementName(aName, Name, True); - if not Assigned(Element) then - Exit; - - if Name = '' then - Element.NativeValue := aValue - else if Supports(Element, IwbContainerElementRef, Container) then - Container.ElementNativeValues[Name] := aValue; -end; - -procedure TwbContainer.SetToDefaultInternal; -var - i : Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - inherited; - - for i := Low(cntElements) to High(cntElements) do - cntElements[i].SetToDefault; -end; - -procedure TwbContainer.SortBySortOrder; -var - i, j: Integer; -begin - SetModified(True); - i := GetAdditionalElementCount; - j := Length(cntElements) - i; - if j > 1 then begin - wbMergeSort(@cntElements[i], j, CompareSortOrder); - InvalidateStorage; - end; -end; - -procedure TwbContainer.WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); -var - i: Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - inherited; - for i := Low(cntElements) to High(cntElements) do - cntElements[i].WriteToStream(aStream, aResetModified); - - Exclude(eStates, esUnsaved); - if aResetModified then begin - Exclude(eStates, esModified); - Exclude(eStates, esInternalModified); - end; -end; - -{$D-} -function TwbContainer._AddRef: Integer; -begin - if wbSpeedOverMemory then - Result := ElementAddRef - else - Result := inherited _AddRef; -end; - -function TwbContainer._Release: Integer; -begin - if wbSpeedOverMemory then - Result := ElementRelease - else begin - Result := inherited _Release; - if (Result > 0) and (cntElementRefs = 0) and (csInit in cntStates) then - DoReset(False); - end; -end; -{$D+} - -//------------------------------------------------------------------------------ -// TwbRecord -//------------------------------------------------------------------------------ - -constructor TwbRecord.Create(const aContainer : IwbContainer; - var aBasePtr : Pointer; - aEndPtr : Pointer; - const aPrevMainRecord : IwbMainRecord); -var - Dummy: Integer; -begin - inherited Create(aContainer, aBasePtr, aEndPtr, aPrevMainRecord); - recSkipped := recSkipped or RecordToSkip.Find(GetSignature, Dummy); - InformPrevMainRecord(aPrevMainRecord); - ScanData; -end; - -class function TwbRecord.CreateForPtr(var aPtr : Pointer; - aEndPtr : Pointer; - const aContainer : IwbContainer; - const aPrevMainRecord : IwbMainRecord) - : IwbRecord; -begin - if aContainer.ElementType = etMainRecord then - Result := TwbSubRecord.Create(aContainer, aPtr, aEndPtr, aPrevMainRecord) - else - if PwbSignature(aPtr)^ = 'GRUP' then - Result := TwbGroupRecord.Create(aContainer, aPtr, aEndPtr, aPrevMainRecord) - else - Result := TwbMainRecord.Create(aContainer, aPtr, aEndPtr, aPrevMainRecord); -end; - -function TwbRecord.GetName: string; -var - Sig : TwbSignature; - i : Integer; -begin - Sig := GetSignature; - for i := Low(Sig) to High(Sig) do - if Ord(Sig[i]) < 32 then - Sig[i] := AnsiChar( Ord('a') + Ord(Sig[i]) ); - - Result := Sig; -end; - -function TwbRecord.GetSkipped: Boolean; -begin - Result := recSkipped; -end; - -procedure TwbRecord.InformPrevMainRecord(const aPrevMainRecord: IwbMainRecord); -begin - {can be overriden} -end; - -procedure TwbRecord.SortBySortOrder; -begin - SetModified(True); - if Length(cntElements) > 1 then begin - wbMergeSort(@cntElements[1], High(cntElements), CompareSortOrder); - InvalidateStorage; - end; -end; - -function TwbRecord.GetSignature: TwbSignature; -begin - if Assigned(dcBasePtr) then - Result := PwbSignature(dcBasePtr)^ - else - Result := NONE; -end; - -{ TwbMainRecord } - -function TwbMainRecord.Add(const aName: string; aSilent: Boolean): IwbElement; -var - s : string; - SelfRef : IwbContainerElementRef; - i : Integer; - Group : IwbGroupRecord; -begin - Result := nil; - - if not wbIsInternalEdit then - if not wbEditAllowed or not GetIsEditable then - raise Exception.Create(GetName + ' can not be edited'); - - if GetIsDeleted then - Exit; - - s := Copy(aName, 1, 4); - - if (GetSignature = 'CELL') and - ( - SameText(s, 'NAVM') or - SameText(s, 'PGRD') or - SameText(s, 'LAND') or - SameText(s, 'REFR') or - SameText(s, 'PGRE') or - SameText(s, 'PMIS') or - SameText(s, 'ACRE') or - SameText(s, 'ACHR') or - SameText(s, 'PARW') or {>>> Skyrim <<<} - SameText(s, 'PBEA') or {>>> Skyrim <<<} - SameText(s, 'PFLA') or {>>> Skyrim <<<} - SameText(s, 'PCON') or {>>> Skyrim <<<} - SameText(s, 'PBAR') or {>>> Skyrim <<<} - SameText(s, 'PHZD') {>>> Skyrim <<<} - ) then begin - - Group := GetChildGroup; - if not Assigned(Group) then begin - Group := TwbGroupRecord.Create(GetContainer, 6, Self); - mrGroup := Group; - end; - - SelfRef := Group as IwbContainerElementRef; - Group := nil; - for i := 0 to Pred(SelfRef.ElementCount) do - if Supports(SelfRef.Elements[i], IwbGroupRecord, Group) then - if (Group.GroupType = 9) and (Group.GroupLabel = Self.GetFormID) then - Break - else - Group := nil; - if not Assigned(Group) then - Group := TwbGroupRecord.Create(SelfRef as IwbContainer, 9, Self); - - Result := Group.Add(aName, aSilent); - - Exit; - end else if (GetSignature = 'DIAL') and - ( - SameText(s, 'INFO') - ) then begin - - Group := GetChildGroup; - if not Assigned(Group) then begin - Group := TwbGroupRecord.Create(GetContainer, 7, Self); - mrGroup := Group; - end; - - Result := Group.Add(aName, aSilent); - - Exit; - end else if (GetSignature = 'WRLD') and - ( - SameText(s, 'ROAD') or - SameText(s, 'CELL') - ) then begin - - Group := GetChildGroup; - if not Assigned(Group) then begin - Group := TwbGroupRecord.Create(GetContainer, 1, Self); - mrGroup := Group; - end; - - Result := Group.Add(aName, aSilent); - - Exit; - end else if wbVWDAsQuestChildren and (GetSignature = 'QUST') and - ( - SameText(s, 'DLBR') or - SameText(s, 'DIAL') or - SameText(s, 'SCEN') - ) then begin - - Group := GetChildGroup; - if not Assigned(Group) then begin - Group := TwbGroupRecord.Create(GetContainer, 10, Self); - mrGroup := Group; - end; - - Result := Group.Add(aName, aSilent); - - Exit; - end; - - if Assigned(mrDef) then begin - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - for i := 0 to Pred(mrDef.MemberCount) do - if SameText(mrDef.Members[i].Name, aName) or SameText(mrDef.Members[i].DefaultSignature, aName) then begin - Result := GetElementBySortOrder(i + GetAdditionalElementCount); - if not Assigned(Result) then begin - Assign(i, nil, False); - Result := GetElementBySortOrder(i + GetAdditionalElementCount); - Assert(Assigned(Result)); - - if wbSortSubRecords and (Length(cntElements) > 1) then - wbMergeSort(@cntElements[0], Length(cntElements), CompareSubRecords); - end; - - Exit; - end; - end; -end; - -function TwbMainRecord.AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy: Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; -var - SelfRef : IwbContainerElementRef; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be assigned.'); - - if GetIsDeleted then - Exit; - - if Assigned(mrDef) then begin - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Assert(Assigned(aElement.Def)); - if aElement.SortOrder < 0 then begin - Result := GetElementBySortOrder(aElement.SortOrder + GetAdditionalElementCount); - Assert(Assigned(Result)); - Assert(Assigned(Result.Def)); - Assert(aElement.Def.Equals(Result.Def)); - end else begin - Assert(aElement.SortOrder >= 0); - Assert(aElement.SortOrder < mrDef.MemberCount); - if not aElement.Def.Equals(mrDef.Members[aElement.SortOrder]) then - Assert(Self.CanAssign(aElement.SortOrder, aElement, True)); - Result := GetElementBySortOrder(aElement.SortOrder + GetAdditionalElementCount); - end; - - if not Assigned(Result) then begin - Assign(aElement.SortOrder, aElement, not aDeepCopy); - Result := GetElementBySortOrder(aElement.SortOrder + GetAdditionalElementCount); - Assert(Assigned(Result)); - - if wbSortSubRecords and (Length(cntElements) > 1) then - wbMergeSort(@cntElements[0], Length(cntElements), CompareSubRecords); - end else - Result.Assign(Low(Integer), aElement, not aDeepCopy); - end; -end; - -procedure TwbMainRecord.AddOverride(const aMainRecord: IwbMainRecord); -begin - if aMainRecord.Signature <> GetSignature then - if Assigned(wbProgressCallback) then - wbProgressCallback(Format('Warning: Record %s in file %s is being overridden by record %s in file %s.', [ - '['+ GetSignature + ':' + IntToHex64(GetFormID, 8)+ ']', - GetFile.FileName, - '['+ aMainRecord.Signature + ':' + IntToHex64(aMainRecord.FormID, 8)+ ']', - aMainRecord._File.FileName - ])); - - SetLength(mrOverrides, Succ(Length(mrOverrides))); - mrOverrides[High(mrOverrides)] := aMainRecord; - (aMainRecord as IwbMainRecordInternal).SetMaster(Self); - mrOverridesSorted := False; -end; - -procedure TwbMainRecord.AddReferencedBy(aMainRecord : IwbMainRecord); -begin - SetLength(mrReferencedBy, Succ(Length(mrReferencedBy))); - mrReferencedBy[High(mrReferencedBy)] := aMainRecord; - Include(mrStates, mrsReferencedByUnsorted); -end; - -procedure TwbMainRecord.AddReferencedFromID(aFormID: Cardinal); -begin - Assert(mrsBuildingRef in mrStates); - - if aFormID = 0 then - Exit; - - Inc(mrTmpRefFormIDHigh); - if High(mrTmpRefFormIDs) < mrTmpRefFormIDHigh then - if mrTmpRefFormIDHigh = 0 then - SetLength(mrTmpRefFormIDs, 64) - else - SetLength(mrTmpRefFormIDs, mrTmpRefFormIDHigh * 2); - - mrTmpRefFormIDs[mrTmpRefFormIDHigh] := aFormID; -end; - -function TwbMainRecord.AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; -var - MainRecord : IwbMainRecord; - Member : IwbRecordMemberDef; - Container : IwbContainerElementRef; - Element : IwbElement; - i : Integer; - SelfRef : IwbContainerElementRef; - BasePtr : Pointer; - IsAdd : Boolean; - IsAddChild : Boolean; - GroupRecord : IwbGroupRecord; - DataContainer : IwbDataContainer; - NeedUpdate : Boolean; -begin - Result := nil; - - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be assigned.'); - - if GetIsDeleted then - Exit; - - if Assigned(mrDef) then begin - - wbBeginKeepAlive; - try - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if aIndex = Low(Integer) then begin - - NeedUpdate := CheckChildOfCell; - - SetModified(True); - InvalidateStorage; - ReleaseElements; - - if Assigned(aElement) then begin - Container := aElement as IwbContainerElementRef; - - if Supports(aElement, IwbMainRecord, MainRecord) then begin - MakeHeaderWriteable; - with TwbMainRecord(MainRecord.ElementID) do begin - Self.mrStruct.mrsFlags := mrStruct.mrsFlags; - Self.mrStruct.mrsVCS1 := DefaultVCS1; - if wbGameMode in [gmFO3, gmFNV, gmTES5, gmSSE, gmFO4] then begin - Self.mrStruct.mrsVersion := mrStruct.mrsVersion; - Self.mrStruct.mrsVCS2 := DefaultVCS2; //mrStruct.mrsVCS2; - end; - end; - end; - end; - - if Supports(Self.GetContainer, IwbGroupRecord, GroupRecord) then - if wbCreateContainedIn and (GroupRecord.GroupType in [1, 4..10]) then - with TwbContainedInElement.Create(Self) do begin - _AddRef; _Release; - end; - GroupRecord := nil; - - BasePtr := dcBasePtr; - with TwbRecordHeaderStruct.Create(Self, BasePtr, Pointer( Cardinal(BasePtr) + wbSizeOfMainRecordStruct), mrDef.RecordHeaderStruct, '') do begin - Include(dcFlags, dcfDontSave); - SetSortOrder(-1); - SetMemoryOrder(Low(Integer)); - _AddRef; _Release; - end; - - if Assigned(aElement) then begin - for i := 0 to Pred(Container.ElementCount) do begin - Element := Container.Elements[i]; - Assign(Element.SortOrder, Element, aOnlySK); - end; - end else begin - for i := 0 to Pred(mrDef.MemberCount) do - if mrDef.Members[i].Required then - Assign(i, nil, False); - end; - - if NeedUpdate then - UpdateCellChildGroup; - - CollapseStorage; - - end else begin - if (aIndex >= 0) and (aIndex < mrDef.MemberCount) then begin - Member := mrDef.Members[aIndex]; - IsAdd := not Assigned(aElement) or Member.CanAssign(Self, Low(Integer), aElement.Def); - IsAddChild := not IsAdd and Assigned(aElement) and Member.CanAssign(Self, High(Integer), aElement.Def); - if IsAdd or IsAddChild then begin - Element := GetElementBySortOrder(aIndex + GetAdditionalElementCount); - if Assigned(Element) then begin - if IsAdd and Assigned(aElement) then - Element.Assign(Low(Integer), aElement, aOnlySK) - else if IsAddChild then - Element.Assign(High(Integer), aElement, aOnlySK); - end else begin - - if Member.DefType = dtSubRecordUnion then begin - if Assigned(aElement) then begin - Supports(aElement, IwbDataContainer, DataContainer); - Member := (Member as IwbRecordDef).GetMemberFor((aElement as IwbHasSignature).Signature, DataContainer); - end else - Member := (Member as IwbRecordDef).Members[0]; - Assert(Assigned(Member)); - end; - - case Member.DefType of - dtSubRecord: - Element := TwbSubRecord.Create(Self, Member as IwbSubRecordDef); - dtSubRecordArray: - Element := TwbSubRecordArray.Create(Self, nil, Low(Integer), Member as IwbSubRecordArrayDef); - dtSubRecordStruct: - Element := TwbSubRecordStruct.Create(Self, nil, Low(Integer), Member as IwbSubRecordStructDef); - else - Assert(False); - end; - - if Assigned(Element) then try - Element.SortOrder := aIndex; - Element.MemoryOrder := aIndex; - if IsAdd and Assigned(aElement) then - Element.Assign(Low(Integer), aElement, aOnlySK) - else if IsAddChild then - Element.Assign(High(Integer), aElement, aOnlySK); - except - Element.Container.RemoveElement(Element); - raise; - end; - - end; - Result := Element; - end; - end else if (aIndex = -2) then begin - Element := GetElementBySortOrder(aIndex + GetAdditionalElementCount); - if Assigned(Element) then - Element.Assign(Low(Integer), aElement, False); - Result := Element; - end; - end; - finally - wbEndKeepAlive; - end; - - if wbSortSubRecords and (Length(cntElements) > 1) then - wbMergeSort(@cntElements[0], Length(cntElements), CompareSubRecords); - - end else - Result := inherited AssignInternal(aIndex, aElement, aOnlySK); -end; - -procedure TwbMainRecord.BuildRef; - - procedure UseKAC; - var - KAR: IwbKeepAliveRoot; - begin - KAR := wbCreateKeepAliveRoot; - DoBuildRef(False); - end; - -begin - if wbSpeedOverMemory then - DoBuildRef(False) - else - UseKAC; - if Assigned(wbProgressCallback) then - wbProgressCallback(''); -end; - -procedure TwbMainRecord.DoBuildRef(aRemove: Boolean); -var - _File : IwbFile; - Files : array of IwbFile; - FilesCount : Integer; - SelfIntf : IwbMainRecord; - - procedure ProcessRef(aFormID: Cardinal; aAdd: Boolean); - var - FileID : Integer; - MainRecord : IwbMainRecord; - begin - if not Assigned(_File) then begin - _File := GetFile; - FilesCount := _File.MasterCount; - SetLength(Files, Succ(FilesCount)); - Files[FilesCount] := _File; - SelfIntf := Self as IwbMainRecord; - end; - - FileID := aFormID shr 24; - if FileID > FilesCount then - FileID := FilesCount; - - if not Assigned(Files[FileID]) then - Files[FileID] := _File.Masters[FileID]; - - aFormID := (aFormID and $00FFFFFF) or (Cardinal(Files[FileID].MasterCount) shl 24); - - MainRecord := Files[FileID].RecordByFormID[aFormID, True]; - if Assigned(MainRecord) then - if aAdd then - MainRecord.AddReferencedBy(SelfIntf) - else - MainRecord.RemoveReferencedBy(SelfIntf); - end; - -var - NewReferences : TDynCardinalArray; - LastFormID : Cardinal; - i, j : Integer; - NewCount : integer; - Cmp : Integer; - SelfRef : IwbContainerElementRef; -begin - if mrsBuildingRef in mrStates then - Exit; - - SelfRef := Self as IwbContainerElementRef; - - Assert(not (mrsBuildingRef in mrStates)); - Include(mrStates, mrsBuildingRef); - try - mrTmpRefFormIDHigh := -1; - mrTmpRefFormIDs := nil; - - if not aRemove then - inherited BuildRef; - - NewCount := 0; - SetLength(NewReferences, Succ(mrTmpRefFormIDHigh)); - if mrTmpRefFormIDHigh >= 0 then begin - wbMergeSort(@mrTmpRefFormIDs[0], Succ(mrTmpRefFormIDHigh), CompareFormIDs); - LastFormID := 0; - for i := 0 to mrTmpRefFormIDHigh do - if mrTmpRefFormIDs[i] <> LastFormID then begin - LastFormID := mrTmpRefFormIDs[i]; - NewReferences[NewCount] := LastFormID; - Inc(NewCount); - end; - end; - SetLength(NewReferences, NewCount); - - i := 0; - j := 0; - while (i < NewCount) and (j < Length(mrReferences)) do begin - Cmp := CmpW32(NewReferences[i], mrReferences[j]); - if Cmp = 0 then begin - Inc(i); - Inc(j); - end else if Cmp < 0 then begin - ProcessRef(NewReferences[i], True); - Inc(i); - end else begin - ProcessRef(mrReferences[j], False); - Inc(j); - end; - end; - while i < NewCount do begin - ProcessRef(NewReferences[i], True); - Inc(i); - end; - while j < Length(mrReferences) do begin - ProcessRef(mrReferences[j], False); - Inc(j); - end; - - mrReferences := NewReferences; - finally - Exclude(mrStates, mrsBuildingRef); - mrTmpRefFormIDs := nil; - end; -end; - -procedure TwbMainRecord.ElementChanged(const aElement: IwbElement; aContainer: Pointer); -const - EDID = $44494445; - FULL = $4C4C5546; - NAME = $454D414E; -var - SubRecord: IwbSubRecord; -begin - if Supports(aElement, IwbSubRecord, SubRecord) then - case Cardinal(SubRecord.Signature) of - EDID: mrEditorID := SubRecord.Value; - FULL: mrFullName := SubRecord.Value; - NAME: Exclude(mrStates, mrsBaseRecordChecked); - end; - inherited; - if not (mrsNoUpdateRefs in mrStates) then - UpdateRefs; -end; - -function TwbMainRecord.EnsureChildGroup: IwbGroupRecord; -const - WRLD = $444C5257; - CELL = $4C4C4543; - DIAL = $4C414944; -var - SearchForGroup : Integer; - ContainingGroup : IwbGroupRecord; -begin - Result := GetChildGroup; - if not Assigned(Result) then begin - case Cardinal(GetSignature) of - WRLD: SearchForGroup := 1; - CELL: SearchForGroup := 6; - DIAL: SearchForGroup := 7; - else - if wbVWDAsQuestChildren and (GetSignature = 'QUST') then - SearchForGroup := 10 - else - SearchForGroup := 0; - end; - if (SearchForGroup > 0) and Supports(GetContainer, IwbGroupRecord, ContainingGroup) then begin - mrGroup := ContainingGroup.FindChildGroup(SearchForGroup, Self); - if not Assigned(mrGroup) and ContainingGroup.IsElementEditable(nil) then begin - mrGroup := TwbGroupRecord.Create(ContainingGroup, SearchForGroup, Self); - Result := mrGroup; - end; - end; - end; - Assert(Assigned(Result)); -end; - -function TwbMainRecord.CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; -begin - Result := False; - if not wbEditAllowed then - Exit; - - if GetIsDeleted then - Exit; - - if Assigned(eContainer) then - if not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - - if aCheckDontShow then - if GetDontShow then - Exit; - - if not Assigned(aElement) then begin - Result := (aIndex >= 0) and (aIndex < mrDef.MemberCount) and (GetElementBySortOrder(aIndex + GetAdditionalElementCount) = nil); - if Result and aCheckDontShow then - Result := not mrDef.Members[aIndex].DontShow[Self]; - Exit; - end; - - if Assigned(mrDef) then begin - if aIndex = Low(Integer) then - Result := mrDef.Equals(aElement.Def) - else begin - Result := (aIndex >= 0) and (aIndex < mrDef.MemberCount) and - ( - mrDef.Members[aIndex].CanAssign(Self, Low(Integer), aElement.Def) or - mrDef.Members[aIndex].CanAssign(Self, High(Integer), aElement.Def) - ); - if Result and aCheckDontShow then - Result := not mrDef.Members[aIndex].DontShow[Self]; - end; - end else - Result := False; -end; - -function TwbMainRecord.CanContainFormIDs: Boolean; -begin - Result := True; {There is a FormID in the header} -end; - -function TwbMainRecord.CanElementReset: Boolean; -begin - Result := cntElementRefs < 1; -end; - -function TwbMainRecord.CheckChildOfCell: Boolean; -var - Sig : TwbSignature; - Group1 : IwbGroupRecord; - Group2 : IwbGroupRecord; -begin - Sig := GetSignature; - Result := - (Sig = 'REFR') or - (Sig = 'PMIS') or - (Sig = 'PGRE') or - (Sig = 'ACRE') or - (Sig = 'ACHR') or - (Sig = 'PARW') or {>>> Skyrim <<<} - (Sig = 'PBEA') or {>>> Skyrim <<<} - (Sig = 'PFLA') or {>>> Skyrim <<<} - (Sig = 'PCON') or {>>> Skyrim <<<} - (Sig = 'PBAR') or {>>> Skyrim <<<} - (Sig = 'PHZD'); {>>> Skyrim <<<} - if not Result then - Exit; - if not Supports(GetContainer, IwbGroupRecord, Group1) then - raise Exception.Create(GetName + ' is not contained in a group.'); - if not (Group1.GroupType in [8, 9, 10]) then - raise Exception.Create(GetName + ' is not contained in a group of type "Cell Persistent Childen", "Cell Temporary Children" or "Cell Visible Distant Children"'); - if not Supports(Group1.Container, IwbGroupRecord, Group2) then - raise Exception.Create(Group1.GetName + ' is not contained in a group.'); - if not (Group2.GroupType in [6]) then - raise Exception.Create(Group1.GetName + ' is not contained in a group of type "Cell Children"'); -end; - -procedure TwbMainRecord.ClearForRelease; -begin - mrMaster := nil; - mrOverrides := nil; - mrReferencedBy := nil; - mrGroup := nil; - ReleaseElements; -end; - -procedure TwbMainRecord.CollapseStorage; -var - Stream : TMemoryStream; - -begin - if (esModified in eStates) then begin - PrepareSave; - Stream := TMemoryStream.Create; - try - WriteToStream(Stream, True); - DoReset(True); - ReleaseElements; - - if mrBasePtrAllocated in mrStates then - FreeMem(dcBasePtr); - GetMem(dcBasePtr, Stream.Size); - Include(mrStates, mrBasePtrAllocated); - - Move(Stream.Memory^, dcBasePtr^, Stream.Size); - - dcEndPtr := Pointer( Cardinal(dcBasePtr) + Stream.Size); - - Exclude(dcFlags, dcfStorageInvalid); - mrDataStorage := nil; - dcDataStorage := nil; - dcDataBasePtr := nil; - dcDataEndPtr := nil; - - InitDataPtr; - - SetModified(True); - InvalidateParentStorage; - finally - Stream.Free; - end; - end; -end; - -function TwbMainRecord.CompareExchangeFormID(aOldFormID, aNewFormID: Cardinal): Boolean; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - mrBaseRecordID := 0; - Exclude(mrStates, mrsBaseRecordChecked); - - Result := inherited CompareExchangeFormID(aOldFormID, aNewFormID); - if {Result and} (csRefsBuild in cntStates) then // if you changed to an already existing FormID - BuildRef; -end; - -procedure TwbMainRecord.ContainerChanged; -var - ContainedIn: IwbContainedIn; -begin - if csInit in cntStates then - if Supports(GetElementBySortOrder(-2 + GetAdditionalElementCount), IwbContainedIn, ContainedIn) then - ContainedIn.ContainerChanged; -end; - -constructor TwbMainRecord.Create(const aContainer: IwbContainer; const aSignature: TwbSignature; aFormID: Cardinal); -var - BasePtr : PwbMainRecordStruct; - i : Integer; - SelfRef : IwbContainerElementRef; - Group : IwbGroupRecordInternal; - Group2 : IwbGroupRecordInternal; - ContainerRef : IwbContainerElementRef; - s : string; - Block : Cardinal; - SubBlock : Cardinal; - lContainer : IwbContainer; - IsInterior : Boolean; -begin - IsInterior := False; - lContainer := aContainer; - New(BasePtr); - Include(mrStates, mrBasePtrAllocated); - BasePtr.mrsSignature := aSignature; - BasePtr.mrsDataSize := 0; - BasePtr.mrsFlags._Flags := 0; - BasePtr.mrsFormID := aFormID; - BasePtr.mrsVCS1 := DefaultVCS1; - case wbGameMode of - gmFO4 : BasePtr.mrsVersion := 131; - gmTES5: BasePtr.mrsVersion := 43; - gmSSE : BasePtr.mrsVersion := 44; - gmFNV : BasePtr.mrsVersion := 15; - gmFO3 : BasePtr.mrsVersion := 15; - else BasePtr.mrsVersion := 15; - end; - BasePtr.mrsVCS2 := DefaultVCS2; - - Group := nil; - if Supports(lContainer, IwbGroupRecordInternal, Group) then - if Group.GroupType = 8 then - BasePtr.mrsFlags.SetPersistent(True) - else if (Group.GroupType = 10) and not (wbVWDAsQuestChildren - and Supports(Group.Container, IwbGroupRecord, Group2) and (TwbSignature(Group2.GroupLabel) = 'QUST')) then - BasePtr.mrsFlags.SetVisibleWhenDistant(True); - - if Assigned(Group) then - if aSignature = 'CELL' then begin - if Group.GroupType = 3 then - Supports(Group.Container, IwbGroupRecordInternal, Group); - if Assigned(Group) then begin - if Group.GroupType = 2 then - Supports(Group.Container, IwbGroupRecordInternal, Group); - if Assigned(Group) then begin - if (Group.GroupType = 0) and (TwbSignature(Group.GroupLabel) = 'CELL') then begin - s := '00' + IntToStr(aFormID and $00FFFFFF); - Block := StrToInt(s[Length(s)]); - SubBlock := StrToInt(s[Pred(Length(s))]); - - ContainerRef := Group as IwbContainerElementRef; - Group := nil; - for i := 0 to Pred(ContainerRef.ElementCount) do - if Supports(ContainerRef.Elements[i], IwbGroupRecord, Group) then - if (Group.GroupType = 2) and (Group.GroupLabel = Block) then - Break - else - Group := nil; - if not Assigned(Group) then - Group := TwbGroupRecord.Create(ContainerRef as IwbContainer, 2, Block); - - ContainerRef := Group as IwbContainerElementRef; - Group := nil; - for i := 0 to Pred(ContainerRef.ElementCount) do - if Supports(ContainerRef.Elements[i], IwbGroupRecord, Group) then - if (Group.GroupType = 3) and (Group.GroupLabel = SubBlock) then - Break - else - Group := nil; - if not Assigned(Group) then - Group := TwbGroupRecord.Create(ContainerRef as IwbContainer, 3, SubBlock); - - lContainer := Group as IwbContainer; - IsInterior := True; - end; - end; - end; - end; - - Create(lContainer, Pointer(BasePtr), nil, nil); - Assert(Assigned(mrDef)); - SelfRef := Self as IwbContainerElementRef; - DoInit; - SetModified(True); - InvalidateStorage; - for i := 0 to Pred(mrDef.MemberCount) do - if mrDef.Members[i].Required then - Assign(i, nil, False); - if Supports(lContainer, IwbGroupRecordInternal, Group) then - Group.Sort; - - if IsInterior then - if Supports(GetRecordBySignature('DATA'), IwbContainerElementRef, ContainerRef) then - ContainerRef.EditValue := '1'; -end; - -constructor TwbMainRecord.Create(const aContainer: IwbContainer; var aBasePtr: Pointer; aEndPtr: Pointer; const aPrevMainRecord : IwbMainRecord); -var - _File: IwbFileInternal; -begin - inherited; - try - _File := GetFile as IwbFileInternal; - if Assigned(_File) then - _File.AddMainRecord(Self); - except - if Assigned(aContainer) then - aContainer.RemoveElement(Self); - raise; - end; -end; - -procedure TwbMainRecord.DecompressIfNeeded; -var - UncompressedLength: Cardinal; -begin - InitDataPtr; // reset... - - if mrStruct.mrsFlags.IsCompressed then try - UncompressedLength := PCardinal(dcDataBasePtr)^; - if UncompressedLength > 0 then begin - SetLength(mrDataStorage, UncompressedLength ); - - DecompressToUserBuf( - Pointer( Cardinal(dcDataBasePtr) + SizeOf(Cardinal) ), - mrStruct.mrsDataSize - SizeOf(Cardinal), - @mrDataStorage[0], - UncompressedLength - ); - - dcDataBasePtr := @mrDataStorage[0]; - dcDataEndPtr := Pointer( Cardinal(dcDataBasePtr) + UncompressedLength ); - end else begin - mrDataStorage := nil; - dcDataBasePtr := @EmptyPtr; - dcDataEndPtr := @EmptyPtr; - end; - except - dcDataBasePtr := nil; - dcDataEndPtr := nil; - end; -end; - -procedure TwbMainRecord.Delete; -var - SelfRef : IwbContainerElementRef; - BasePtr : Pointer; - GroupRecord : IwbGroupRecord; -begin - SelfRef := Self; - DoInit; - - SetModified(True); - InvalidateStorage; - ReleaseElements; - - MakeHeaderWriteable; - GetFlagsPtr.SetDeleted(True); - - if Supports(Self.GetContainer, IwbGroupRecord, GroupRecord) then - if wbCreateContainedIn and (GroupRecord.GroupType in [1, 4..10]) then - with TwbContainedInElement.Create(Self) do begin - _AddRef; _Release; - end; - GroupRecord := nil; - - BasePtr := dcBasePtr; - with TwbRecordHeaderStruct.Create(Self, BasePtr, Pointer( Cardinal(BasePtr) + wbSizeOfMainRecordStruct), mrDef.RecordHeaderStruct, '') do begin - Include(dcFlags, dcfDontSave); - SetSortOrder(-1); - SetMemoryOrder(Low(Integer)); - _AddRef; _Release; - end; -end; - -procedure TwbMainRecord.DeleteInto(const aFile: IwbFile); -var - MainRecord: IwbMainRecord; -begin - if Supports(CopyInto(aFile, False, False, '', '', ''), IwbMainRecord, MainRecord) then - MainRecord.Delete; -end; - -destructor TwbMainRecord.Destroy; -begin - if mrBasePtrAllocated in mrStates then - FreeMem(dcBasePtr); - inherited; -end; - -procedure TwbMainRecord.Init; -var - FoundError : Boolean; - CurrentPtr : Pointer; - CurrentDefPos : Integer; - CurrentRecPos : Integer; - Element : IwbElement; - CurrentRec : IwbSubRecord; - CurrentDef : IwbRecordMemberDef; - SubRecordArray : IwbSubRecordArrayInternal; - Dummy : Integer; - LastElementForMember : array of IwbElement; - GroupRecord : IwbGroupRecord; - GroupRecordInternal : IwbGroupRecordInternal; -{$IFDEF DBGSUBREC} -// MainRecord : IwbMainRecord; - s: string; -{$ENDIF} - RequiredRecords : set of byte; - PresentRecords : set of byte; - i : Integer; -begin - RequiredRecords := []; - PresentRecords := []; - - inherited; - - if recSkipped then - Exit; - - if Length(cntElements) > 0 then - Exit; - - DecompressIfNeeded; - - FoundError := False; - - if not (mrsQuickInit in mrStates) then begin - if Supports(Self.GetContainer, IwbGroupRecord, GroupRecord) then - if wbCreateContainedIn and (GroupRecord.GroupType in [1, 4..10]) then - with TwbContainedInElement.Create(Self) do begin - _AddRef; _Release; - end; - GroupRecord := nil; - - CurrentPtr := dcBasePtr; - with TwbRecordHeaderStruct.Create(Self, CurrentPtr, Pointer( Cardinal(CurrentPtr) + wbSizeOfMainRecordStruct), mrDef.RecordHeaderStruct, '') do begin - Include(dcFlags, dcfDontSave); - SetSortOrder(-1); - SetMemoryOrder(Low(Integer)); - _AddRef; _Release; - end; - end; - -{$IFDEF DBGSUBREC} - s := ''; -{$ENDIF} - CurrentPtr := GetDataBasePtr; - while Cardinal(CurrentPtr) < Cardinal(dcDataEndPtr) do begin - Element := TwbRecord.CreateForPtr(CurrentPtr, dcDataEndPtr, Self, nil); -{$IFDEF DBGSUBREC} - if Supports(Element, IwbSubRecord, CurrentRec) then - s := s + CurrentRec.Signature + ' '; -{$ENDIF} - end; - Element := nil; - - if not Assigned(mrDef) then - Exit; - - SetLength(LastElementForMember, mrDef.MemberCount); - - if not Assigned(cntElements) then - Exit; - - CurrentDefPos := 0; - CurrentRecPos := 0; - - while (CurrentRecPos < Length(cntElements)) do begin - if cntElements[CurrentRecPos].ElementType <> etSubRecord then begin - Inc(CurrentRecPos); - Continue; - end; - CurrentRec := cntElements[CurrentRecPos] as IwbSubRecord; - if wbIgnoreRecords.Find(CurrentRec.Signature, Dummy) then begin - Inc(CurrentRecPos); - Continue; - end; - - if mrDef.AllowUnordered then begin - CurrentDefPos := mrDef.GetMemberIndexFor(CurrentRec.Signature, CurrentRec); - if CurrentDefPos < 0 then begin - if Assigned(wbProgressCallback) then - wbProgressCallback('Error: record '+ String(GetSignature) + ' contains unexpected (or out of order) subrecord ' + String(CurrentRec.Signature) + ' ' + IntToHex(Int64(Cardinal(CurrentRec.Signature)), 8) ); - FoundError := True; - Inc(CurrentRecPos); - Continue; - end; - CurrentDef := mrDef.Members[CurrentDefPos]; - end else begin - if not mrDef.ContainsMemberFor(CurrentRec.Signature, CurrentRec) then begin - if Assigned(wbProgressCallback) then - wbProgressCallback('Error: record '+ String(GetSignature) + ' contains unexpected (or out of order) subrecord ' + String(CurrentRec.Signature) + ' ' + IntToHex(Int64(Cardinal(CurrentRec.Signature)), 8) ); - FoundError := True; - Inc(CurrentRecPos); - Continue; - end; - - if (CurrentDefPos < mrDef.MemberCount) and not FoundError then begin - CurrentDef := mrDef.Members[CurrentDefPos]; - if not CurrentDef.CanHandle(CurrentRec.Signature, CurrentRec) then begin - Inc(CurrentDefPos); - Continue; - end; - end else begin - if Assigned(wbProgressCallback) then - wbProgressCallback('Error: record '+ String(GetSignature) + ' contains unexpected (or out of order) subrecord ' + String(CurrentRec.Signature) ); - FoundError := True; - CurrentDefPos := mrDef.GetMemberIndexFor(CurrentRec.Signature, CurrentRec); - if CurrentDefPos < 0 then begin - Inc(CurrentRecPos); - Continue; - end; - CurrentDef := mrDef.Members[CurrentDefPos]; - end; - end; - - if CurrentDefPos > mrDef.QuickInitLimit then begin - Include(mrStates, mrsQuickInitDone); - if mrsQuickInit in mrStates then - Exit; - end; - - if CurrentDef.DefType = dtSubRecordUnion then begin - CurrentDef := (CurrentDef as IwbRecordDef).GetMemberFor(CurrentRec.Signature, CurrentRec); - Assert(Assigned(CurrentDef)); - end; - - case CurrentDef.DefType of - dtSubRecord : begin - (CurrentRec as IwbSubRecordInternal).SetDef(CurrentDef as IwbSubRecordDef); - if CurrentRec.Signature = 'EDID' then - mrEditorID := CurrentRec.Value - else if CurrentRec.Signature = 'FULL' then - mrFullName := CurrentRec.Value - else if (CurrentRec.Signature = 'NAME') and - ( - (mrDef.DefaultSignature = 'REFR') or - (mrDef.DefaultSignature = 'PGRE') or - (mrDef.DefaultSignature = 'PMIS') or - (mrDef.DefaultSignature = 'ACHR') or - (mrDef.DefaultSignature = 'ACRE') or - (mrDef.DefaultSignature = 'PARW') or {>>> Skyrim <<<} - (mrDef.DefaultSignature = 'PBEA') or {>>> Skyrim <<<} - (mrDef.DefaultSignature = 'PFLA') or {>>> Skyrim <<<} - (mrDef.DefaultSignature = 'PCON') or {>>> Skyrim <<<} - (mrDef.DefaultSignature = 'PBAR') or {>>> Skyrim <<<} - (mrDef.DefaultSignature = 'PHZD') {>>> Skyrim <<<} - ) then begin - - mrBaseRecordID := CurrentRec.NativeValue; - Include(mrStates, mrsBaseRecordChecked); - end; - end; - dtSubRecordArray : begin - if Supports(LastElementForMember[CurrentDefPos], IwbSubRecordArrayInternal, SubRecordArray) then begin - SubRecordArray.DoProcess(Self, CurrentRecPos); - Continue; - end else - InsertElement(CurrentRecPos, TwbSubRecordArray.Create(nil, Self, CurrentRecPos, CurrentDef as IwbSubRecordArrayDef)); - end; - dtSubRecordStruct : - InsertElement(CurrentRecPos, TwbSubRecordStruct.Create(nil, Self, CurrentRecPos, CurrentDef as IwbSubRecordStructDef)); - else - raise Exception.CreateFmt('Unexpected def type for SubRecord %s in %s', [String(CurrentRec.Signature), String(GetSignature)]); - end; - - (cntElements[CurrentRecPos] as IwbElementInternal).SetSortOrder(CurrentDefPos); - (cntElements[CurrentRecPos] as IwbElementInternal).SetMemoryOrder(CurrentDefPos); - Include(PresentRecords, CurrentDefPos); - LastElementForMember[CurrentDefPos] := cntElements[CurrentRecPos]; - - Inc(CurrentRecPos); - Inc(CurrentDefPos); - end; - - while CurrentRecPos < Length(cntElements) do begin - if cntElements[CurrentRecPos].ElementType <> etSubRecord then begin - Inc(CurrentRecPos); - Continue; - end; - CurrentRec := cntElements[CurrentRecPos] as IwbSubRecord; - if wbIgnoreRecords.Find(CurrentRec.Signature, Dummy) then begin - Inc(CurrentRecPos); - Continue; - end; - - if Assigned(wbProgressCallback) then - wbProgressCallback('Error: record '+ String(GetSignature) + ' contains unexpected (or out of order) subrecord ' + String(CurrentRec.Signature) ); - FoundError := True; - - Inc(CurrentRecPos); - end; - -// if GetSignature = 'DIAL' then -// FoundError := True; - - if FoundError then - if Assigned(wbProgressCallback) then begin - wbProgressCallback('Errors were found in: ' + GetName); -{$IFDEF DBGSUBREC} - wbProgressCallback('Contained subrecords: ' + s); -{$ENDIF} - end; - - if wbSortSubRecords and (mrDef.AllowUnordered or (esModified in eStates)) and (Length(cntElements) > 1) then - wbMergeSort(@cntElements[0], Length(cntElements), CompareSubRecords); - - mrDef.AfterLoad(Self); - - if not mrStruct.mrsFlags.IsDeleted then begin - for i := 0 to Pred(mrDef.MemberCount) do - if mrDef.Members[i].Required then - Include(RequiredRecords, i); - - RequiredRecords := RequiredRecords - PresentRecords; - if RequiredRecords <> [] then begin - if wbBeginInternalEdit then try - for i := 0 to Pred(mrDef.MemberCount) do - if i in RequiredRecords then begin - if wbMoreInfoForRequired then - wbProgressCallback(' ['+IntToHex64(mrFixedFormID, 8)+'] Adding missing record: ' + mrDef.Members[i].GetName); - Assign(i, nil, False); - end; - finally - wbEndInternalEdit; - end; - end; - end; - - if wbReportMode {and mrDef.AllowUnordered} then begin - s := GetSignature + ' -> ' + s; - CurrentRecPos := SubRecordOrderList.Add(s); - SubRecordOrderList.Objects[CurrentRecPos] := Pointer(Succ(Integer(SubRecordOrderList.Objects[CurrentRecPos]))); - end; - -{ - if GetSignature = 'SCPT' then begin -// s := (GetRecordBySignature('DATA') as IwbContainer).Elements[0].EditValue + s; - CurrentRecPos := SubRecordOrderList.Add(s); - SubRecordOrderList.Objects[CurrentRecPos] := Pointer(Succ(Integer(SubRecordOrderList.Objects[CurrentRecPos]))); - end; -} - - Include(cntStates, csInitOnce); - - if not GetIsDeleted and (GetSignature = 'INFO') and not Assigned(GetRecordBySignature('PNAM')) and wbAllowInternalEdit then - if Supports(IwbContainer(eContainer), IwbGroupRecordInternal, GroupRecordInternal) then - GroupRecordInternal.Sort; -end; - -function TwbMainRecord.FindReferencedBy(const aMainRecord: IwbMainRecord; var Index: Integer): Boolean; -var - L, H, I, C: Integer; -begin - Result := False; - - L := Low(mrReferencedBy); - H := High(mrReferencedBy); - while L <= H do begin - I := (L + H) shr 1; - - C := CmpW32(mrReferencedBy[I].LoadOrderFormID , aMainRecord.LoadOrderFormID); - if C = 0 then - C := CmpW32(mrReferencedBy[I]._File.LoadOrder, aMainRecord._File.LoadOrder); - - if C < 0 then - L := I + 1 - else begin - H := I - 1; - if C = 0 then begin - Result := True; - L := I; - end; - end; - end; - Index := L; -end; - -procedure TwbMainRecord.FindUsedMasters(aMasters: PwbUsedMasters); -var - FileID : Integer; - i : Integer; - - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if mrStruct.mrsFormID <> 0 then begin - FileID := mrStruct.mrsFormID shr 24; - aMasters[FileID] := True; - end; - - if csRefsBuild in cntStates then begin - - for i := High(mrReferences) downto Low(mrReferences) do begin - FileID := mrReferences[i] shr 24; - aMasters[FileID] := True; - end; - - end else - inherited; -end; - -function TwbMainRecord.GetAdditionalElementCount: Integer; -var - GroupRecord: IwbGroupRecord; -begin - Result := 1; - if wbCreateContainedIn and Supports(Self.GetContainer, IwbGroupRecord, GroupRecord) then - if GroupRecord.GroupType in [1, 4..10] then - Inc(Result); -end; - -function TwbMainRecord.GetAddList: TDynStrings; -var - i, j : Integer; - RecordDef : PwbRecordDef; -begin - Result := nil; - - if GetIsDeleted then - Exit; - - if GetSignature = 'DIAL' then begin - SetLength(Result, 1); - Result[0] := 'INFO'; - end else if GetSignature = 'CELL' then begin - SetLength(Result, 11); - Result[0] := 'ACHR'; - Result[1] := 'ACRE'; - Result[2] := 'REFR'; - Result[3] := 'PGRE'; - Result[4] := 'PMIS'; - Result[5] := 'PARW'; {>>> Skyrim <<<} - Result[6] := 'PBEA'; {>>> Skyrim <<<} - Result[7] := 'PFLA'; {>>> Skyrim <<<} - Result[8] := 'PCON'; {>>> Skyrim <<<} - Result[9] := 'PBAR'; {>>> Skyrim <<<} - Result[10] := 'PHZD'; {>>> Skyrim <<<} - end else if GetSignature = 'WRLD' then begin - end else if wbVWDAsQuestChildren and (GetSignature = 'QUST') then begin - SetLength(Result, 3); - Result[0] := 'DIAL'; - Result[1] := 'DLBR'; - Result[2] := 'SCEN'; - end; - - j := 0; - for i := Low(Result) to High(Result) do - if wbFindRecordDef(AnsiString(Result[i]), RecordDef) then begin - Result[j] := Result[i] + ' - ' + RecordDef.Name; - Inc(j); - end; - SetLength(Result, j); -end; - -function TwbMainRecord.GetBaseRecord: IwbMainRecord; -var - SelfRef: IwbContainerElementRef; - NameRec: IwbContainerElementRef; -begin - Result := nil; - - if not ((mrsQuickInitDone in mrStates) or (csInitOnce in cntStates)) then begin - SelfRef := Self as IwbContainerElementRef; - Assert(not (csInit in cntStates)); - Include(mrStates, mrsQuickInit); - Include(cntStates, csInit); - try - try - Init; - finally - DoReset(True); - end; - finally - Exclude(cntStates, csInit); - Exclude(mrStates, mrsQuickInit); - end; - end; - - if not (mrsBaseRecordChecked in mrStates) then begin - SelfRef := Self as IwbContainerElementRef; - mrBaseRecordID := 0; - Include(mrStates, mrsBaseRecordChecked); - if Supports(GetRecordBySignature('NAME'), IwbContainerElementRef, NameRec) then - if Supports(NameRec.LinksTo, IwbMainRecord, Result) then begin - mrBaseRecordID := NameRec.NativeValue; - end; - Exit; - end; - if mrBaseRecordID <> 0 then - with GetFile do - Result := RecordByFormID[mrBaseRecordID, True]; -end; - -function TwbMainRecord.GetBaseRecordID: Cardinal; -begin - if not (mrsBaseRecordChecked in mrStates) then - GetBaseRecord; - Result := GetFile.FileFormIDtoLoadOrderFormID(mrBaseRecordID); -end; - -function TwbMainRecord.GetCanHaveEditorID: Boolean; -begin - Result := Assigned(mrDef) and mrDef.ContainsEditorID; -end; - -function TwbMainRecord.GetCheck: string; -var - i, j: Integer; - RequiredCount: Integer; - Element: IwbElement; - Def: IwbNamedDef; - FoundIt: Boolean; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - Result := ''; - - if not Assigned(mrDef) then - Exit; - if recSkipped then - Exit; - - if mrStruct.mrsFlags.IsDeleted then begin - Result := ''; - - for i := GetAdditionalElementCount to Pred(GetElementCount) do begin - Element := cntElements[i]; - Def := Element.Def; - if Assigned(Def) then - Result := Result + Def.Name + ', '; - end; - SetLength(Result, Length(Result) - 2); - - if Result <> '' then - Result := 'Record marked as deleted but contains: ' + Result; - - Exit; - end; - - RequiredCount := 0; - for i := 0 to Pred(mrDef.MemberCount) do - if mrDef.Members[i].Required then - Inc(RequiredCount); - - for i := 0 to Pred(GetElementCount) do begin - Element := cntElements[i]; - Def := Element.Def; - if Assigned(Def) then begin - if Def.Required then - Dec(RequiredCount); - end; - end; - - if RequiredCount > 0 then begin - Result := 'Missing required members: '; - - for i := 0 to Pred(mrDef.MemberCount) do - if mrDef.Members[i].Required then begin - Def := mrDef.Members[i]; - FoundIt := False; - for j := 0 to High(cntElements) do begin - Element := cntElements[j]; - if Def.Equals(Element.Def) then begin - FoundIt := True; - Break; - end; - end; - if not FoundIt then - Result := Result + Def.Name + ', '; - end; - SetLength(Result, Length(Result) - 2); - end; -end; - -function TwbMainRecord.GetChildGroup: IwbGroupRecord; -var - SearchForGroup: Integer; - ContainingGroup: IwbGroupRecord; -begin - Result := mrGroup; - if not Assigned(Result) and not (mrsSearchedChildGroup in mrStates) then begin - try - Include(mrStates, mrsSearchedChildGroup); - SearchForGroup := 0; - if GetSignature = 'WRLD' then - SearchForGroup := 1 - else if GetSignature = 'CELL' then - SearchForGroup := 6 - else if GetSignature = 'DIAL' then - SearchForGroup := 7 - else if wbVWDAsQuestChildren and (GetSignature = 'QUST') then - SearchForGroup := 10; - - if (SearchForGroup > 0) and Supports(GetContainer, IwbGroupRecord, ContainingGroup) then - mrGroup := ContainingGroup.FindChildGroup(SearchForGroup, Self); - Result := mrGroup; - finally - Exclude(mrStates, mrsSearchedChildGroup); - end; - end; -end; - -function TwbMainRecord.GetConflictAll: TConflictAll; -begin - Result := mrConflictAll; -end; - -function TwbMainRecord.GetConflictThis: TConflictThis; -begin - Result := mrConflictThis; -end; - -function TwbMainRecord.GetContainingMainRecord: IwbMainRecord; -begin - Result := Self; -end; - -function TwbMainRecord.GetDef: IwbNamedDef; -begin - Result := mrDef; -end; - -function StrRight(const s: String; Len: Integer): string; -begin - Result := s; - while Length(Result)>> Skyrim <<<} - (GetSignature = 'PBEA') or {>>> Skyrim <<<} - (GetSignature = 'PFLA') or {>>> Skyrim <<<} - (GetSignature = 'PCON') or {>>> Skyrim <<<} - (GetSignature = 'PBAR') or {>>> Skyrim <<<} - (GetSignature = 'PHZD') {>>> Skyrim <<<} - then begin - if Supports(GetElementByName('Map Marker'), IwbContainerElementRef, MapMarker) then - Rec := MapMarker.RecordBySignature['FULL'] - else - Rec := GetRecordBySignature('NAME'); - if Assigned(Rec) then - Result := Trim(Rec.Value) - end else if (GetSignature = 'CELL') then begin - if Supports(GetContainer, IwbGroupRecord, GroupRecord) and (GroupRecord.GroupType = 1) then - Result := '' - else - if Supports(GetRecordBySignature('XCLC'), IwbContainerElementRef, GridCoords) and - (GridCoords.ElementCount >= 2) then - Result := '<' + StrRight(GridCoords.Elements[0].Value,3) + ', ' + StrRight(GridCoords.Elements[1].Value,3) + '>'; - end else if (GetSignature = 'INFO') then begin - Result := GetElementValue('Responses\Response\NAM1'); - end; -end; - -function TwbMainRecord.GetDisplayNameKey: string; -var - Rec : IwbRecord; - GridCoords : IwbContainerElementRef; - GroupRecord : IwbGroupRecord; - MapMarker : IwbContainerElementRef; -begin - Result := GetFullName; - if Result = '' then - if - (GetSignature = 'REFR') or - (GetSignature = 'PGRE') or - (GetSignature = 'PMIS') or - (GetSignature = 'ACHR') or - (GetSignature = 'ACRE') or - (GetSignature = 'PARW') or {>>> Skyrim <<<} - (GetSignature = 'PBEA') or {>>> Skyrim <<<} - (GetSignature = 'PFLA') or {>>> Skyrim <<<} - (GetSignature = 'PCON') or {>>> Skyrim <<<} - (GetSignature = 'PBAR') or {>>> Skyrim <<<} - (GetSignature = 'PHZD') {>>> Skyrim <<<} - then begin - if Supports(GetElementByName('Map Marker'), IwbContainerElementRef, MapMarker) then - Rec := MapMarker.RecordBySignature['FULL'] - else - Rec := GetRecordBySignature('NAME'); - if Assigned(Rec) then - Result := Trim(Rec.Value) - end else if - (GetSignature = 'CELL') then begin - if Supports(GetContainer, IwbGroupRecord, GroupRecord) and (GroupRecord.GroupType = 1) then - Result := ' ' - else - if Supports(GetRecordBySignature('XCLC'), IwbContainerElementRef, GridCoords) and - (GridCoords.ElementCount >= 2) then - Result := GridCoords.Elements[0].SortKey[True] + '|' + GridCoords.Elements[1].SortKey[True]; - end; -end; - -function TwbMainRecord.GetEditorID: string; -var - SelfRef: IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - if not ((mrsQuickInitDone in mrStates) or (csInitOnce in cntStates)) then begin - if csInit in cntStates then begin - Result := ''; - Exit; - end; - Include(mrStates, mrsQuickInit); - Include(cntStates, csInit); - try - try - Init; - finally - DoReset(True); - end; - finally - Exclude(cntStates, csInit); - Exclude(mrStates, mrsQuickInit); - end; - end; - - Result := mrEditorID; -end; - -function TwbMainRecord.GetEditValue: string; -begin - if wbDisplayLoadOrderFormID then - Result := IntToHex64(GetLoadOrderFormID, 8) - else - Result := IntToHex64(GetFormID, 8); -end; - -function TwbMainRecord.GetElementType: TwbElementType; -begin - Result := etMainRecord; -end; - -function TwbMainRecord.GetFixedFormID: Cardinal; - - function MovedHereForSpeed: Cardinal; - var - MasterCount: Cardinal; - _File: IwbFile; - begin - Result := PwbMainRecordStruct(dcBasePtr).mrsFormID; - _File := GetFile; - if Assigned(_File) then begin - MasterCount := _File.MasterCount; - if Result shr 24 > MasterCount then begin - Result := (Result and $00FFFFFF) or (MasterCount shl 24); - end; - end; - mrFixedFormID := Result; - end; - -begin - Result := mrFixedFormID; - if Result = 0 then - Result := MovedHereForSpeed; -end; - -function TwbMainRecord.GetFlags: TwbMainRecordStructFlags; -begin - Result := mrStruct.mrsFlags; -end; - -function TwbMainRecord.GetFlagsPtr: PwbMainRecordStructFlags; -begin - Result := @mrStruct.mrsFlags; -end; - - -function TwbMainRecord.GetFormID: Cardinal; -begin - Result := mrStruct.mrsFormID; -end; - -function TwbMainRecord.GetFullName: string; -var - SelfRef: IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - if not ((mrsQuickInitDone in mrStates) or (csInitOnce in cntStates)) then begin - Include(mrStates, mrsQuickInit); - if csInit in cntStates then begin - Result := ''; - Exit; - end; - Include(cntStates, csInit); - try - try - Init; - finally - DoReset(True); - end; - finally - Exclude(cntStates, csInit); - Exclude(mrStates, mrsQuickInit); - end; - end; - - Result := mrFullName; -end; - -function TwbMainRecord.GetFormVersion: Cardinal; -begin - Result := mrStruct.mrsVersion; -end; - -procedure TwbMainRecord.SetFormVersion(aFormVersion: Cardinal); -begin - MakeHeaderWriteable; - mrStruct.mrsVersion := aFormVersion; -end; - -procedure TwbMainRecord.ChangeFormSignature(aSignature: TwbSignature); -begin - MakeHeaderWriteable; - mrStruct.mrsSignature := aSignature; -end; - -procedure TwbMainRecord.ClampFormID(aIndex: Cardinal); -begin - if mrStruct.mrsFormID shr 24 > aIndex then begin - MakeHeaderWriteable; - mrStruct.mrsFormID := (mrStruct.mrsFormID and $00FFFFFF) or (aIndex shl 24); - if Assigned(mrGroup) then - mrGroup.GroupLabel := mrStruct.mrsFormID; - end; -end; - -function TwbMainRecord.GetGridCell(out aGridCell: TwbGridCell): Boolean; -var - Signature : TwbSignature; - SelfRef : IwbContainerElementRef; - XCLCRec : IwbContainerElementRef; -begin - Result := False; - - Signature := GetSignature; - if (Signature <> 'CELL') then - Exit; - - SelfRef := Self; - DoInit; - - if not Supports(GetRecordBySignature('XCLC'), IwbContainerElementRef, XCLCRec) then - Exit; - - if XCLCRec.ElementCount < 2 then - Exit; - - with aGridCell, XCLCRec do begin - X := StrToIntDef(Elements[0].Value, -10000); - Y := StrToIntDef(Elements[1].Value, -10000); - Result := (x <> -10000) and (y <> -10000); - end; -end; - -function TwbMainRecord.GetHasMesh: Boolean; -var - SelfRef : IwbContainerElementRef; - ModelCnt : IwbContainerElementRef; - MODL : IwbContainerElementRef; - s : String; -begin - if not (mrsHasMeshChecked in mrStates) and Assigned(wbContainerHandler) then begin - Include(mrStates, mrsHasMeshChecked); - if GetSignature = 'TREE' then begin - Include(mrStates, mrsHasMesh); - end else begin - SelfRef := Self as IwbContainerElementRef; - if Supports(GetElementByName('Model'), IwbContainerElementRef, ModelCnt) then - if Supports(ModelCnt.RecordBySignature['MODL'], IwbContainerElementRef, MODL) then begin - s := Trim(StringReplace(MODL.Value, '/', '\', [rfReplaceAll])); - if s <> '' then begin - s := 'meshes\'+ s;// - if Length(wbContainerHandler.OpenResource(s)) > 0 then - Include(mrStates, mrsHasMesh); - end; - end; - end; - end; - Result := mrsHasMesh in mrStates; -end; - -function TwbMainRecord.GetHasPrecombinedMesh: Boolean; -begin - if not (mrsHasPrecombinedMeshChecked in mrStates) then - Self.GetPrecombinedMesh; - - Result := mrsHasPrecombinedMesh in mrStates; -end; - -type - TwbPrecombinedInfo = record - Ref, ID: Cardinal; - end; - -var - PrecombinedCacheFileName: string; - PrecombinedCacheCellFormID: Cardinal; - PrecombinedCache: array of TwbPrecombinedInfo; - -function TwbMainRecord.GetPrecombinedMesh: string; -var - Signature : TwbSignature; - SelfRef : IwbContainerElementRef; - Group : IwbGroupRecord; - Cell : IwbMainRecord; - CombinedRefs, CombinedRef: IwbContainerElementRef; - cnt, i : Cardinal; - s: string; -begin - Result := ''; - - if not (mrsHasPrecombinedMeshChecked in mrStates) then begin - - // we need file for cache checking - if not Assigned(IwbElement(Self)._File) then - Exit; - - Include(mrStates, mrsHasPrecombinedMeshChecked); - Self.mrPrecombinedCellID := 0; - Self.mrPrecombinedID := 0; - - if wbGameMode <> gmFO4 then - Exit; - - Signature := Self.GetSignature; - - if (Signature <> 'REFR') and - (Signature <> 'PGRE') and - (Signature <> 'PMIS') and - (Signature <> 'PARW') and - (Signature <> 'PBEA') and - (Signature <> 'PFLA') and - (Signature <> 'PCON') and - (Signature <> 'PBAR') and - (Signature <> 'PHZD') - then - Exit; - - SelfRef := Self as IwbContainerElementRef; - - // markers can't be precombined - if Cardinal(SelfRef.ElementNativeValues['NAME']) < $800 then - Exit; - - if Supports(SelfRef.Container, IwbGroupRecord, Group) then - Cell := Group.ChildrenOf; - - if not Assigned(Cell) then - Exit; - - s := IwbElement(Self)._File.Name; - i := Cell.FormID; - - // store cell's precombined index in cache - if (i <> PrecombinedCacheCellFormID) or (s <> PrecombinedCacheFileName) then begin - PrecombinedCacheCellFormID := i; - PrecombinedCacheFileName := s; - SetLength(PrecombinedCache, 0); - - if Supports(Cell.ElementByPath['XCRI\References'], IwbContainerElementRef, CombinedRefs) then begin - cnt := CombinedRefs.ElementCount; - SetLength(PrecombinedCache, cnt); - for i := 0 to Pred(cnt) do - if Supports(CombinedRefs[i], IwbContainerElementRef, CombinedRef) and (CombinedRef.ElementCount = 2) then begin - PrecombinedCache[i].Ref := CombinedRef.Elements[0].NativeValue; - PrecombinedCache[i].ID := CombinedRef.Elements[1].NativeValue; - end; - end; - end; - - // search for ref in precombined index cache - if Length(PrecombinedCache) > 0 then - for i := Low(PrecombinedCache) to High(PrecombinedCache) do - if PrecombinedCache[i].Ref = Self.GetFormID then begin - Self.mrPrecombinedCellID := Cell.FormID and $00FFFFFF; - Self.mrPrecombinedID := PrecombinedCache[i].ID; - Include(mrStates, mrsHasPrecombinedMesh); - Break; - end; - end; - - if mrsHasPrecombinedMesh in mrStates then - Result := 'Precombined\' + IntToHex(Self.mrPrecombinedCellID, 8) + '_' + IntToHex(Self.mrPrecombinedID, 8) + '_OC.nif'; -end; - -function TwbMainRecord.GetHasVisibleWhenDistantMesh: Boolean; -var - SelfRef : IwbContainerElementRef; - ModelCnt : IwbContainerElementRef; - MODL : IwbContainerElementRef; - s : String; -begin - if not (mrsHasVWDMeshChecked in mrStates) and Assigned(wbContainerHandler) then begin - Include(mrStates, mrsHasVWDMeshChecked); - if GetSignature = 'TREE' then begin - SelfRef := Self as IwbContainerElementRef; - if Supports(GetElementByName('Model'), IwbContainerElementRef, ModelCnt) then - if Supports(ModelCnt.RecordBySignature['MODL'], IwbContainerElementRef, MODL) then begin - s := Trim(StringReplace(MODL.Value, '/', '\', [rfReplaceAll])); - if s <> '' then begin - s := 'textures\trees\billboards'+ChangeFileExt(s, '.dds'); - if Length(wbContainerHandler.OpenResource(s)) > 0 then - Include(mrStates, mrsHasVWDMesh); - end; - end; - end else begin - SelfRef := Self as IwbContainerElementRef; - if Supports(GetElementByName('Model'), IwbContainerElementRef, ModelCnt) then - if Supports(ModelCnt.RecordBySignature['MODL'], IwbContainerElementRef, MODL) then begin - s := Trim(StringReplace(MODL.Value, '/', '\', [rfReplaceAll])); - if s <> '' then begin - s := 'meshes\'+ChangeFileExt(s, '_far.nif'); - if Length(wbContainerHandler.OpenResource(s)) > 0 then - Include(mrStates, mrsHasVWDMesh); - end; - end; - end; - end; - Result := mrsHasVWDMesh in mrStates; -end; - -function TwbMainRecord.GetHighestOverrideOrSelf(aMaxLoadOrder: Integer): IwbMainRecord; -var - Master : IwbMainRecord; - i : Integer; -begin - Result := Self; - Master := GetMasterOrSelf; - for i := Pred(Master.OverrideCount) downto 0 do - if Master.Overrides[i]._File.LoadOrder <= aMaxLoadOrder then begin - Result := Master.Overrides[i]; - Exit; - end; -end; - -function TwbMainRecord.GetInjectionSourceFiles: TDynFiles; -var - i, j, k : Integer; - Rec : IwbMainRecord; - _File : IwbFile; - LastID : Cardinal; -begin - SetLength(Result, Length(mrReferences)); - if Length(Result) > 0 then begin - _File := GetFile; - j := 0; - for i := Low(mrReferences) to High(mrReferences) do begin - Rec := _File.RecordByFormID[mrReferences[i], True]; - if Assigned(Rec) then - if not _File.Equals(Rec._File) then begin - Rec := Rec.MasterOrSelf; - if Rec.IsInjected then begin - Result[j] := Rec._File; - Inc(j); - end; - end; - end; - if j > 1 then begin - wbMergeSort(@Result[0], j, CompareLoadOrder); - k := 1; - LastID := Result[0].ElementID; - for i := 1 to Pred(j) do - if Result[i].ElementID <> LastID then begin - LastID := Result[i].ElementID; - if k <> i then - Result[k] := Result[i]; - Inc(k); - end; - SetLength(Result, k); - end else - SetLength(Result, j); - end; -end; - -function TwbMainRecord.GetIsCompressed: Boolean; -begin - Result := GetFlags.IsCompressed; -end; - -function TwbMainRecord.GetIsDeleted: Boolean; -begin - Result := GetFlags.IsDeleted; -end; - -function TwbMainRecord.GetIsEditable: Boolean; -begin - Result := wbIsInternalEdit; - if Result then - Exit; - - if Assigned(eContainer) and not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - - Result := True; -end; - -function TwbMainRecord.GetIsESM: Boolean; -begin - Result := GetFlags.IsESM; -end; - -function TwbMainRecord.GetIsLocalized: Boolean; -begin - Result := GetFlags.IsLocalized; -end; - -function TwbMainRecord.GetIsInitiallyDisabled: Boolean; -begin - Result := GetFlags.IsInitiallyDisabled; -end; - -function TwbMainRecord.GetIsInjected: Boolean; -begin - if not (mrsIsInjectedChecked in mrStates) then begin - if not Assigned(mrMaster) and (mrStruct.mrsFormID <> 0) and( (mrStruct.mrsFormID shr 24) < Cardinal(GetFile.MasterCount) ) and not (fsIsHardcoded in GetFile.FileStates) then - Include(mrStates, mrsIsInjected) - else - Exclude(mrStates, mrsIsInjected); - Include(mrStates, mrsIsInjectedChecked); - end; - Result := mrsIsInjected in mrStates; -end; - -function TwbMainRecord.GetIsInList: Boolean; -begin - with mreHeader do - Result := mrehInUse and (mrehGeneration = mreGeneration); -end; - -function TwbMainRecord.GetIsMaster: Boolean; -begin - Result := not Assigned(mrMaster); -end; - -function TwbMainRecord.GetIsNotReachable: Boolean; -var - i: Integer; -begin - if Assigned(mrMaster) then - Result := IwbMainRecord(mrMaster).IsNotReachable - else begin - Result := inherited GetIsNotReachable; - if Result then - for i := Low(mrOverrides) to High(mrOverrides) do - if not (esNotReachable in mrOverrides[i].ElementStates) then begin - Result := False; - Exit; - end; - end; -end; - -function TwbMainRecord.GetIsPersistent: Boolean; -begin - Result := GetFlags.IsPersistent; -end; - -function TwbMainRecord.GetIsVisibleWhenDistant: Boolean; -begin - Result := GetFlags.IsVisibleWhenDistant; -end; - -function TwbMainRecord.GetIsWinningOverride: Boolean; -var - Master: IwbMainRecord; -begin - if Assigned(mrMaster) then begin - Master := IwbMainRecord(mrMaster); - Assert(Master.OverrideCount > 0); - Result := Equals(Master.Overrides[Pred(Master.OverrideCount)]); - end else - Result := Length(mrOverrides) < 1; -end; - -function TwbMainRecord.GetLoadOrderFormID: Cardinal; -var - _File : IwbFile; - _Master : IwbFile; - FileID : Cardinal; -begin - Result := mrLoadOrderFormID; - if Result = 0 then begin - Result := mrStruct.mrsFormID; - if Result = 0 then - Exit; - - _File := GetFile; - Assert(Assigned(_File)); - - FileID := Result shr 24; - - if FileID >= Cardinal(_File.MasterCount) then - _Master := _File - else - _Master := _File.Masters[FileID]; - - if _Master.LoadOrder < 0 then - raise Exception.CreateFmt('FormID [%s] in file %s refers to master file %s which has not been assigned a global load order', [ - IntToHex64(Result, 8), - _File.FileName, - _Master.FileName - ]); - - FileID := _Master.LoadOrder; - - Result := (Result and $00FFFFFF) or (FileID shl 24); - - mrLoadOrderFormID := Result; - end; -end; - -function TwbMainRecord.GetMaster: IwbMainRecord; -begin - Result := IwbMainRecord(mrMaster); -end; - -function TwbMainRecord.GetMasterOrSelf: IwbMainRecord; -begin - Result := GetMaster; - if not Assigned(Result) then - Result := Self; -end; - -function TwbMainRecord.GetShortName: string; -var -// Rec: IwbRecord; - s : string; -begin - if wbDisplayShorterNames then begin - Result := ''; - - s := GetEditorID; - if s <> '' then - Result := Result + {'<' +} s {+'>'}; - - s := GetFullName; - if s <> '' then begin - if Result <> '' then - Result := Result + ' '; - Result := Result + '"' + s +'"'; - end; - - if Result <> '' then - Result := Result + ' '; - - if wbDisplayLoadOrderFormID then - Result := Result + '[' + GetSignature + ':' + IntToHex64(GetLoadOrderFormID, 8) + ']' - else - Result := Result + '[' + GetSignature + ':' + IntToHex64(mrStruct.mrsFormID, 8) + ']'; - - end else begin - Result := inherited GetName; - - if Assigned(mrDef) then - Result := Result + ' - ' + mrDef.GetName; - - if wbDisplayLoadOrderFormID then - Result := Result + ' [' + IntToHex64(GetLoadOrderFormID, 8) + ']' - else - Result := Result + ' [' + IntToHex64(mrStruct.mrsFormID, 8) + ']'; - - s := GetEditorID; - if s <> '' then - Result := Result + ' <' + s +'>'; - - s := GetFullName; - if s <> '' then - Result := Result + ' "' + s +'"'; - - end; -end; - -function TwbMainRecord.GetName: string; -var - s : string; -begin - Result := GetShortName; - if Assigned(mrDef) then begin - s := Trim(mrDef.AdditionalInfoFor(Self)); - if s <> '' then - Result := Result + ' (' + s + ')'; - end; -end; - -function TwbMainRecord.GetNativeValue: Variant; -begin - if wbDisplayLoadOrderFormID then - Result := GetLoadOrderFormID - else - Result := GetFormID; -end; - -function TwbMainRecord.GetNextEntry: IwbMainRecordEntry; -begin - Assert(mreHeader.mrehInUse); - if mreGeneration = mreHeader.mrehGeneration then - Result := IwbMainRecordEntry(mreNext) - else - Result := nil; -end; - -function TwbMainRecord.GetOverride(aIndex: Integer): IwbMainRecord; -begin - if not mrOverridesSorted then begin - wbMergeSort(@mrOverrides[0], Length(mrOverrides), CompareOverrides); - mrOverridesSorted := True; - end; - - Result := mrOverrides[aIndex]; -end; - -function TwbMainRecord.GetOverrideCount: Integer; -begin - Result := Length(mrOverrides); -end; - -function TwbMainRecord.GetPosition(out aPosition: TwbVector): Boolean; -var - Signature : TwbSignature; - SelfRef : IwbContainerElementRef; - DataRec : IwbContainerElementRef; -begin - Result := False; - try - Signature := GetSignature; - if (Signature <> 'REFR') and - (Signature <> 'ACRE') and - (Signature <> 'ACHR') and - (Signature <> 'PGRE') and - (Signature <> 'PMIS') and - (Signature <> 'PARW') and {>>> Skyrim <<<} - (Signature <> 'PBEA') and {>>> Skyrim <<<} - (Signature <> 'PFLA') and {>>> Skyrim <<<} - (Signature <> 'PCON') and {>>> Skyrim <<<} - (Signature <> 'PBAR') and {>>> Skyrim <<<} - (Signature <> 'PHZD') {>>> Skyrim <<<} - then - Exit; - - SelfRef := Self; - DoInit; - - if not Supports(GetRecordBySignature('DATA'), IwbContainerElementRef, DataRec) then - Exit; - - if DataRec.ElementCount <> 2 then - Exit; - - with aPosition, (DataRec.Elements[0] as IwbContainerElementRef) do begin - if ElementCount <> 3 then - Exit; - - X := Elements[0].NativeValue; - Y := Elements[1].NativeValue; - Z := Elements[2].NativeValue; - end; - except - on E: Exception do begin - if Assigned(wbProgressCallback) then - wbProgressCallback('Error getting position for "' + GetName + '": ' + E.Message); - Result := False; - Exit; - end; - end; - Result := True; -end; - -function TwbMainRecord.GetPrevEntry: IwbMainRecordEntry; -begin - Assert(mreHeader.mrehInUse); - if mreGeneration = mreHeader.mrehGeneration then - Result := IwbMainRecordEntry(mrePrev) - else - Result := nil; -end; - -function TwbMainRecord.GetPath: string; -begin - Result := mrStruct.mrsSignature; -end; - -function TwbMainRecord.GetCountedRecordCount: Cardinal; -begin - Result := 1; -end; - -function TwbMainRecord.GetReferencedBy(aIndex: Integer): IwbMainRecord; -begin - if mrsReferencedByUnsorted in mrStates then - SortReferencedBy; - Result := mrReferencedBy[aIndex]; -end; - -function TwbMainRecord.GetReferencedByCount: Integer; -begin - Result := Length(mrReferencedBy); -end; - -function TwbMainRecord.GetReferenceFile: IwbFile; -var - FileID: Integer; -begin - Result := GetFile; - FileID := mrStruct.mrsFormID shr 24; - if FileID < Result.MasterCount then - Result := Result.Masters[FileID]; -end; - -function TwbMainRecord.GetReferencesInjected: Boolean; -var - i, j : Integer; - _File : IwbFile; - RecFile : IwbFile; - Rec : IwbMainRecord; - Found : Boolean; -begin - if not (mrsReferencesInjectedChecked in mrStates) and (csRefsBuild in cntStates) then begin - Include(mrStates, mrsReferencesInjectedChecked); - Exclude(mrStates, mrsReferencesInjected); - if Length(mrReferences) > 0 then begin - _File := GetFile; - for i := Low(mrReferences) to High(mrReferences) do begin - Rec := _File.RecordByFormID[mrReferences[i], True]; - if Assigned(Rec) then begin - RecFile := Rec._File; - if not _File.Equals(RecFile) then begin - Rec := Rec.MasterOrSelf; - if Rec.IsInjected then begin - Found := False; - for j := 0 to Pred(_File.MasterCount) do - if _File.Masters[j].Equals(RecFile) then begin - Found := True; - Break; - end; - if not Found then begin - Include(mrStates, mrsReferencesInjected); - Break; - end; - end; - end; - end; - end; - end; - end; - Result := mrsReferencesInjected in mrStates; -end; - -function TwbMainRecord.GetRotation(out aRotation: TwbVector): Boolean; -var - Signature : TwbSignature; - SelfRef : IwbContainerElementRef; - DataRec : IwbContainerElementRef; -begin - Result := False; - - Signature := GetSignature; - if (Signature <> 'REFR') and - (Signature <> 'ACRE') and - (Signature <> 'ACHR') and - (Signature <> 'PGRE') and - (Signature <> 'PMIS') and - (Signature <> 'PARW') and {>>> Skyrim <<<} - (Signature <> 'PBEA') and {>>> Skyrim <<<} - (Signature <> 'PFLA') and {>>> Skyrim <<<} - (Signature <> 'PCON') and {>>> Skyrim <<<} - (Signature <> 'PBAR') and {>>> Skyrim <<<} - (Signature <> 'PHZD') {>>> Skyrim <<<} - then - Exit; - - SelfRef := Self; - DoInit; - - if not Supports(GetRecordBySignature('DATA'), IwbContainerElementRef, DataRec) then - Exit; - - if DataRec.ElementCount <> 2 then - Exit; - - with aRotation, (DataRec.Elements[1] as IwbContainerElementRef) do begin - if ElementCount <> 3 then - Exit; - - X := StrToFloatDef(Elements[0].Value, 0); - Y := StrToFloatDef(Elements[1].Value, 0); - Z := StrToFloatDef(Elements[2].Value, 0); - end; - Result := True; -end; - -function TwbMainRecord.GetScale(out aScale: Single): Boolean; -var - Signature : TwbSignature; - SelfRef : IwbContainerElementRef; - XSclRec : IwbContainerElementRef; -begin - Result := False; - aScale := 1; - - Signature := GetSignature; - if (Signature <> 'REFR') and - (Signature <> 'ACRE') and - (Signature <> 'ACHR') and - (Signature <> 'PGRE') and - (Signature <> 'PMIS') and - (Signature <> 'PARW') and {>>> Skyrim <<<} - (Signature <> 'PBEA') and {>>> Skyrim <<<} - (Signature <> 'PFLA') and {>>> Skyrim <<<} - (Signature <> 'PCON') and {>>> Skyrim <<<} - (Signature <> 'PBAR') and {>>> Skyrim <<<} - (Signature <> 'PHZD') {>>> Skyrim <<<} - then - Exit; - - SelfRef := Self; - DoInit; - - if not Supports(GetRecordBySignature('XSCL'), IwbContainerElementRef, XSclRec) then - Exit; - - aScale := StrToFloatDef(XSclRec.Value, 0); - Result := True; -end; - -function TwbMainRecord.GetSortKeyInternal(aExtended: Boolean): string; -begin - Result := IntToHex64(mrStruct.mrsFormID, 8); -end; - -function TwbMainRecord.GetSortPriority: Integer; -begin - if (GetSignature = 'ROAD') or (GetSignature = 'LAND') then - Result := -2 - else if (GetSignature = 'CELL') or (GetSignature = 'PGRD') or (GetSignature = 'NAVM') then - Result := -1 - else - Result := 0; -end; - -function TwbMainRecord.GetValue: string; -var - Def: IwbDef; -begin - if wbReportMode then begin - Def := GetValueDef; - if Assigned(Def) then - Def.Used; - Def := GetDef; - if Assigned(Def) then - Def.Used; - end; - Result := ''; -end; - -function TwbMainRecord.GetWinningOverride: IwbMainRecord; -begin - if Assigned(mrMaster) then - Result := IwbMainRecord(mrMaster).WinningOverride - else - if Length(mrOverrides) > 0 then - Result := mrOverrides[High(mrOverrides)] - else - Result := Self; -end; - -procedure TwbMainRecord.InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); -begin - Assert(False); -end; - -procedure TwbMainRecord.InitDataPtr; -var - RecordDef : PwbRecordDef; -begin - if Assigned(dcEndPtr) then begin - dcDataBasePtr := Pointer( Cardinal( dcBasePtr ) + wbSizeOfMainRecordStruct ); - dcDataEndPtr := Pointer( Cardinal( dcDataBasePtr ) + mrStruct.mrsDataSize ); - dcEndPtr := dcDataEndPtr; - end; - - if not Assigned(mrDef) then begin - if wbFindRecordDef(PwbSignature(dcBasePtr)^, RecordDef) then - mrDef := RecordDef^ - else begin - if Assigned(wbProgressCallback) then - wbProgressCallback('Error: unknown record type '+ String(PwbSignature(dcBasePtr)^)); - end; - end; -end; - -procedure TwbMainRecord.InsertEntryAfter(const aEntry: IwbMainRecordEntry); -var - Entry: IwbMainRecordEntry; -begin - Assert(Assigned(aEntry)); - RemoveEntry; - Assert(mreGeneration = -1); - with mreHeader do begin - Assert(mrehInUse); - mreGeneration := mrehGeneration; - Entry := Self; - mrePrev := Pointer(aEntry); - mreNext := Pointer(aEntry.NextEntry); - aEntry.NextEntry := Entry; - if Assigned(mreNext) then begin - Assert( aEntry.Equals(IwbMainRecordEntry(mreNext).PrevEntry) ); - IwbMainRecordEntry(mreNext).PrevEntry := Entry; - end else begin - Assert( aEntry.Equals(IwbMainRecordEntry(mrehTail)) ); - mrehTail := Pointer(Entry); - end; - Inc(mrehCount); - end; -end; - -procedure TwbMainRecord.InsertEntryHead; -var - Entry: IwbMainRecordEntry; -begin - RemoveEntry; - Assert(mreGeneration = -1); - with mreHeader do begin - Assert(mrehInUse); - mreGeneration := mrehGeneration; - mrePrev := nil; - mreNext := mrehHead; - Entry := Self; - mrehHead := Pointer(Entry); - if Assigned(mreNext) then begin - Assert(not Assigned(IwbMainRecordEntry(mreNext).PrevEntry)); - IwbMainRecordEntry(mreNext).PrevEntry := Entry - end else begin - Assert(not Assigned(mrehTail)); - mrehTail := Pointer(Entry); - end; - Inc(mrehCount); - end; -end; - -procedure TwbMainRecord.InsertEntryTail; -var - Entry: IwbMainRecordEntry; -begin - RemoveEntry; - Assert(mreGeneration = -1); - with mreHeader do begin - Assert(mrehInUse); - mreGeneration := mrehGeneration; - mreNext := nil; - mrePrev := mrehTail; - Entry := Self; - mrehTail := Pointer(Entry); - if Assigned(mrePrev) then begin - Assert(not Assigned(IwbMainRecordEntry(mrePrev).NextEntry)); - IwbMainRecordEntry(mrePrev).NextEntry := Entry - end else begin - Assert(not Assigned(mrehHead)); - mrehHead := Pointer(Entry); - end; - Inc(mrehCount); - end; -end; - -function TwbMainRecord.IsElementRemoveable(const aElement: IwbElement): Boolean; -begin - Result := IsElementEditable(aElement) and not aElement.Def.Required; -end; - -function TwbMainRecord.LinksToParent: Boolean; -var - Signature : TwbSignature; - DATA : IwbRecord; - SelfPtr : IwbContainerElementRef; - s : string; -begin - Signature := GetSignature; - - if (Signature = 'CELL') then begin - Result := True; - SelfPtr := Self as IwbContainerElementRef; - DATA := GetRecordBySignature('DATA'); - if Assigned(DATA) then begin - s := DATA.EditValue; - if (Length(s)>0) and (s[1]='1') then - Result := False; - end; - end else - Result := - (Signature = 'INFO') or - (Signature = 'REFR') or - (Signature = 'PGRE') or - (Signature = 'PMIS') or - (Signature = 'ACHR') or - (Signature = 'ACRE') or - (Signature = 'PGRD') or - (Signature = 'PARW') or {>>> Skyrim <<<} - (Signature = 'PBEA') or {>>> Skyrim <<<} - (Signature = 'PFLA') or {>>> Skyrim <<<} - (Signature = 'PCON') or {>>> Skyrim <<<} - (Signature = 'PBAR') or {>>> Skyrim <<<} - (Signature = 'PHZD') or {>>> Skyrim <<<} - (Signature = 'NAVM') or - (Signature = 'ROAD') or - (Signature = 'LAND') or - (wbVWDAsQuestChildren and ((Signature = 'DLBR') or (Signature = 'DIAL') or (Signature = 'SCEN'))); -end; - -procedure TwbMainRecord.MakeHeaderWriteable; -var - p : PwbMainRecordStruct; - BasePtr : Pointer; - SelfPtr : IwbContainerElementRef; - RecordHeader : IwbElement; -begin - SelfPtr := Self as IwbContainerElementRef; - - DoInit; - - SetModified(True); - InvalidateParentStorage; - - if Assigned(dcEndPtr) then begin - New(p); - Include(mrStates, mrBasePtrAllocated); - p^ := mrStruct^; - dcBasePtr := p; - dcEndPtr := nil; - - RecordHeader := GetElementBySortOrder( (-1) + GetAdditionalElementCount ); - if Assigned(RecordHeader) then begin - BasePtr := p; - RecordHeader.InformStorage(BasePtr, Pointer( Cardinal(BasePtr) + wbSizeOfMainRecordStruct ) ); - end; - end; - -end; - -procedure TwbMainRecord.MarkModifiedRecursive; -var - SelfRef : IwbContainerElementRef; - Group : IwbGroupRecord; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - inherited; - Group := GetChildGroup; - if Assigned(Group) then - Group.MarkModifiedRecursive; -end; - -procedure TwbMainRecord.MasterCountUpdated(aOld, aNew: Byte); -var - FileID : Integer; - i : Integer; - FoundOne : Boolean; - - SelfRef : IwbContainerElementRef; -// EditorID : IwbElement; -begin - mrBaseRecordID := 0; - Exclude(mrStates, mrsBaseRecordChecked); - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if mrStruct.mrsFormID <> 0 then begin - //Assert(aNew > aOld); - FileID := mrStruct.mrsFormID shr 24; - if FileID >= aOld then begin - FileID := aNew; - MakeHeaderWriteable; - mrStruct.mrsFormID := (mrStruct.mrsFormID and $00FFFFFF) or (Cardinal(FileID) shl 24); - mrFixedFormID := 0; - mrLoadOrderFormID := 0; - Exclude(mrStates, mrsIsInjectedChecked); - end; - end; - - if csRefsBuild in cntStates then begin - - FoundOne := False; - for i := High(mrReferences) downto Low(mrReferences) do begin - FileID := mrReferences[i] shr 24; - if FileID < aOld then - Break; - FoundOne := True; - - FileID := aNew; - mrReferences[i] := (mrReferences[i] and $00FFFFFF) or (Cardinal(FileID) shl 24); - end; - - if FoundOne then - inherited; - - end else - inherited; -end; - -procedure TwbMainRecord.MasterIndicesUpdated(const aOld, aNew: TBytes); -var - OldFormID: Cardinal; - NewFormID: Cardinal; - i : Integer; - FoundOne : Boolean; - - SelfRef : IwbContainerElementRef; -begin - mrBaseRecordID := 0; - Exclude(mrStates, mrsBaseRecordChecked); - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if mrStruct.mrsFormID <> 0 then begin - OldFormID := mrStruct.mrsFormID; - NewFormID := FixupFormID(OldFormID, aOld, aNew); - if OldFormID <> NewFormID then begin - MakeHeaderWriteable; - mrStruct.mrsFormID := NewFormID; - mrFixedFormID := 0; - mrLoadOrderFormID := 0; - Exclude(mrStates, mrsIsInjectedChecked); - end; - end; - - if csRefsBuild in cntStates then begin - - FoundOne := False; - for i := Low(mrReferences) to High(mrReferences) do begin - OldFormID := mrReferences[i]; - NewFormID := FixupFormID(OldFormID, aOld, aNew); - if OldFormID <> NewFormID then begin - FoundOne := True; - mrReferences[i] := NewFormID; - end; - end; - - if FoundOne then begin - wbMergeSort(@mrReferences[0], Length(mrReferences), CompareFormIDs ); - inherited; - end; - - end else - inherited; -end; - -function TwbMainRecord.MasterRecordsFromMasterFilesAndSelf: TDynMainRecords; -var - Res : TDynMainRecords; - _File : IwbFile; - Master : IwbMainRecord; - i, j : Integer; - - function AddRecord(const aRecord: IwbMainRecord): Boolean; - var - k : Integer; - RecFile : IwbFile; - begin - Result := Equals(aRecord); - if not Result then begin - RecFile := aRecord._File; - - Result := _File.Equals(RecFile); - if not Result then - for k := 0 to Pred(_File.MasterCount) do begin - Result := _File.Masters[k].Equals(RecFile); - if Result then - Break; - end; - if Result then - Result := False - else - Exit; - end; - - Res[i] := aRecord; - Inc(i); - end; - -begin - Result := nil; - Res := nil; - if Assigned(mrMaster) then begin - _File := GetFile; - if Assigned(_File) then begin - Master := IwbMainRecord(mrMaster); - SetLength(Res, Succ(Master.OverrideCount)); - i := 0; - if not AddRecord(Master) then - for j := 0 to Pred(Master.OverrideCount) do - if AddRecord(Master.Overrides[j]) then - break; - SetLength(Res, i); - if i> 0 then begin - Result := Res; - Exit; - end; - end; - end; - SetLength(Res, 1); - Res[0] := Self; - Result := Res; -end; - -procedure TwbMainRecord.MergeStorageInternal(var aBasePtr: Pointer; aEndPtr: Pointer); -begin - Assert(False); -end; - -function TwbMainRecord.mrStruct: PwbMainRecordStruct; -begin - Result := PwbMainRecordStruct(dcBasePtr); -end; - -procedure TwbMainRecord.PrepareSave; -var - _File : IwbFile; - GroupRecord : IwbGroupRecord; -begin - if GetSignature = wbHeaderSignature then begin - if not Supports(GetContainer, IwbFile, _File) then - raise Exception.Create('File Header record '+GetName+' must be contained directly in the file.'); - if GetFormID <> 0 then - raise Exception.Create('File Header record '+GetName+' can not have a FormID.'); - end else begin - if GetFormID = 0 then - raise Exception.Create('Record '+GetName+' must have a FormID.'); - if not Supports(GetContainer, IwbGroupRecord, GroupRecord) then - raise Exception.Create('Record '+GetName+' is not contained in a group.'); - case GroupRecord.GroupType of - 0: begin {top level} - if TwbSignature(GroupRecord.GroupLabel) <> GetSignature then - raise Exception.Create('Record ' + GetName + ' can not be contained in ' + GroupRecord.Name); - end; - 1: begin {World Children} - if (GetSignature <> 'CELL') and (GetSignature <> 'ROAD') then - raise Exception.Create('Record ' + GetName + ' can not be contained in ' + GroupRecord.Name); - end; - 2, 4, 6: begin {interior and exterior block and cell children} - raise Exception.Create('Record ' + GetName + ' can not be contained in ' + GroupRecord.Name); - end; - 3, 5: begin {interior and exterior sub-block} - if (GetSignature <> 'CELL') then - raise Exception.Create('Record ' + GetName + ' can not be contained in ' + GroupRecord.Name); - end; - 7: begin {topic children} - if (GetSignature <> 'INFO') then - raise Exception.Create('Record ' + GetName + ' can not be contained in ' + GroupRecord.Name); - end; - 8, 10: begin {Persistent and Visible when Distant/Quest Children} - if (GetSignature <> 'REFR') and - (GetSignature <> 'ACHR') and - (GetSignature <> 'ACRE') and - (GetSignature <> 'PGRE') and - (GetSignature <> 'PMIS') and - (GetSignature <> 'PARW') and {>>> Skyrim <<<} - (GetSignature <> 'PBEA') and {>>> Skyrim <<<} - (GetSignature <> 'PFLA') and {>>> Skyrim <<<} - (GetSignature <> 'PCON') and {>>> Skyrim <<<} - (GetSignature <> 'PBAR') and {>>> Skyrim <<<} - (GetSignature <> 'PHZD') {>>> Skyrim <<<} - then - if not (wbVWDAsQuestChildren and ((GetSignature = 'DLBR') or (GetSignature = 'DIAL') or (GetSignature = 'SCEN'))) then - raise Exception.Create('Record ' + GetName + ' can not be contained in ' + GroupRecord.Name); - - case GroupRecord.GroupType of - 8:begin - if not mrStruct.mrsFlags.IsPersistent then - raise Exception.Create('Record ' + GetName + ' needs to have it''s Persistent flag set to be contained in ' + GroupRecord.Name); - end; - 10: if not wbVWDAsQuestChildren then begin - if not mrStruct.mrsFlags.IsVisibleWhenDistant then - raise Exception.Create('Record ' + GetName + ' needs to have it''s Visible when Distant flag set to be contained in ' + GroupRecord.Name); - if mrStruct.mrsFlags.IsPersistent then - raise Exception.Create('Record ' + GetName + ' can not have it''s Persistent flag set to be contained in ' + GroupRecord.Name); - end; - end; - end; - 9: begin {Temporary} - if (GetSignature <> 'REFR') and - (GetSignature <> 'ACHR') and - (GetSignature <> 'ACRE') and - (GetSignature <> 'LAND') and - (GetSignature <> 'PGRD') and - (GetSignature <> 'NAVM') and - (GetSignature <> 'PGRE') and - (GetSignature <> 'PMIS') and - (GetSignature <> 'PARW') and {>>> Skyrim <<<} - (GetSignature <> 'PBEA') and {>>> Skyrim <<<} - (GetSignature <> 'PFLA') and {>>> Skyrim <<<} - (GetSignature <> 'PCON') and {>>> Skyrim <<<} - (GetSignature <> 'PBAR') and {>>> Skyrim <<<} - (GetSignature <> 'PHZD') {>>> Skyrim <<<} - then - raise Exception.Create('Record ' + GetName + ' can not be contained in ' + GroupRecord.Name); - if mrStruct.mrsFlags.IsPersistent then - raise Exception.Create('Record ' + GetName + ' can not have it''s Persistent flag set to be contained in ' + GroupRecord.Name); - if mrStruct.mrsFlags.IsVisibleWhenDistant and not wbVWDInTemporary then - raise Exception.Create('Record ' + GetName + ' can not have it''s Visible when Distant flag set to be contained in ' + GroupRecord.Name); - end; - end; - end; - - if GetIsDeleted and (GetDataSize > 0) then begin - GetDataSize; - Delete; - end; - - //not needed for now - inherited; -end; - -function TwbMainRecord.Reached: Boolean; -var - Signature : TwbSignature; - i : Integer; - IsComplex : Boolean; -{ - _File : IwbFile; - Rec : IwbMainRecord; -} - - SelfRef : IwbContainerElementRef; -begin - if esReachable in eStates then - Exit(False); - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Signature := GetSignature; - IsComplex := (Signature = 'DIAL') or (Signature = 'WRLD') or (Signature = 'CELL'); - if GetIsWinningOverride or IsComplex then begin - {if csRefsBuild in cntStates then begin - Result := esNotReachable in eStates; - Exclude(eStates, esNotReachable); - if Result and (Length(mrReferences) > 0) then begin - _File := GetFile; - for i := Low(mrReferences) to High(mrReferences) do begin - Rec := _File.RecordByFormID[mrReferences[i], True]; - if Assigned(Rec) then - (Rec as IwbElementInternal).Reached; - end; - end; - if LinksToParent then begin - if Assigned(eContainer) then - (IwbContainer(eContainer) as IwbElementInternal).Reached; - Exit; - end; - end else} - Result := inherited Reached; - - if Result then begin - if not Assigned(eContainer) then - Exit; - if LinksToParent then - Exit; - if not IsComplex then - Exit; - - if Assigned(mrMaster) then - (IwbMainRecord(mrMaster) as IwbElementInternal).Reached - else - for i := 0 to Pred(GetOverrideCount) do - (GetOverride(i) as IwbElementInternal).Reached; - - if Assigned(mrGroup) then - (mrGroup as IwbElementInternal).Reached; - end; - end else - Result := (GetWinningOverride as IwbElementInternal).Reached; -end; - -procedure TwbMainRecord.Remove; -var - _File: IwbFileInternal; -begin - DoBuildRef(True); - - _File := GetFile as IwbFileInternal; - if Assigned(_File) then - _File.RemoveMainRecord(Self); - - if Assigned(mrMaster) then - (IwbMainRecord(mrMaster) as IwbMainRecordInternal).RemoveOverride(Self) - else - if Length(mrOverrides) > 0 then - (mrOverrides[0] as IwbMainRecordInternal).YouAreTheMaster(mrOverrides, mrReferencedBy); - - mrMaster := nil; - mrOverrides := nil; - mrReferencedBy := nil; - mrFixedFormID := 0; - mrLoadOrderFormID := 0; - Exclude(mrStates, mrsIsInjectedChecked); - mrConflictAll := caUnknown; - mrConflictThis := ctUnknown; - - inherited; -end; - -procedure TwbMainRecord.RemoveChildGroup(const aGroup: IwbGroupRecord); -begin - if Assigned(mrGroup) and mrGroup.Equals(aGroup) then begin - mrGroup := nil; - Exclude(mrStates, mrsSearchedChildGroup); - end; -end; - -function TwbMainRecord.RemoveElement(aPos: Integer; aMarkModified: Boolean = False): IwbElement; -begin - Result := inherited RemoveElement(aPos, aMarkModified); - if Assigned(Result) and (Result.ElementType = etSubRecord) then - with (Result as IwbSubRecord) do begin - if Signature = 'EDID' then - mrEditorID := '' - else if Signature = 'FULL' then begin - if (mrFullName <> '') and (Value = mrFullName) then - mrFullName := ''; - end else if Signature = 'NAME' then - Exclude(mrStates, mrsBaseRecordChecked); - end; -end; - -procedure TwbMainRecord.RemoveEntry; -var - Entry : IwbMainRecordEntry; - i : Integer; -begin - if Supports(IInterface(mrMaster), IwbMainRecordEntry, Entry) then - Entry.RemoveEntry - else begin - RemoveEntryInternal; - for i := Low(mrOverrides) to High(mrOverrides) do - if Supports(mrOverrides[i], IwbMainRecordEntry, Entry) then - Entry.RemoveEntryInternal; - end; -end; - -procedure TwbMainRecord.RemoveEntryInternal; -begin - with mreHeader do begin - Assert(mrehInUse); - if mreGeneration = mrehGeneration then begin - if Assigned(mrePrev) then - IwbMainRecordEntry(mrePrev).NextEntry := IwbMainRecordEntry(mreNext) - else begin - Assert(Equals(IwbMainRecordEntry(mrehHead))); - mrehHead := mreNext; - end; - - if Assigned(mreNext) then - IwbMainRecordEntry(mreNext).PrevEntry := IwbMainRecordEntry(mrePrev) - else begin - Assert(Equals(IwbMainRecordEntry(mrehTail))); - mrehTail := mrePrev; - end; - Dec(mrehCount); - end; - mrePrev := nil; - mreNext := nil; - mreGeneration := -1; - end; -end; - -function TwbMainRecord.RemoveInjected(aCanRemove: Boolean): Boolean; -var - i : Integer; - SelfRef : IwbContainerElementRef; - Element : IwbElement; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Result := False; - if GetReferencesInjected then begin - if GetSignature = 'SCPT' then begin - Element := GetElementByName('References'); - if Assigned(Element) then - Element.Remove; - Element := GetRecordBySignature('SCDA'); - if Assigned(Element) then - Element.EditValue := '1D 00 00 00'; - Element := GetRecordBySignature('SCHR'); - if Assigned(Element) then with (Element as IwbContainerElementRef) do begin - ElementByName['RefCount'].EditValue := '0'; - ElementByName['CompiledSize'].EditValue := '4'; - end; - Element := GetRecordBySignature('SCTX'); - if Assigned(Element) then - with TStringList.Create do try - Text := Element.EditValue; - for i := 0 to Pred(Count) do - if StartsWith(Trim(Strings[i]), 'begin') then begin - while i <= Count do - Delete(Pred(Count)); - Break; - end; - Element.EditValue := Text; - finally - Free; - end; - end else begin - for i := High(cntElements) downto Low(cntElements) do - if cntElements[i].CanContainFormIDs then begin - Result := cntElements[i].RemoveInjected(True) or Result; - if Result and aCanRemove then - Break; - end; - end; - end; - Exclude(mrStates, mrsReferencesInjectedChecked); - if Result and aCanRemove and GetIsRemoveable then begin - Result := False; - Remove; - end; -end; - -procedure TwbMainRecord.RemoveOverride(const aMainRecord: IwbMainRecord); -var - i,j: Integer; -begin - j := 0; - for i := Low(mrOverrides) to High(mrOverrides) do begin - if (mrOverrides[i] as IwbElement) <> (aMainRecord as IwbElement) then begin - if i <> j then - mrOverrides[j] := mrOverrides[i]; - Inc(j); - end; - end; - SetLength(mrOverrides, j); -end; - -procedure TwbMainRecord.RemoveReferencedBy(aMainRecord: IwbMainRecord); -var - i: Integer; -begin - if mrsReferencedByUnsorted in mrStates then - SortReferencedBy; - - if FindReferencedBy(aMainRecord, i) then begin - mrReferencedBy[i] := nil; - if i < High(mrReferencedBy) then begin - Move(mrReferencedBy[Succ(i)], mrReferencedBy[i], SizeOf(Pointer) * (High(mrReferencedBy) - i)); - Pointer(mrReferencedBy[High(mrReferencedBy)]) := nil; - end; - SetLength(mrReferencedBy, Pred(Length(mrReferencedBy))); - end; -end; - -procedure TwbMainRecord.ReportRequiredMasters(aStrings: TStrings; aAsNew: Boolean; Recursive: Boolean = True; Initial: Boolean = false); -var - _File: IwbFile; -begin - if not aAsNew then begin - _File := GetReferenceFile; - aStrings.AddObject(_File.FileName, Pointer(_File)); - end; - inherited; -end; - -procedure TwbMainRecord.Reset; -begin - ReleaseElements; - mrDataStorage := nil; - InitDataPtr; - inherited; -end; - -procedure TwbMainRecord.ResetConflict; -var - i: Integer; -begin - inherited; - if Assigned(mrMaster) then - IwbElement(mrMaster).ResetConflict - else begin - mrConflictAll := caUnknown; - mrConflictThis := ctUnknown; - for i := Low(mrOverrides) to High(mrOverrides) do - with mrOverrides[i] do begin - ConflictAll := caUnknown; - ConflictThis := ctUnknown; - end; - end; -end; - -procedure TwbMainRecord.ResetReachable; -begin - Include(eStates, esNotReachable); - Exclude(eStates, esReachable); -end; - -function TwbMainRecord.ResolveElementName(aName: string; out aRemainingName: string; aCanCreate: Boolean): IwbElement; -var - i: Integer; -begin - Result := inherited ResolveElementName(aName, aRemainingName, aCanCreate); - if not Assigned(Result) and aCanCreate and Assigned(mrDef) and (Length(aName) = 4) then begin - i := mrDef.GetMemberIndexFor(StrToSignature(aName), nil); - if i < 0 then - Exit; - Assign(i, nil, False); - Result := GetElementBySignature(StrToSignature(aName)); - end; -end; - -procedure TwbMainRecord.ScanData; -var - SelfRef : IwbContainerElementRef; -begin - if not wbDelayLoadRecords then begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - end; -end; - -procedure TwbMainRecord.SetChildGroup(const aGroup: IwbGroupRecord); -begin - if Pointer(mrGroup) = Pointer(aGroup) then - Exit; - - if Assigned(aGroup) then begin - if not (not Assigned(mrGroup) or (mrGroup.Equals(aGroup))) then begin - if not (not Assigned(mrGroup) or (mrGroup.Equals(aGroup))) then - Assert(not Assigned(mrGroup) or (mrGroup.Equals(aGroup)), 'Found additional ' + mrGroup.Name + ' for ' + Self.GetName); - end; - if Assigned(eContainer) then - IwbContainer(eContainer).Equals(aGroup.Container); - end else - Assert(Assigned(mrGroup)); - mrGroup := aGroup; -end; - -procedure TwbMainRecord.SetConflictAll(aValue: TConflictAll); -begin - mrConflictAll := aValue; -end; - -procedure TwbMainRecord.SetConflictThis(aValue: TConflictThis); -begin - mrConflictThis := aValue; -end; - -procedure TwbMainRecord.SetContainer(const aContainer: IwbContainer); -var - ContainedIn: IwbContainedIn; -begin - inherited; - if csInit in cntStates then - if Supports(GetElementBySortOrder(-2 + GetAdditionalElementCount), IwbContainedIn, ContainedIn) then - ContainedIn.ContainerChanged; -end; - -procedure TwbMainRecord.SetEditorID(const aValue: string); -var - SelfRef : IwbContainerElementRef; - Rec : IwbRecord; - i : Integer; -begin - if not Assigned(mrDef) then - Exit; - - if aValue = GetEditorID then - Exit; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Rec := GetRecordBySignature('EDID'); - if not Assigned(Rec) then begin - i := mrDef.GetMemberIndexFor('EDID', nil); - if i < 0 then - Exit; - Assign(i, nil, False); - Rec := GetRecordBySignature('EDID'); - Assert(Assigned(Rec)); - end; - - if aValue = '' then - Rec.Remove - else - Rec.EditValue := aValue; - - Assert(mrEditorID = aValue); -end; - -procedure TwbMainRecord.SetEditValue(const aValue: string); -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be edited.'); - - if wbDisplayLoadOrderFormID then begin - SetLoadOrderFormID(StrToInt64('$'+aValue)); - NotifyChanged(eContainer); - end else - raise Exception.Create('FormID can only be edited if wbDisplayLoadOrderFormID is active'); -end; - -procedure TwbMainRecord.SetIsCompressed(aValue: Boolean); -begin - if aValue <> GetIsCompressed then begin - MakeHeaderWriteable; - GetFlagsPtr.SetCompressed(aValue); - end; -end; - -procedure TwbMainRecord.SetIsDeleted(aValue: Boolean); -var - SelfRef : IwbContainerElementRef; - i, j : Integer; - BasePtr : Pointer; - GroupRecord : IwbGroupRecord; - Master : IwbMainRecord; - MainRecord : IwbMainRecord; - SelfIndex : Integer; - _File : IwbFile; -begin - if aValue <> GetIsDeleted then begin - if aValue then - Delete - else begin - SelfRef := Self; - DoInit; - - SetModified(True); - InvalidateStorage; - ReleaseElements; - - MakeHeaderWriteable; - GetFlagsPtr.SetDeleted(False); - - if Supports(Self.GetContainer, IwbGroupRecord, GroupRecord) then - if wbCreateContainedIn and (GroupRecord.GroupType in [1, 4..10]) then - with TwbContainedInElement.Create(Self) do begin - _AddRef; _Release; - end; - GroupRecord := nil; - - BasePtr := dcBasePtr; - with TwbRecordHeaderStruct.Create(Self, BasePtr, Pointer( Cardinal(BasePtr) + wbSizeOfMainRecordStruct), mrDef.RecordHeaderStruct, '') do begin - Include(dcFlags, dcfDontSave); - SetSortOrder(-1); - SetMemoryOrder(Low(Integer)); - _AddRef; _Release; - end; - - for i := 0 to Pred(mrDef.MemberCount) do - if mrDef.Members[i].Required then - Assign(i, nil, False); - - Master := GetMaster; - - if not Assigned(Master) then - Exit; - - _File := GetFile; - - SelfIndex := -1; - for i := 0 to Pred(Master.OverrideCount) do - if Equals(Master.Overrides[i]) then begin - SelfIndex := i; - Break; - end; - - for i := Pred(SelfIndex) downto 0 do begin - MainRecord := Master.Overrides[i]; - if not MainRecord.IsDeleted then begin - for j := Pred(_File.MasterCount) downto 0 do - if MainRecord._File.Equals(_File.Masters[j]) then begin - Self.Assign(Low(Integer), MainRecord, False); - Exit; - end; - end; - end; - - if not Master.IsDeleted then - Self.Assign(Low(Integer), Master, False); - - end; - end; -end; - -procedure TwbMainRecord.SetIsESM(aValue: Boolean); -begin - if aValue <> GetIsESM then begin - MakeHeaderWriteable; - GetFlagsPtr.SetESM(aValue); - end; -end; - -procedure TwbMainRecord.SetIsLocalized(aValue: Boolean); -begin - if aValue <> GetIsLocalized then begin - MakeHeaderWriteable; - GetFlagsPtr.SetLocalized(aValue); - end; -end; - -procedure TwbMainRecord.SetIsInitiallyDisabled(aValue: Boolean); -begin - if aValue <> GetIsInitiallyDisabled then begin - MakeHeaderWriteable; - GetFlagsPtr.SetInitiallyDisabled(aValue); - end; -end; - -procedure TwbMainRecord.SetIsPersistent(aValue: Boolean); -var - NeedUpdate: Boolean; -begin - if aValue <> GetIsPersistent then begin - NeedUpdate := CheckChildOfCell; - MakeHeaderWriteable; - GetFlagsPtr.SetPersistent(aValue); - if NeedUpdate then - UpdateCellChildGroup; - end; -end; - -procedure TwbMainRecord.SetIsVisibleWhenDistant(aValue: Boolean); -var - NeedUpdate: Boolean; -begin - if aValue <> GetIsVisibleWhenDistant then begin - NeedUpdate := CheckChildOfCell; - MakeHeaderWriteable; - GetFlagsPtr.SetVisibleWhenDistant(aValue); - if NeedUpdate then - UpdateCellChildGroup; - end; -end; - -procedure TwbMainRecord.SetLoadOrderFormID(aFormID: Cardinal); -var - _File: IwbFileInternal; - FileID: Integer; - NewFileID: Integer; - i : Integer; - Master: IwbMainRecord; -begin - if GetLoadOrderFormID = aFormID then - Exit; - - _File := GetFile as IwbFileInternal; - - FileID := aFormID shr 24; - NewFileID := -1; - - if FileID = _File.LoadOrder then - NewFileID := _File.MasterCount - else begin - for i := 0 to Pred(_File.MasterCount) do - if _File.Masters[i].LoadOrder = FileID then begin - NewFileID := i; - Break; - end; - end; - - if NewFileID < 0 then - raise Exception.Create('FormID ['+IntToHex64(aFormID, 8)+'] belongs to a file that is not available as master to records in ' + _File.Name); - - aFormID := (aFormID and $00FFFFFF) or (Cardinal(NewFileID) shl 24); - - if (GetFormID and $00FFFFFF) = (aFormID and $00FFFFFF) then - if ((GetFormID shr 24) >= Cardinal(_File.MasterCount)) and ((aFormID shr 24) >= Cardinal(_File.MasterCount)) then begin - // we can do this relatively quietly and quickly... - - if Assigned(mrGroup) then - Assert(mrGroup.GroupLabel = mrStruct.mrsFormID); - MakeHeaderWriteable; - mrStruct.mrsFormID := aFormID; - if Assigned(mrGroup) then - mrGroup.GroupLabel := aFormID; - UpdateInteriorCellGroup; - Exit; - end; - - Master := _File.RecordByFormID[aFormID, False]; - if Assigned(Master) and ((Master._File as IwbFileInternal) = _File) then - raise Exception.Create('FormID ['+IntToHex64(aFormID, 8)+'] is already present in file ' + _File.Name); - - _File.RemoveMainRecord(Self); - - if Assigned(mrMaster) then - (IwbMainRecord(mrMaster) as IwbMainRecordInternal).RemoveOverride(Self) - else - if Length(mrOverrides) > 0 then - (mrOverrides[0] as IwbMainRecordInternal).YouAreTheMaster(mrOverrides, mrReferencedBy); - - mrMaster := nil; - mrOverrides := nil; - mrReferencedBy := nil; - mrFixedFormID := 0; - mrLoadOrderFormID := 0; - Exclude(mrStates, mrsIsInjectedChecked); - mrConflictAll := caUnknown; - mrConflictThis := ctUnknown; - - if Assigned(mrGroup) then - Assert(mrGroup.GroupLabel = mrStruct.mrsFormID); - MakeHeaderWriteable; - mrStruct.mrsFormID := aFormID; - if Assigned(mrGroup) then - mrGroup.GroupLabel := aFormID; - UpdateInteriorCellGroup; - - _File.AddMainRecord(Self); -end; - -procedure TwbMainRecord.SetMaster(const aMaster: IwbMainRecord); -begin - mrMaster := Pointer(aMaster); - if Assigned(mrMaster) then begin - Include(mrStates, mrsIsInjectedChecked); - Exclude(mrStates, mrsIsInjected); - end else - Exclude(mrStates, mrsIsInjectedChecked); -end; - -procedure TwbMainRecord.SetNativeValue(const aValue: Variant); -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be edited.'); - - if wbDisplayLoadOrderFormID then begin - SetLoadOrderFormID(aValue); - NotifyChanged(eContainer); - end else - raise Exception.Create('FormID can only be edited if wbDisplayLoadOrderFormID is active'); -end; - -procedure TwbMainRecord.SetNextEntry(const aEntry: IwbMainRecordEntry); -begin - Assert(mreHeader.mrehInUse); - Assert(mreGeneration = mreHeader.mrehGeneration); - mreNext := Pointer(aEntry); -end; - -function TwbMainRecord.SetPosition(const aPosition: TwbVector): Boolean; -var - Signature : TwbSignature; - SelfRef : IwbContainerElementRef; - DataRec : IwbContainerElementRef; -begin - Result := False; - - Signature := GetSignature; - if (Signature <> 'REFR') and - (Signature <> 'ACRE') and - (Signature <> 'ACHR') and - (Signature <> 'PGRE') and - (Signature <> 'PMIS') and - (Signature <> 'PARW') and {>>> Skyrim <<<} - (Signature <> 'PBEA') and {>>> Skyrim <<<} - (Signature <> 'PFLA') and {>>> Skyrim <<<} - (Signature <> 'PCON') and {>>> Skyrim <<<} - (Signature <> 'PBAR') and {>>> Skyrim <<<} - (Signature <> 'PHZD') {>>> Skyrim <<<} - then - Exit; - - SelfRef := Self; - DoInit; - - if not Supports(GetRecordBySignature('DATA'), IwbContainerElementRef, DataRec) then - Exit; - - if DataRec.ElementCount <> 2 then - Exit; - - with aPosition, (DataRec.Elements[0] as IwbContainerElementRef) do begin - if ElementCount <> 3 then - Exit; - - Elements[0].NativeValue := X; - Elements[1].NativeValue := Y; - Elements[2].NativeValue := Z; - end; - Result := True; -end; - -procedure TwbMainRecord.SetPrevEntry(const aEntry: IwbMainRecordEntry); -begin - Assert(mreHeader.mrehInUse); - Assert(mreGeneration = mreHeader.mrehGeneration); - mrePrev := Pointer(aEntry); -end; - -procedure TwbMainRecord.SetReferencesInjected(aValue: Boolean); -begin - if aValue then begin - Include(mrStates, mrsReferencesInjectedChecked); - Include(mrStates, mrsReferencesInjected); - end else begin - Exclude(mrStates, mrsReferencesInjectedChecked); - Exclude(mrStates, mrsReferencesInjected); - end; -end; - -function CompareReferencedByFile(Item1, Item2: Pointer): Integer; -begin - Result := CmpW32(IwbMainRecord(Item1)._File.LoadOrder, IwbMainRecord(Item2)._File.LoadOrder); -end; - -function CompareReferencedBy(Item1, Item2: Pointer): Integer; -begin - Result := CmpW32(IwbMainRecord(Item1).LoadOrderFormID , IwbMainRecord(Item2).LoadOrderFormID); - if Result = 0 then - Result := CompareReferencedByFile(Item1, Item2); -end; - -procedure TwbMainRecord.SortReferencedBy; -begin - Exclude(mrStates, mrsReferencedByUnsorted); - if Length(mrReferencedBy) > 1 then - wbMergeSort(@mrReferencedBy[0], Length(mrReferencedBy), CompareReferencedBy); -end; - -procedure TwbMainRecord.UpdateCellChildGroup; -var - OldTypeGroup : IwbGroupRecord; - OldChildGroup : IwbGroupRecord; - OldCellOwnerGroup : IwbGroupRecord; - NewTypeGroup : IwbGroupRecord; - TempGroup : IwbGroupRecord; - TempGroup2 : IwbGroupRecord; - NewChildGroup : IwbGroupRecord; - NewCellOwnerGroup : IwbGroupRecord; - CorrectGroupType : Integer; - i : Integer; - OldCell : IwbMainRecord; - NewCell : IwbMainRecord; - Worldspace : IwbMainRecord; - IsExterior : Boolean; - SelfRef : IwbElement; - Position : TwbVector; - GridCell : TwbGridCell; - SubBlock : TwbGridCell; - Block : TwbGridCell; - TempGridCell : TwbGridCell; - SubBlockLabel : Cardinal; - BlockLabel : Cardinal; -begin - SelfRef := Self as IwbElement; - - if not Supports(GetContainer, IwbGroupRecord, OldTypeGroup) then - raise Exception.Create(GetName + ' is not contained in a group.'); - if not (OldTypeGroup.GroupType in [8, 9, 10]) then - raise Exception.Create(GetName + ' is not contained in a group of type "Cell Persistent Childen", "Cell Temporary Children" or "Cell Visible Distant Children"'); - if not Supports(OldTypeGroup.Container, IwbGroupRecord, OldChildGroup) then - raise Exception.Create(OldTypeGroup.GetName + ' is not contained in a group'); - if not (OldChildGroup.GroupType in [6]) then - raise Exception.Create(OldTypeGroup.GetName + ' is not contained in a group of type "Cell Children"'); - - if GetIsPersistent then - CorrectGroupType := 8 - else if GetIsVisibleWhenDistant and not wbVWDInTemporary then - CorrectGroupType := 10 - else - CorrectGroupType := 9; - - if OldTypeGroup.GroupType = CorrectGroupType then - Exit; - - OldCell := OldChildGroup.ChildrenOf; - if not Assigned(OldCell) then - raise Exception.Create(OldChildGroup.GetName + ' can not find its CELL record'); - if not OldCell.ElementExists['DATA'] then - raise Exception.Create(OldCell.GetName + ' is missing its DATA subrecord'); - - i := OldCell.GetElementNativeValue('DATA'); - IsExterior := (i and 1) = 0; - if IsExterior then begin - if not Supports(OldCell.Container, IwbGroupRecord, OldCellOwnerGroup) then - raise Exception.Create(OldCell.GetName + ' is not contained in a group'); - if not (OldCellOwnerGroup.GroupType in [1, 5]) then - raise Exception.Create(OldCell.GetName + ' is not contained in a group of type "World Childen" or "Exterior Cell Sub-Block"'); - if (CorrectGroupType = 8) then begin - if OldCellOwnerGroup.GroupType <> 1 then begin - - if not Supports(OldCellOwnerGroup.Container, IwbGroupRecord, TempGroup) then - raise Exception.Create(OldCellOwnerGroup.GetName + ' is not contained in a group'); - if not (TempGroup.GroupType in [4]) then - raise Exception.Create(OldCellOwnerGroup.GetName + ' is not contained in a group of type "Exterior Cell Block"'); - - if not Supports(TempGroup.Container, IwbGroupRecord, NewCellOwnerGroup) then - raise Exception.Create(TempGroup.GetName + ' is not contained in a group'); - if not (NewCellOwnerGroup.GroupType in [1]) then - raise Exception.Create(TempGroup.GetName + ' is not contained in a group of type "World Childen"'); - - NewCell := nil; - for i := 0 to Pred(NewCellOwnerGroup.ElementCount) do - if Supports(NewCellOwnerGroup.Elements[i], IwbMainRecord, NewCell) then - if NewCell.Signature <> 'CELL' then - NewCell := nil - else - Break; - - if not Assigned(NewCell) then begin - Worldspace := NewCellOwnerGroup.ChildrenOf; - if not Assigned(Worldspace) then - raise Exception.Create(NewCellOwnerGroup.GetName + ' can not find its WRLD record'); - Worldspace := Worldspace.MasterOrSelf; - TempGroup := Worldspace.ChildGroup; - if not Assigned(TempGroup) then - raise Exception.Create(Worldspace.GetName + ' can not find its child group'); - - for i := 0 to Pred(TempGroup.ElementCount) do - if Supports(TempGroup.Elements[i], IwbMainRecord, NewCell) then - if NewCell.Signature <> 'CELL' then - NewCell := nil - else - Break; - - if Assigned(NewCell) then - NewCell := wbCopyElementToFile(NewCell, GetFile, False, True, '', '', '') as IwbMainRecord; - end; - - if not Assigned(NewCell) then - raise Exception.Create('Could not determine CELL for persistent exterior references'); - - NewChildGroup := NewCell.EnsureChildGroup; - end else - NewChildGroup := OldChildGroup; - end else begin - if OldCellOwnerGroup.GroupType <> 5 then begin - - if not GetPosition(Position) then - raise Exception.Create('Could not determine position of ' + GetName); - - GridCell := wbPositionToGridCell(Position); - SubBlock := wbSubBlockFromGridCell(GridCell); - Block := wbBlockFromSubBlock(SubBlock); - - SubBlockLabel := wbGridCellToGroupLabel(SubBlock); - BlockLabel := wbGridCellToGroupLabel(Block); - - NewCell := nil; - TempGroup := nil; - for i := 0 to Pred(OldCellOwnerGroup.ElementCount) do - if Supports(OldCellOwnerGroup.Elements[i], IwbGroupRecord, TempGroup) then - if (TempGroup.GroupType = 4) and (TempGroup.GroupLabel = BlockLabel) then - Break - else - TempGroup := nil; - - if Assigned(TempGroup) then begin - NewCellOwnerGroup := nil; - for i := 0 to Pred(TempGroup.ElementCount) do - if Supports(TempGroup.Elements[i], IwbGroupRecord, NewCellOwnerGroup) then - if (NewCellOwnerGroup.GroupType = 5) and (NewCellOwnerGroup.GroupLabel = SubBlockLabel) then - Break - else - NewCellOwnerGroup := nil; - if Assigned(NewCellOwnerGroup) then - for i := 0 to Pred(NewCellOwnerGroup.ElementCount) do - if Supports(NewCellOwnerGroup.Elements[i], IwbMainRecord, NewCell) then - if NewCell.GetGridCell(TempGridCell) and (GridCell.x = TempGridCell.x) and (GridCell.y = TempGridCell.y) then - Break - else - NewCell := nil; - end; - - if not Assigned(NewCell) then begin - Worldspace := OldCellOwnerGroup.ChildrenOf; - if not Assigned(Worldspace) then - raise Exception.Create(OldCellOwnerGroup.GetName + ' can not find its WRLD record'); - Worldspace := Worldspace.MasterOrSelf; - TempGroup2 := Worldspace.ChildGroup; - if not Assigned(TempGroup2) then - raise Exception.Create(Worldspace.GetName + ' can not find its child group'); - - TempGroup := nil; - for i := 0 to Pred(TempGroup2.ElementCount) do - if Supports(TempGroup2.Elements[i], IwbGroupRecord, TempGroup) then - if (TempGroup.GroupType = 4) and (TempGroup.GroupLabel = BlockLabel) then - Break - else - TempGroup := nil; - - if Assigned(TempGroup) then begin - NewCellOwnerGroup := nil; - for i := 0 to Pred(TempGroup.ElementCount) do - if Supports(TempGroup.Elements[i], IwbGroupRecord, NewCellOwnerGroup) then - if (NewCellOwnerGroup.GroupType = 5) and (NewCellOwnerGroup.GroupLabel = SubBlockLabel) then - Break - else - NewCellOwnerGroup := nil; - if Assigned(NewCellOwnerGroup) then - for i := 0 to Pred(NewCellOwnerGroup.ElementCount) do - if Supports(NewCellOwnerGroup.Elements[i], IwbMainRecord, NewCell) then - if NewCell.GetGridCell(TempGridCell) and (GridCell.x = TempGridCell.x) and (GridCell.y = TempGridCell.y) then - Break - else - NewCell := nil; - end; - - if Assigned(NewCell) then - NewCell := wbCopyElementToFile(NewCell, GetFile, False, True, '', '', '') as IwbMainRecord; - end; - - if not Assigned(NewCell) then - raise Exception.Create('Could not determine CELL for persistent exterior references'); - - NewChildGroup := NewCell.EnsureChildGroup; - end else - NewChildGroup := OldChildGroup; - end; - end else - NewChildGroup := OldChildGroup; - - if not Assigned(NewChildGroup) then - raise Exception.Create('Could not determine new CELL child group'); - - NewTypeGroup := nil; - for i := 0 to Pred(NewChildGroup.ElementCount) do - if Supports(NewChildGroup.Elements[i], IwbGroupRecord, NewTypeGroup) then - if NewTypeGroup.GroupType = CorrectGroupType then - Break - else - NewTypeGroup := nil; - - if not Assigned(NewTypeGroup) then - NewTypeGroup := TwbGroupRecord.Create(NewChildGroup, CorrectGroupType, NewChildGroup.ChildrenOf); - - OldTypeGroup.RemoveElement(SelfRef); - if OldTypeGroup.ElementCount = 0 then - OldTypeGroup.Remove - else - (OldTypeGroup as IwbGroupRecordInternal).SetModified(True); - NewTypeGroup.AddElement(SelfRef); - (NewTypeGroup as IwbGroupRecordInternal).SetModified(True); - (NewTypeGroup as IwbGroupRecordInternal).Sort; - if OldChildGroup.ElementCount = 0 then - OldChildGroup.Remove - else - (OldChildGroup as IwbGroupRecordInternal).SetModified(True); -end; - -procedure TwbMainRecord.UpdateInteriorCellGroup; -var - Container : IwbContainer; - - SubBlockGroup : IwbGroupRecord; - BlockGroup : IwbGroupRecord; - TopGroup : IwbGroupRecord; - - NewSubBlockGroup : IwbGroupRecord; - NewBlockGroup : IwbGroupRecord; - - ChildGroup : IwbGroupRecord; - - i: Integer; - s : string; - - Block : Integer; - SubBlock : Integer; - - SelfRef : IwbElement; -begin - SelfRef := Self as IwbElement; - - if GetSignature <> 'CELL' then - Exit; - if not GetElementExists('DATA') then - Exit; - i := GetElementNativeValue('DATA'); - if (i and 1) <> 1 then - Exit; - - Container := GetContainer; - - if not Supports(Container, IwbGroupRecord, SubBlockGroup) then - raise Exception.Create(GetName + ' is not contained in a group.'); - if not (SubBlockGroup.GroupType in [3]) then begin - if (SubBlockGroup.GroupType in [0]) and (TwbSignature(SubBlockGroup.GroupLabel) = 'CELL') then begin - TopGroup := SubBlockGroup; - SubBlockGroup := nil; - end else - raise Exception.Create(GetName + ' is not contained in a group of type "Interior Cell Sub-Block"'); - end else begin - if not Supports(SubBlockGroup.Container, IwbGroupRecord, BlockGroup) then - raise Exception.Create(SubBlockGroup.GetName + ' is not contained in a group.'); - if not (BlockGroup.GroupType in [2]) then - raise Exception.Create(GetName + ' is not contained in a group of type "Interior Cell Block"'); - - if not Supports(BlockGroup.Container, IwbGroupRecord, TopGroup) then - raise Exception.Create(TopGroup.GetName + ' is not contained in a group.'); - if not (TopGroup.GroupType in [0]) or (TwbSignature(TopGroup.GroupLabel) <> 'CELL') then - raise Exception.Create(GetName + ' is not contained in a group of type "Top CELL"'); - end; - - s := '00' + IntToStr(mrStruct.mrsFormID and Cardinal($00FFFFFF)); - i := Length(s); - if i > 2 then - System.Delete(s, 1, i - 2); - - Block := StrToInt(s[2]); - SubBlock := StrToInt(s[1]); - - NewBlockGroup := BlockGroup; - NewSubBlockGroup := SubBlockGroup; - - if not Assigned(NewBlockGroup) or (NewBlockGroup.GroupLabel <> Block) then begin - NewBlockGroup := nil; - NewSubBlockGroup := nil; - - for i := 0 to Pred(TopGroup.ElementCount) do - if Supports(TopGroup.Elements[i], IwbGroupRecord, NewBlockGroup) then - if NewBlockGroup.GroupLabel = Block then - Break - else - NewBlockGroup := nil; - - if not Assigned(NewBlockGroup) then begin - NewBlockGroup := TwbGroupRecord.Create(TopGroup, 2, Block); - (TopGroup as IwbGroupRecordInternal).SetModified(True); - (TopGroup as IwbGroupRecordInternal).Sort; - end; - end; - - if not Assigned(NewSubBlockGroup) or (NewSubBlockGroup.GroupLabel <> SubBlock) then begin - NewSubBlockGroup := nil; - - for i := 0 to Pred(NewBlockGroup.ElementCount) do - if Supports(NewBlockGroup.Elements[i], IwbGroupRecord, NewSubBlockGroup) then - if NewSubBlockGroup.GroupLabel = SubBlock then - Break - else - NewSubBlockGroup := nil; - - if not Assigned(NewSubBlockGroup) then begin - NewSubBlockGroup := TwbGroupRecord.Create(NewBlockGroup, 3, SubBlock); - (NewBlockGroup as IwbGroupRecordInternal).SetModified(True); - (NewBlockGroup as IwbGroupRecordInternal).Sort; - end; - end; - - if not Container.Equals(NewSubBlockGroup) then begin - - ChildGroup := mrGroup; - - Container.RemoveElement(SelfRef); - if Assigned(ChildGroup) then - Container.RemoveElement(ChildGroup); - - NewSubBlockGroup.AddElement(SelfRef); - if Assigned(ChildGroup) then - NewSubBlockGroup.AddElement(ChildGroup); - (NewSubBlockGroup as IwbGroupRecordInternal).SetModified(True); - (NewSubBlockGroup as IwbGroupRecordInternal).Sort; - - if Assigned(SubBlockGroup) then begin - if SubBlockGroup.ElementCount = 0 then begin - SubBlockGroup.Remove; - if Assigned(BlockGroup) then begin - if BlockGroup.ElementCount = 0 then begin - BlockGroup.Remove; - (TopGroup as IwbGroupRecordInternal).SetModified(True); - end else - (BlockGroup as IwbGroupRecordInternal).SetModified(True); - end; - end else - (SubBlockGroup as IwbGroupRecordInternal).SetModified(True); - end; - end; -end; - -procedure TwbMainRecord.UpdateRefs; -begin - if (csRefsBuild in cntStates) then - BuildRef; -end; - -procedure TwbMainRecord.WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); -var - CurrentPosition : Int64; - NewPosition : Int64; - DataSize : Cardinal; - MemoryStream : TMemoryStream; - mrs : TwbMainRecordStruct; -var - SelfRef : IwbContainerElementRef; -begin - if (esModified in eStates) or wbTestWrite then begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - CurrentPosition := aStream.Position; - - mrs := mrStruct^; -// mrs.mrsFlags2 := 0; - - aStream.WriteBuffer(mrs, wbSizeOfMainRecordStruct ); - - if wbForceNewHeader then - aStream.WriteBuffer(wbNewHeaderAddon, SizeOf(wbNewHeaderAddon) ); - - if mrStruct.mrsFlags.IsCompressed then begin - - MemoryStream := TMemoryStream.Create; - try - inherited WriteToStreamInternal(MemoryStream, aResetModified); - DataSize := MemoryStream.Size; - aStream.WriteBuffer(DataSize, SizeOf(DataSize)); - MemoryStream.Position := 0; - ZCompressStream(MemoryStream, aStream); - finally - FreeAndNil(MemoryStream); - end; - - end else - inherited; - - NewPosition := aStream.Position; - if wbForceNewHeader then - DataSize := (NewPosition - CurrentPosition) - wbSizeOfMainRecordStruct - SizeOf(wbNewHeaderAddon) - else - DataSize := (NewPosition - CurrentPosition) - wbSizeOfMainRecordStruct; - aStream.Position := CurrentPosition + 4; - aStream.WriteBuffer(DataSize, SizeOf(DataSize)); - aStream.Position := NewPosition; - - end else begin - CurrentPosition := aStream.Position; - aStream.WriteBuffer(dcBasePtr^, Cardinal(dcEndPtr) - Cardinal(dcBasePtr) ); - if CurrentPosition + wbSizeOfMainRecordStruct + mrStruct.mrsDataSize <> aStream.Position then - Assert(CurrentPosition + wbSizeOfMainRecordStruct + mrStruct.mrsDataSize <> aStream.Position); - end; - - Exclude(eStates, esUnsaved); - if aResetModified then begin - Exclude(eStates, esModified); - Exclude(eStates, esInternalModified); - end; -end; - -procedure TwbMainRecord.YouAreTheMaster(const aOverrides, aReferencedBy: TDynMainRecords); -var - i: Integer; - FileID: Integer; - _File: IwbFile; -begin - Assert(Length(aOverrides) > 0); - Assert(Equals(aOverrides[0])); - Assert(Assigned(mrMaster)); - Assert(Length(mrOverrides) = 0); - Assert(Length(mrReferencedBy) = 0); - - mrMaster := nil; - mrOverrides := Copy(aOverrides, 1, High(Integer)); - for i := Low(mrOverrides) to High(mrOverrides) do - (mrOverrides[i] as IwbMainRecordInternal).SetMaster(Self); - mrOverridesSorted := False; - - mrReferencedBy := aReferencedBy; - - for i := Low(mrReferencedBy) to High(mrReferencedBy) do - (mrReferencedBy[i] as IwbMainRecordInternal).SetReferencesInjected(True); - - FileID := GetFormID shr 24; - _File := GetFile; - Assert(FileID < _File.MasterCount); - - (_File.Masters[FileID] as IwbFileInternal).InjectMainRecord(Self); - Include(mrStates, mrsIsInjectedChecked); - Include(mrStates, mrsIsInjected); -end; - -procedure TwbMainRecord.YouAreTheMaster(const aOldMaster: IwbMainRecord; const aOverrides, aReferencedBy: TDynMainRecords); -var - i : Integer; -begin - Assert(not Assigned(mrMaster)); - Assert(Length(mrOverrides) = 0); - Assert(Length(mrReferencedBy) = 0); - - SetLength(mrOverrides, Succ(Length(aOverrides))); - mrOverrides[0] := aOldMaster; - for i := Low(aOverrides) to High(aOverrides) do - mrOverrides[Succ(i)] := aOverrides[i]; - - for i := Low(mrOverrides) to High(mrOverrides) do - (mrOverrides[i] as IwbMainRecordInternal).SetMaster(Self); - mrOverridesSorted := False; - - mrReferencedBy := aReferencedBy; - - for i := Low(mrReferencedBy) to High(mrReferencedBy) do - (mrReferencedBy[i] as IwbMainRecordInternal).SetReferencesInjected(False); - Exclude(mrStates, mrsIsInjectedChecked); -end; - -procedure TwbMainRecord.YouGotAMaster(const aMaster: IwbMainRecord); -begin - Assert(Assigned(aMaster)); - Assert(not Assigned(mrMaster)); - (aMaster as IwbMainRecordInternal).YouAreTheMaster(Self as IwbMainRecord, mrOverrides, mrReferencedBy); - Assert(aMaster.Equals(IwbElement(mrMaster))); - mrOverrides := nil; - mrReferencedBy := nil; - (aMaster._File as IwbFileInternal).RemoveInjectedMainRecord(Self); - Include(mrStates, mrsIsInjectedChecked); - Exclude(mrStates, mrsIsInjected); -end; - -{ TwbSubRecord } - -function TwbSubRecord.AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy: Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; -var - SelfRef : IwbContainerElementRef; - i : Integer; - s : string; - ArrayDef : IwbArrayDef; - StructDef : IwbStructDef; - IntegerDef : IwbIntegerDef; - FlagsDef : IwbFlagsDef; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be modified.'); - - SelfRef := Self as IwbContainerElementRef; - - DoInit; - - if Assigned(srValueDef) then begin - - case srValueDef.DefType of - dtRecord, dtSubRecord, dtSubRecordArray, dtSubRecordStruct: Assert(False); - dtArray: begin - - ArrayDef := srValueDef as IwbArrayDef; - - if srsSorted in srStates then begin - Assert(not (srsSortInvalid in srStates)); - if FindBySortKey(aElement.SortKey[False], False, i) then begin - Result := cntElements[i]; - if aDeepCopy then - Result.Assign(Low(Integer), aElement, False); - Exit; - end; - end; - - if srsSorted in srStates then - s := '' - else - s := '#' + IntToStr(Length(cntElements)); - - if not Supports(aElement, IwbStringListTerminator) then - if (csAsCreatedEmpty in cntStates) then begin - SetModified(True); - Assert(Length(cntElements)=1); - Result := cntElements[0]; - Exclude(cntStates, csAsCreatedEmpty); - try - Result.Assign(Low(Integer), aElement, not aDeepCopy); - except - Result := nil; - raise; - end; - end else case ArrayDef.Element.DefType of - dtArray: Result := TwbArray.Create(Self, ArrayDef.Element, aElement, not aDeepCopy, s); - dtStruct: Result := TwbStruct.Create(Self, ArrayDef.Element, aElement, not aDeepCopy, s); - dtStructChapter: Result := TwbChapter.Create(Self, ArrayDef.Element, aElement, not aDeepCopy, s); - dtUnion: Result := TwbUnion.Create(Self, ArrayDef.Element, aElement, not aDeepCopy, s); - else - Result := TwbValue.Create(Self, ArrayDef.Element, aElement, not aDeepCopy, s); - end; - - CheckCount; - CheckTerminator; - end; - dtStruct, dtStructChapter: begin - StructDef := srValueDef as IwbStructDef; - - Assert(aElement.SortOrder >= 0); - Assert(aElement.SortOrder < StructDef.MemberCount ); - Assert(Assigned(aElement.ValueDef)); - - Result := GetElementBySortOrder(aElement.SortOrder); - Assert(Assigned(Result)); - - Assert(StructDef.Members[aElement.SortOrder].CanAssign(Result, Low(Integer), aElement.ValueDef)); - - if not aDeepCopy then - if Supports(Result.ValueDef, IwbIntegerDef, IntegerDef) then - if Supports(IntegerDef.Formater[Result], IwbFlagsDef, FlagsDef) then - Exit(Result); - - Result.Assign(Low(Integer), aElement, not aDeepCopy); - end; - dtUnion: begin - inherited AddIfMissingInternal(aElement, aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); - end; - else - inherited AddIfMissingInternal(aElement, aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); - end; - - end else - inherited AddIfMissingInternal(aElement, aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); -end; - -function TwbSubRecord.AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; -var - Element : IwbElement; - ArrayDef : IwbArrayDef; - Container : IwbContainer; - s : string; - i : Integer; - SelfRef : IwbContainerElementRef; - p, q : Pointer; -begin - Result := nil; - - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be assigned.'); - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if Assigned(srValueDef) then begin - - case srValueDef.DefType of - dtRecord, dtSubRecord, dtSubRecordArray, dtSubRecordStruct: Assert(False); - dtArray: begin - - ArrayDef := srValueDef as IwbArrayDef; - - if (aIndex = Low(Integer)) and ArrayDef.CanAssign(Self, aIndex, aElement.ValueDef) then begin - - if aOnlySK then - Exit; - - Container := aElement as IwbContainer; - - if ArrayDef.IsVariableSize then begin - Assert(ArrayDef.ElementCount <= 0); - SetModified(True); - InvalidateStorage; - ReleaseElements; - dcDataStorage := nil; - dcDataBasePtr := @EmptyPtr; - dcDataEndPtr := @EmptyPtr; - Exclude(dcFlags, dcfStorageInvalid); - if ArrayDef.ElementCount < 0 then - RequestStorageChange(p, q, 4); - - for i := 0 to Pred(Container.ElementCount) do - Assign(i, Container.Elements[i], aOnlySK); - end else begin - Assert(Container.ElementCount = ArrayDef.ElementCount); - Assert(GetElementCount = ArrayDef.ElementCount); - - for i := 0 to Pred(Container.ElementCount) do - cntElements[i].Assign(Low(Integer), Container.Elements[i], aOnlySK); - end; - - end else begin - if (aIndex >= 0) and (ArrayDef.ElementCount <= 0) and ((aIndex = High(Integer)) or ArrayDef.Element.CanAssign(Self, Low(Integer), aElement.ValueDef)) then begin - {add one entry} - - if srsSorted in srStates then - s := '' - else - s := '#' + IntToStr(Length(cntElements)); - - if (csAsCreatedEmpty in cntStates) then begin - SetModified(True); - Assert(Length(cntElements)=1); - Result := cntElements[0]; - Exclude(cntStates, csAsCreatedEmpty); - try - Result.Assign(Low(Integer), aElement, aOnlySK); - except - Result := nil; - raise; - end; - end else begin - Element := nil; - if not Supports(aElement, IwbStringListTerminator) then - case ArrayDef.Element.DefType of - dtArray: Element := TwbArray.Create(Self, ArrayDef.Element, aElement, aOnlySK, s); - dtStruct: Element := TwbStruct.Create(Self, ArrayDef.Element, aElement, aOnlySK, s); - dtStructChapter: Element := TwbChapter.Create(Self, ArrayDef.Element, aElement, aOnlySK, s); - dtUnion: Element := TwbUnion.Create(Self, ArrayDef.Element, aElement, aOnlySK, s); - else - Element := TwbValue.Create(Self, ArrayDef.Element, aElement, aOnlySK, s); - end; - Result := Element; - end; - end; - end; - - CheckCount; - CheckTerminator; - end; - else - Result := inherited AssignInternal(aIndex, aElement, aOnlySK); - end; - - end else - if inherited CanAssignInternal(aIndex, aElement, False) then - Result := inherited AssignInternal(aIndex, aElement, aOnlySK); -end; - -procedure TwbSubRecord.BuildRef; -var - SelfRef: IwbElement; -begin - SelfRef := Self as IwbContainerElementRef; - - if Assigned(srDef) then begin - DoInit; - - if Assigned(srValueDef) then - srValueDef.BuildRef(GetDataBasePtr, dcDataEndPtr, Self); - end; - - inherited; -end; - -function TwbSubRecord.CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; -var - ArrayDef: IwbArrayDef; -begin - Result := False; - if not wbEditAllowed then - Exit; - - if Assigned(eContainer) then - if not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - - if aCheckDontShow and GetDontShow then - Exit; - - if srsIsArray in srStates then begin - ArrayDef := srValueDef as IwbArrayDef; - if not Assigned(aElement) then begin - if aIndex = High(Integer) then - Result := ArrayDef.ElementCount <= 0; - Exit; - end; - Result := - ArrayDef.CanAssign(Self, aIndex, aElement.ValueDef) or - ( (ArrayDef.ElementCount <= 0) and ArrayDef.Element.CanAssign(Self, Low(Integer), aElement.ValueDef) ); - end else begin - if not Assigned(aElement) then - Exit; - - Result := inherited CanAssignInternal(aIndex, aElement, aCheckDontShow); - if not Result and Assigned(srDef) then - Result := srDef.CanAssign(Self, aIndex, aElement.Def); - end; -end; - -function TwbSubRecord.CanContainFormIDs: Boolean; -begin - Result := Assigned(srDef) and srDef.CanContainFormIDs; -end; - -function TwbSubRecord.CanMoveElement: Boolean; -begin - Result := srStates * [srsIsArray, srsSorted] = [srsIsArray]; -end; - -function TwbSubRecord.CanElementReset: Boolean; -begin -// Result := inherited CanElementReset; - Result := cntElementRefs < 1; -end; - -procedure TwbSubRecord.CheckCount; -var - Count : Cardinal; - i : Integer; - UpdateCount : Integer; -begin - if not (srArraySizePrefix in [1, 2, 4]) then - Exit; - - if Assigned(dcDataBasePtr) then - case srArraySizePrefix of - 1: Count := PByte(dcDataBasePtr)^; - 2: Count := PWord(dcDataBasePtr)^; - 4: Count := PCardinal(dcDataBasePtr)^; - else - Count := 0; - end - else - Count := 0; - - if Count <> Length(cntElements) then begin - UpdateCount := eUpdateCount; - for i := 1 to UpdateCount do EndUpdate; - case srArraySizePrefix of - 1: PByte(GetDataBasePtr)^ := Length(cntElements); - 2: PWord(GetDataBasePtr)^ := Length(cntElements); - 4: PCardinal(GetDataBasePtr)^ := Length(cntElements); - end; - for i := 1 to UpdateCount do BeginUpdate; - end; -end; - -procedure TwbSubRecord.CheckTerminator; -var - i : Integer; - ArrayDef : IwbArrayDef; - StringDef : IwbStringDef; -begin - if not Supports(srValueDef, IwbArrayDef, ArrayDef) then - Exit; - if not ArrayDef.IsVariableSize then - Exit; - if ArrayDef.Element.DefType <> dtString then - Exit; - if (not Supports(ArrayDef.Element, IwbStringDef, StringDef)) or (StringDef.GetStringSize>0) then - Exit; - - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbStringListTerminator) then - Exit; - - SetModified(True); - InvalidateStorage; - TwbStringListTerminator.Create(Self); - if srsSorted in srStates then - Include(srStates, srsSortInvalid); -end; - -function Resolve(const aValueDef: IwbValueDef; aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): IwbValueDef; -var - Internal : IwbElementInternal; - UnionDef : IwbUnionDef; - CanDecide : Boolean; -begin - Result := aValueDef; - - Supports(aElement, IwbElementInternal, Internal); - CanDecide := False; - try - while Supports(Result, IwbUnionDef, UnionDef) do begin - CanDecide := CanDecide or (Assigned(Internal) and Internal.BeginDecide); - if CanDecide then - Result := UnionDef.Decide(aBasePtr,aEndPtr,aElement) - else - break; - end; - finally - if CanDecide then - Internal.EndDecide; - end; -end; - -function TwbSubRecord.CompareExchangeFormID(aOldFormID, aNewFormID: Cardinal): Boolean; -var - SelfRef : IwbContainerElementRef; - ResolvedDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - Result := False; - if not Assigned(srDef) then - Exit; - - DoInit; - - Result := inherited CompareExchangeFormID(aOldFormID, aNewFormID); - - ResolvedDef := Resolve(srValueDef, GetDataBasePtr, dcDataEndPtr, Self); - if Assigned(ResolvedDef) then - Result := ResolvedDef.CompareExchangeFormID(GetDataBasePtr, dcDataEndPtr, Self, aOldFormID, aNewFormID) or Result; -end; - -constructor TwbSubRecord.Create(const aContainer: IwbContainer; const aSubRecordDef: IwbSubRecordDef); -var - BasePtr : Pointer; - EndPtr : Pointer; - SaveAsCreatedEmpty : Boolean; - -begin - cntStates := []; - srDef := aSubRecordDef; - BasePtr := nil; - Create(aContainer, BasePtr, nil, nil); - - DoInit; - - SaveAsCreatedEmpty := (csAsCreatedEmpty in cntStates); - BasePtr := nil; - EndPtr := nil; - RequestStorageChange(BasePtr, EndPtr, GetDataSize); - SetToDefault; - - if SaveAsCreatedEmpty then - Include(cntStates, csAsCreatedEmpty); -end; - -destructor TwbSubRecord.Destroy; -begin - if not Assigned(dcEndPtr) and Assigned(dcBasePtr) then - FreeMem(dcBasePtr, SizeOf(TwbSubRecordHeaderStruct) ); - inherited; -end; - -function TwbSubRecord.DoCheckSizeAfterWrite: Boolean; -begin - Result := True; -end; - -procedure TwbSubRecord.DoInit; -begin - inherited; - if srStates * [srsSorted, srsSortInvalid] = [srsSorted, srsSortInvalid] then begin - if Length(cntElements) > 1 then - wbMergeSort(@cntElements[0], Length(cntElements), CompareSortKeys); - Exclude(srStates, srsSortInvalid); - end; -end; - -procedure TwbSubRecord.ElementChanged(const aElement: IwbElement; aContainer: Pointer); -begin - if srsSorted in srStates then - Include(srStates, srsSortInvalid); - inherited; -end; - -procedure TwbSubRecord.FindUsedMasters(aMasters: PwbUsedMasters); -var - SelfRef : IwbContainerElementRef; - ResolvedDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - - if not Assigned(srDef) then - Exit; - - DoInit; - - inherited FindUsedMasters(aMasters); - - ResolvedDef := Resolve(srValueDef, GetDataBasePtr, dcDataEndPtr, Self); - if Assigned(ResolvedDef) then - ResolvedDef.FindUsedMasters(GetDataBasePtr, dcDataEndPtr, Self, aMasters); -end; - -//var -// y: Integer; - -procedure TwbSubRecord.Init; -var - ValueDef : IwbValueDef; - BasePtr : Pointer; - Element : IwbElement; - HasUnusedData : Boolean; -begin - inherited; - - if GetSkipped then - Exit; - - if not Assigned(srDef) then - Exit; - - BasePtr := GetDataBasePtr; - ValueDef := Resolve(srDef.Value, BasePtr, dcDataEndPtr, Self); - srArraySizePrefix := 0; - - if Assigned(ValueDef) then - if ValueDef.Name = '' then begin - srValueDef := ValueDef; - case ValueDef.DefType of - dtArray: begin - Include(srStates, srsIsArray); - if ArrayDoInit(ValueDef, Self, BasePtr, dcDataEndPtr, srArraySizePrefix) then - Include(srStates, srsSorted); - end; - dtStruct, dtStructChapter: StructDoInit(ValueDef, Self, BasePtr, dcDataEndPtr); - dtUnion: begin - Include(srStates, srsIsUnion); - case UnionDoInit(ValueDef, Self, BasePtr, dcDataEndPtr) of - ufArray: Include(srStates, srsIsArray); - ufSortedArray: begin - Include(srStates, srsIsArray); - Include(srStates, srsSorted); - end; - ufFlags: begin - Include(srStates, srsIsFlags); - Include(srStates, srsSorted); - end; - end; - end; - else - if ValueDoInit(ValueDef, Self, BasePtr, dcDataEndPtr, Self) then begin - Include(srStates, srsIsFlags); - Include(srStates, srsSorted); - end; - end; - // flags are already created in the right sort order - if srStates * [srsSorted, srsIsFlags] = [srsSorted] then - Include(srStates, srsSortInvalid); - end else - case ValueDef.DefType of - dtArray: Element := TwbArray.Create(Self, BasePtr, dcDataEndPtr, ValueDef, ''); - dtStruct: Element := TwbStruct.Create(Self, BasePtr, dcDataEndPtr, ValueDef, ''); - dtStructChapter: Element := TwbChapter.Create(Self, BasePtr, dcDataEndPtr, ValueDef, ''); - dtUnion: Element := TwbUnion.Create(Self, BasePtr, dcDataEndPtr, ValueDef, ''); - else - Element := TwbValue.Create(Self, BasePtr, dcDataEndPtr, ValueDef, ''); - end; - - if Assigned(dcDataEndPtr) and Assigned(BasePtr) and (BasePtr <> dcDataEndPtr) then begin - HasUnusedData := not SameText(ValueDef.Name, 'Unused'); - if HasUnusedData and (ValueDef.DefType = dtString) then begin - HasUnusedData := False; - while Cardinal(BasePtr) < Cardinal(dcDataEndPtr) do begin - if PAnsiChar(BasePtr)^ <> #0 then begin - HasUnusedData := True; - Break; - end; - Inc(PByte(BasePtr)); - end; - end; - if HasUnusedData then begin - if wbReportMode then - srDef.HasUnusedData; - {$IFDEF DBGSUBREC} - if Assigned(wbProgressCallback) then - wbProgressCallback(''); - {$ENDIF} - end; - end; - - srDef.AfterLoad(Self); -end; - -function TwbSubRecord.GetCheck: string; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - Result := ''; - - if not Assigned(srDef) then - Exit; - DoInit; - - if Assigned(srValueDef) then - Result := srValueDef.Check(GetDataBasePtr, dcDataEndPtr, Self); -end; - -function TwbSubRecord.GetDataPrefixSize: Integer; -begin - Result := srArraySizePrefix; -end; - -function TwbSubRecord.GetDataSize: Integer; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - - if not Assigned(dcDataBasePtr) and Assigned(srValueDef) and not (dcfStorageInvalid in dcFlags) then begin - Result := srValueDef.DefaultSize[nil, nil, Self]; - Assert(Result <> Cardinal(High(Integer))); - end else - Result := inherited GetDataSize; -end; - -function TwbSubRecord.GetDef: IwbNamedDef; -begin - Result := srDef; -end; - -function TwbSubRecord.GetDisplayName: string; -var - s : string; - SelfRef : IwbContainerElementRef; - ValueDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - - Result := inherited GetName; - - ValueDef := Resolve(srValueDef, GetDataBasePtr, GetDataEndPtr, Self); - - if Assigned(ValueDef) then begin - s := ValueDef.Name; - if s <> '' then begin - Result := Result + ' - ' + s; - Exit; - end; - end; - - if not Assigned(srDef) then - Exit; - - Result := Result + ' - ' + srDef.GetName; -end; - -function TwbSubRecord.GetEditValue: string; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - Result := ''; - - if not Assigned(srDef) then - Exit; - DoInit; - - if Assigned(srValueDef) then - Result := srValueDef.EditValue[GetDataBasePtr, dcDataEndPtr, Self] - else - Result := ''; -end; - -function TwbSubRecord.GetElementType: TwbElementType; -begin - Result := etSubRecord; -end; - -function TwbSubRecord.GetIsEditable: Boolean; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - Result := wbIsInternalEdit; - if Result then - Exit; - - if Assigned(eContainer) and not IwbContainer(eContainer).IsElementEditable(SelfRef) then - Exit; - - if not Assigned(srDef) then - Exit; - DoInit; - - Result := Assigned(srValueDef) and - srValueDef.IsEditable[GetDataBasePtr, dcDataEndPtr, Self]; -end; - -function TwbSubRecord.GetIsInSK(aIndex: Integer): Boolean; -var - SelfRef : IwbContainerElementRef; - HasSortKey : IwbHasSortKeyDef; -begin - Result := False; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if not Supports(srValueDef, IwbHasSortKeyDef, HasSortKey) then - Exit; - - Result := HasSortKey.IsInSK(aIndex); -end; - -function TwbSubRecord.GetLinksTo: IwbElement; -var - SelfRef: IwbContainerElementRef; -begin - Result := nil; - SelfRef := Self as IwbContainerElementRef; - DoInit; - if not Assigned(srValueDef) then - Exit; - Result := srValueDef.LinksTo[dcDataBasePtr, dcDataEndPtr, Self]; -end; - -function TwbSubRecord.GetName: string; -begin - Result := inherited GetName; - - if not Assigned(srDef) then - Exit; - - Result := Result + ' - ' + srDef.GetName; -end; - -function TwbSubRecord.GetNativeValue: Variant; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - Result := ''; - - if not Assigned(srDef) then - Exit; - DoInit; - - if Assigned(srValueDef) then - Result := srValueDef.NativeValue[GetDataBasePtr, dcDataEndPtr, Self] - else - Result := Null; -end; - -function TwbSubRecord.GetSorted: Boolean; -var - EmptyDef : IwbEmptyDef; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - if not Assigned(srValueDef) then - DoInit; - - Result := (srsSorted in srStates) or - (Supports(Resolve(srValueDef, GetDataBasePtr, GetDataEndPtr, Self), IwbEmptyDef, EmptyDef) and EmptyDef.Sorted); -end; - -function TwbSubRecord.GetSortKeyInternal(aExtended: Boolean): string; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - Result := GetSignature; - - if not Assigned(srDef) then - Exit; - DoInit; - - if Assigned(srValueDef) then - Result := srValueDef.ToSortKey(GetDataBasePtr, dcDataEndPtr, Self, aExtended) - else - Result := inherited GetSortKeyInternal(aExtended); -end; - -function TwbSubRecord.GetSubRecordHeaderSize: Integer; -begin - if Assigned(dcBasePtr) then - Result := srStruct.srsDataSize - else - Result := 0; -end; - -function TwbSubRecord.GetValue: string; -var -// i : Integer; -// j : Int64; - SelfRef : IwbContainerElementRef; -var - Def: IwbDef; -begin - if wbReportMode then begin - Def := GetValueDef; - if Assigned(Def) then - Def.Used; - Def := GetDef; - if Assigned(Def) then - Def.Used; - end; - - SelfRef := Self as IwbContainerElementRef; - Result := ''; - - if not Assigned(srDef) then - Exit; - DoInit; - - if Assigned(srValueDef) then - Result := srValueDef.ToString(GetDataBasePtr, dcDataEndPtr, Self); -end; - -function TwbSubRecord.GetValueDef: IwbValueDef; -var - SelfRef : IwbContainerElementRef; -begin - if not Assigned(srValueDef) or ((srsIsUnion in srStates) and not (csInit in cntStates)) then begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - end; - Result := srValueDef; -end; - -procedure TwbSubRecord.InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); -var - SizeNeeded : Cardinal; - SizeAvailable : Cardinal; - BasePtr : Pointer; -begin - Assert(Assigned(dcBasePtr)); - Assert(Assigned(dcEndPtr)); - - SizeNeeded := SizeOf(TwbSubRecordHeaderStruct); - SizeAvailable := Cardinal( aEndPtr ) - Cardinal( aBasePtr ); - Assert( SizeAvailable >= SizeNeeded ); - - BasePtr := aBasePtr; - Inc(PByte(aBasePtr), SizeNeeded ); - inherited; - - Assert(srStruct.srsDataSize = Cardinal( dcDataEndPtr ) - Cardinal( dcDataBasePtr )); - - dcBasePtr := BasePtr; - dcEndPtr := dcDataEndPtr; -end; - -procedure TwbSubRecord.InitDataPtr; -var - lDataSize : Cardinal; - LastRecord : IwbElement; - Container : IwbContainer; -begin - if Assigned(dcBasePtr) then begin - dcDataBasePtr := Pointer( Cardinal( dcBasePtr ) + SizeOf(TwbSubRecordHeaderStruct) ); - - lDataSize := srStruct.srsDataSize; - - if lDataSize = 0 then begin - Container := GetContainer; - if Assigned(Container) and (Container.ElementCount >= 2) then begin - LastRecord := Container.Elements[Container.ElementCount - 2]; - if Assigned(LastRecord) and (LastRecord.ElementType = etSubRecord) then - with LastRecord as IwbSubRecord do - if Signature = 'XXXX' then begin - lDataSize := PCardinal(DataBasePtr)^; - Container.RemoveElement(Container.ElementCount - 2); - end; - end; - end; - - dcDataEndPtr := Pointer( Cardinal( dcDataBasePtr ) + lDataSize ); - dcEndPtr := dcDataEndPtr; - end else begin - GetMem(dcBasePtr, SizeOf(TwbSubRecordHeaderStruct) ); - if Assigned(srDef) then - srStruct.srsSignature := srDef.DefaultSignature - else - srStruct.srsSignature := NONE; - end; -end; - -function TwbSubRecord.IsElementRemoveable(const aElement: IwbElement): Boolean; -begin - Result := IsElementEditable(aElement) - and (srsIsArray in srStates) - and Assigned(srValueDef) - and ((srValueDef as IwbArrayDef).ElementCount <= 0) and (Length(cntElements)>1); -end; - -function TwbSubRecord.IsFlags: Boolean; -begin - Result := srsIsFlags in srStates; -end; - -procedure TwbSubRecord.MasterCountUpdated(aOld, aNew: Byte); -var - SelfRef : IwbContainerElementRef; - ResolvedDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - - if not Assigned(srDef) then - Exit; - - DoInit; - - inherited MasterCountUpdated(aOld, aNew); - - ResolvedDef := Resolve(srValueDef, GetDataBasePtr, dcDataEndPtr, Self); - if Assigned(ResolvedDef) then - ResolvedDef.MasterCountUpdated(GetDataBasePtr, dcDataEndPtr, Self, aOld, aNew); -end; - -procedure TwbSubRecord.MasterIndicesUpdated(const aOld, aNew: TBytes); -var - SelfRef : IwbContainerElementRef; - ResolvedDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - - if not Assigned(srDef) then - Exit; - - DoInit; - - inherited MasterIndicesUpdated(aOld, aNew); - - ResolvedDef := Resolve(srValueDef, GetDataBasePtr, dcDataEndPtr, Self); - if Assigned(ResolvedDef) then - ResolvedDef.MasterIndicesUpdated(GetDataBasePtr, dcDataEndPtr, Self, aOld, aNew); -end; - -procedure TwbSubRecord.MergeStorageInternal(var aBasePtr: Pointer; aEndPtr: Pointer); -var - SizeNeeded : Cardinal; - SizeAvailable : Cardinal; - BasePtr : Pointer; -begin - Assert(Assigned(dcBasePtr)); - SizeNeeded := SizeOf(TwbSubRecordHeaderStruct); - SizeAvailable := Cardinal( aEndPtr ) - Cardinal( aBasePtr ); - Assert( SizeAvailable >= SizeNeeded ); - - BasePtr := aBasePtr; - Move(dcBasePtr^, aBasePtr^, SizeNeeded); - Inc(PByte(aBasePtr), SizeNeeded ); - inherited; - - if not Assigned(dcEndPtr) then - FreeMem(dcBasePtr, SizeNeeded); - - dcBasePtr := BasePtr; - dcEndPtr := dcDataEndPtr; - srStruct.srsDataSize := Cardinal( dcDataEndPtr ) - Cardinal( dcDataBasePtr ); -end; - -procedure TwbSubRecord.PrepareSave; -begin - if wbDelayLoadRecords then - if not (esModified in eStates) then - Exit; - - CheckCount; - CheckTerminator; - inherited; - UpdateStorageFromElements; -end; - -function TwbSubRecord.RemoveInjected(aCanRemove: Boolean): Boolean; -var - i : Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Result := False; - if {(GetSignature = 'PTDT') or} (GetSignature = 'PLDT') then begin - Assert(GetElementCount = 3); - Result := GetElement(1).ReferencesInjected; - if Result then begin - GetElement(0).EditValue := '2'; - GetElement(1).EditValue := '00000000'; - Result := False; - end; - end else begin - for i := High(cntElements) downto Low(cntElements) do - if cntElements[i].CanContainFormIDs then begin - Result := cntElements[i].RemoveInjected(True) or Result; - if Result and aCanRemove then - Break; - end; - end; - if Result and aCanRemove and GetIsRemoveable then begin - Result := False; - Remove; - end; -end; - -procedure TwbSubRecord.Reset; -begin - ReleaseElements; - srValueDef := nil; - srStates := srStates - [srsIsArray, srsIsFlags, srsSorted, srsSortInvalid]; - inherited; -end; - -procedure TwbSubRecord.ScanData; -begin - { nothing } -end; - -procedure TwbSubRecord.SetDef(const aDef: IwbSubRecordDef); -begin - srDef := aDef; - DoReset(True); -end; - -procedure TwbSubRecord.SetEditValue(const aValue: string); -var - SelfRef : IwbContainerElementRef; - OldValue, NewValue: Variant; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be edited.'); - - SelfRef := Self as IwbContainerElementRef; - if not Assigned(srDef) then - if aValue <> '' then - raise Exception.Create(GetName + ' can not be edited') - else - Exit; - - DoInit; - - if GetEditValue <> aValue then begin - if Assigned(srValueDef) then begin - OldValue := GetNativeValue; - srValueDef.EditValue[GetDataBasePtr, dcDataEndPtr, Self] := aValue; - NewValue := GetNativeValue; - DoAfterSet(OldValue, NewValue); - end else - raise Exception.Create(GetName + ' can not be edited'); - if (srsIsFlags in srStates) and (csInit in cntStates) then begin - Reset; - Init; - end; - NotifyChanged(eContainer); - end; -end; - -procedure TwbSubRecord.SetModified(aValue: Boolean); -begin - inherited; - if aValue and (srsSorted in srStates) then - Include(srStates, srsSortInvalid); -end; - -procedure TwbSubRecord.SetNativeValue(const aValue: Variant); -var - OldValue, NewValue: Variant; - SelfRef : IwbContainerElementRef; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be edited.'); - - SelfRef := Self as IwbContainerElementRef; - if not Assigned(srDef) then - raise Exception.Create(GetName + ' can not be edited'); - - DoInit; - - if Assigned(srValueDef) then begin - OldValue := GetNativeValue; - srValueDef.NativeValue[GetDataBasePtr, dcDataEndPtr, Self] := aValue; - NewValue := GetNativeValue; - DoAfterSet(OldValue, NewValue); - end else - raise Exception.Create(GetName + ' can not be edited'); - if (srsIsFlags in srStates) and (csInit in cntStates) then begin - Reset; - Init; - end; - NotifyChanged(eContainer); -end; - -procedure TwbSubRecord.SetToDefaultInternal; -var - SelfRef: IwbContainerElementRef; - BasePtr, EndPtr: Pointer; -begin - SelfRef := Self as IwbContainerElementRef; - - if csInit in cntStates then - DoReset(True); - BasePtr := nil; - EndPtr := nil; - dcDataBasePtr := nil; - dcDataEndPtr := nil; - dcDataStorage := nil; - DoInit; - if Assigned(srValueDef) then - RequestStorageChange(BasePtr, EndPtr, srValueDef.DefaultSize[nil, nil, Self]); - inherited; -end; - -function TwbSubRecord.srStruct: PwbSubRecordHeaderStruct; -begin - Result := PwbSubRecordHeaderStruct(dcBasePtr); -end; - -procedure TwbSubRecord.WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); -var - CurrentPosition : Int64; - NewPosition : Int64; - BigDataSize : Cardinal; - SubHeader : TwbSubRecordHeaderStruct; - SelfRef : IwbContainerElementRef; -begin - if (esModified in eStates) or wbTestWrite or (srStruct.srsDataSize = 0) then begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - BigDataSize := GetDataSize; - if BigDataSize > High(Word) then begin - SubHeader.srsSignature := 'XXXX'; - SubHeader.srsDataSize := SizeOf(Cardinal); - aStream.WriteBuffer(SubHeader, SizeOf(TwbSubRecordHeaderStruct) ); - aStream.WriteBuffer(BigDataSize, SizeOf(BigDataSize) ); - SubHeader.srsSignature := srStruct.srsSignature; - SubHeader.srsDataSize := 0; - end else begin - SubHeader.srsSignature := srStruct.srsSignature; - SubHeader.srsDataSize := BigDataSize; - end; - - aStream.WriteBuffer(SubHeader, SizeOf(TwbSubRecordHeaderStruct) ); - CurrentPosition := aStream.Position; - inherited; - NewPosition := aStream.Position; - if BigDataSize <> NewPosition - CurrentPosition then - Assert(BigDataSize = NewPosition - CurrentPosition ); - - end else begin - aStream.WriteBuffer(dcBasePtr^, SizeOf(TwbSubRecordHeaderStruct) ); - CurrentPosition := aStream.Position; - inherited; - if CurrentPosition + srStruct.srsDataSize <> aStream.Position then - Assert(CurrentPosition + srStruct.srsDataSize = aStream.Position); - end; - - Exclude(eStates, esUnsaved); - if aResetModified then begin - Exclude(eStates, esModified); - Exclude(eStates, esInternalModified); - end; -end; - -{ TwbGroupRecord } - -function TwbGroupRecord.Add(const aName: string; aSilent: Boolean): IwbElement; -var - Signature : TwbSignature; - FormID : Cardinal; - _File : IwbFile; - MainRecord: IwbMainRecord; - IsInjected: Boolean; - Group : IwbGroupRecord; - i : Integer; - - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - Result := nil; - if Length(aName) < 4 then - Exit; - Signature := StrToSignature(aName); - - case grStruct.grsGroupType of - 0: if Signature <> TwbSignature(grStruct.grsLabel) then - Exit; - 1: if (Signature <> 'ROAD') and - (Signature <> 'CELL') then - Exit; - 7: if (Signature <> 'INFO') then - Exit; - 6: begin - Group := nil; - for i := 0 to GetElementCount do - if Supports(GetElement(i), IwbGroupRecord, Group) then - if (Group.GroupType = 9) and (Group.GroupLabel = GetGroupLabel) then - Break - else - Group := nil; - if not Assigned(Group) then - Group := TwbGroupRecord.Create(Self, 9, GetGroupLabel); - - Result := Group.Add(aName, aSilent); - Exit; - end; - 8: if (Signature <> 'REFR') and - (Signature <> 'ACRE') and - (Signature <> 'PGRE') and - (Signature <> 'PMIS') and - (Signature <> 'PARW') and {>>> Skyrim <<<} - (Signature <> 'PBEA') and {>>> Skyrim <<<} - (Signature <> 'PFLA') and {>>> Skyrim <<<} - (Signature <> 'PCON') and {>>> Skyrim <<<} - (Signature <> 'PBAR') and {>>> Skyrim <<<} - (Signature <> 'PHZD') and {>>> Skyrim <<<} - (Signature <> 'ACHR') then - Exit; - 9: if (Signature <> 'LAND') and - (Signature <> 'PGRD') and - (Signature <> 'NAVM') and - (Signature <> 'REFR') and - (Signature <> 'PGRE') and - (Signature <> 'PMIS') and - (Signature <> 'PARW') and {>>> Skyrim <<<} - (Signature <> 'PBEA') and {>>> Skyrim <<<} - (Signature <> 'PFLA') and {>>> Skyrim <<<} - (Signature <> 'PCON') and {>>> Skyrim <<<} - (Signature <> 'PBAR') and {>>> Skyrim <<<} - (Signature <> 'PHZD') and {>>> Skyrim <<<} - (Signature <> 'ACRE') and - (Signature <> 'ACHR') then - Exit; - 10: if (not wbVWDAsQuestChildren and (Signature <> 'REFR')) or - (wbVWDAsQuestChildren and - not ((Signature = 'REFR') or (Signature = 'DLBR') or (Signature = 'DIAL') or (Signature = 'SCEN'))) - then - Exit; - else - Exit; - end; - - _File := GetFile; - if not Assigned(_File) then - Exit; - - if aSilent then - FormID := _File.NewFormID - else - FormID := _File.LoadOrderFormIDtoFileFormID(wbGetFormID(Self)); - if FormID = 0 then - Exit; - - IsInjected := False; - MainRecord := _File.RecordByFormID[FormID, True]; - if Assigned(MainRecord) then begin - if _File.Equals(MainRecord._File) then - raise Exception.Create('FormID ['+IntToHex64(FormID, 8)+'] is already defined in file "'+_File.Name+'"'); - - IsInjected := (FormID shr 24) = Cardinal(_File.MasterCount); - - if MainRecord.Signature <> Signature then - raise Exception.Create('Existing record '+MainRecord.Name+' has different signature'); - end; - - Result := TwbMainRecord.Create(Self, Signature, FormID); - if IsInjected then - (MainRecord as IwbMainRecordInternal).YouGotAMaster(Result as IwbMainRecord); - if csRefsBuild in _File.ContainerStates then - Result.BuildRef; -end; - -function RemovePrefix(const s, aPrefix: string): string; -begin - if SameText(Copy(s, 1, Length(aPrefix)), aPrefix) then - Result := Copy(s, Succ(Length(aPrefix)), High(Integer)) - else - Result := s; -end; - -procedure TwbGroupRecord.AddElement(const aElement: IwbElement); -var - DialGroup : IwbGroupRecord; - Container : IwbContainer; - DialRec : IwbMainRecord; - i : Integer; -begin - if esUnsaved in aElement.ElementStates then // Let's not penalised too much loading time. - if ((TwbSignature(grStruct.grsLabel) = 'DIAL') or wbVWDAsQuestChildren) then // Issue 86: https://code.google.com/p/skyrim-plugin-decoding-project/issues/detail?id=86 - if Supports(aElement, IwbGroupRecord, DialGroup) then // The DIAL GRUP must immediatly follow corresponding DIAL MainRecord. - if DialGroup.GroupType = 7 then // Let's hope nobody messes up the groupType - if Supports(Self, IwbContainer, Container) then - if Container.ElementCount > 0 then - for i := 0 to Pred(Container.ElementCount) - 1 do // If we are reading the plugins and at the end don't bother moving data around. - if Supports(Container.Elements[i], IwbMainRecord, DialRec) then - if DialRec.Signature = 'DIAL' then - if DialRec.FormID = DialGroup.GroupLabel then begin - InsertElement(i+1, aElement); - Exit; - end; - inherited; -end; - -function TwbGroupRecord.AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; -var - MainRecord : IwbMainRecord; - MainRecord2 : IwbMainRecord; - FormID : Cardinal; - i : Integer; - SelfRef : IwbContainerElementRef; - s : string; - GroupRecord : IwbGroupRecord; - GroupRecord2 : IwbGroupRecord; -begin - Result := nil; - SelfRef := Self as IwbContainerElementRef; - case grStruct.grsGroupType of - 0: begin - if TwbSignature(grStruct.grsLabel) = 'DIAL' then begin - if Supports(aElement, IwbGroupRecord, GroupRecord) then begin - if GroupRecord.GroupType <> 7 then - raise Exception.Create('Can''t add '+GroupRecord.Name+' to top level group with signature ' + TwbSignature(grStruct.grsLabel)); - MainRecord := GroupRecord.ChildrenOf; - if not Assigned(MainRecord) then - raise Exception.Create('Can''t find record for '+ GroupRecord.Name); - MainRecord := MainRecord.HighestOverrideOrSelf[GetFile.LoadOrder]; - MainRecord := AddIfMissingInternal(MainRecord, aAsNew, True, aPrefixRemove, aPrefix, aSuffix) as IwbMainRecord; - Assert(Assigned(MainRecord)); - Result := MainRecord.ChildGroup; - if not Assigned(Result) then - Result := TwbGroupRecord.Create(Self, 7, MainRecord); - - GroupRecord2 := Result as IwbGroupRecord; - if aDeepCopy then - for i := 0 to Pred(GroupRecord.ElementCount) do - GroupRecord2.AddIfMissing(GroupRecord.Elements[i], aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); - - Exit; - end; - end else if TwbSignature(grStruct.grsLabel) = 'CELL' then begin - if Supports(aElement, IwbGroupRecord, GroupRecord) then begin - if GroupRecord.GroupType <> 2 then - raise Exception.Create('Can''t add '+GroupRecord.Name+' to top level group with signature ' + TwbSignature(grStruct.grsLabel)); - if GroupRecord.GroupLabel > 9 then - raise Exception.Create('Can''t add '+GroupRecord.Name+' to top level group with signature ' + TwbSignature(grStruct.grsLabel)); - for i := 0 to Pred(GetElementCount) do - if Supports(GetElement(i), IwbGroupRecord, GroupRecord2) then begin - if (GroupRecord2.GroupType = 2) and (GroupRecord2.GroupLabel = GroupRecord.GroupLabel) then begin - Result := GroupRecord2; - break; - end; - end; - if not Assigned(Result) then - Result := TwbGroupRecord.Create(Self, 2, GroupRecord.GroupLabel); - - GroupRecord2 := Result as IwbGroupRecord; - if aDeepCopy then - for i := 0 to Pred(GroupRecord.ElementCount) do - GroupRecord2.AddIfMissing(GroupRecord.Elements[i], aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); - - Exit; - end; - end else if TwbSignature(grStruct.grsLabel) = 'WRLD' then begin - if Supports(aElement, IwbGroupRecord, GroupRecord) then begin - if GroupRecord.GroupType <> 1 then - raise Exception.Create('Can''t add '+GroupRecord.Name+' to top level group with signature ' + TwbSignature(grStruct.grsLabel)); - MainRecord := GroupRecord.ChildrenOf; - if not Assigned(MainRecord) then - raise Exception.Create('Can''t find record for '+ GroupRecord.Name); - MainRecord := MainRecord.HighestOverrideOrSelf[GetFile.LoadOrder]; - MainRecord := AddIfMissingInternal(MainRecord, aAsNew, True, aPrefixRemove, aPrefix, aSuffix) as IwbMainRecord; - Assert(Assigned(MainRecord)); - Result := MainRecord.ChildGroup; - if not Assigned(Result) then - Result := TwbGroupRecord.Create(Self, 1, MainRecord); - - GroupRecord2 := Result as IwbGroupRecord; - if aDeepCopy then - for i := 0 to Pred(GroupRecord.ElementCount) do - GroupRecord2.AddIfMissing(GroupRecord.Elements[i], aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); - - Exit; - end; - end else if wbVWDAsQuestChildren and (TwbSignature(grStruct.grsLabel) = 'QUST') then begin - if Supports(aElement, IwbGroupRecord, GroupRecord) then begin - if GroupRecord.GroupType <> 10 then - raise Exception.Create('Can''t add '+GroupRecord.Name+' to top level group with signature ' + TwbSignature(grStruct.grsLabel)); - MainRecord := GroupRecord.ChildrenOf; - if not Assigned(MainRecord) then - raise Exception.Create('Can''t find record for '+ GroupRecord.Name); - MainRecord := MainRecord.HighestOverrideOrSelf[GetFile.LoadOrder]; - MainRecord := AddIfMissingInternal(MainRecord, aAsNew, True, aPrefixRemove, aPrefix, aSuffix) as IwbMainRecord; - Assert(Assigned(MainRecord)); - Result := MainRecord.ChildGroup; - if not Assigned(Result) then - Result := TwbGroupRecord.Create(Self, 10, MainRecord); - - GroupRecord2 := Result as IwbGroupRecord; - if aDeepCopy then - for i := 0 to Pred(GroupRecord.ElementCount) do - GroupRecord2.AddIfMissing(GroupRecord.Elements[i], aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); - - Exit; - end; - end; - if not Supports(aElement, IwbMainRecord, MainRecord) then - raise Exception.Create('Only main records can be added to top level groups'); - if MainRecord.Signature <> TwbSignature(grStruct.grsLabel) then - raise Exception.Create('Can''t add main record with signature '+MainRecord.Signature+' to top level group with signature ' + TwbSignature(grStruct.grsLabel)); - - if aAsNew then - FormID := GetFile.NewFormID - else begin - FormID := GetFile.LoadOrderFormIDtoFileFormID(MainRecord.LoadOrderFormID); - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbMainRecord, MainRecord2) then - if MainRecord2.FixedFormID = FormID then begin - Result := MainRecord2; - exit; - end; - end; - - Result := TwbMainRecord.Create(Self, MainRecord.Signature, FormID); - if aDeepCopy then begin - Result.Assign(Low(Integer), aElement, False); - if (aPrefix <> '') or (aSuffix <> '') then - with Result as IwbMainRecord do begin - s := EditorID; - s := RemovePrefix(s, aPrefixRemove); - if s <> '' then - EditorID := aPrefix + s + aSuffix; - end; - end; - - if not aAsNew and MainRecord.IsMaster and (Result._File.LoadOrder <= MainRecord._File.LoadOrder) then - if Supports(Result, IwbMainRecord, MainRecord2) then - (MainRecord as IwbMainRecordInternal).YouGotAMaster(MainRecord2); - if Assigned(Result) and (csRefsBuild in Result._File.ContainerStates) then - Result.BuildRef; - end; - 1: begin - if Supports(aElement, IwbGroupRecord, GroupRecord) then begin - if GroupRecord.GroupType = 4 then begin - for i := 0 to Pred(GetElementCount) do - if Supports(GetElement(i), IwbGroupRecord, GroupRecord2) then begin - if (GroupRecord2.GroupType = GroupRecord.GroupType) and (GroupRecord2.GroupLabel = GroupRecord.GroupLabel) then begin - Result := GroupRecord2; - break; - end; - end; - if not Assigned(Result) then - Result := TwbGroupRecord.Create(Self, 4, GroupRecord.GroupLabel); - - GroupRecord2 := Result as IwbGroupRecord; - if aDeepCopy then - for i := 0 to Pred(GroupRecord.ElementCount) do - GroupRecord2.AddIfMissing(GroupRecord.Elements[i], aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); - - Exit; - end; - if GroupRecord.GroupType <> 6 then - raise Exception.Create('Can''t add '+GroupRecord.Name+' to top level group with signature ' + TwbSignature(grStruct.grsLabel)); - MainRecord := GroupRecord.ChildrenOf; - if not Assigned(MainRecord) then - raise Exception.Create('Can''t find record for '+ GroupRecord.Name); - MainRecord := MainRecord.HighestOverrideOrSelf[GetFile.LoadOrder]; - MainRecord := AddIfMissingInternal(MainRecord, aAsNew, True, aPrefixRemove, aPrefix, aSuffix) as IwbMainRecord; - Assert(Assigned(MainRecord)); - Result := MainRecord.ChildGroup; - if not Assigned(Result) then - Result := TwbGroupRecord.Create(Self, 6, MainRecord); - - GroupRecord2 := Result as IwbGroupRecord; - if aDeepCopy then - for i := 0 to Pred(GroupRecord.ElementCount) do - GroupRecord2.AddIfMissing(GroupRecord.Elements[i], aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); - - Exit; - end; - if not Supports(aElement, IwbMainRecord, MainRecord) then - raise Exception.Create('Only main records can be added to ' + GetName); - if (MainRecord.Signature <> 'CELL') and (MainRecord.Signature <> 'ROAD') then - raise Exception.Create('Can''t add main record with signature '+MainRecord.Signature+' to ' + GetName); - - if aAsNew then - raise Exception.Create('Can''t copy record '+MainRecord.Name+' as new record.') - else begin - FormID := GetFile.LoadOrderFormIDtoFileFormID(MainRecord.LoadOrderFormID); - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbMainRecord, MainRecord2) then - if MainRecord2.FixedFormID = FormID then begin - Result := MainRecord2; - exit; - end; - end; - Result := TwbMainRecord.Create(Self, MainRecord.Signature, FormID); - if aDeepCopy then begin - Result.Assign(Low(Integer), aElement, False); - if (aPrefix <> '') or (aSuffix <> '') then - with Result as IwbMainRecord do begin - s := EditorID; - s := RemovePrefix(s, aPrefixRemove); - if s <> '' then - EditorID := aPrefix + s + aSuffix; - end; - end; - if not aAsNew and MainRecord.IsMaster and (Result._File.LoadOrder <= MainRecord._File.LoadOrder) then - if Supports(Result, IwbMainRecord, MainRecord2) then - (MainRecord as IwbMainRecordInternal).YouGotAMaster(MainRecord2); - if Assigned(Result) and (csRefsBuild in Result._File.ContainerStates) then - Result.BuildRef; - end; - 2, 4: begin - if Supports(aElement, IwbGroupRecord, GroupRecord) then begin - if GroupRecord.GroupType <> grStruct.grsGroupType + 1 then - raise Exception.Create('Can''t add '+GroupRecord.Name+' to ' + GetName); - for i := 0 to Pred(GetElementCount) do - if Supports(GetElement(i), IwbGroupRecord, GroupRecord2) then begin - if (GroupRecord2.GroupType = GroupRecord.GroupType) and (GroupRecord2.GroupLabel = GroupRecord.GroupLabel) then begin - Result := GroupRecord2; - break; - end; - end; - if not Assigned(Result) then - Result := TwbGroupRecord.Create(Self, GroupRecord.GroupType, GroupRecord.GroupLabel); - - GroupRecord2 := Result as IwbGroupRecord; - if aDeepCopy then - for i := 0 to Pred(GroupRecord.ElementCount) do - GroupRecord2.AddIfMissing(GroupRecord.Elements[i], aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); - - Exit; - end; - raise Exception.Create('Can''t add ' + aElement.Name + ' to ' + GetName); - end; - 3, 5: begin - if Supports(aElement, IwbGroupRecord, GroupRecord) then begin - if GroupRecord.GroupType <> 6 then - raise Exception.Create('Can''t add '+GroupRecord.Name+' to top level group with signature ' + TwbSignature(grStruct.grsLabel)); - MainRecord := GroupRecord.ChildrenOf; - if not Assigned(MainRecord) then - raise Exception.Create('Can''t find record for '+ GroupRecord.Name); - MainRecord := MainRecord.HighestOverrideOrSelf[GetFile.LoadOrder]; - MainRecord := AddIfMissingInternal(MainRecord, aAsNew, True, aPrefixRemove, aPrefix, aSuffix) as IwbMainRecord; - Assert(Assigned(MainRecord)); - Result := MainRecord.ChildGroup; - if not Assigned(Result) then - Result := TwbGroupRecord.Create(Self, 6, MainRecord); - - GroupRecord2 := Result as IwbGroupRecord; - if aDeepCopy then - for i := 0 to Pred(GroupRecord.ElementCount) do - GroupRecord2.AddIfMissing(GroupRecord.Elements[i], aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); - - Exit; - end; - if not Supports(aElement, IwbMainRecord, MainRecord) then - raise Exception.Create('Only main records can be added to ' + GetName); - if MainRecord.Signature <> 'CELL' then - raise Exception.Create('Can''t add main record with signature '+MainRecord.Signature+' to ' + GetName); - - if aAsNew then - raise Exception.Create('Can''t copy record '+MainRecord.Name+' as new record.') - else begin - FormID := GetFile.LoadOrderFormIDtoFileFormID(MainRecord.LoadOrderFormID); - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbMainRecord, MainRecord2) then - if MainRecord2.FixedFormID = FormID then begin - Result := MainRecord2; - exit; - end; - end; - Result := TwbMainRecord.Create(Self, MainRecord.Signature, FormID); - if aDeepCopy then begin - Result.Assign(Low(Integer), aElement, False); - if (aPrefix <> '') or (aSuffix <> '') then - with Result as IwbMainRecord do begin - s := EditorID; - s := RemovePrefix(s, aPrefixRemove); - if s <> '' then - EditorID := aPrefix + s + aSuffix; - end; - end; - if not aAsNew and MainRecord.IsMaster and (Result._File.LoadOrder <= MainRecord._File.LoadOrder) then - if Supports(Result, IwbMainRecord, MainRecord2) then - (MainRecord as IwbMainRecordInternal).YouGotAMaster(MainRecord2); - if Assigned(Result) and (csRefsBuild in Result._File.ContainerStates) then - Result.BuildRef; - end; - 6: begin - if Supports(aElement, IwbGroupRecord, GroupRecord) then begin - if not (GroupRecord.GroupType in [8, 9, 10]) then - raise Exception.Create('Can''t add '+GroupRecord.Name+' to ' + GetName); - for i := 0 to Pred(GetElementCount) do - if Supports(GetElement(i), IwbGroupRecord, GroupRecord2) then begin - if GroupRecord2.GroupType = GroupRecord.GroupType then begin - Result := GroupRecord2; - break; - end; - end; - if not Assigned(Result) then - Result := TwbGroupRecord.Create(Self, GroupRecord.GroupType, Self.GetChildrenOf); - - GroupRecord2 := Result as IwbGroupRecord; - if aDeepCopy then - for i := 0 to Pred(GroupRecord.ElementCount) do - GroupRecord2.AddIfMissing(GroupRecord.Elements[i], aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); - - Exit; - end; - raise Exception.Create('Can''t add ' + aElement.Name + ' to ' + GetName); - end; - 7: begin - if not Supports(aElement, IwbMainRecord, MainRecord) then - raise Exception.Create('Only main records can be added to ' + GetName); - if MainRecord.Signature <> 'INFO' then - raise Exception.Create('Can''t add main record with signature '+MainRecord.Signature+' to ' + GetName); - - if aAsNew then - FormID := GetFile.NewFormID - else begin - FormID := GetFile.LoadOrderFormIDtoFileFormID(MainRecord.LoadOrderFormID); - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbMainRecord, MainRecord2) then - if MainRecord2.FixedFormID = FormID then begin - Result := MainRecord2; - exit; - end; - end; - - Result := TwbMainRecord.Create(Self, MainRecord.Signature, FormID); - if aDeepCopy then begin - Result.Assign(Low(Integer), aElement, False); - if (aPrefix <> '') or (aSuffix <> '') then - with Result as IwbMainRecord do begin - s := EditorID; - s := RemovePrefix(s, aPrefixRemove); - if s <> '' then - EditorID := aPrefix + s + aSuffix; - end; - end; - if not aAsNew and MainRecord.IsMaster and (Result._File.LoadOrder <= MainRecord._File.LoadOrder) then - if Supports(Result, IwbMainRecord, MainRecord2) then - (MainRecord as IwbMainRecordInternal).YouGotAMaster(MainRecord2); - if Assigned(Result) and (csRefsBuild in Result._File.ContainerStates) then - Result.BuildRef; - end; - 8, 9, 10: begin - if wbVWDAsQuestChildren and Supports(aElement, IwbGroupRecord, GroupRecord) then begin - if GroupRecord.GroupType <> 7 then - raise Exception.Create('Can''t add '+GroupRecord.Name+' to top level group with signature ' + TwbSignature(grStruct.grsLabel)); - MainRecord := GroupRecord.ChildrenOf; - if not Assigned(MainRecord) then - raise Exception.Create('Can''t find record for '+ GroupRecord.Name); - MainRecord := MainRecord.HighestOverrideOrSelf[GetFile.LoadOrder]; - MainRecord := AddIfMissingInternal(MainRecord, aAsNew, True, aPrefixRemove, aPrefix, aSuffix) as IwbMainRecord; - Assert(Assigned(MainRecord)); - Result := MainRecord.ChildGroup; - if not Assigned(Result) then - Result := TwbGroupRecord.Create(Self, 7, MainRecord); - - GroupRecord2 := Result as IwbGroupRecord; - if aDeepCopy then - for i := 0 to Pred(GroupRecord.ElementCount) do - GroupRecord2.AddIfMissing(GroupRecord.Elements[i], aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix); - - Exit; - end; - if not Supports(aElement, IwbMainRecord, MainRecord) then - raise Exception.Create('Only main records can be added to ' + GetName); - if (MainRecord.Signature <> 'REFR') and - (MainRecord.Signature <> 'ACHR') and - (MainRecord.Signature <> 'ACRE') and - (MainRecord.Signature <> 'PGRE') and - (MainRecord.Signature <> 'PMIS') and - (MainRecord.Signature <> 'PARW') and {>>> Skyrim <<<} - (MainRecord.Signature <> 'PBEA') and {>>> Skyrim <<<} - (MainRecord.Signature <> 'PFLA') and {>>> Skyrim <<<} - (MainRecord.Signature <> 'PCON') and {>>> Skyrim <<<} - (MainRecord.Signature <> 'PBAR') and {>>> Skyrim <<<} - (MainRecord.Signature <> 'PHZD') {>>> Skyrim <<<} - then - // check any non reference record - if not ( - // DIAL, DLBR and SCEN can be added to child group 10 (quest children) - (wbVWDAsQuestChildren and (grStruct.grsGroupType = 10) and ((MainRecord.Signature = 'DLBR') or (MainRecord.Signature = 'DIAL') or (MainRecord.Signature = 'SCEN'))) - or - // PGRD, LAND and NAVM can be added to child group 9 (temporary) - (grStruct.grsGroupType = 9) and ((MainRecord.Signature = 'PGRD') or (MainRecord.Signature = 'LAND') or (MainRecord.Signature = 'NAVM')) - ) then - raise Exception.Create('Can''t add main record with signature '+MainRecord.Signature+' to ' + GetName); - - if aAsNew then - FormID := GetFile.NewFormID - else begin - FormID := GetFile.LoadOrderFormIDtoFileFormID(MainRecord.LoadOrderFormID); - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbMainRecord, MainRecord2) then - if MainRecord2.FixedFormID = FormID then begin - Result := MainRecord2; - exit; - end; - end; - - Result := TwbMainRecord.Create(Self, MainRecord.Signature, FormID); - if aDeepCopy then begin - Result.Assign(Low(Integer), aElement, False); - if (aPrefix <> '') or (aSuffix <> '') then - with Result as IwbMainRecord do begin - s := EditorID; - s := RemovePrefix(s, aPrefixRemove); - if s <> '' then - EditorID := aPrefix + s + aSuffix; - end; - end; - if not aAsNew and MainRecord.IsMaster and (Result._File.LoadOrder <= MainRecord._File.LoadOrder) then - if Supports(Result, IwbMainRecord, MainRecord2) then - (MainRecord as IwbMainRecordInternal).YouGotAMaster(MainRecord2); - if Assigned(Result) and (csRefsBuild in Result._File.ContainerStates) then - Result.BuildRef; - end; - else - raise Exception.Create(ClassName + '.AddIfMissingInternal is not implemented for GroupType ' + IntToStr(grStruct.grsGroupType)); - end; -end; - -procedure TwbGroupRecord.BuildRef; -var - Rec: IwbMainRecord; -begin - inherited; - if GetGroupType in [1, 6, 7] then begin - Rec := (GetFile as IwbFileInternal).RecordByFormID[GetGroupLabel, False]; - if Assigned(Rec) then begin - if Rec._File.Equals(GetFile) then - (Rec as IwbMainRecordInternal).SetChildGroup(Self) - else begin - if Assigned(wbProgressCallback) then - wbProgressCallback(' 0 then begin - FileID := grStruct.grsLabel shr 24; - aMasters[FileID] := True; - end; - end; -end; - -function TwbGroupRecord.GetAddList: TDynStrings; -var - i, j : Integer; - RecordDef : PwbRecordDef; -begin - Result := nil; - case grStruct.grsGroupType of - 0: begin - SetLength(Result, 1); - Result[0] := TwbSignature(grStruct.grsLabel); - end; - 7: begin - SetLength(Result, 1); - Result[0] := 'INFO'; - end; - 8: begin - SetLength(Result, 11); - Result[0] := 'ACHR'; - Result[1] := 'ACRE'; - Result[2] := 'REFR'; - Result[3] := 'PGRE'; - Result[4] := 'PMIS'; - Result[5] := 'PARW'; {>>> Skyrim <<<} - Result[6] := 'PBEA'; {>>> Skyrim <<<} - Result[7] := 'PFLA'; {>>> Skyrim <<<} - Result[8] := 'PCON'; {>>> Skyrim <<<} - Result[9] := 'PBAR'; {>>> Skyrim <<<} - Result[10] := 'PHZD'; {>>> Skyrim <<<} - end; - 6, 9: begin - SetLength(Result, 11); - Result[0] := 'ACHR'; - Result[1] := 'ACRE'; - Result[2] := 'REFR'; - Result[3] := 'PGRE'; - Result[4] := 'PMIS'; - Result[5] := 'PARW'; {>>> Skyrim <<<} - Result[6] := 'PBEA'; {>>> Skyrim <<<} - Result[7] := 'PFLA'; {>>> Skyrim <<<} - Result[8] := 'PCON'; {>>> Skyrim <<<} - Result[9] := 'PBAR'; {>>> Skyrim <<<} - Result[10] := 'PHZD'; {>>> Skyrim <<<} - end; - 10: if wbVWDAsQuestChildren then begin - SetLength(Result, 3); - Result[0] := 'DIAL'; - Result[1] := 'DLBR'; - Result[2] := 'SCEN'; - end - else begin - SetLength(Result, 1); - Result[0] := 'REFR'; - end; - end; - j := 0; - for i := Low(Result) to High(Result) do - if wbFindRecordDef(AnsiString(Result[i]), RecordDef) then begin - Result[j] := Result[i] + ' - ' + RecordDef.Name; - Inc(j); - end; - SetLength(Result, j); -end; - -function TwbGroupRecord.GetChildrenOf: IwbMainRecord; -begin - Result := nil; - if grStruct.grsGroupType in [1, 6..10] then - Result := GetFile.RecordByFormID[grStruct.grsLabel, True]; -end; - -function TwbGroupRecord.GetElementType: TwbElementType; -begin - Result := etGroupRecord; -end; - -function TwbGroupRecord.GetGroupLabel: Cardinal; -begin - Result := grStruct.grsLabel; -end; - -function TwbGroupRecord.GetGroupType: Integer; -begin - Result := grStruct.grsGroupType; -end; - -function TwbGroupRecord.GetMainRecordByEditorID(const aEditorID: string): IwbMainRecord; -var - SelfRef : IwbContainerElementRef; - i : Integer; -begin - Result := nil; - - SelfRef := Self; - DoInit; - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbMainRecord, Result) then - if SameText(Result.EditorID, aEditorID) then - Exit; - Result := nil; -end; - -function TwbGroupRecord.GetMainRecordByFormID(const aFormID: Cardinal): IwbMainRecord; -var - SelfRef : IwbContainerElementRef; - i : Integer; -begin - Result := nil; - - SelfRef := Self; - DoInit; - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbMainRecord, Result) then - if Result.FormID = aFormID then - Exit; - Result := nil; -end; - -function TwbGroupRecord.GetName: string; -begin - Result := inherited GetName; - - case grStruct.grsGroupType of - 0: begin - Result := Result + ' Top "' + PwbSignature(@grStruct.grsLabel)^ + '"'; - Exit; - end; - 1: Result := Result + ' World Children of '; - 2: begin - Result := Result + ' Interior Cell Block ' + IntToStr(grStruct.grsLabel); - Exit; - end; - 3: begin - Result := Result + ' Interior Cell Sub-Block ' + IntToStr(grStruct.grsLabel); - Exit; - end; - 4: begin - Result := Result + ' Exterior Cell Block ' + IntToStr(LongRecSmall(grStruct.grsLabel).Lo) + ', ' + IntToStr(LongRecSmall(grStruct.grsLabel).Hi); - Exit; - end; - 5: begin - Result := Result + ' Exterior Cell Sub-Block ' + IntToStr(LongRecSmall(grStruct.grsLabel).Lo) + ', ' + IntToStr(LongRecSmall(grStruct.grsLabel).Hi); - Exit; - end; - 6: Result := Result + ' Cell Children of '; - 7: Result := Result + ' Topic Children of '; - 8: Result := Result + ' Cell Persistent Children of '; - 9: Result := Result + ' Cell Temporary Children of '; - 10: if wbVWDAsQuestChildren then - Result := Result + ' Quest Children of ' - else - Result := Result + ' Cell Visible Distant Children of '; - else - Result := Result + ' Unknown type: ' + IntToStr(grStruct.grsGroupType); - Exit; - end; - -// if wbDisplayLoadOrderFormID then -// Result := Result + wbFormID.ToString(GetChildrenOf.FixedFormID, Self) -// else - Result := Result + wbFormID.ToString(grStruct.grsLabel, Self); -end; - -function TwbGroupRecord.GetCountedRecordCount: Cardinal; -begin - Result := Succ(inherited GetCountedRecordCount); -end; - -function TwbGroupRecord.GetShortName: string; -var - RecordDef : PwbRecordDef; -begin - case grStruct.grsGroupType of - 0: begin - Result := PwbSignature(@grStruct.grsLabel)^; - if wbFindRecordDef(AnsiString(Result), RecordDef) then - Result := RecordDef.GetName; - end; - 1: Result := 'World Children'; - 2: Result := 'Block ' + IntToStr(grStruct.grsLabel); - 3: Result := 'Sub-Block ' + IntToStr(grStruct.grsLabel); - 4: Result := 'Block ' + IntToStr(LongRecSmall(grStruct.grsLabel).Hi) + ', ' + IntToStr(LongRecSmall(grStruct.grsLabel).Lo); - 5: Result := 'Sub-Block ' + IntToStr(LongRecSmall(grStruct.grsLabel).Hi) + ', ' + IntToStr(LongRecSmall(grStruct.grsLabel).Lo); - 6: Result := 'Children of ' + IntToHex(grStruct.grsLabel, 8); - 7: Result := 'Children of ' + IntToHex(grStruct.grsLabel, 8); - 8: Result := 'Persistent'; - 9: Result := 'Temporary'; - 10: if wbVWDAsQuestChildren then - Result := 'Children of ' + IntToHex(grStruct.grsLabel, 8) - else - Result := 'Visible when Distant'; - else - Result := Result + ' Unknown type: ' + IntToStr(grStruct.grsGroupType); - end; -end; - -function TwbGroupRecord.GetSortKeyInternal(aExtended: Boolean): string; -begin - Result := IntToHex64(GetGroupType, 2); - - case grStruct.grsGroupType of - 0: Result := Result + PwbSignature(@grStruct.grsLabel)^; - 4: Result := Result + - IntToHex64(LongRecSmall(grStruct.grsLabel).Hi + Low(SmallInt), 5) + - IntToHex64(LongRecSmall(grStruct.grsLabel).Lo + Low(SmallInt), 5); - 5: Result := Result + - IntToHex64(LongRecSmall(grStruct.grsLabel).Hi + Low(SmallInt), 5) + - IntToHex64(LongRecSmall(grStruct.grsLabel).Lo + Low(SmallInt), 5); - else - Result := Result + IntToHex64(grStruct.grsLabel, 8); - end; -end; - -function TwbGroupRecord.grStruct: PwbGroupRecordStruct; -begin - Result := PwbGroupRecordStruct(dcBasePtr); -end; - -procedure TwbGroupRecord.InformPrevMainRecord(const aPrevMainRecord: IwbMainRecord); -begin - inherited; - if (grStruct.grsGroupType in [1, 6, 7]) and Assigned(aPrevMainRecord) and (aPrevMainRecord.FormID = grStruct.grsLabel) then - (aPrevMainRecord as IwbMainRecordInternal).SetChildGroup(Self); -end; - -procedure TwbGroupRecord.InitDataPtr; -var - Dummy: Integer; -begin - if Assigned(dcEndPtr) then begin - dcDataBasePtr := Pointer( Cardinal( dcBasePtr ) + wbSizeOfMainRecordStruct ); - dcDataEndPtr := Pointer( Cardinal( dcBasePtr ) + grStruct.grsGroupSize ); - dcEndPtr := dcDataEndPtr; - if not recSkipped then - if grStruct.grsGroupType = 0 then - recSkipped := GroupToSkip.Find(PwbSignature(@grStruct.grsLabel)^, Dummy); - end; -end; - -function TwbGroupRecord.IsElementRemoveable(const aElement: IwbElement): Boolean; -begin - Result := IsElementEditable(aElement); -end; - -function TwbGroupRecord.LinksToParent: Boolean; -begin - Result := GetGroupType in [4, 5, 8..10]; -end; - -procedure TwbGroupRecord.MakeHeaderWriteable; -var - p : PwbGroupRecordStruct; - SelfPtr : IwbContainerElementRef; -begin - SelfPtr := Self as IwbContainerElementRef; - - DoInit; - - SetModified(True); - InvalidateParentStorage; - - if Assigned(dcEndPtr) then begin - New(p); - p^ := grStruct^; - dcBasePtr := p; - dcEndPtr := nil; - end; -end; - -procedure TwbGroupRecord.MasterCountUpdated(aOld, aNew: Byte); -var - FileID: Integer; -begin - if grStruct.grsGroupType in [1, 6..10] then begin - if grStruct.grsLabel <> 0 then begin - FileID := grStruct.grsLabel shr 24; - if FileID >= aOld then begin - FileID := aNew; - MakeHeaderWriteable; - grStruct.grsLabel := (grStruct.grsLabel and $00FFFFFF) or (Cardinal(FileID) shl 24); - end; - end; - end; - - inherited; -end; - -procedure TwbGroupRecord.MasterIndicesUpdated(const aOld, aNew: TBytes); -var - OldFormID: Cardinal; - NewFormID: Cardinal; -begin - inherited; - - if grStruct.grsGroupType in [1, 6..10] then begin - if grStruct.grsLabel <> 0 then begin - OldFormID := grStruct.grsLabel; - NewFormID := FixupFormID(OldFormID, aOld, aNew); - if OldFormID <> NewFormID then begin - MakeHeaderWriteable; - grStruct.grsLabel := NewFormID; - end; - end; - end; -end; - -procedure TwbGroupRecord.NotifyChangedInternal(aContainer: Pointer); -begin - if gsSorting in grStates then - Exit; - inherited; - // Let's try to sort only when the group membership change and not when one of its member change. - if Assigned(aContainer) and (IwbContainerInternal(aContainer).ElementID = GetElementID) then - Exclude(grStates, gsSorted); -end; - -procedure TwbGroupRecord.PrepareSave; -begin - if esModified in eStates then - Sort; - inherited; - if Length(cntElements) = 0 then - Remove - else if esModified in eStates then begin - Exclude(grStates, gsSorted); - Sort; - end; -end; - -function TwbGroupRecord.Reached: Boolean; -var - Rec : IwbMainRecord; - SelfRef : IwbContainerElementRef; -begin - if esReachable in eStates then - Exit(False); - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if GetGroupType in [0, 2, 3] then begin - Result := False; - Exit; - end; - Result := inherited Reached; - if Result and (GetGroupType in [1, 6..10]) then begin - Rec := (GetFile as IwbFileInternal).RecordByFormID[GetGroupLabel, False]; - if Assigned(Rec) then - (Rec as IwbElementInternal).Reached; - end; -end; - -procedure TwbGroupRecord.Remove; -var - i : Integer; - SelfRef : IwbContainerElementRef; - MainRecord : IwbMainRecord; -begin - SelfRef := Self as IwbContainerElementRef; - for i := High(cntElements) downto Low(cntElements) do - cntElements[i].Remove; - MainRecord := GetChildrenOf; - if Assigned(MainRecord) and MainRecord._File.Equals(GetFile) then - (MainRecord as IwbMainRecordInternal).RemoveChildGroup(Self); - inherited Remove; -end; - -procedure TwbGroupRecord.ScanData; -var - CurrentPtr : Pointer; - Rec : IwbRecord; - MainRecord : IwbMainRecord; - PrevMainRecord : IwbMainRecord; -begin - case grStruct.grsGroupType of - 0: begin - SetSortOrder(wbGetGroupOrder(PwbSignature(@grStruct.grsLabel)^)); - SetMemoryOrder(wbGetGroupOrder(PwbSignature(@grStruct.grsLabel)^)); - end; - end; - - if recSkipped then - Exit; - - CurrentPtr := GetDataBasePtr; - PrevMainRecord := nil; - while Cardinal(CurrentPtr) < Cardinal(dcDataEndPtr) do begin - Rec := TwbRecord.CreateForPtr(CurrentPtr, dcDataEndPtr, Self, PrevMainRecord); - if Supports(Rec, IwbMainRecord, MainRecord) then - PrevMainRecord := MainRecord; - Rec := nil; - MainRecord := nil; - end; - PrevMainRecord := nil; -end; - -procedure TwbGroupRecord.SetGroupLabel(aLabel: Cardinal); -var - OldLabel : Cardinal; - i : Integer; - GroupRecord : IwbGroupRecord; - - SelfPtr : IwbContainerElementRef; - ContainedIn : IwbContainedIn; -begin - SelfPtr := Self as IwbContainerElementRef; - - OldLabel := grStruct.grsLabel; - if aLabel = OldLabel then - Exit; - - case grStruct.grsGroupType of - 1: ;//Result := Result + ' World Children of '; - 6: ;//Result := Result + ' Cell Children of '; - 7: ;//Result := Result + ' Topic Children of '; - 8: ;//Result := Result + ' Cell Persistent Children of '; - 9: ;//Result := Result + ' Cell Temporary Children of '; - 10: ;//Result := Result + ' Cell Visible Distant Children of '; - else - raise Exception.Create('Can not set Label of ' + GetName); - end; - - MakeHeaderWriteable; - grStruct.grsLabel := aLabel; - -// if grStruct.grsGroupType <> 6 then -// Exit; - - for i := 0 to Pred(GetElementCount) do - if Supports(GetElement(i), IwbGroupRecord, GroupRecord) then begin - if GroupRecord.GroupType in [8..10] then - if GroupRecord.GroupLabel = OldLabel then - GroupRecord.GroupLabel := aLabel; - end else if Supports(GetElement(i), IwbContainedIn, ContainedIn) then - ContainedIn.ContainerChanged; -end; - -procedure TwbGroupRecord.SetModified(aValue: Boolean); -begin - inherited; - InvalidateStorage; -end; - -function FindSortElement(const aElement: IwbElement): IwbElement; -var - GroupRecord : IwbGroupRecord; -begin - if Supports(aElement, IwbGroupRecord, GroupRecord) then begin - Result := GroupRecord.ChildrenOf; - if Assigned(Result) then - Exit; - end; - Result := aElement; -end; - -function CompareGroupContents(Item1, Item2: Pointer): Integer; -var - Element1 : IwbElement; - Element2 : IwbElement; - SortElement1 : IwbElement; - SortElement2 : IwbElement; - GroupRecord1 : IwbGroupRecord; - GroupRecord2 : IwbGroupRecord; - MainRecord1 : IwbMainRecord; - MainRecord2 : IwbMainRecord; -begin - Element1 := IwbElement(Item1); - Element2 := IwbElement(Item2); - - if Element1 = Element2 then begin - Result := 0; - Exit; - end; - - if Assigned(Element1) <> Assigned(Element2) then begin - if Assigned(Element1) then - Result := -1 - else - Result := 1; - Exit; - end - else if not Assigned(Element1) then begin - Result := 0; - Exit; - end; - - {"ChildrenOf" groups always sort like their owner} - SortElement1 := FindSortElement(Element1); - SortElement2 := FindSortElement(Element2); - - if Assigned(SortElement1) <> Assigned(SortElement2) then begin - if Assigned(SortElement1) then - Result := -1 - else - Result := 1; - Exit; - end - else if not Assigned(SortElement1) then begin - Result := 0; - Exit; - end; - - Result := CmpI32(Ord(SortElement1.ElementType), Ord(SortElement2.ElementType)); - if Result = 0 then - case SortElement1.ElementType of - etFile: begin - Assert(False); - Exit; - end; - etGroupRecord: begin - Assert(SortElement2.ElementType = etGroupRecord); - GroupRecord1 := SortElement1 as IwbGroupRecord; - GroupRecord2 := SortElement2 as IwbGroupRecord; - Assert(GroupRecord1.GroupType = GroupRecord2.GroupType); - case GroupRecord1.GroupType of - 0: Result := CompareText( - TwbSignature(GroupRecord1.GroupLabel), - TwbSignature(GroupRecord2.GroupLabel)); - 2, 3: Result := CmpI32( - Integer(GroupRecord1.GroupLabel), - Integer(GroupRecord2.GroupLabel)); - 4, 5: begin - Result := CmpI32( - LongRecSmall(GroupRecord1.GroupLabel).Hi, - LongRecSmall(GroupRecord2.GroupLabel).Hi); - if Result = 0 then - Result := CmpI32( - LongRecSmall(GroupRecord1.GroupLabel).Lo, - LongRecSmall(GroupRecord2.GroupLabel).Lo); - end; - else - Assert(False); - end; - end; - etMainRecord: begin - Assert(SortElement2.ElementType = etMainRecord); - MainRecord1 := SortElement1 as IwbMainRecord; - MainRecord2 := SortElement2 as IwbMainRecord; - Result := 0; - if Result = 0 then begin - Result := CmpI32(MainRecord1.SortPriority, MainRecord2.SortPriority); - if Result = 0 then begin - if wbDisplayLoadOrderFormID then - Result := CmpW32(MainRecord1.LoadOrderFormID, MainRecord2.LoadOrderFormID) - else - Result := CmpW32(MainRecord1.FixedFormID, MainRecord2.FixedFormID); - if Result = 0 then - Result := CmpW32(MainRecord1.ElementID, MainRecord2.ElementID); - end; - end; - end - else - Assert(False); - end; - - if Result = 0 then - if Element1 <> SortElement1 then begin - if Element2 <> SortElement2 then begin - {both are groups of the same element } - GroupRecord1 := Element1 as IwbGroupRecord; - GroupRecord2 := Element2 as IwbGroupRecord; - Result := CmpI32(GroupRecord1.GroupType, GroupRecord2.GroupType); - if Result = 0 then - Result := CmpW32(GroupRecord1.GroupLabel, GroupRecord2.GroupLabel); - end - else begin - {element1 is a group of element2} - Result := 1; - end; - end - else begin - if Element2 <> SortElement2 then begin - {element2 is a group of element1} - Result := -1; - end - else begin - {really seems to be the same} - end; - end; -end; - -var - ElementRefs : array of IwbContainerElementRef; - ElementRefsCount : Integer; - -procedure TwbGroupRecord.Sort; - - procedure DoInserRecord(const InsertRecord: IwbMainRecordEntry); - var - TargetRecord: IwbMainRecordEntry; - begin - SetLength(ElementRefs, Succ(Length(ElementRefs))); - if not Supports(InsertRecord, IwbContainerElementRef, ElementRefs[High(ElementRefs)]) then - Assert(False); - - if Supports(InsertRecord.ElementLinksTo['PNAM'], IwbMainRecordEntry, TargetRecord) then begin - - SetLength(ElementRefs, Succ(Length(ElementRefs))); - if not Supports(TargetRecord, IwbContainerElementRef, ElementRefs[High(ElementRefs)]) then - Assert(False); - - if not TargetRecord.IsInList then - DoInserRecord(TargetRecord); - - InsertRecord.InsertEntryAfter(TargetRecord); - - end else if InsertRecord.ElementExists['PNAM'] then - InsertRecord.InsertEntryHead - else - InsertRecord.InsertEntryTail; - end; - -var - ChildrenOf : IwbMainRecord; - MainRecords : TDynMainRecords; - Groups : TDynGroupRecords; - Group : IwbContainerElementRef; - g : IwbGroupRecord; - i, j, k : Integer; - InsertRecord: IwbMainRecordEntry; - TargetRecord: IwbMainRecordEntry; - PrevRecord : IwbMainRecordEntry; - InfoQuest : Int64; - InfoQuest2 : Int64; - Inserted : Boolean; - NewElements : TDynElementInternals; - -begin - if grStates * [gsSorted, gsSorting] <> [] then - Exit; - - if eUpdateCount > 0 then begin - Include(grStates, gsSortPostponed); - Exit; - end; - - Include(grStates, gsSorting); - try - ChildrenOf := GetChildrenOf; - // there is no PNAM in Fallout 4, looks like INFOs are no longer linked lists - if (wbGameMode <> gmFO4) and Assigned(ChildrenOf) and (ChildrenOf.Signature = 'DIAL') then begin - {>>> Sorting DIAL group doesn't always work, and Skyrim.esm has a plenty of unsorted DIALs <<<} - {>>> Also disabled for FNV, https://code.google.com/p/skyrim-plugin-decoding-project/issues/detail?id=59 <<<} - if not wbSortGroupRecord then - Exit; - - if not wbDisplayLoadOrderFormID then - Exit; - - Inc(ElementRefsCount); - try - MainRecords := ChildrenOf.MasterRecordsFromMasterFilesAndSelf; - SetLength(Groups, Length(MainRecords)); - i := 0; - for j := Low(MainRecords) to High(MainRecords) do begin - Groups[i] := MainRecords[j].ChildGroup; - if Assigned(Groups[i]) and (Groups[i].ElementCount > 0) then - Inc(i); - end; - SetLength(Groups, i); - - for i := Low(Groups) to High(Groups) do - if not Equals(Groups[i]) then - (Groups[i] as IwbGroupRecordInternal).Sort; - - mreHeader.BeginUse; - try - for i := Low(Groups) to High(Groups) do - if Supports(Groups[i], IwbContainerElementRef, Group) then - for j := 0 to Pred(Group.ElementCount) do - if Supports(Group.Elements[j], IwbMainRecordEntry, InsertRecord) then - DoInserRecord(InsertRecord); - TargetRecord := IwbMainRecordEntry(mreHeader.mrehTail); - while Assigned(TargetRecord) do begin - PrevRecord := TargetRecord.PrevEntry; - if not Equals(TargetRecord.Container) then - TargetRecord.RemoveEntry - else if not TargetRecord.IsDeleted then if wbBeginInternalEdit then try - if not TargetRecord.ElementExists['PNAM'] then begin - {>>> No QSTI in Skyrim, using DIAL\QNAM <<<} - if wbGameMode in [ gmTES5, gmSSE ] then begin - Supports(TargetRecord.Container, IwbGroupRecord, g); - InfoQuest := g.ChildrenOf.ElementNativeValues['QNAM']; - end else - InfoQuest := TargetRecord.ElementNativeValues['QSTI']; - InsertRecord := PrevRecord; - Inserted := False; - while Assigned(InsertRecord) do begin - if wbGameMode in [ gmTES5, gmSSE ] then begin - Supports(InsertRecord.Container, IwbGroupRecord, g); - InfoQuest2 := g.ChildrenOf.ElementNativeValues['QNAM']; - end else - InfoQuest2 := InsertRecord.ElementNativeValues['QSTI']; - if (not InsertRecord.IsDeleted) and (InfoQuest = InfoQuest2) then begin - try - Inserted := True; - TargetRecord.Add('PNAM').NativeValue := InsertRecord.LoadOrderFormID; - except - TargetRecord.RemoveElement('PNAM'); - end; - Break; - end; - InsertRecord := InsertRecord.PrevEntry; - end; - if not Inserted then - TargetRecord.Add('PNAM'); - end; - finally - wbEndInternalEdit; - end; - TargetRecord := PrevRecord; - end; - - Assert(mreHeader.mrehCount = Length(cntElements)); - - SetLength(NewElements, Length(cntElements)); - k := High(NewElements); - TargetRecord := IwbMainRecordEntry(mreHeader.mrehTail); - while Assigned(TargetRecord) do begin - Assert(k >= Low(NewElements)); - if not Supports(TargetRecord, IwbElementInternal, NewElements[k]) then - Assert(False); - TargetRecord := TargetRecord.PrevEntry; - Dec(k); - end; - Assert(k = -1); - - cntElements := NewElements; - Include(grStates, gsSorted); - finally - mreHeader.EndUse; - end; - finally - Dec(ElementRefsCount); - if ElementRefsCount = 0 then - ElementRefs := nil; - end; - Exit; - end; - - if Length(cntElements) > 1 then - wbMergeSort(@cntElements[0], Length(cntElements), CompareGroupContents); - Include(grStates, gsSorted); - finally - Exclude(grStates, gsSorting); - end; -end; - -procedure TwbGroupRecord.UpdatedEnded; -begin - if gsSortPostponed in grStates then begin - Exclude(grStates, gsSortPostponed); - Sort; - end; - inherited; -end; - -procedure TwbGroupRecord.WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); -var - CurrentPosition : Int64; - NewPosition : Int64; - DataSize : Cardinal; - grs : TwbGroupRecordStruct; -begin - CurrentPosition := aStream.Position; - grs := grStruct^; - aStream.WriteBuffer(grs, wbSizeOfMainRecordStruct ); - if wbForceNewHeader then - aStream.WriteBuffer(wbNewHeaderAddon, SizeOf(wbNewHeaderAddon) ); - inherited; - if (esModified in eStates) or wbTestWrite then begin - - NewPosition := aStream.Position; - DataSize := (NewPosition - CurrentPosition); - aStream.Position := CurrentPosition + 4; - aStream.WriteBuffer(DataSize, SizeOf(DataSize)); - aStream.Position := NewPosition; - - end else - if wbForceNewHeader then - Assert(CurrentPosition + grStruct.grsGroupSize + SizeOf(wbNewHeaderAddon) = aStream.Position) - else - Assert(CurrentPosition + grStruct.grsGroupSize = aStream.Position); - - Exclude(eStates, esUnsaved); - if aResetModified then begin - Exclude(eStates, esModified); - Exclude(eStates, esInternalModified); - end; -end; - -{ TwbElement } - -function TwbElement.AddIfMissing(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; -{$IFDEF USE_CODESITE} -var - Log: Boolean; - Group : IwbGroupRecord; -{$ENDIF} -begin - if (wbCurrentTick>0) and (wbCurrentTick+5000) and (wbCurrentTick+500 0 then - Assert(FRefCount = 0); - Include(eStates, esDestroying); - inherited BeforeDestruction; - {$IFDEF WIN64} - LockedInc(eExternalRefs); - LockedInc(FRefCount); - {$ENDIF WIN64} - {$IFDEF WIN32} - asm - mov eax, [Self] - lock inc dword ptr [eax + eExternalRefs] - lock inc dword ptr [eax + FRefCount] - end; - {$ENDIF WIN64} -end; - -function TwbElement.BeginDecide: Boolean; -begin - Result := not (esDeciding in eStates); - if Result then - Include(eStates, esDeciding); -end; - -function TwbElement.BeginUpdate: Integer; -begin - Result := Succ(eUpdateCount); - eUpdateCount := Result; -end; - -procedure TwbElement.BuildRef; -begin - {nothing} -end; - -function TwbElement.CanAssign(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; -{$IFDEF USE_CODESITE} -var - Log: Boolean; -{$ENDIF} -begin - {$IFDEF USE_CODESITE} - Log := (laElementCanAssign in wbLoggingAreas) and wbCodeSiteLoggingEnabled; - if Log then begin - CodeSite.EnterMethod(Self, 'CanAssign'); - CodeSite.Send('Self.Name', Self.GetName); - CodeSite.Send('Self.Path', Self.GetPath); - CodeSite.Send('Self.Value', Self.GetValue); - CodeSite.Send('aIndex', aIndex); - if Assigned(aElement) then begin - CodeSite.Send('aElement.Name', aElement.Name); - CodeSite.Send('aElement.Path', aElement.Path); - CodeSite.Send('aElement.Value', aElement.Value); - end else - CodeSite.Send('aElement', 'nil'); - CodeSite.Send('aCheckDontShow', aCheckDontShow); - end; - Result := False; - try - {$ENDIF} - Result := CanAssignInternal(aIndex, aElement, aCheckDontShow); - {$IFDEF USE_CODESITE} - finally - if Log then begin - CodeSite.Send('Result', Result); - CodeSite.ExitMethod(Self, 'CanAssign'); - end; - end; - {$ENDIF} -end; - -function TwbElement.CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; -var - TargetValueDef: IwbValueDef; - SourceValueDef: IwbValueDef; -begin - Result := wbIsInternalEdit; - if Result then - Exit; - - if not wbEditAllowed then - Exit; - - if not GetIsEditable then - Exit; - - if not Assigned(aElement) then - Exit; - - TargetValueDef := GetValueDef; - if TargetValueDef = nil then - Exit; - - SourceValueDef := aElement.ValueDef; - if SourceValueDef = nil then - Exit; - - Result := TargetValueDef.CanAssign(Self, aIndex, SourceValueDef); - - if Result and aCheckDontShow and GetDontShow then - Result := False; -end; - -function TwbElement.CanChangeMember: Boolean; -begin - Result := Assigned(eContainer) and - IwbContainerInternal(eContainer).CanChangeElementMember(Self); -end; - -function TwbElement.CanContainFormIDs: Boolean; -begin - Result := True; -end; - -function TwbElement.CanMoveDown: Boolean; -begin - Result := Assigned(eContainer) and - IwbContainerInternal(eContainer).CanMoveElementDown(Self); -end; - -function TwbElement.CanMoveUp: Boolean; -begin - Result := Assigned(eContainer) and - IwbContainerInternal(eContainer).CanMoveElementUp(Self); -end; - -function TwbElement.CompareExchangeFormID(aOldFormID, aNewFormID: Cardinal): Boolean; -begin - Result := False; -end; - -function CompareLoadOrderSL(List: TStringList; Index1, Index2: Integer): Integer; -begin - if Index1 = Index2 then begin - Result := 0; - Exit; - end; - - Result := CmpI32( - IwbFile(Pointer(List.Objects[Index1])).LoadOrder, - IwbFile(Pointer(List.Objects[Index2])).LoadOrder); -end; - -procedure AddRequiredMasters(aMasters: TStrings; const aTargetFile: IwbFile); -var - sl : TStringList; - i, j : Integer; -begin - sl := TStringList.Create; - try - sl.Sorted := True; - sl.Duplicates := dupIgnore; - sl.AddStrings(aMasters); - - for i := 0 to Pred(aTargetFile.MasterCount) do - if sl.Find(aTargetFile.Masters[i].FileName, j) then - sl.Delete(j); - if sl.Find(aTargetFile.FileName, j) then - sl.Delete(j); - - if sl.Count > 0 then begin - - for i := 0 to Pred(sl.Count) do - if IwbFile(Pointer(sl.Objects[i])).LoadOrder >= aTargetFile.LoadOrder then - raise Exception.Create('The required master "' + sl[i] + '" can not be added to "' + aTargetFile.FileName + '" as it has a higher load order'); - - sl.Sorted := False; - sl.CustomSort(CompareLoadOrderSL); - - aTargetFile.AddMasters(sl); - end; - finally - sl.Free; - end; -end; - -function TwbElement.CopyInto(const aFile: IwbFile; aAsNew, aDeepCopy: Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; -var - sl : TStringList; - MainRecord : IwbMainRecord; - GroupRecord : IwbGroupRecord; -begin - sl := TStringList.Create; - try - sl.Sorted := True; - sl.Duplicates := dupIgnore; - ReportRequiredMasters(sl, aAsNew); - AddRequiredMasters(sl, aFile); - - if aDeepCopy and Supports(Self, IwbMainRecord, MainRecord) and Assigned(MainRecord.ChildGroup) then begin - Result := wbCopyElementToFile(MainRecord.ChildGroup, aFile, aAsNew, True, aPrefixRemove, aPrefix, aSuffix); - if Supports(Result, IwbGroupRecord, GroupRecord) then - Result := GroupRecord.ChildrenOf - else - Result := nil; - end else - Result := wbCopyElementToFile(Self, aFile, aAsNew, True, aPrefixRemove, aPrefix, aSuffix); - finally - sl.Free; - end; -end; - -constructor TwbElement.Create(const aContainer: IwbContainer); -begin - eSortOrder := High(Integer); - eMemoryOrder := Low(Integer); - inherited Create; - if Assigned(aContainer) then - aContainer.AddElement(Self); -end; - -procedure TwbElement.DoAfterSet(const aOldValue, aNewValue: Variant); -var - NamedDef: IwbNamedDef; -begin - NamedDef := GetValueDef; - if Assigned(NamedDef) then - NamedDef.AfterSet(Self, aOldValue, aNewValue); - if Supports(GetDef, IwbNamedDef, NamedDef) then - NamedDef.AfterSet(Self, aOldValue, aNewValue); -end; - -procedure TwbElement.DoReset(aForce: Boolean); -begin - {nothing} -end; - -procedure TwbElement.EndDecide; -begin - Exclude(eStates, esDeciding); -end; - -function TwbElement.EndUpdate: Integer; - -begin - Result := Pred(eUpdateCount); - eUpdateCount := Result; - if Result = 0 then - UpdatedEnded; -end; - -function TwbElement.Equals(const aElement: IwbElement): Boolean; -begin - Result := Assigned(aElement) and (aElement.ElementID = GetElementID); -end; - -procedure TwbElement.FindUsedMasters(aMasters: PwbUsedMasters); -begin - {can be overriden} -end; - -procedure TwbElement.FreeInstance; -begin - if (FRefCount and $7FFFFFFF) <> 1 then - Assert(FRefCount = 1); - Assert(eExternalRefs = 1); - inherited; -end; - -function TwbElement.GetBaseName: string; -begin - Result := GetName; -end; - -function TwbElement.GetCheck: string; -begin - Result := ''; -end; - -function TwbElement.GetConflictPriority: TwbConflictPriority; -var - Def : IwbDef; - MainRecord : IwbMainRecord; -begin - Result := cpNormal; - - Def := GetValueDef; - - if not Assigned(Def) then - Def := GetDef; - - if Assigned(Def) then - Result := Def.ConflictPriority[Self]; - - if wbTranslationMode then begin - if Result <> cpTranslate then - Result := cpIgnore - else - Result := cpNormal; - end else begin - if Result = cpTranslate then - Result := cpNormal; - end; - - if Result = cpFormID then begin - Result := cpCritical; - MainRecord := GetContainingMainRecord; - if Assigned(MainRecord) and (MainRecord.Signature = 'GMST') then - Result := cpBenign; - end; -end; - -function TwbElement.GetConflictPriorityCanChange: Boolean; -var - Def : IwbDef; -begin - Result := False; - - Def := GetValueDef; - - if not Assigned(Def) then - Def := GetDef; - - if Assigned(Def) then - Result := Def.ConflictPriorityCanChange; -end; - -function TwbElement.GetContainer: IwbContainer; -begin - Result := IwbContainer(eContainer); -end; - -function TwbElement.GetContainingMainRecord: IwbMainRecord; -begin - if Assigned(eContainer) then - Result := IwbContainer(eContainer).ContainingMainRecord - else - Result := nil; -end; - -function TwbElement.GetDataSize: Integer; -begin - Result := 0; -end; - -function TwbElement.GetDef: IwbNamedDef; -begin - Result := nil; -end; - -function TwbElement.GetDisplayName: string; -begin - Result := GetName; -end; - -function TwbElement.GetDontShow: Boolean; -var - Def: IwbDef; -begin - Result := False; - Def := GetValueDef; - if Assigned(Def) then - Result := Def.DontShow[Self]; - if not Result then begin - Def := GetDef; - if Assigned(Def) then - Result := Def.DontShow[Self]; - end; -end; - -function TwbElement.GetEditInfo: string; -begin - Result := ''; -end; - -function TwbElement.GetEditType: TwbEditType; -begin - Result := etDefault; -end; - -function TwbElement.GetEditValue: string; -begin - Result := ''; -end; - -function TwbElement.GetElementID: Cardinal; -begin - Result := Cardinal(Self); -end; - -function TwbElement.GetElementStates: TwbElementStates; -begin - Result := eStates; -end; - -function TwbElement.GetElementType: TwbElementType; -begin - Assert(False, 'This method is abstract'); - Result := TwbElementType(-1); -end; - -function TwbElement.GetFile: IwbFile; -begin - if Assigned(eContainer) then - Result := IwbContainerInternal(eContainer)._File - else - Result := nil; -end; - -function TwbElement.GetFullPath: string; -begin - if Assigned(eContainer) then - Result := IwbElement(eContainer).FullPath - else - Result := ''; - Result := Result + ' \ '; - if Assigned(eContainer) then - Result := Result + '['+IntToStr(IwbContainer(eContainer).IndexOf(Self))+'] '; - Result := Result + GetName; -end; - -function TwbElement.GetPathName: string; -begin - if Assigned(eContainer) then - Result := IwbElement(eContainer).PathName - else - Result := ''; - Result := Result + '\'; - if Assigned(eContainer) then - Result := Result + '['+IntToStr(IwbContainer(eContainer).IndexOf(Self))+'] '; - Result := Result + GetShortName; -end; - -function TwbElement.GetInjectionSourceFiles: TDynFiles; -var - Element : IwbElement; - MainRecord : IwbMainRecord; -begin - Result := nil; - Element := GetLinksTo; - if Supports(Element, IwbMainRecord, MainRecord) and not GetFile.Equals(MainRecord._File) and MainRecord.MasterOrSelf.IsInjected then begin - SetLength(Result, 1); - Result[0] := MainRecord.MasterOrSelf._File; - end; -end; - -function TwbElement.GetIsEditable: Boolean; -begin - Result := wbIsInternalEdit; -end; - -function TwbElement.GetIsHidden: Boolean; -begin - if [esHidden, esParentHiddenChecked] * eStates = [] then begin - Include(eStates, esParentHiddenChecked); - if Assigned(eContainer) and IwbContainer(eContainer).IsHidden then - Include(eStates, esParentHidden) - else - Exclude(eStates, esParentHidden); - end; - Result := eStates * [esHidden, esParentHidden] <> []; -end; - -function TwbElement.GetIsInjected: Boolean; -begin - Result := False; -end; - -function TwbElement.GetIsNotReachable: Boolean; -begin - Result := esNotReachable in eStates; -end; - -function TwbElement.GetIsRemoveable: Boolean; -begin - Result := not Assigned(eContainer) or IwbContainer(eContainer).IsElementRemoveable(Self); -end; - -function TwbElement.GetLinksTo: IwbElement; -begin - Result := nil; -end; - -function TwbElement.GetMemoryOrder: Integer; -begin - Result := eMemoryOrder; -end; - -function TwbElement.GetModified: Boolean; -begin - if wbShowInternalEdit then - Result := [esModified] * eStates = [esModified] - else - Result := [esModified, esInternalModified] * eStates = [esModified]; -end; - -function TwbElement.GetName: string; -var - Def: IwbDef; -begin - if wbReportMode then begin - Def := GetValueDef; - if Assigned(Def) then - Def.Used; - Def := GetDef; - if Assigned(Def) then - Def.Used; - end; - Result := ''; -end; - -function TwbElement.GetNativeValue: Variant; -begin - Result := Null; -end; - -function TwbElement.GetNoReach: Boolean; -var - Def : IwbDef; -begin - Def := GetValueDef; - if not Assigned(Def) then - Def := GetDef; - if Assigned(Def) then - Result := Def.NoReach - else - Result := False; -end; - -function TwbElement.GetPath: string; -begin - if Assigned(eContainer) then - Result := IwbElement(eContainer).Path - else - Result := ''; - Result := Result + ' \ ' + GetName; -end; - -function TwbElement.GetCountedRecordCount: Cardinal; -begin - Result := 0; -end; - -function TwbElement.GetReferenceFile: IwbFile; -var - Container: IwbContainer; -begin - Container := GetContainer; - if Assigned(Container) then - Result := Container.ReferenceFile - else - Result := nil; -end; - -function TwbElement.GetReferencesInjected: Boolean; -var - Element : IwbElement; - _File : IwbFile; - ElementFile : IwbFile; - i : Integer; -begin - Element := GetLinksTo; - Result := Assigned(Element) and Element.IsInjected; - - if Result then begin - _File := GetFile; - ElementFile := Element._File; - Result := not _File.Equals(ElementFile); - if Result then begin - for i := 0 to Pred(_File.MasterCount) do - if _File.Masters[i].Equals(ElementFile) then begin - Result := False; - Exit; - end; - end; - end; -end; - -function TwbElement.GetResolvedValueDef: IwbValueDef; -begin - Result := GetValueDef; -end; - -function TwbElement.GetShortName: string; -var - Def: IwbDef; -begin - if wbReportMode then begin - Def := GetDef; - if Assigned(Def) then - Def.Used; - end; - Result := GetName; -end; - -function TwbElement.GetSkipped: Boolean; -begin - Result := False; -end; - -function TwbElement.GetSortKey(aExtended: Boolean): string; -begin - if aExtended then begin - if not (esExtendedSortKeyValid in eStates) then begin - if not (esSorting in eStates) then begin - Include(eStates, esSorting); - eExtendedSortKey := GetSortKeyInternal(aExtended); - Exclude(eStates, esSorting); - end - else - eExtendedSortKey := GetSortKeyInternal(aExtended); - Include(eStates, esExtendedSortKeyValid); - end; - Result := eExtendedSortKey; - end else begin - if not (esSortKeyValid in eStates) then begin - if not (esSorting in eStates) then begin - Include(eStates, esSorting); - eSortKey := GetSortKeyInternal(aExtended); - Exclude(eStates, esSorting); - end else - eSortKey := GetSortKeyInternal(aExtended); - Include(eStates, esSortKeyValid); - end; - Result := eSortKey; - end; -end; - -function TwbElement.GetSortKeyInternal(aExtended: Boolean): string; -begin - Result := ''; -end; - -function TwbElement.GetSortOrder: Integer; -begin - Result := eSortOrder; -end; - -function TwbElement.GetSortPriority: Integer; -begin - Result := 0; -end; - -function TwbElement.GetTreeBranch: Boolean; -var - NamedDef: IwbNamedDef; -begin - if Supports(GetDef, IwbNamedDef, NamedDef) then - Result := NamedDef.TreeBranch - else - Result := False; -end; - -function TwbElement.GetTreeHead: Boolean; -var - NamedDef: IwbNamedDef; -begin - if Supports(GetDef, IwbNamedDef, NamedDef) then - Result := NamedDef.TreeHead - else - Result := False; -end; - -function TwbElement.GetValue: string; -var - Def: IwbDef; -begin - if wbReportMode then begin - Def := GetValueDef; - if Assigned(Def) then - Def.Used; - Def := GetDef; - if Assigned(Def) then - Def.Used; - end; - Result := ''; -end; - -function TwbElement.GetValueDef: IwbValueDef; -begin - Result := nil; -end; - -function TwbElement.HasErrors: Boolean; -begin - Result := Trim(GetCheck) <> ''; -end; - -procedure TwbElement.Hide; -begin - if not (esHidden in eStates) then begin - Include(eStates, esHidden); - ResetConflict; - end; -end; - -procedure TwbElement.InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); -begin - {can be overriden} -end; - -{$D-} -function TwbElement.InternalAddRef: Integer; -begin - Result := inherited _AddRef; -end; - -function TwbElement.InternalRelease: Integer; -begin - Result := inherited _Release; -end; -{$D+} - -procedure TwbElement.InvalidateParentStorage; -begin - if Assigned(eContainer) then - (IwbContainer(eContainer) as IwbElementInternal).InvalidateStorage; -end; - -procedure TwbElement.InvalidateStorage; -begin - InvalidateParentStorage; -end; - -function TwbElement.IsTagged: Boolean; -begin - Result := esTagged in eStates; -end; - -function TwbElement.LinksToParent: Boolean; -begin - Result := False; -end; - -procedure TwbElement.MarkModifiedRecursive; -begin - if not Assigned(eContainer) or IwbContainer(eContainer).IsElementEditable(Self) then begin - SetModified(True); - InvalidateParentStorage; - end; -end; - -procedure TwbElement.MasterCountUpdated(aOld, aNew: Byte); -begin - {can be overriden} -end; - -procedure TwbElement.MasterIndicesUpdated(const aOld, aNew: TBytes); -begin - Assert( Length(aOld) = Length(aNew) ); -end; - -procedure TwbElement.MergeStorage(var aBasePtr: Pointer; aEndPtr: Pointer); -{$IFDEF USE_CODESITE} -var - Log: Boolean; -{$ENDIF} -begin - {$IFDEF USE_CODESITE} - Log := (laElementMergeStorage in wbLoggingAreas) and wbCodeSiteLoggingEnabled; - if Log then begin - CodeSite.EnterMethod(Self, 'MergeStorage'); - CodeSite.Send('Self.Name', Self.GetName); - CodeSite.Send('Self.Path', Self.GetPath); - CodeSite.Send('Self.Value', Self.GetValue); - if StartsWith(Self.GetValue, ' 0 then - Include(eStates, esChangeNotified) - else - NotifyChangedInternal(aContainer); -end; - -procedure TwbElement.NotifyChangedInternal(aContainer: Pointer); -begin - if Assigned(eContainer) then - IwbContainerInternal(eContainer).ElementChanged(Self, aContainer); -end; - -procedure TwbElement.PrepareSave; -begin - {can be overriden} -end; - -procedure TwbElement.PreviousMember; -begin - if not CanChangeMember then - Exit; - IwbContainerInternal(eContainer).PreviousElementMember(Self); -end; - -function TwbElement.Reached: Boolean; -var - MainRecord : IwbMainRecord; -begin - Result := not (esReachable in eStates); - - if GetDontShow then - Exit; - - Exclude(eStates, esNotReachable); - Include(eStates, esReachable); - If Result then begin - if not GetNoReach then - if Supports(GetLinksTo, IwbMainRecord, MainRecord) then begin - MainRecord := MainRecord.WinningOverride; - (MainRecord as IwbElementInternal).Reached; - end; - if LinksToParent and Assigned(eContainer) then - (IwbContainer(eContainer) as IwbElementInternal).Reached; - end; -end; - -procedure TwbElement.Remove; -begin - if Assigned(eContainer) then begin - SetModified(True); - InvalidateParentStorage; - IwbContainer(eContainer).RemoveElement(Self as IwbElement); - end; -end; - -function TwbElement.RemoveInjected(aCanRemove: Boolean): Boolean; -begin - Result := GetReferencesInjected; - if Result and GetIsRemoveable then begin - Result := False; - Remove; - end; -end; - -procedure TwbElement.ReportRequiredMasters(aStrings: TStrings; aAsNew: Boolean; Recursive: Boolean = True; Initial: Boolean = false); -var - Element : IwbElement; - ReferenceFile : IwbFile; -begin - Element := GetLinksTo; - if Assigned(Element) then begin - ReferenceFile := Element.ReferenceFile; - if Assigned(ReferenceFile) then begin - aStrings.AddObject(ReferenceFile.FileName, Pointer(ReferenceFile)); - end; - end; -end; - -procedure TwbElement.RequestStorageChange(var aBasePtr, aEndPtr: Pointer; aNewSize: Cardinal); -begin - raise Exception.Create(GetName + ' is not editable'); -end; - -procedure TwbElement.ResetConflict; -begin - Exclude(eStates, esParentHiddenChecked); - Exclude(eStates, esParentHidden); -end; - -procedure TwbElement.ResetReachable; -begin - Include(eStates, esNotReachable); - Exclude(eStates, esReachable); -end; - -procedure TwbElement.ResetTags; -begin - Exclude(eStates, esTagged); -end; - -procedure TwbElement.SetContainer(const aContainer: IwbContainer); -begin - if Assigned(aContainer) then begin - Assert(not Assigned(eContainer)); - if esNotReachable in aContainer.ElementStates then - Include(eStates, esNotReachable); - end else - Assert(Assigned(eContainer)); - - if Assigned(aContainer) then - eContainer := Pointer(aContainer as IwbContainerInternal) - else - eContainer := nil; - - if not Assigned(eContainer) then - eContainerRef := nil - else - if eExternalRefs > 0 then - eContainerRef := aContainer as IwbContainerElementRef; -end; - -procedure TwbElement.SetDataSize(aSize: Integer); -begin - Assert(False, 'Can''t SetDataSize on ' + ClassName); -end; - -procedure TwbElement.SetEditValue(const aValue: string); -begin - raise Exception.Create(GetName + ' can not be edited.'); -end; - -procedure TwbElement.SetElementState(aState: TwbElementState; Clear: Boolean); -begin - if Clear then - Exclude(eStates, aState) - else - Include(eStates, aState); -end; - -procedure TwbElement.SetInternalModified(aValue: Boolean); -begin - wbBeginInternalEdit(True); - try - SetModified(aValue); - finally - wbEndInternalEdit; - end; -end; - -procedure TwbElement.SetMemoryOrder(aIndex: Integer); -begin - eMemoryOrder := aIndex; -end; - -procedure TwbElement.SetModified(aValue: Boolean); -begin - if aValue then begin - - if wbIsInternalEdit then begin - if not (esModified in eStates) then - Include(eStates, esInternalModified); - end else begin - Exclude(eStates, esInternalModified); - Include(eStates, esUnsaved); - end; - - Include(eStates, esModified); - Exclude(eStates, esSortKeyValid); - Exclude(eStates, esExtendedSortKeyValid); - eSortKey := ''; - eExtendedSortKey := ''; - -// if wbIsInternalEdit and (Self is TwbMainRecord) then -// Exit; - - if eUpdateCount > 0 then - Include(eStates, esModifiedUpdated) - else - if Assigned(eContainer) then - (IwbContainer(eContainer) as IwbElementInternal).Modified := True; - end; -end; - -procedure TwbElement.SetNativeValue(const aValue: Variant); -begin - raise Exception.Create(GetName + ' can not be edited.'); -end; - -procedure TwbElement.SetSortOrder(aIndex: Integer); -begin - eSortOrder := aIndex; -end; - -procedure TwbElement.SetToDefault; -{$IFDEF USE_CODESITE} -var - Log: Boolean; -{$ENDIF} -begin - {$IFDEF USE_CODESITE} - Log := (laElementSetToDefault in wbLoggingAreas) and wbCodeSiteLoggingEnabled; - if Log then begin - CodeSite.EnterMethod(Self, 'SetToDefault'); - CodeSite.Send('Self.Name', Self.GetName); - CodeSite.Send('Self.Path', Self.GetPath); - CodeSite.Send('Self.DataSize', Self.GetDataSize); - CodeSite.Send('Self.Value', Self.GetValue); - end; - {$ENDIF} - BeginUpdate; - try - SetToDefaultInternal; - finally - EndUpdate; - {$IFDEF USE_CODESITE} - if Log then begin - CodeSite.Send('Self.Value', Self.GetValue); - CodeSite.Send('Self.DataSize', Self.GetDataSize); - CodeSite.ExitMethod(Self, 'SetToDefault'); - end; - {$ENDIF} - end; -end; - -procedure TwbElement.SetToDefaultInternal; -begin - { can be overriden } -end; - -procedure TwbElement.Show; -begin - if esHidden in eStates then begin - Exclude(eStates, esHidden); - ResetConflict; - end; -end; - -procedure TwbElement.Tag; -begin - Include(eStates, esTagged); -end; - -procedure TwbElement.UpdatedEnded; -begin - if esChangeNotified in eStates then begin - Exclude(eStates, esChangeNotified); - NotifyChanged(eContainer); - end; - if esModifiedUpdated in eStates then begin - Exclude(eStates, esModifiedUpdated); - if Assigned(eContainer) and (esModified in eStates) then - (IwbContainer(eContainer) as IwbElementInternal).Modified := True; - end; -end; - -procedure TwbElement.WriteToStream(aStream: TStream; aResetModified: Boolean); -{$IFDEF USE_CODESITE} -var - Log: Boolean; -{$ENDIF} -begin - {$IFDEF USE_CODESITE} - Log := (laElementWriteToStream in wbLoggingAreas) and wbCodeSiteLoggingEnabled; - if Log then begin - CodeSite.EnterMethod(Self, 'WriteToStream'); - CodeSite.Send('Self.Name', Self.GetName); - CodeSite.Send('Self.Path', Self.GetPath); - CodeSite.Send('Self.Value', Self.GetValue); - CodeSite.Send('aStream.Position', aStream.Position); - CodeSite.Send('aResetModified', aResetModified); - end; - try - {$ENDIF} - WriteToStreamInternal(aStream, aResetModified); - {$IFDEF USE_CODESITE} - finally - if Log then begin - CodeSite.Send('aStream.Position', aStream.Position); - CodeSite.Send('Self.Value', Self.GetValue); - CodeSite.ExitMethod(Self, 'WriteToStream'); - end; - end; - {$ENDIF} -end; - -procedure TwbElement.WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); -begin - Exclude(eStates, esUnsaved); - if aResetModified then begin - Exclude(eStates, esModified); - Exclude(eStates, esInternalModified); - end; -end; - -{$D-} -function TwbElement._AddRef: Integer; -label - Skip; -begin - Assert(not (esDestroying in eStates)); - {$IFDEF WIN64} - if LockedInc(eExternalRefs) = 1 then - {$ENDIF WIN64} - {$IFDEF WIN32} - asm - mov eax, 1 - mov ecx, [Self] - lock xadd dword ptr [ecx + eExternalRefs], eax - cmp eax, 0 - jne Skip - end; - {$ENDIF WIN32} - eContainerRef := IInterface(eContainer) as IwbContainerElementRef; -Skip: - - Result := inherited _AddRef; -end; - -function TwbElement._Release: Integer; -label - Skip; -begin - {$IFDEF WIN64} - if LockedDec(eExternalRefs) = 0 then - {$ENDIF WIN64} - {$IFDEF WIN32} - asm - mov eax, -1 - mov ecx, [Self] - lock xadd dword ptr [ecx + eExternalRefs], eax - cmp eax, 1 - jne Skip - end; - {$ENDIF WIN32} - eContainerRef := nil; -Skip: - Result := inherited _Release; -end; -{$D+} - -{ TwbSubRecordArray } - -function TwbSubRecordArray.AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy: Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; -var - SelfRef : IwbContainerElementRef; - i : Integer; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be assigned.'); - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Assert(Assigned(aElement.Def)); - Assert(arcDef.Element.Equals(aElement.Def)); - - if arcSorted and not aAsNew then begin - Assert(not arcSortInvalid); - if FindBySortKey(aElement.SortKey[False], False,i) then begin - Result := cntElements[i]; - if aDeepCopy then - Result.Assign(Low(Integer), aElement, False); - Exit; - end; - end; - - if (csAsCreatedEmpty in cntStates) then begin - SetModified(True); - Assert(Length(cntElements)=1); - Result := cntElements[0]; - Exclude(cntStates, csAsCreatedEmpty); - end else - case arcDef.Element.DefType of - dtSubRecord: - Result := TwbSubRecord.Create(Self, arcDef.Element as IwbSubRecordDef); - dtSubRecordArray: - Result := TwbSubRecordArray.Create(Self, nil, Low(Integer), arcDef.Element as IwbSubRecordArrayDef); - dtSubRecordStruct: - Result := TwbSubRecordStruct.Create(Self, nil, Low(Integer), arcDef.Element as IwbSubRecordStructDef); - else - Assert(False); - end; - - try - Result.Assign(Low(Integer), aElement, not aDeepCopy); - except - Result.Container.RemoveElement(Result); - Result := nil; - raise; - end; -end; - -function TwbSubRecordArray.AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; -var - Element : IwbElement; - Container : IwbContainer; - i : Integer; - SelfRef : IwbContainerElementRef; - ElementDef : IwbRecordMemberDef; - DataContainer : IwbDataContainer; -begin - Result := nil; - - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be assigned.'); - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if (aIndex = Low(Integer)) and arcDef.CanAssign(Self, aIndex, aElement.Def) then begin - - if aOnlySK then - Exit; - - Container := aElement as IwbContainer; - - SetModified(True); - InvalidateStorage; - ReleaseElements; - - for i := 0 to Pred(Container.ElementCount) do - Assign(i, Container.Elements[i], aOnlySK); - - end else if (aIndex >= 0) and (not Assigned(aElement) or arcDef.Element.CanAssign(Self, Low(Integer), aElement.Def)) or - ((aIndex = Low(Integer)) and arcDef.Element.CanAssign(Self, aIndex, aElement.Def)) then begin - - Element := nil; - - if (csAsCreatedEmpty in cntStates) and Assigned(aElement) then begin - SetModified(True); - Assert(Length(cntElements)=1); - Element := cntElements[0]; - Exclude(cntStates, csAsCreatedEmpty); - end else begin - - ElementDef := arcDef.Element; - if ElementDef.DefType = dtSubRecordUnion then begin - if Assigned(aElement) then begin - Supports(aElement, IwbDataContainer, DataContainer); - ElementDef := (ElementDef as IwbRecordDef).GetMemberFor((aElement as IwbHasSignature).Signature, DataContainer) - end else - ElementDef := (ElementDef as IwbRecordDef).Members[0]; - Assert(Assigned(ElementDef)); - end; - - case ElementDef.DefType of - dtSubRecord: - Element := TwbSubRecord.Create(Self, ElementDef as IwbSubRecordDef); - dtSubRecordArray: - Element := TwbSubRecordArray.Create(Self, nil, Low(Integer), ElementDef as IwbSubRecordArrayDef); - dtSubRecordStruct: - Element := TwbSubRecordStruct.Create(Self, nil, Low(Integer), ElementDef as IwbSubRecordStructDef); - else - Assert(False); - end; - end; - - if Assigned(Element) and Assigned(aElement) then try - Element.Assign(Low(Integer), aElement, aOnlySK); - if csAsCreatedEmpty in cntStates then - Exclude(cntStates, csAsCreatedEmpty); - except - Element.Container.RemoveElement(Element); - raise; - end; - - Result := Element; - end; - - arcSorted := False; - if wbSortSubRecords and arcDef.Sorted[IwbContainer(eContainer)] then begin - if Length(cntElements) > 1 then - wbMergeSort(@cntElements[0], Length(cntElements), CompareSortKeys); - arcSorted := True; - end; -end; - -function TwbSubRecordArray.CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; -begin - Result := False; - if not wbEditAllowed then - Exit; - - if Assigned(eContainer) then - if not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - - if aCheckDontShow and GetDontShow then - Exit; - - if not Assigned(aElement) then begin - Result := aIndex >= 0; - Exit; - end; - - Result := arcDef.CanAssign(Self, aIndex, aElement.Def); - if not Result then begin - Result := arcDef.Element.CanAssign(Self, Low(Integer), aElement.Def); - if Result then - if aCheckDontShow and arcDef.Element.DontShow[aElement] then - Result := False; - end; -end; - -function TwbSubRecordArray.CanContainFormIDs: Boolean; -begin - Result := arcDef.CanContainFormIDs; -end; - -function TwbSubRecordArray.CanMoveElement: Boolean; -begin - Result := not arcSorted; -end; - -function TwbSubRecordArray.CanElementReset: Boolean; -begin -// Result := inherited CanElementReset; - Result := cntElementRefs < 1; -end; - -constructor TwbSubRecordArray.Create(const aOwner : IwbContainer; - const aContainer : IwbContainer; - aPos : Integer; - const aDef : IwbSubRecordArrayDef); -begin - arcDef := aDef; - eContainer := Pointer(aOwner); - try - if aPos <> Low(Integer) then begin - DoProcess(aContainer, aPos) - end else begin - Assign(High(Integer), nil, False); - Include(cntStates, csAsCreatedEmpty); - end; - finally - eContainer := nil; - end; - inherited Create(aOwner); - if aPos = Low(Integer) then begin - SetModified(True); - InvalidateStorage; - end; -end; - -procedure TwbSubRecordArray.DoInit; -begin - inherited; - if arcSorted and arcSortInvalid then begin - if Length(cntElements) > 1 then - wbMergeSort(@cntElements[0], Length(cntElements), CompareSortKeys); - arcSortInvalid := False; - end; -end; - -procedure TwbSubRecordArray.DoProcess(const aContainer : IwbContainer; - aPos : Integer); -var - SubRecord : IwbSubRecordInternal; - ElementDef : IwbRecordMemberDef; - Element : IwbElement; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self; - - while (aPos < aContainer.ElementCount) and - (aContainer[aPos].ElementType = etSubRecord) do begin - - SubRecord := aContainer[aPos] as IwbSubRecordInternal; - ElementDef := arcDef.Element; - if ElementDef.DefType = dtSubRecordUnion then begin - ElementDef := (ElementDef as IwbRecordDef).GetMemberFor(SubRecord.Signature, SubRecord); - if not Assigned(ElementDef) then - Break; - end; - - if not ElementDef.CanHandle(SubRecord.Signature, SubRecord) then - Break; - - case ElementDef.DefType of - dtSubRecord: begin - aContainer.RemoveElement(aPos); - SubRecord.SetDef(ElementDef as IwbSubRecordDef); - AddElement(SubRecord); - end; - dtSubRecordArray: begin - Element := TwbSubRecordArray.Create(Self, aContainer, aPos, ElementDef as IwbSubRecordArrayDef); - end; - dtSubRecordStruct: - Element := TwbSubRecordStruct.Create(Self, aContainer, aPos, ElementDef as IwbSubRecordStructDef); - else - raise Exception.CreateFmt('Unexpected def type for SubRecord %s in array', [String(SubRecord.Signature)]); - end; - - end; - - arcSorted := False; - if wbSortSubRecords and arcDef.Sorted[aContainer] then begin - arcSorted := True; - arcSortInvalid := True; - end; -end; - -procedure TwbSubRecordArray.ElementChanged(const aElement: IwbElement; aContainer: Pointer); -begin - inherited; - if arcSorted then - arcSortInvalid := True; -end; - -function TwbSubRecordArray.GetDef: IwbNamedDef; -begin - Result := arcDef; -end; - -function TwbSubRecordArray.GetElementType: TwbElementType; -begin - Result := etSubRecordArray; -end; - -function TwbSubRecordArray.GetName: string; -begin - Result := arcDef.GetName; -end; - -function TwbSubRecordArray.GetSignature: TwbSignature; -var - i : Integer; - lRecord : IwbRecord; - - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - if GetElementCount > 0 then begin - Assert(not arcSortInvalid); - Result := NONE; - for i := 0 to Pred(GetElementCount) do - if Supports(GetElement(i), IwbRecord, lRecord) then begin - Result := lRecord.Signature; - Exit; - end; - end; -end; - -function TwbSubRecordArray.GetSorted: Boolean; -begin - Result := arcSorted; -end; - -function TwbSubRecordArray.IsElementRemoveable(const aElement: IwbElement): Boolean; -begin - Result := IsElementEditable(aElement) and (Length(cntElements) > 1); -end; - -procedure TwbSubRecordArray.SetModified(aValue: Boolean); -begin - inherited; - if aValue and arcSorted then - arcSortInvalid := True; -end; - -{ TwbSubRecordStruct } - -function TwbSubRecordStruct.Add(const aName: string; aSilent: Boolean): IwbElement; -var - Signature : TwbSignature; - Index : Integer; -begin - Result := nil; - - if not IsElementEditable(nil) then - raise Exception.Create('"' + GetName + '" is not editable'); - - Result := nil; - - if Length(aName) < 4 then - Exit; - - Signature := StrToSignature(aName); - - Result := GetElementBySignature(Signature); - if Assigned(Result) then - Exit; - - Index := srcDef.GetMemberIndexFor(Signature, nil); - if Index >= 0 then - Assign(Index, nil, False); - - Result := GetElementBySignature(Signature); - Assert(Assigned(Result)); -end; - -function TwbSubRecordStruct.AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy: Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; -var - SelfRef : IwbContainerElementRef; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be assigned.'); - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - Assert(aElement.SortOrder >= 0); - Assert(aElement.SortOrder < srcDef.MemberCount); - Assert(Assigned(aElement.Def)); - Assert(aElement.Def.Equals(srcDef.Members[aElement.SortOrder])); - - Result := GetElementBySortOrder(aElement.SortOrder + GetAdditionalElementCount); - if not Assigned(Result) then begin - Assign(aElement.SortOrder, aElement, not aDeepCopy); - Result := GetElementBySortOrder(aElement.SortOrder + GetAdditionalElementCount); - Assert(Assigned(Result)); - - if wbSortSubRecords and (Length(cntElements) > 1) then - wbMergeSort(@cntElements[0], Length(cntElements), CompareSubRecords); - end else - Result.Assign(Low(Integer), aElement, not aDeepCopy); -end; - -procedure TwbSubRecordStruct.AddRequiredElements; -var - CurrentDefPos : Integer; - CurrentDef : IwbRecordMemberDef; - Element : IwbElementInternal; -begin - for CurrentDefPos := 0 to Pred(srcDef.MemberCount) do begin - CurrentDef := srcDef.Members[CurrentDefPos]; - if ((CurrentDefPos = 0) and not srcDef.AllowUnordered) or CurrentDef.Required then begin - - if CurrentDef.DefType = dtSubRecordUnion then begin - CurrentDef := (CurrentDef as IwbRecordDef).Members[0]; - Assert(Assigned(CurrentDef)); - end; - - case CurrentDef.DefType of - dtSubRecord : Element := TwbSubRecord.Create(Self, CurrentDef as IwbSubRecordDef); - dtSubRecordArray : Element := TwbSubRecordArray.Create(Self, nil, Low(Integer), CurrentDef as IwbSubRecordArrayDef); - dtSubRecordStruct : Element := TwbSubRecordStruct.Create(Self, nil, Low(Integer), CurrentDef as IwbSubRecordStructDef); - else - Assert(False); - end; - - Element.SetSortOrder(CurrentDefPos); - Element.SetMemoryOrder(CurrentDefPos); - - end; - end; -end; - -function TwbSubRecordStruct.AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; -var - Member : IwbRecordMemberDef; - Container : IwbContainer; - Element : IwbElement; - i : Integer; -begin - Result := nil; - - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be assigned.'); - - if aIndex = Low(Integer) then begin - - Container := aElement as IwbContainer; - - SetModified(True); - InvalidateStorage; - ReleaseElements; - AddRequiredElements; - - if Assigned(Container) then - for i := 0 to Pred(Container.ElementCount) do begin - Element := Container.Elements[i]; - if not aOnlySK or GetIsInSK(Element.SortOrder) then - Assign(Element.SortOrder, Element, aOnlySK); - end; - - end else begin - - if (aIndex >= 0) and (aIndex < srcDef.MemberCount) then begin - Member := srcDef.Members[aIndex]; - if not Assigned(aElement) or Member.CanAssign(Self, Low(Integer), aElement.Def) then begin - Element := GetElementBySortOrder(aIndex + GetAdditionalElementCount); - if Assigned(Element) then begin - if Assigned(aElement) then - Element.Assign(Low(Integer), aElement, aOnlySK) - end else begin - - case Member.DefType of - dtSubRecord: - Element := TwbSubRecord.Create(Self, Member as IwbSubRecordDef); - dtSubRecordArray: - Element := TwbSubRecordArray.Create(Self, nil, Low(Integer), Member as IwbSubRecordArrayDef); - dtSubRecordStruct: - Element := TwbSubRecordStruct.Create(Self, nil, Low(Integer), Member as IwbSubRecordStructDef); - else - Assert(False); - end; - - if Assigned(Element) then try - Element.SortOrder := aIndex; - if Assigned(aElement) then - Element.Assign(Low(Integer), aElement, aOnlySK); - except - Element.Container.RemoveElement(Element); - raise; - end; - - end; - Result := Element; - end; - end; - end; - - if wbSortSubRecords and (Length(cntElements) > 1) then - wbMergeSort(@cntElements[0], Length(cntElements), CompareSubRecords); -end; - -function TwbSubRecordStruct.CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; -begin - Result := False; - if not wbEditAllowed then - Exit; - - if Assigned(eContainer) then - if not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - - if aCheckDontShow and GetDontShow then - Exit; - - if not Assigned(aElement) then begin - Result := (aIndex >= 0) and (aIndex < srcDef.MemberCount) and (GetElementBySortOrder(aIndex + GetAdditionalElementCount) = nil); - if Result and aCheckDontShow then - if srcDef.Members[aIndex].DontShow[Self] then - Result := False; - Exit; - end; - - if Assigned(srcDef) then begin - if aIndex = Low(Integer) then - Result := srcDef.Equals(aElement.Def) - else begin - Result := (aIndex >= 0) and (aIndex < srcDef.MemberCount) and - srcDef.Members[aIndex].CanAssign(Self, Low(Integer), aElement.Def); - if Result and aCheckDontShow then - if srcDef.Members[aIndex].DontShow[Self] then - Result := False; - end; - end else - Result := False; -end; - -function TwbSubRecordStruct.CanContainFormIDs: Boolean; -begin - Result := srcDef.CanContainFormIDs; -end; - -function TwbSubRecordStruct.CanElementReset: Boolean; -begin -// Result := inherited CanElementReset; - Result := cntElementRefs < 1; -end; - -constructor TwbSubRecordStruct.Create(const aOwner : IwbContainer; - const aContainer : IwbContainer; - aPos : Integer; - const aDef : IwbSubRecordStructDef); -var - CurrentDefPos : Integer; - CurrentRec : IwbSubRecordInternal; - CurrentDef : IwbRecordMemberDef; - Element : IwbElementInternal; -begin - srcDef := aDef as IwbRecordDef; - - if aPos = Low(Integer) then begin - AddRequiredElements; - end else begin - CurrentDefPos := 0; - while (aPos < aContainer.ElementCount) and (CurrentDefPos < srcDef.MemberCount) do begin - - if aContainer[aPos].ElementType <> etSubRecord then - Break; - - CurrentRec := aContainer[aPos] as IwbSubRecordInternal; - - if not srcDef.ContainsMemberFor(CurrentRec.Signature, CurrentRec) then begin - if srcDef.SkipSignature[CurrentRec.Signature] then begin - Inc(aPos); - Continue; - end; - Break; - end; - - if srcDef.AllowUnordered then begin - - CurrentDefPos := srcDef.GetMemberIndexFor(CurrentRec.Signature, CurrentRec); - if CurrentDefPos < 0 then begin - if Assigned(wbProgressCallback) then - wbProgressCallback('Error: record '+ String(GetSignature) + ' contains unexpected (or out of order) subrecord ' + String(CurrentRec.Signature) + ' ' + IntToHex(Int64(Cardinal(CurrentRec.Signature)), 8) ); - //FoundError := True; - Inc(aPos); - Continue; - end; - CurrentDef := srcDef.Members[CurrentDefPos]; - - end; - - CurrentDef := srcDef.Members[CurrentDefPos]; - if not CurrentDef.CanHandle(CurrentRec.Signature, CurrentRec) then begin - Inc(CurrentDefPos); - Continue; - end; - - if CurrentDef.DefType = dtSubRecordUnion then begin - CurrentDef := (CurrentDef as IwbRecordDef).GetMemberFor(CurrentRec.Signature, CurrentRec); - Assert(Assigned(CurrentDef)); - end; - - case CurrentDef.DefType of - dtSubRecord : begin - aContainer.RemoveElement(aPos); - CurrentRec.SetDef(CurrentDef as IwbSubRecordDef); - AddElement(CurrentRec); - Element := CurrentRec as IwbElementInternal; - end; - dtSubRecordArray : Element := TwbSubRecordArray.Create(Self, aContainer, aPos, CurrentDef as IwbSubRecordArrayDef); - dtSubRecordStruct : Element := TwbSubRecordStruct.Create(Self, aContainer, aPos, CurrentDef as IwbSubRecordStructDef); - else - raise Exception.CreateFmt('Unexpected def type for SubRecord %s', [String(CurrentRec.Signature)]); - end; - - Element.SetSortOrder(CurrentDefPos); - Element.SetMemoryOrder(CurrentDefPos); - - Inc(CurrentDefPos); - end; - end; - - srcDef.AfterLoad(Self); - - inherited Create(aOwner); - if aPos = Low(Integer) then begin - SetModified(True); - InvalidateStorage; - end; -end; - -function TwbSubRecordStruct.GetDef: IwbNamedDef; -begin - Result := srcDef; -end; - -function TwbSubRecordStruct.GetElementType: TwbElementType; -begin - Result := etSubRecordStruct; -end; - -function TwbSubRecordStruct.GetIsInSK(aIndex: Integer): Boolean; -var - SelfRef : IwbContainerElementRef; - HasSortKey : IwbHasSortKeyDef; -begin - Result := False; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if not Supports(srcDef, IwbHasSortKeyDef, HasSortKey) then - Exit; - - Result := HasSortKey.IsInSK(aIndex); -end; - -function TwbSubRecordStruct.GetName: string; -begin - Result := srcDef.GetName; -end; - -function TwbSubRecordStruct.GetSignature: TwbSignature; -var - i : Integer; - lRecord : IwbRecord; - - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - - Result := NONE; - for i := 0 to Pred(GetElementCount) do - if Supports(GetElement(i), IwbRecord, lRecord) then begin - Result := lRecord.Signature; - Exit; - end; -end; - -function TwbSubRecordStruct.GetSortKeyInternal(aExtended: Boolean): string; -var - HasSortKey : IwbHasSortKeyDef; - SortMember : Integer; - Element : IwbElement; - i : Integer; - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - Result := ''; - if Supports(srcDef, IwbHasSortKeyDef, HasSortKey) then begin - DoInit; - if HasSortKey.SortKeyCount[False] > 0 then - for i := 0 to Pred(HasSortKey.SortKeyCount[aExtended]) do begin - SortMember := HasSortKey.SortKeys[i, aExtended]; - Element := GetElementBySortOrder(SortMember + GetAdditionalElementCount); - if Assigned(Element) then - Result := Result + Element.SortKey[aExtended]; - - if i < Pred(HasSortKey.SortKeyCount[aExtended]) then - Result := Result + '|'; - end; - end; -end; - -function TwbSubRecordStruct.IsElementRemoveable(const aElement: IwbElement): Boolean; -begin - Result := IsElementEditable(aElement) and (Length(cntElements) > 1) and (srcDef.AllowUnordered or not cntElements[0].Equals(aElement)); - if Result and Assigned(aElement.Def) then - Result := not aElement.Def.Required; -end; - -function TwbSubRecordStruct.RemoveInjected(aCanRemove: Boolean): Boolean; -var - Element : IwbElement; - Container : IwbContainerElementRef; - SelfRef : IwbContainerElementRef; - i : Integer; -begin - if SameText(GetName, 'Result Script') then begin - Result := False; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if Supports(GetElementByName('References'), IwbContainerElementRef, Container) then - for i := 0 to Pred(Container.ElementCount) do begin - Result := Container.Elements[i].ReferencesInjected; - if Result then - Break; - end; - - if Result then begin - Result := False; - Container.Remove; - Element := GetRecordBySignature('SCHD'); - if Assigned(Element) then - Element.Remove; - Element := GetRecordBySignature('SCDA'); - if Assigned(Element) then - Element.Remove; - Element := GetRecordBySignature('SCTX'); - if Assigned(Element) then - Element.Remove; - if Supports(GetRecordBySignature('SCHR'), IwbContainerElementRef, Container) then begin - Container.ElementByName['RefCount'].EditValue := '0'; - Container.ElementByName['CompiledSize'].EditValue := '0'; - Container.ElementByName['VariableCount'].EditValue := '0'; - end; - end; - end else - Result := inherited RemoveInjected(aCanRemove); -end; - -function ArrayDoInit(const aValueDef: IwbValueDef; const aContainer: IwbContainer; var aBasePtr: Pointer; aEndPtr: Pointer; out SizePrefix: Integer): Boolean; -var - Element : IwbElement; - ArrayDef : IwbArrayDef; - ValueDef : IwbValueDef; - i : Integer; - t : string; - VarSize : Boolean; - ArrSize : Integer; -begin - ArrayDef := aValueDef as IwbArrayDef; - Result := wbSortSubRecords and ArrayDef.Sorted; - if not ArrayDef.CanAddTo then - aContainer.SetElementState(esNotSuitableToAddTo); - - SizePrefix := ArrayDef.PrefixSize[aBasePtr]; - - i := 0; - - ValueDef := ArrayDef.Element; - VarSize := ArrayDef.IsVariableSize; - ArrSize := ArrayDef.ElementCount; - if ArrSize < 0 then begin - ArrSize := ArrayDef.PrefixCount[aBasePtr]; - end else - if (ArrSize < 1) and Assigned(ArrayDef.CountCallback) then - ArrSize := ArrayDef.CountCallback(aBasePtr, aEndPtr, aContainer) - else if VarSize then - ArrSize := High(Integer); - - if Assigned(aBasePtr) then - Inc(PByte(aBasePtr), SizePrefix); - - if ArrSize > 0 then - while not VarSize or ((Cardinal(aBasePtr) < Cardinal(aEndPtr)) or (not Assigned(aBasePtr))) do begin - if Result then - t := '' - else begin - t := ArrayDef.ElementLabel[i]; - if t <> '' then - t := ' (' + t + ')'; - t := '#' + IntToStr(i) + t; - end; - - case ValueDef.DefType of - dtArray: Element := TwbArray.Create(aContainer, aBasePtr, aEndPtr, ValueDef, t); - dtStruct: Element := TwbStruct.Create(aContainer, aBasePtr, aEndPtr, ValueDef, t); - dtStructChapter: Element := TwbChapter.Create(aContainer, aBasePtr, aEndPtr, ValueDef, t); - dtUnion: Element := TwbUnion.Create(aContainer, aBasePtr, aEndPtr, ValueDef, t); - dtString: begin - if Assigned(aBasePtr) and (PAnsiChar(aBasePtr)^ = #0) and (ValueDef.IsVariableSize) then begin - Inc(PByte(aBasePtr)); - Break; - end; - Element := TwbValue.Create(aContainer, aBasePtr, aEndPtr, ValueDef, t); - end; - else - Element := TwbValue.Create(aContainer, aBasePtr, aEndPtr, ValueDef, t); - end; - - Inc(i); - if VarSize and not Assigned(aBasePtr) then begin - (aContainer as IwbContainerInternal).CreatedEmpty; - Break; - end; - - Dec(ArrSize); - if ArrSize = 0 then - Break - { else if not (not VarSize or ((Cardinal(aBasePtr) < Cardinal(aEndPtr)) or (not Assigned(aBasePtr)))) then - wbProgressCallback('Error: not enough data for array. Elements remaining are '+IntToStr(ArrSize)) Silently fails = called at an invalid time }; - end; - - if (ValueDef.DefType = dtString) and (ValueDef.IsVariableSize) then - Element := TwbStringListTerminator.Create(aContainer); - - ArrayDef.AfterLoad(aContainer); -end; - -{ TwbArray } - -procedure TwbArray.Init; -var - BasePtr: Pointer; -begin - inherited; - - if GetSkipped then - Exit; - - BasePtr := GetDataBasePtr; - arrSorted := ArrayDoInit(vbValueDef, Self, BasePtr, dcDataEndPtr, arrSizePrefix); - - arrSortInvalid := arrSorted; -end; - -function TwbArray.AddIfMissingInternal(const aElement: IwbElement; aAsNew, aDeepCopy: Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; -var - SelfRef : IwbContainerElementRef; - i : Integer; - s : string; - ArrayDef : IwbArrayDef; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be modified.'); - - SelfRef := Self as IwbContainerElementRef; - - DoInit; - - ArrayDef := vbValueDef as IwbArrayDef; - - if arrSorted then begin - Assert(not arrSortInvalid); - if FindBySortKey(aElement.SortKey[False], False, i) then begin - Result := cntElements[i]; - if aDeepCopy then - Result.Assign(Low(Integer), aElement, False); - Exit; - end; - end; - - if arrSorted then - s := '' - else - s := '#' + IntToStr(Length(cntElements)); - - if not Supports(aElement, IwbStringListTerminator) then - case ArrayDef.Element.DefType of - dtArray: Result := TwbArray.Create(Self, ArrayDef.Element, aElement, not aDeepCopy, s); - dtStruct: Result := TwbStruct.Create(Self, ArrayDef.Element, aElement, not aDeepCopy, s); - dtStructChapter: Result := TwbChapter.Create(Self, ArrayDef.Element, aElement, not aDeepCopy, s); - dtUnion: Result := TwbUnion.Create(Self, ArrayDef.Element, aElement, not aDeepCopy, s); - else - Result := TwbValue.Create(Self, ArrayDef.Element, aElement, not aDeepCopy, s); - end; - - CheckCount; - CheckTerminator; -end; - -function TwbArray.AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; -var - Element : IwbElement; - sElement : IwbElement; - dElement : IwbElement; - ArrayDef : IwbArrayDef; - Container : IwbContainer; - DataContainer : IwbDataContainer; - s : string; - i : Integer; - SelfRef : IwbContainerElementRef; - p, q : Pointer; -begin - Result := nil; - - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be assigned.'); - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - ArrayDef := vbValueDef as IwbArrayDef; - - if (aIndex = Low(Integer)) and ArrayDef.CanAssign(Self, aIndex, aElement.ValueDef) then begin - - if aOnlySK then - Exit; - - Container := aElement as IwbContainer; - - if ArrayDef.IsVariableSize then begin - Assert(ArrayDef.ElementCount <= 0); - SetModified(True); - InvalidateStorage; - ReleaseElements; - dcDataStorage := nil; - dcDataBasePtr := @EmptyPtr; - dcDataEndPtr := @EmptyPtr; - Exclude(dcFlags, dcfStorageInvalid); - if ArrayDef.ElementCount < 0 then - if aElement.DataSize > 0 then begin - RequestStorageChange(p, q, aElement.DataSize); - if Supports(aElement, IwbDataContainer, DataContainer) then begin - q := DataContainer.DataBasePtr; - Move(q^, p^, aElement.DataSize); - end; - end else - RequestStorageChange(p, q, ArrayDef.PrefixSize[nil]); - NotifyChanged(eContainer); - - for i := 0 to Pred(Container.ElementCount) do - Assign(i, Container.Elements[i], aOnlySK); - end else begin - Assert(Container.ElementCount = ArrayDef.ElementCount); - Assert(GetElementCount = ArrayDef.ElementCount); - - for i := 0 to Pred(Container.ElementCount) do begin - sElement := Container.Elements[i]; - dElement := GetElementByMemoryOrder(i); - dElement.Assign(Low(Integer), sElement, aOnlySK); - end; - end; - - end else begin - if (aIndex >= 0) and (ArrayDef.ElementCount <= 0) and ((aIndex = High(Integer)) or ArrayDef.Element.CanAssign(Self, Low(Integer), aElement.ValueDef)) then begin - {add one entry} - - if arrSorted then - s := '' - else - s := '#' + IntToStr(Length(cntElements)); - - Element := nil; - - if not Supports(aElement, IwbStringListTerminator) then - case ArrayDef.Element.DefType of - dtArray: Element := TwbArray.Create(Self, ArrayDef.Element, aElement, aOnlySK, s); - dtStruct: Element := TwbStruct.Create(Self, ArrayDef.Element, aElement, aOnlySK, s); - dtStructChapter: Element := TwbChapter.Create(Self, ArrayDef.Element, aElement, aOnlySK, s); - dtUnion: Element := TwbUnion.Create(Self, ArrayDef.Element, aElement, aOnlySK, s); - else - Element := TwbValue.Create(Self, ArrayDef.Element, aElement, aOnlySK, s); - end; - - Result := Element; - - end; - end; - - CheckCount; - CheckTerminator; -end; - -function TwbArray.CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; -var - ArrayDef: IwbArrayDef; -begin - Result := False; - if not wbEditAllowed then - Exit; - - if Assigned(eContainer) then - if not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - - if aCheckDontShow and GetDontShow then - Exit; - - ArrayDef := vbValueDef as IwbArrayDef; - if not Assigned(aElement) then begin - if aIndex = High(Integer) then - Result := ArrayDef.ElementCount <= 0; - Exit; - end; - Result := - ArrayDef.CanAssign(Self, aIndex, aElement.ValueDef) or - ( (ArrayDef.ElementCount <= 0) and ArrayDef.Element.CanAssign(Self, Low(Integer), aElement.ValueDef) ); -end; - -function TwbArray.CanMoveElement: Boolean; -begin - Result := not arrSorted; -end; - -procedure TwbArray.CheckCount; -var - Count : Cardinal; - i : Integer; - UpdateCount : Integer; - ArrayDef : IwbArrayDef; -begin - if arrSizePrefix = 0 then - Exit; - - ArrayDef := vbValueDef as IwbArrayDef; - Count := arrayDef.PrefixCount[dcDataBasePtr]; - - DoInit; - - if Count <> Length(cntElements) then begin - UpdateCount := eUpdateCount; - for i := 1 to UpdateCount do EndUpdate; // Stops optimisation - ArrayDef.SetPrefixCount(dcDataBasePtr, Length(cntElements)); - for i := 1 to UpdateCount do BeginUpdate; // Restore optimisation - end; -end; - -procedure TwbArray.CheckTerminator; -var - i : Integer; - ArrayDef : IwbArrayDef; -begin - ArrayDef := vbValueDef as IwbArrayDef; - if not ArrayDef.IsVariableSize then - Exit; - if ArrayDef.Element.DefType <> dtString then - Exit; - - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbStringListTerminator) then - Exit; - - SetModified(True); - InvalidateStorage; - TwbStringListTerminator.Create(Self); - if arrSorted then - arrSortInvalid := True; -end; - -procedure TwbArray.DoInit; -var - i : Integer; - Sorting : Boolean; -begin - inherited; - if arrSorted and arrSortInvalid then - if (Length(cntElements) > 1) then begin - Sorting := False; - for i := 0 to Length(cntElements)-1 do - if (esSorting in (cntElements[i] as IwbElementInternal).ElementStates) then begin - Sorting := TRue; - Break; - end; - if not Sorting then begin - wbMergeSort(@cntElements[0], Length(cntElements), CompareSortKeys); - arrSortInvalid := False; - end; - end; -end; - -procedure TwbArray.ElementChanged(const aElement: IwbElement; aContainer: Pointer); -begin - inherited; - if arrSorted then - arrSortInvalid := True; -end; - -function TwbArray.GetDataPrefixSize: Integer; -begin - Result := arrSizePrefix; -end; - -function TwbArray.GetElementType: TwbElementType; -begin - Result := etArray; -end; - -function TwbArray.GetSorted: Boolean; -begin - Result := arrSorted; -end; - -function TwbArray.IsElementRemoveable(const aElement: IwbElement): Boolean; -begin - Result := IsElementEditable(aElement) and ((vbValueDef as IwbArrayDef).ElementCount <= 0) { and (Length(cntElements)>1)}; -end; - -procedure TwbArray.PrepareSave; -begin - CheckCount; - CheckTerminator; - inherited; -end; - -procedure TwbArray.Reset; -begin - ReleaseElements; - arrSorted := False; - arrSortInvalid := False; - inherited; -end; - -procedure TwbArray.SetModified(aValue: Boolean); -begin - inherited; - if aValue and arrSorted then - arrSortInvalid := True; -end; - -{ TwbStruct } - -procedure StructDoInit(const aValueDef: IwbValueDef; const aContainer: IwbContainer; var aBasePtr: Pointer; aEndPtr: Pointer); -var - StructDef : IwbStructDef; - i : Integer; - ValueDef : IwbValueDef; - Element : IwbElementInternal; - IntegerDef : IwbIntegerDef; - OptionalFromElement : Integer; - Size : Integer; - over : Boolean; -begin - StructDef := aValueDef as IwbStructDef; - - OptionalFromElement := StructDef.OptionalFromElement; - if OptionalFromElement < 0 then - OptionalFromElement := High(Integer); - - for i := 0 to Pred(StructDef.MemberCount) do begin - ValueDef := StructDef.Members[i]; - if Assigned(aBasePtr) and (i >= OptionalFromElement) then begin - over := (Cardinal(aBasePtr) >= Cardinal(aEndPtr)); - if not over then begin - Size := ValueDef.Size[aBasePtr, aEndPtr, aContainer]; - over := (Size Cardinal(aEndPtr)); - end; - if over then begin - aEndPtr := aBasePtr; - ValueDef := Resolve(ValueDef, aBasePtr, aEndPtr, aContainer); - if Supports(ValueDef, IwbIntegerDef, IntegerDef) and Supports(IntegerDef.Formater[aContainer], IwbFlagsDef) then - ValueDef := wbEmpty(ValueDef.Name, cpIgnore, False, nil, True) - else - ValueDef := wbEmpty(ValueDef.Name, cpIgnore); - end; - end; - - case ValueDef.DefType of - dtArray: Element := TwbArray.Create(aContainer, aBasePtr, aEndPtr, ValueDef, ''); - dtStruct: Element := TwbStruct.Create(aContainer, aBasePtr, aEndPtr, ValueDef, ''); - dtStructChapter: Element := TwbChapter.Create(aContainer, aBasePtr, aEndPtr, ValueDef, ''); - dtUnion: Element := TwbUnion.Create(aContainer, aBasePtr, aEndPtr, ValueDef, ''); - else - Element := TwbValue.Create(aContainer, aBasePtr, aEndPtr, ValueDef, ''); - end; - - {if wbHideUnused and not wbEditAllowed and (Element.GetName = 'Unused') then begin - with aContainer do begin - Assert((LastElement as IwbElementInternal) = Element); - RemoveElement(Pred(ElementCount)); - end; - end else} begin - Element.SetSortOrder(i); - Element.SetMemoryOrder(i); - end; - end; - - StructDef.AfterLoad(aContainer); -end; - -procedure TwbStruct.Init; -var - BasePtr: Pointer; -begin - inherited; - - if GetSkipped then - Exit; - - DecompressIfNeeded; - - BasePtr := GetDataBasePtr; - StructDoInit(vbValueDef, Self, BasePtr, dcDataEndPtr); -end; - -function TwbStruct.GetElementType: TwbElementType; -begin - Result := etStruct; -end; - -procedure TwbStruct.Reset; -begin - ReleaseElements; - inherited; -end; - -procedure TwbStruct.DecompressIfNeeded; -var - sc : TwbStructCompression; -begin - sc := IsCompressed; - if sc <> scNone then try - InitDataPtr; // reset... - - SetLength(dcDataStorage, szUncompressedSize ); - - case sc of - scNone: Assert(False); // Getting there would be very funny :) - scZComp: - DecompressToUserBuf( - Pointer(Cardinal(dcDataBasePtr)), - GetDataSize, - @dcDataStorage[0], - PCardinal(dcDataBasePtr)^ - ); - scLZComp: - LZ4_decompress_safe(Pointer(Cardinal(dcDataBasePtr)), @dcDataStorage[0], GetDataSize, szUncompressedSize); - else - Assert(False); // Something hasn't been updated yet. - end; - - dcDataEndPtr := Pointer( Cardinal(@dcDataStorage[0]) + szUncompressedSize ); - dcDataBasePtr := @dcDataStorage[0]; - except - dcDataBasePtr := nil; - dcDataEndPtr := nil; - end; -end; - -function TwbStruct.GetIsCompressed: TwbStructCompression; -var - szDef : IwbStructZDef; - lzDef : IwbStructLZDef; -begin - if (szCompressedSize = 0) then - if Supports(vbValueDef, IwbStructZDef, szDef) then begin - szUncompressedSize := szDef.GetSizing(GetDataBasePtr, GetDataEndPtr, Self, szCompressedSize); - if szUncompressedSize <> 0 then szCompressedType := scZComp; - end else if Supports(vbValueDef, IwbStructLZDef, lzDef) then begin - szUncompressedSize := lzDef.GetSizing(GetDataBasePtr, GetDataEndPtr, Self, szCompressedSize); - if szUncompressedSize <> 0 then szCompressedType := scLZComp; - end else - szCompressedSize := -1; - Result := szCompressedType; -end; - -{ TwbUnion } - -function UnionDoInit(const aValueDef: IwbValueDef; const aContainer: IwbContainer; var aBasePtr: Pointer; aEndPtr: Pointer): TwbUnionFlags; -var - UnionDef : IwbUnionDef; - ValueDef : IwbValueDef; - ArrayDef : IwbArrayDef; - Element : IwbElementInternal; - -begin - Result := ufNone; - UnionDef := aValueDef as IwbUnionDef; - - ValueDef := UnionDef.Decide(aBasePtr, aEndPtr, aContainer); - - if Assigned(ValueDef) then // I had one case. Most likely due to an error in wbXXXXDefinitions - case ValueDef.DefType of - dtArray: begin - if wbSortSubRecords and Supports(ValueDef, IwbArrayDef, ArrayDef) and ArrayDef.Sorted then - Result := ufSortedArray - else - Result := ufArray; - Element := TwbArray.Create(aContainer, aBasePtr, aEndPtr, ValueDef, ''); - end; - dtStruct: Element := TwbStruct.Create(aContainer, aBasePtr, aEndPtr, ValueDef, ''); - dtStructChapter: Element := TwbChapter.Create(aContainer, aBasePtr, aEndPtr, ValueDef, ''); - dtUnion: Element := TwbUnion.Create(aContainer, aBasePtr, aEndPtr, ValueDef, ''); - else - Element := nil; // >>> so that simple union behave as they did <<< TwbValue.Create(aContainer, aBasePtr, aEndPtr, ValueDef, ''); - if ValueDoInit(aValueDef, aContainer, aBasePtr, aEndPtr, aContainer) then Result := ufFlags; - end; - - if Assigned(Element) then begin - Element.SetSortOrder(0); - Element.SetMemoryOrder(0); - end; - - UnionDef.AfterLoad(aContainer); -end; - -function TwbUnion.CompareExchangeFormID(aOldFormID, aNewFormID: Cardinal): Boolean; -var - SelfRef : IwbContainerElementRef; - ResolvedDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - - Result := inherited CompareExchangeFormID(aOldFormID, aNewFormID); - - ResolvedDef := Resolve(vbValueDef, GetDataBasePtr, dcDataEndPtr, Self); - if Assigned(ResolvedDef) then - Result := ResolvedDef.CompareExchangeFormID(GetDataBasePtr, dcDataEndPtr, Self, aOldFormID, aNewFormID) or Result; -end; - -function TwbUnion.GetElementType: TwbElementType; -begin - Result := etUnion; -end; - -procedure TwbUnion.Init; -var - BasePtr: Pointer; -begin - inherited; - - if GetSkipped then - Exit; - - BasePtr := GetDataBasePtr; - UnionDoInit(vbValueDef, Self, BasePtr, dcDataEndPtr); -end; - -procedure TwbUnion.MasterCountUpdated(aOld, aNew: Byte); -var - SelfRef : IwbContainerElementRef; - ResolvedDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - - inherited MasterCountUpdated(aOld, aNew); - - ResolvedDef := Resolve(vbValueDef, GetDataBasePtr, dcDataEndPtr, Self); - if Assigned(ResolvedDef) then - ResolvedDef.MasterCountUpdated(GetDataBasePtr, dcDataEndPtr, Self, aOld, aNew); -end; - -procedure TwbUnion.MasterIndicesUpdated(const aOld, aNew: TBytes); -var - SelfRef : IwbContainerElementRef; - ResolvedDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - - inherited MasterIndicesUpdated(aOld, aNew); - - ResolvedDef := Resolve(vbValueDef, GetDataBasePtr, dcDataEndPtr, Self); - if Assigned(ResolvedDef) then - ResolvedDef.MasterIndicesUpdated(GetDataBasePtr, dcDataEndPtr, Self, aOld, aNew); -end; - -procedure TwbUnion.FindUsedMasters(aMasters: PwbUsedMasters); -var - SelfRef : IwbContainerElementRef; - ResolvedDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - - inherited FindUsedMasters(aMasters); - - ResolvedDef := Resolve(vbValueDef, GetDataBasePtr, dcDataEndPtr, Self); - if Assigned(ResolvedDef) then - ResolvedDef.FindUsedMasters(GetDataBasePtr, dcDataEndPtr, Self, aMasters); -end; - -procedure TwbUnion.Reset; -begin - ReleaseElements; - inherited; -end; - -{ TwbValue } - -function TwbValue.AddIfMissingInternal(const aElement : IwbElement; - aAsNew : Boolean; - aDeepCopy : Boolean; - const aPrefixRemove : string; - const aPrefix : string; - const aSuffix : string) - : IwbElement; -var - Flag : IwbFlag; - IntegerDef : IwbIntegerDef; - FlagsDef : IwbFlagsDef; - s : string; -begin - if vIsFlags and Supports(aElement, IwbFlag, Flag) then - if Supports(vbValueDef, IwbIntegerDef, IntegerDef) then - if Supports(IntegerDef.Formater[Self], IwbFlagsDef, FlagsDef) then - if FlagsDef.CanAssign(Self, Low(Integer), Flag.FlagsDef) then begin - s := GetEditValue; - s := s + StringOfChar('0', 64 - Length(s)); - if (Flag.FlagIndex >= 0) and (Flag.FlagIndex < Length(s)) then begin - s[Succ(Flag.FlagIndex)] := '1'; - SetEditValue(s); - Exit(GetElementBySortOrder(Flag.FlagIndex)); - end; - end; - - Result := inherited AddIfMissingInternal(aElement, aAsNew, aDeepCopy, aPrefixRemove, aPrefix, aSuffix) -end; - -function TwbValue.CompareExchangeFormID(aOldFormID, aNewFormID: Cardinal): Boolean; -var - SelfRef : IwbContainerElementRef; - ResolvedDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - - Result := inherited CompareExchangeFormID(aOldFormID, aNewFormID); - - ResolvedDef := Resolve(vbValueDef, GetDataBasePtr, dcDataEndPtr, Self); - if Assigned(ResolvedDef) then - Result := ResolvedDef.CompareExchangeFormID(GetDataBasePtr, dcDataEndPtr, Self, aOldFormID, aNewFormID) or Result; -end; - -function ValueDoInit(const aValueDef: IwbValueDef; const aContainer: IwbContainer; var aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Boolean; -var - IntegerDef : IwbIntegerDef; - FlagsDef : IwbFlagsDef; - i : Cardinal; - j : Cardinal; - t : string; - BasePtr : Pointer; - Element : IwbElement; - ValueDef : IwbValueDef; -begin - Result := False; - - ValueDef := Resolve(aValueDef, aBasePtr, aEndPtr, aElement); - - if Assigned(ValueDef) then - begin - if wbFlagsAsArray then - if Supports(ValueDef, IwbIntegerDef, IntegerDef) then - if Supports(IntegerDef.Formater[aElement], IwbFlagsDef, FlagsDef) then begin - if Assigned(aBasePtr) and (FlagsDef.FlagCount > 0) then begin - j := IntegerDef.ToInt(aBasePtr, aEndPtr, aContainer); - if j <> 0 then - for i := 0 to Pred(FlagsDef.FlagCount) do - if (j and (Cardinal(1) shl i)) <> 0 then begin - t := FlagsDef.Flags[i]; - if (t <> '') and (not wbHideUnused or not SameText(t,'Unused')) then - Element := TwbFlag.Create(aContainer, aBasePtr, aEndPtr, IntegerDef, FlagsDef, i); - j := j and not (Cardinal(1) shl i); - if j = 0 then - Break; - end; - end; - - Result := True; - - end; - - ValueDef.AfterLoad(aContainer); - end; - - if wbMoreInfoForUnknown then begin - if Assigned(ValueDef) then - t := ValueDef.Name - else - t := ''; - if t = '' then - t := aContainer.Def.Name; - if SameText(t, 'Unknown') and (not Assigned(aBasePtr) or (aBasePtr <> aEndPtr)) then - for i := 0 to 3 do begin - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsU8', wbInteger('AsU8', itU8)), '', True); - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsS8', wbInteger('AsS8', itS8)), '', True); - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsU16', wbInteger('AsU16', itU16)), '', True); - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsS16', wbInteger('AsS16', itS16)), '', True); - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsU32', wbInteger('AsU32', itU32)), '', True); - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsS32', wbInteger('AsS32', itS32)), '', True); - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsS64', wbInteger('AsS64', itS64)), '', True); - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsFormID', wbInteger('AsFormID', itU32, wbFormID)), '', True); - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsChar4', wbInteger('AsChar4', itU32, wbChar4)), '', True); - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsFloat', wbFloat('AsFloat')), '', True); - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsString', wbString('AsString')), '', True); - if wbToolSource in [tsSaves] then begin - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsRefID', wbRefID('RefID')), '', True); - BasePtr := Pointer( Cardinal(aBasePtr) + i ); - Element := TwbArray.Create(aContainer, BasePtr, aEndPtr, wbArray('Offset '+IntToStr(i)+' AsU6to30', wbInteger('AsU6to30', itU6to30)), '', True); - end; - end; - end; - - if assigned(ValueDef) then - i := ValueDef.Size[aBasePtr, aEndPtr, aContainer] - else - i := High(Integer); - if i = Cardinal(High(Integer)) then - aBasePtr := aEndPtr - else if Assigned(aBasePtr) then - Inc(PByte(aBasePtr), i); -end; - - -procedure TwbValue.Init; -var - BasePtr: Pointer; -begin - inherited; - BasePtr := GetDataBasePtr; - vIsFlags := ValueDoInit(vbValueDef, Self, BasePtr, dcDataEndPtr, Self); -// flags should already have been created in the right order, no need to sort them -// if vIsFlags then -// if Length(cntElements) > 1 then -// wbMergeSort(@cntElements[0], Length(cntElements), CompareSortKeys); -end; - -function TwbValue.IsFlags: Boolean; -begin - Result := vIsFlags; -end; - -procedure TwbValue.MasterCountUpdated(aOld, aNew: Byte); -var - SelfRef : IwbContainerElementRef; - ResolvedDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - - inherited MasterCountUpdated(aOld, aNew); - - ResolvedDef := Resolve(vbValueDef, GetDataBasePtr, dcDataEndPtr, Self); - if Assigned(ResolvedDef) then - ResolvedDef.MasterCountUpdated(GetDataBasePtr, dcDataEndPtr, Self, aOld, aNew); -end; - -procedure TwbValue.MasterIndicesUpdated(const aOld, aNew: TBytes); -var - SelfRef : IwbContainerElementRef; - ResolvedDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - - inherited MasterIndicesUpdated(aOld, aNew); - - ResolvedDef := Resolve(vbValueDef, GetDataBasePtr, dcDataEndPtr, Self); - if Assigned(ResolvedDef) then - ResolvedDef.MasterIndicesUpdated(GetDataBasePtr, dcDataEndPtr, Self, aOld, aNew); -end; - -procedure TwbValue.FindUsedMasters(aMasters: PwbUsedMasters); -var - SelfRef : IwbContainerElementRef; - ResolvedDef : IwbValueDef; -begin - SelfRef := Self as IwbContainerElementRef; - - DoInit; - - inherited FindUsedMasters(aMasters); - - ResolvedDef := Resolve(vbValueDef, GetDataBasePtr, dcDataEndPtr, Self); - if Assigned(ResolvedDef) then - ResolvedDef.FindUsedMasters(GetDataBasePtr, dcDataEndPtr, Self, aMasters); -end; - -function TwbValue.GetElementType: TwbElementType; -begin - Result := etValue; -end; - -function TwbValue.GetSorted: Boolean; -var - EmptyDef: IwbEmptyDef; -begin - Result := vIsFlags or (Supports(Resolve(vbValueDef, GetDataBasePtr, GetDataEndPtr, Self), IwbEmptyDef, EmptyDef) and EmptyDef.Sorted); -end; - -function TwbValue.GetValue: string; -//var -// i : Integer; -// j : Int64; -var - Def: IwbDef; -begin - if wbReportMode then begin - Def := GetValueDef; - if Assigned(Def) then - Def.Used; - Def := GetDef; - if Assigned(Def) then - Def.Used; - end; - { - if vIsFlags then begin - Result := ''; - with (vbValueDef as IwbIntegerDef), (Formater as IwbFlagsDef) do begin - j := ToInt(GetDataBasePtr, dcDataEndPtr, Self); - for i := 0 to 63 do - if (j and (Int64(1) shl i)) <> 0 then - if (i >= FlagCount) or (Flags[i] = '') then - Result := Result + ', '; - end; - SetLength(Result, Length(Result) - 2); - end else} - Result := inherited GetValue; -end; - -procedure TwbValue.Reset; -begin - vIsFlags := False; - ReleaseElements; - inherited; -end; - -procedure TwbValue.SetEditValue(const aValue: string); -var - OldValue, NewValue: Variant; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be edited.'); - - if (not Assigned(dcDataBasePtr) or not Assigned(dcDataEndPtr)) or (aValue <> GetEditValue) then begin - OldValue := GetNativeValue; - vbValueDef.EditValue[GetDataBasePtr, dcDataEndPtr, Self] := aValue; - if vIsFlags and (csInit in cntStates) then begin - Reset; - Init; - end; - NewValue := GetNativeValue; - DoAfterSet(OldValue, NewValue); - NotifyChanged(eContainer); - if vIsFlags and (csInit in cntStates) then begin - if vbValueDef.EditValue[GetDataBasePtr, dcDataEndPtr, Self] <> aValue then begin - Reset; - Init; - end; - end; - end; -end; - -procedure TwbValue.SetNativeValue(const aValue: Variant); -var - OldValue, NewValue: Variant; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be edited.'); - - OldValue := GetNativeValue; - vbValueDef.NativeValue[GetDataBasePtr, dcDataEndPtr, Self] := aValue; - if vIsFlags and (csInit in cntStates) then begin - Reset; - Init; - end; - NewValue := GetNativeValue; - DoAfterSet(OldValue, NewValue); - NotifyChanged(eContainer); - if vIsFlags and (csInit in cntStates) then begin - Reset; - Init; - end; -end; - -var - Files : array of IwbFile; - FilesMap: TStringList; - -procedure wbFileForceClosed; -var - i: Integer; -begin - for i := Low(Files) to High(Files) do - (Files[i] as IwbFileInternal).ForceClosed; - Files := nil; - FilesMap.Clear; -end; - -function wbExpandFileName(const aFileName: string): string; -begin - if ExtractFilePath(aFileName) = '' then - Result := wbDataPath + ExtractFileName(aFileName) - else - Result := aFileName; -end; - -function wbFile(const aFileName: string; aLoadOrder: Integer = -1; aCompareTo: string = ''; - IsTemporary: Boolean = False; aOnlyHeader: Boolean = False): IwbFile; -var - FileName: string; - i: Integer; -begin - FileName := wbExpandFileName(aFileName); - {if ExtractFilePath(aFileName) = '' then - FileName := ExpandFileName('.\'+aFileName) - else - FileName := ExpandFileName(aFileName);} - - if FilesMap.Find(FileName, i) then - Result := IwbFile(Pointer(FilesMap.Objects[i])) - else begin - if not wbIsPlugin(FileName) then - Result := TwbFileSource.Create(FileName, aLoadOrder, aCompareTo, aOnlyHeader, IsTemporary) - else - Result := TwbFile.Create(FileName, aLoadOrder, aCompareTo, aOnlyHeader, IsTemporary); - SetLength(Files, Succ(Length(Files))); - Files[High(Files)] := Result; - FilesMap.AddObject(FileName, Pointer(Result)); - end; -end; - -procedure wbMastersForFile(const aFileName: string; aMasters: TStrings); -var - FileName : string; - i : Integer; - _File : IwbFileInternal; -begin - FileName := wbExpandFileName(aFileName); - {if ExtractFilePath(aFileName) = '' then - FileName := ExpandFileName('.\'+aFileName) - else - FileName := ExpandFileName(aFileName);} - - try - if FilesMap.Find(FileName, i) then - _File := IwbFile(Pointer(FilesMap.Objects[i])) as IwbFileInternal - else if not wbIsPlugin(FileName) then - _File := TwbFileSource.Create(FileName, -1, '', True) - else - _File := TwbFile.Create(FileName, -1, '', True); - - _File.GetMasters(aMasters); - except - // File neither found nor replaced, ignore if in xDump - if not (wbToolMode in [tmDump, tmExport]) then Raise; - end; -end; - -function wbNewFile(const aFileName: string; aLoadOrder: Integer): IwbFile; -var - FileName: string; - i: Integer; -begin - FileName := wbExpandFileName(aFileName); - {if ExtractFilePath(aFileName) = '' then - FileName := ExpandFileName('.\'+aFileName) - else - FileName := ExpandFileName(aFileName);} - - if FilesMap.Find(FileName, i) then - raise Exception.Create(FileName + ' exists already') - else begin - Result := TwbFile.CreateNew(FileName, aLoadOrder); - SetLength(Files, Succ(Length(Files))); - Files[High(Files)] := Result; - FilesMap.AddObject(FileName, Pointer(Result)); - end; -end; - -function wbFindWinningMainRecordByEditorID(const aSignature: TwbSignature; const aEditorID: string): IwbMainRecord; -var - i : Integer; - Group : IwbGroupRecord; -begin - Result := nil; - for i := High(Files) downto Low(Files) do - if Supports(Files[i].GroupBySignature[aSignature], IwbGroupRecord, Group) then begin - Result := Group.MainRecordByEditorID[aEditorID]; - if Assigned(Result) then begin - Result := Result.WinningOverride; - Exit; - end; - end; -end; - -function wbFormListToArray(const aFormList: IwbMainRecord; const aSignatures: string): TDynMainRecords; -var - Container : IwbContainerElementRef; - Signatures : TStringList; - i, j : Integer; - MainRecord : IwbMainRecord; -begin - Result := nil; - if not Assigned(aFormList) or (aFormList.Signature <> 'FLST') then - Exit; - if not Supports(aFormList.ElementByName['wbFormListToArray FormIDs'], IwbContainerElementRef, Container) then - Exit; - if Container.ElementCount < 1 then - Exit; - Signatures := TStringList.Create; - try - Signatures.CommaText := aSignatures; - Signatures.Sorted := True; - for i := 0 to Pred(Container.ElementCount) do begin - if Supports(Container.Elements[i].LinksTo, IwbMainRecord, MainRecord) then - if Signatures.Find(MainRecord.Signature, j) then begin - SetLength(Result, Succ(Length(Result))); - Result[High(Result)] := MainRecord; - end; - end; - finally - Signatures.Free; - end; -end; - -{ TwbFlag } - -constructor TwbFlag.Create(const aContainer : IwbContainer; - aBasePtr : Pointer; - aEndPtr : Pointer; - const aIntegerDef : IwbIntegerDef; - const aFlagsDef : IwbFlagsDef; - aIndex : Integer); -begin - fBasePtr := aBasePtr; - fEndPtr := aEndPtr; - fIntegerDef := aIntegerDef; - if not fIntegerDef.FormaterCanChange then - fFlagsDef := aFlagsDef; - fIndex := aIndex; - inherited Create(aContainer); - SetSortOrder(aIndex); - SetMemoryOrder(aIndex); -end; - -function TwbFlag.GetConflictPriority: TwbConflictPriority; -var - MainRecord: IwbMainRecord; -begin - if wbTranslationMode then - Result := cpIgnore - else if GetFlagsDef.FlagIgnoreConflict[fIndex] then - Result := cpIgnore - else if Assigned(fIntegerDef) then - Result := fIntegerDef.ConflictPriority[Self] - else - Result := cpNormal; - - if Result = cpFormID then begin - Result := cpCritical; - MainRecord := GetContainingMainRecord; - if Assigned(MainRecord) and (MainRecord.Signature = 'GMST') then - Result := cpBenign; - end; -end; - -function TwbFlag.GetDataSize: Integer; -begin - Result := 0; -end; - -function TwbFlag.GetDef: IwbNamedDef; -begin - Result := GetFlagsDef.FlagDef[fIndex]; -end; - -function TwbFlag.GetDontShow: Boolean; -begin - Result := GetFlagsDef.FlagDontShow[Self, fIndex]; -end; - -function TwbFlag.GetEditValue: string; -var - s: string; -begin - s := GetContainer.EditValue; - if Length(s) >= Succ(fIndex) then - Result := s[Succ(fIndex)] - else - Result := '0'; -end; - -function TwbFlag.GetElementType: TwbElementType; -begin - Result := etFlag; -end; - -function TwbFlag.GetFlagIndex: Integer; -begin - Result := fIndex; -end; - -function TwbFlag.GetFlagsDef: IwbFlagsDef; -begin - if Assigned(fFlagsDef) then - Result := fFlagsDef - else - Result := fIntegerDef.Formater[IwbContainer(eContainer)] as IwbFlagsDef; -end; - -function TwbFlag.GetIsEditable: Boolean; -begin - Result := wbIsInternalEdit or GetContainer.IsEditable; -end; - -function TwbFlag.GetIsRemoveable: Boolean; -begin - Result := wbIsInternalEdit or GetContainer.IsEditable; -end; - -function TwbFlag.GetName: string; -begin - Result := GetFlagsDef.Flags[fIndex]; -end; - -function TwbFlag.GetNativeValue: Variant; -var - s: string; -begin - s := GetContainer.EditValue; - if Length(s) >= Succ(fIndex) then - Result := s[Succ(fIndex)] = '1' - else - Result := False; -end; - -function TwbFlag.GetSortKey(aExtended: Boolean): string; - - procedure CheckFlagsChanged; - var - FlagsDef : IwbFlagsDef; - begin - FlagsDef := GetFlagsDef.Root as IwbFlagsDef; - if FlagsDef.DefID <> fLastDefID then begin - Exclude(eStates, esExtendedSortKeyValid); - Exclude(eStates, esSortKeyValid); - end; - end; - -begin - if not Assigned(fFlagsDef) then - CheckFlagsChanged; - Result := inherited GetSortKey(aExtended); -end; - -function TwbFlag.GetSortKeyInternal(aExtended: Boolean): string; -var - s : string; - FlagsDef : IwbFlagsDef; - BaseFlagsDef : IwbFlagsDef; -begin - FlagsDef := GetFlagsDef.Root as IwbFlagsDef; - BaseFlagsDef := FlagsDef.BaseFlagsDef; - - s := IntToHex64(BaseFlagsDef.DefID, 8); - Result := s + IntToHex64(fIndex, 2); - if not FlagsDef.Equals(BaseFlagsDef) then begin - s := FlagsDef.Flags[fIndex]; - if not SameText(s, BaseFlagsDef.Flags[fIndex]) then - Result := Result + s; - end; - fLastDefID := FlagsDef.DefID; -end; - -function TwbFlag.GetValue: string; -//var -// i: Int64; -var - Def: IwbDef; -begin - if wbReportMode then begin - Def := GetValueDef; - if Assigned(Def) then - Def.Used; - Def := GetDef; - if Assigned(Def) then - Def.Used; - end; - Result := GetFlagsDef.Flags[fIndex]; -{ - i := fIntegerDef.ToInt(fBasePtr, fEndPtr, Self); - if (i and (Int64(1) shl fIndex)) <> 0 then - Result := GetName - else - Result := ''; -} -end; - -function TwbFlag.GetValueDef: IwbValueDef; -begin - Result := GetFlagsDef.FlagDef[fIndex]; -end; - -procedure TwbFlag.InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); -var - Size: Cardinal; -begin - fBasePtr := aBasePtr; - Size := fIntegerDef.Size[aBasePtr, aEndPtr, GetContainer]; - fEndPtr := Pointer( Cardinal(fBasePtr) + Size ); - if Cardinal(fEndPtr) > Cardinal(aEndPtr) then - fEndPtr := aEndPtr; -end; - -procedure TwbFlag.InvalidateParentStorage; -begin - {not inherited} -end; - -procedure TwbFlag.Remove; -begin - SetEditValue('0'); -end; - -procedure TwbFlag.SetEditValue(const aValue: string); -var - s: string; - c: Char; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be edited.'); - - if aValue = '1' then - c := '1' - else - c := '0'; - - s := GetContainer.EditValue; - if Length(s) >= Succ(fIndex) then - s[Succ(fIndex)] := c - else - s := s + StringOfChar('0', fIndex - Length(s) ) + c; - GetContainer.EditValue := s; -end; - -procedure TwbFlag.SetNativeValue(const aValue: Variant); -var - s: string; - c: Char; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be edited.'); - - if aValue = True then - c := '1' - else - c := '0'; - - s := GetContainer.EditValue; - if Length(s) >= Succ(fIndex) then - s[Succ(fIndex)] := c - else - s := s + StringOfChar('0', fIndex - Length(s) ) + c; - GetContainer.EditValue := s; -end; - -{ TwbDataContainer } - -constructor TwbDataContainer.Create(const aContainer: IwbContainer; var aBasePtr: Pointer; aEndPtr: Pointer; const aPrevMainRecord : IwbMainRecord); -begin - dcBasePtr := aBasePtr; - dcEndPtr := aEndPtr; - dcDataBasePtr := aBasePtr; - dcDataEndPtr := aEndPtr; - inherited Create(aContainer); - try - InitDataPtr; - aBasePtr := dcEndPtr; - except - if Assigned(aContainer) then - aContainer.RemoveElement(Self); - raise; - end; -end; - -function TwbDataContainer.DoCheckSizeAfterWrite: Boolean; -begin - Result := False; -end; - -function TwbDataContainer.GetConflictPriority: TwbConflictPriority; -var - Def : IwbDef; - ValueDef : IwbValueDef; - MainRecord : IwbMainRecord; -begin - Result := cpNormal; - - Def := GetValueDef; - - if not Assigned(Def) then - Def := GetDef; - - if Supports(Def, IwbValueDef, ValueDef) then - Def := Resolve(ValueDef, GetDataBasePtr, GetDataEndPtr, Self); - - if Assigned(Def) then - Result := Def.ConflictPriority[Self]; - - if wbTranslationMode then begin - if Result <> cpTranslate then - Result := cpIgnore - else - Result := cpNormal; - end else begin - if Result = cpTranslate then - Result := cpNormal; - end; - - if Result = cpFormID then begin - Result := cpCritical; - MainRecord := GetContainingMainRecord; - if Assigned(MainRecord) and (MainRecord.Signature = 'GMST') then - Result := cpBenign; - end; -end; - -function TwbDataContainer.GetDataBasePtr: Pointer; -begin - if (dcfStorageInvalid in dcFlags) then - UpdateStorageFromElements; - Result := dcDataBasePtr; -end; - -function TwbDataContainer.GetDataEndPtr: Pointer; -begin - if (dcfStorageInvalid in dcFlags) then - UpdateStorageFromElements; - Result := dcDataEndPtr; -end; - -function TwbDataContainer.GetDataSize: Integer; -begin - if (dcfStorageInvalid in dcFlags) or not Assigned(dcDataBasePtr) or not Assigned(dcDataEndPtr) then - Result := inherited GetDataSize + GetDataPrefixSize - else - Result := Cardinal( dcDataEndPtr ) - Cardinal( dcDataBasePtr ); -end; - -function TwbDataContainer.GetDontCompare: Boolean; -begin - Result := (dcfDontCompare in dcFlags); -end; - -function TwbDataContainer.GetDontSave: Boolean; -begin - Result := (dcfDontSave in dcFlags); -end; - -function TwbDataContainer.GetEditInfo: string; -var - ValueDef: IwbValueDef; -begin - Result := ''; - if Supports(GetValueDef, IwbValueDef, ValueDef) then - Result := ValueDef.EditInfo[GetDataBasePtr, dcDataEndPtr, Self]; -end; - -function TwbDataContainer.GetEditType: TwbEditType; -var - ValueDef: IwbValueDef; -begin - Result := etDefault; - if Supports(GetValueDef, IwbValueDef, ValueDef) then - Result := ValueDef.EditType[GetDataBasePtr, dcDataEndPtr, Self]; -end; - -function TwbDataContainer.GetResolvedValueDef: IwbValueDef; -begin - Result := Resolve(GetValueDef, GetDataBasePtr, dcDataEndPtr, Self); -end; - -function TwbDataContainer.GetDataPrefixSize: Integer; -begin - Result := 0; -end; - -procedure TwbDataContainer.InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); -var - SizeNeeded : Cardinal; - SizeAvailable : Cardinal; - BasePtr : Pointer; -begin - if [dcfDontMerge, dcfDontCompare] * dcFlags <> [] then - Exit; - - if Length(dcDataStorage) <> 0 then - Assert(Length(dcDataStorage) = 0); - SizeNeeded := GetDataSize; - if SizeNeeded > 0 then begin - SizeAvailable := Cardinal( aEndPtr ) - Cardinal( aBasePtr ); - if (SizeAvailable < SizeNeeded) then - Assert( SizeAvailable >= SizeNeeded ); - - BasePtr := aBasePtr; - Inc(PByte(aBasePtr), GetDataPrefixSize); - inherited; - - if BasePtr = aBasePtr then begin - if not (dcfDontMerge in dcFlags) then - Inc(PByte(aBasePtr), SizeNeeded); - end else - if Cardinal(aBasePtr) - Cardinal(BasePtr) > SizeNeeded then // we overwrote something - Assert( Cardinal(aBasePtr) - Cardinal(BasePtr) = SizeNeeded) - else // Adjust size of data not initialized yet - aBasePtr := PByte(BasePtr) + SizeNeeded; - - dcDataBasePtr := BasePtr; - dcDataEndPtr := aBasePtr; - end; -end; - -procedure TwbDataContainer.InvalidateStorage; -begin - Include(dcFlags, dcfStorageInvalid); - inherited; -end; - -function TwbDataContainer.IsFlags: Boolean; -begin - Result := False; -end; - -function TwbDataContainer.IsValidOffset(aBasePtr, aEndPtr: Pointer; anOffset: Integer): Boolean; -begin - Result := False; - if Cardinal(aBasePtr) >= Cardinal(dcBasePtr) then - if Cardinal(aBasePtr) < Cardinal(dcEndPtr) then - if Cardinal(aEndPtr) > Cardinal(dcBasePtr) then - if Cardinal(aEndPtr) <= Cardinal(dcEndPtr) then - if Cardinal(aBasePtr)+anOffset < Cardinal(dcEndPtr) then - Result := True; -end; - -function TwbDataContainer.IsLocalOffset(anOffset: Integer): Boolean; -begin - if Cardinal(dcDataBasePtr)+anOffset < Cardinal(dcDataEndPtr) then - Result := True - else - Result := False; -end; - -procedure TwbDataContainer.MergeStorageInternal(var aBasePtr: Pointer; aEndPtr: Pointer); -var - SizeNeeded : Cardinal; - SizeAvailable : Cardinal; - BasePtr : Pointer; - PrefixSize : Integer; -begin - if [dcfDontMerge, dcfDontCompare] * dcFlags <> [] then - Exit; - - if (dcfStorageInvalid in dcFlags) then begin - BasePtr := aBasePtr; - PrefixSize := GetDataPrefixSize; - if (PrefixSize > 0) then begin - Move(dcDataBasePtr^, aBasePtr^, PrefixSize); - Inc(PByte(aBasePtr), PrefixSize); - end; - inherited; - dcDataBasePtr := BasePtr; - dcDataEndPtr := aBasePtr; - end else begin - SizeNeeded := Cardinal( dcDataEndPtr ) - Cardinal( dcDataBasePtr ); - if SizeNeeded > 0 then begin - SizeAvailable := Cardinal( aEndPtr ) - Cardinal( aBasePtr ); - if SizeAvailable < SizeNeeded then - Assert( SizeAvailable >= SizeNeeded ); - - Move(dcDataBasePtr^, aBasePtr^, SizeNeeded); - - dcDataBasePtr := aBasePtr; - Inc(PByte(aBasePtr), SizeNeeded); - dcDataEndPtr := aBasePtr; - - BasePtr := dcDataBasePtr; - Inc(PByte(BasePtr), GetDataPrefixSize); - inherited InformStorage(BasePtr, dcDataEndPtr); - end else begin - dcDataBasePtr := nil; - dcDataEndPtr := nil; - end; - dcDataStorage := nil; - end; -end; - -procedure TwbDataContainer.RequestStorageChange(var aBasePtr, aEndPtr: Pointer; aNewSize: Cardinal); -var - BasePtr : Pointer; - OldSize : Cardinal; - NeedsCopy : Boolean; -begin - if (dcfStorageInvalid in dcFlags) then - UpdateStorageFromElements; - - SetModified(True); - InvalidateParentStorage; - if aNewSize = 0 then begin - dcDataStorage := nil; - dcDataBasePtr := @EmptyPtr; - dcDataEndPtr := @EmptyPtr; - end else if Cardinal(Length(dcDataStorage)) <> aNewSize then begin - OldSize := Cardinal( dcDataEndPtr ) - Cardinal( dcDataBasePtr ); - NeedsCopy := (Length(dcDataStorage) = 0) and (OldSize > 0); - SetLength(dcDataStorage, aNewSize); - if NeedsCopy then - Move(dcDataBasePtr^, dcDataStorage[0], Min(OldSize, aNewSize)); - dcDataBasePtr := @dcDataStorage[0]; - dcDataEndPtr := Pointer( Cardinal(dcDataBasePtr) + aNewSize ); - - BasePtr := dcDataBasePtr; - Inc(PByte(BasePtr), GetDataPrefixSize); - inherited InformStorage(BasePtr, dcDataEndPtr); - end; - Exclude(dcFlags, dcfStorageInvalid); - aBasePtr := dcDataBasePtr; - aEndPtr := dcDataEndPtr; -end; - -procedure TwbDataContainer.SetContainer(const aContainer: IwbContainer); -var - DataContainer: IwbDataContainer; -begin - if not (dcfDontCompare in dcFlags) then - if Supports(aContainer, IwbDataContainer, DataContainer) and DataContainer.DontCompare then - Include(dcFlags, dcfDontCompare); - inherited; -end; - -procedure TwbDataContainer.SetDataSize(aSize: Integer); -var - BasePtr, EndPtr: Pointer; -begin - if aSize = GetDataSize then - Exit; - - BasePtr := nil; - EndPtr := nil; - RequestStorageChange(BasePtr, EndPtr, aSize); - if csInit in cntStates then begin - Reset; - Init; - end; -end; - -procedure TwbDataContainer.SetModified(aValue: Boolean); -begin - inherited SetModified(aValue); -end; - -procedure TwbDataContainer.SetToDefaultInternal; -var - SelfRef : IwbContainerElementRef; - ValueDef : IwbValueDef; - OldValue, NewValue : Variant; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - - ValueDef := GetValueDef; - if Assigned(ValueDef) then begin - OldValue := GetNativeValue; - if ValueDef.SetToDefault(GetDataBasePtr, GetDataEndPtr, Self) then begin - NewValue := GetNativeValue; - DoAfterSet(OldValue, NewValue); - NotifyChanged(eContainer); - - if IsFlags and (csInit in cntStates) then begin - Reset; - Init; - end; - end; - end; - - inherited; -end; - -procedure TwbDataContainer.UpdateStorageFromElements; -var - PrefixSize : Integer; - NewStorage : TBytes; - BasePtr : Pointer; - EndPtr : Pointer; - SelfRef : IwbContainerElementRef; - i : Integer; - DataContainerInternal : IwbDataContainerInternal; -begin - if not (dcfStorageInvalid in dcFlags) then - Exit; - - SelfRef := Self as IwbContainerElementRef; - - for i := Low(cntElements) to High(cntElements) do - if Supports(cntElements[i], IwbDataContainerInternal, DataContainerInternal) then - DataContainerInternal.UpdateStorageFromElements; - - SetLength(NewStorage, inherited GetDataSize + GetDataPrefixSize); - if Length(NewStorage) > 0 then begin - BasePtr := @NewStorage[0]; - EndPtr := Pointer( Cardinal(BasePtr) + Cardinal(Length(NewStorage)) ); - PrefixSize := GetDataPrefixSize; - if (PrefixSize > 0) then - Move(dcDataBasePtr^, BasePtr^, PrefixSize); - Inc(PByte(BasePtr), PrefixSize); - inherited MergeStorageInternal(BasePtr, EndPtr); - - dcDataStorage := NewStorage; - dcDataBasePtr := @NewStorage[0]; - dcDataEndPtr := Pointer( Cardinal(dcDataBasePtr) + Cardinal(Length(dcDataStorage)) ); - Assert(dcDataEndPtr = EndPtr); - end else begin - dcDataStorage := nil; - dcDataBasePtr := nil; - dcDataEndPtr := nil; - end; - - Exclude(dcFlags, dcfStorageInvalid); -end; - -procedure TwbDataContainer.WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); -var - OldPosition : Int64; - Size : Cardinal; - ExpectedSize : Cardinal; -begin - if [dcfDontSave, dcfDontCompare] * dcFlags <> [] then - Exit; - - OldPosition := aStream.Position; - ExpectedSize := GetDataSize; - - if (esModified in eStates) or wbTestWrite then begin - if not (dcfStorageInvalid in dcFlags) and Assigned(dcDataEndPtr) and Assigned(dcDataBasePtr) then - Size := Cardinal( dcDataEndPtr ) - Cardinal( dcDataBasePtr ) - else - Size := 0; - if Size > 0 then begin - if Size <> ExpectedSize then - Assert(Size = ExpectedSize); - aStream.WriteBuffer(dcDataBasePtr^, Size); - end else begin - inherited WriteToStreamInternal(aStream, aResetModified); - if aStream.Position = OldPosition then begin - Size := GetDataSize; - if Size > 0 then - aStream.WriteBuffer(GetDataBasePtr^, Size); - end; - end; - end else begin - Size := ExpectedSize; - if Size > 0 then - aStream.WriteBuffer(GetDataBasePtr^, Size); - end; - - if (aStream.Position - OldPosition) <> ExpectedSize then - if DoCheckSizeAfterWrite then - Assert(not DoCheckSizeAfterWrite); - - Exclude(eStates, esUnsaved); - if aResetModified then begin - Exclude(eStates, esModified); - Exclude(eStates, esInternalModified); - end; -end; - -{ TwbValueBase } - -procedure TwbValueBase.BuildRef; -var - SelfRef: IwbElement; -begin - SelfRef := Self as IwbContainerElementRef; - - inherited; - vbValueDef.BuildRef(GetDataBasePtr, dcDataEndPtr, Self); -end; - -constructor TwbValueBase.Create(const aContainer : IwbContainer; - var aBasePtr : Pointer; - aEndPtr : Pointer; - const aValueDef : IwbValueDef; - const aNameSuffix : string; - aDontCompare: Boolean); -begin - if aDontCompare then - Include(dcFlags, dcfDontCompare); - vbValueDef := aValueDef; - vbNameSuffix := aNameSuffix; - inherited Create(aContainer, aBasePtr, aEndPtr, nil); -end; - -function TwbValueBase.CanContainFormIDs: Boolean; -begin - Result := vbValueDef.CanContainFormIDs; -end; - -function TwbValueBase.CanElementReset: Boolean; -begin -// Result := inherited CanElementReset; - Result := eExternalRefs < 1; -end; - -constructor TwbValueBase.Create(const aContainer : IwbContainer; - const aValueDef : IwbValueDef; - const aSource : IwbElement; - const aOnlySK : Boolean; - const aNameSuffix : string); -var - BasePtr : Pointer; - EndPtr : Pointer; -begin - BasePtr := nil; - Create(aContainer, BasePtr, nil, aValueDef, aNameSuffix); - if Assigned(aSource) then try - RequestStorageChange(BasePtr, EndPtr, GetDataSize); - SetToDefault; - Assign(Low(Integer), aSource, aOnlySK); - SetModified(True); - except - if Assigned(aContainer) then - aContainer.RemoveElement(Self); - raise; - end else begin - BasePtr := nil; - EndPtr := nil; - SetModified(True); - RequestStorageChange(BasePtr, EndPtr, GetDataSize); - SetToDefault; - end; -end; - -function TwbValueBase.DoCheckSizeAfterWrite: Boolean; -begin - Result := True; -end; - -function TwbValueBase.GetBaseName: string; -begin - Result := vbValueDef.Name; -end; - -function TwbValueBase.GetCheck: string; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - Result := vbValueDef.Check(GetDataBasePtr, dcDataEndPtr, Self); -end; - -function TwbValueBase.GetDataSize: Integer; -begin - if not Assigned(dcDataBasePtr) and not (dcfStorageInvalid in dcFlags) then - Result := vbValueDef.DefaultSize[nil, nil, Self] - else - Result := inherited GetDataSize; -end; - -function TwbValueBase.GetDef: IwbNamedDef; -begin - Result := vbValueDef; -end; - -function TwbValueBase.GetDisplayName: string; -var - Resolved: IwbValueDef; - Container: IwbDataContainer; -begin - Resolved := Resolve(vbValueDef, GetDataBasePtr, GetDataEndPtr, Self); - if (not Assigned(Resolved)) or (Resolved <> vbValueDef) and (Resolved.DefType in dtNonValues) then - Result := vbValueDef.Name - else - Result := Resolved.Name; - if Assigned(Resolved) then - begin - if (Resolved.DefType in dtNonValues) and (wbDumpOffset=1) then // simply display starting offset. - Result := Result + ' {' + IntToHex64(Cardinal(GetDataBasePtr)-wbBaseOffset, 8) + '}'; - // something for Dump: Displaying the size in {} and the array count in [] - // Triggers a lot of pre calculations - if (Resolved.DefType in dtNonValues) and (wbDumpOffset>2) then - Result := Result + ' {' + IntToHex64(Cardinal(GetDataEndPtr)-wbBaseOffset, 8) + '-' + IntToHex64(Cardinal(GetDataBasePtr)-wbBaseOffset, 8) + - ' = ' +IntToStr(Resolved.Size[GetDataBasePtr, GetDataEndPtr, Self]) + '}'; - if (Resolved.DefType = dtArray) and (wbDumpOffset>1) and Supports(Self, IwbDataContainer, Container) then - Result := Result + ' [' + IntToStr(Container.GetElementCount) + ']'; - end; - if vbNameSuffix <> '' then - Result := Result + ' ' + vbNameSuffix; -end; - -function TwbValueBase.GetEditValue: string; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - Result := vbValueDef.EditValue[GetDataBasePtr, dcDataEndPtr, Self] -end; - -function TwbValueBase.GetIsEditable: Boolean; -var - SelfRef : IwbContainerElementRef; -begin - Result := wbIsInternalEdit; - if Result then - Exit; - - SelfRef := Self as IwbContainerElementRef; - - if Assigned(eContainer) and not IwbContainer(eContainer).IsElementEditable(SelfRef) then - Exit; - - DoInit; - Result := vbValueDef.IsEditable[GetDataBasePtr, dcDataEndPtr, Self]; -end; - -function TwbValueBase.GetIsInSK(aIndex: Integer): Boolean; -var - SelfRef : IwbContainerElementRef; - HasSortKey : IwbHasSortKeyDef; -begin - Result := False; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if not Supports(vbValueDef, IwbHasSortKeyDef, HasSortKey) then - Exit; - - Result := HasSortKey.IsInSK(aIndex); -end; - -function TwbValueBase.GetLinksTo: IwbElement; -var - SelfRef: IwbContainerElementRef; -begin - Result := nil; - SelfRef := Self as IwbContainerElementRef; - DoInit; - if not Assigned(vbValueDef) then - Exit; - Result := vbValueDef.LinksTo[dcDataBasePtr, dcDataEndPtr, Self]; -end; - -function TwbValueBase.GetName: string; -begin - Result := vbValueDef.Name; - if vbNameSuffix <> '' then - Result := Result + ' ' + vbNameSuffix; -end; - -function TwbValueBase.GetNativeValue: Variant; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - DoInit; - Result := vbValueDef.NativeValue[GetDataBasePtr, dcDataEndPtr, Self] -end; - -function TwbValueBase.GetSortKeyInternal(aExtended: Boolean): string; -var - SelfRef : IwbContainerElementRef; -begin - SelfRef := Self as IwbContainerElementRef; - if (dcfDontCompare in dcFlags) then - Result := '' - else begin - DoInit; - Result := vbValueDef.ToSortKey(GetDataBasePtr, dcDataEndPtr, Self, aExtended); - end; -end; - -function TwbValueBase.GetValue: string; -var - SelfRef : IwbContainerElementRef; -var - Def: IwbDef; -begin - if wbReportMode then begin - Def := GetValueDef; - if Assigned(Def) then - Def.Used; - Def := GetDef; - if Assigned(Def) then - Def.Used; - end; - - SelfRef := Self as IwbContainerElementRef; - DoInit; - Result := vbValueDef.ToString(GetDataBasePtr, dcDataEndPtr, Self); -end; - -function TwbValueBase.GetValueDef: IwbValueDef; -//var -// SelfRef: IwbContainerElementRef; -begin -// SelfRef := Self as IwbContainerElementRef; -// DoInit; - - Result := vbValueDef; -end; - -procedure TwbValueBase.InitDataPtr; -var - Size : Integer; -begin - if (GetDataBasePtr <> nil) and (Cardinal(dcDataEndPtr)>=Cardinal(dcDataBasePtr)) then begin - Size := vbValueDef.Size[dcDataBasePtr, dcDataEndPtr, Self]; - if Size < High(Integer) then begin - dcDataEndPtr := Pointer( Cardinal(dcDataBasePtr) + Cardinal(Size) ); - if Cardinal(dcDataEndPtr) > Cardinal(dcEndPtr) then - dcDataEndPtr := dcEndPtr - else - dcEndPtr := dcDataEndPtr; - end; - end; -end; - -procedure TwbValueBase.SetEditValue(const aValue: string); -var - OldValue, NewValue: Variant; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be edited.'); - - if aValue <> GetEditValue then begin - OldValue := GetNativeValue; - vbValueDef.EditValue[GetDataBasePtr, dcDataEndPtr, Self] := aValue; - NewValue := GetNativeValue; - DoAfterSet(OldValue, NewValue); - NotifyChanged(eContainer); - end; -end; - - -procedure TwbValueBase.SetNativeValue(const aValue: Variant); -var - OldValue, NewValue: Variant; -begin - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be edited.'); - - OldValue := GetNativeValue; - vbValueDef.NativeValue[GetDataBasePtr, dcDataEndPtr, Self] := aValue; - NewValue := GetNativeValue; - DoAfterSet(OldValue, NewValue); - NotifyChanged(eContainer); -end; - -procedure TwbValueBase.SetToDefaultInternal; -var - SelfRef: IwbContainerElementRef; - BasePtr, EndPtr: Pointer; -begin - SelfRef := Self as IwbContainerElementRef; - - if csInit in cntStates then - DoReset(True); - BasePtr := nil; - EndPtr := nil; - dcDataBasePtr := nil; - dcDataEndPtr := nil; - dcDataStorage := nil; - DoInit; - RequestStorageChange(BasePtr, EndPtr, vbValueDef.DefaultSize[nil, nil, Self]); - inherited; -end; - -{ TwbRecordHeaderStruct } - -function TwbRecordHeaderStruct.AddIfMissingInternal(const aElement : IwbElement; - aAsNew : Boolean; - aDeepCopy : Boolean; - const aPrefixRemove : string; - const aPrefix : string; - const aSuffix : string) - : IwbElement; -var - StructDef : IwbStructDef; - SelfRef : IwbContainerElementRef; -begin - Result := nil; - - if not wbEditAllowed then - raise Exception.Create(GetName + ' can not be assigned.'); - - SelfRef := Self as IwbContainerElementRef; - DoInit; - - if not Supports(GetDef, IwbStructDef, StructDef) then - Exit; - - Assert(aElement.SortOrder >= 0); - Assert(aElement.SortOrder < StructDef.MemberCount); - Assert(Assigned(aElement.Def)); - Assert(aElement.Def.Equals(StructDef.Members[aElement.SortOrder])); - - Result := GetElementBySortOrder(aElement.SortOrder + GetAdditionalElementCount); - Assert(Assigned(Result)); - Result.Assign(Low(Integer), aElement, not aDeepCopy); -end; - -procedure TwbRecordHeaderStruct.BuildRef; -begin -end; - -function TwbRecordHeaderStruct.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -function TwbRecordHeaderStruct.CompareExchangeFormID(aOldFormID, aNewFormID: Cardinal): Boolean; -begin - Result := False; -end; - -procedure TwbRecordHeaderStruct.ElementChanged(const aElement: IwbElement; aContainer: Pointer); -var - MainRecordInternal : IwbMainRecordInternal; - DataContainer : IwbDataContainer; - Flags : TwbMainRecordStructFlags; - p : Pointer; - - ToggleDeleted : Boolean; - TogglePersistent : Boolean; - ToggleVisibleWhenDistant : Boolean; -begin - - ToggleDeleted := False; - TogglePersistent := False; - ToggleVisibleWhenDistant := False; - - if Supports(IInterface(eContainer) , IwbMainRecordInternal, MainRecordInternal) then begin - if SameText(aElement.Def.Name, 'Record Flags') then begin - if Supports(aElement, IwbDataContainer, DataContainer) then begin - Flags._Flags := PCardinal(DataContainer.DataBasePtr)^; - UpdateStorageFromElements; - dcDataStorage := nil; - Exclude(dcFlags, dcfStorageInvalid); - MainRecordInternal.MakeHeaderWriteable; - - if Flags.IsESM then - if MainRecordInternal.Signature <> wbHeaderSignature then - Flags.SetESM(False); - - if Flags.IsDeleted <> MainRecordInternal.mrStruct.mrsFlags.IsDeleted then begin - Flags.SetDeleted(MainRecordInternal.mrStruct.mrsFlags.IsDeleted); - ToggleDeleted := True; - end; - - if Flags.IsPersistent <> MainRecordInternal.mrStruct.mrsFlags.IsPersistent then begin - Flags.SetPersistent(MainRecordInternal.mrStruct.mrsFlags.IsPersistent); - TogglePersistent := True; - end; - - if Flags.IsVisibleWhenDistant <> MainRecordInternal.mrStruct.mrsFlags.IsVisibleWhenDistant then begin - Flags.SetVisibleWhenDistant(MainRecordInternal.mrStruct.mrsFlags.IsVisibleWhenDistant); - ToggleVisibleWhenDistant := True; - end; - - MainRecordInternal.mrStruct.mrsFlags := Flags; - end; - end; - p := MainRecordInternal.mrStruct; - InformStorage(p, Pointer(Cardinal(p) + wbSizeOfMainRecordStruct )); - - with MainRecordInternal do begin - if ToggleDeleted then - IsDeleted := not IsDeleted; - - if not IsDeleted then begin - if TogglePersistent then - IsPersistent := not IsPersistent; - if ToggleVisibleWhenDistant then - IsVisibleWhenDistant := not IsVisibleWhenDistant; - end; - end; - end; - - inherited; -end; - -function TwbRecordHeaderStruct.GetIsEditable: Boolean; -begin - Result := wbIsInternalEdit; -end; - -function TwbRecordHeaderStruct.IsElementEditable(const aElement: IwbElement): Boolean; -begin - Result := Assigned(aElement) and Assigned(aElement.ValueDef) and - SameText(aElement.ValueDef.Name, 'Record Flags'); - if Result and Assigned(eContainer) then - Result := IwbContainer(eContainer).IsElementEditable(Self); -end; - -{ TwbStringListTerminator } - -function TwbStringListTerminator.AssignInternal(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; -begin - Result := nil; -end; - -function TwbStringListTerminator.CanAssignInternal(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; -begin - Result := False; - if Assigned(eContainer) then - if not IwbContainer(eContainer).IsElementEditable(Self) then - Exit; - - Result := Supports(aElement, IwbStringListTerminator); -end; - -function TwbStringListTerminator.GetConflictPriority: TwbConflictPriority; -begin - Result := cpIgnore; -end; - -function TwbStringListTerminator.GetDataSize: Integer; -begin - Result := 1; -end; - -function TwbStringListTerminator.GetElementType: TwbElementType; -begin - Result := etStringListTerminator; -end; - -function TwbStringListTerminator.GetName: string; -begin - Result := 'Terminator'; -end; - -function TwbStringListTerminator.GetSortKeyInternal(aExtended: Boolean): string; -begin - Result := #255; -end; - -procedure TwbStringListTerminator.InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); -begin - Assert( Cardinal(aBasePtr) < Cardinal(aEndPtr)); - Inc(PByte(aBasePtr)); -end; - -procedure TwbStringListTerminator.MergeStorageInternal(var aBasePtr: Pointer; aEndPtr: Pointer); -begin - Assert( Cardinal(aBasePtr) < Cardinal(aEndPtr)); - PAnsiChar(aBasePtr)^ := #0; - Inc(PByte(aBasePtr)); -end; - -procedure TwbStringListTerminator.SetEditValue(const aValue: string); -begin -end; - -procedure TwbStringListTerminator.SetNativeValue(const aValue: Variant); -begin -end; - -procedure TwbStringListTerminator.WriteToStreamInternal(aStream: TStream; aResetModified: Boolean); -const - NullChar : AnsiChar = #0; -begin - aStream.Write(NullChar, 1); - Exclude(eStates, esUnsaved); - if aResetModified then begin - Exclude(eStates, esModified); - Exclude(eStates, esInternalModified); - end; -end; - -procedure WriteSubRecordOrderList; -var - i: Integer; -begin - if not wbReportMode then - Exit; - - SubRecordOrderList.Sorted := False; - - for i := 0 to Pred(SubRecordOrderList.Count) do - SubRecordOrderList[i] := SubRecordOrderList[i] + ' (' + IntToStr(Integer(SubRecordOrderList.Objects[i]) )+ ')'; - - SubRecordOrderList.SaveToFile('SubRecordOrderList.txt'); -end; - -var - wbContainedInDef : array[0..10] of IwbIntegerDef; - -{ TwbContainedInElement } - -procedure TwbContainedInElement.BuildRef; -begin -end; - -function TwbContainedInElement.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -function TwbContainedInElement.CompareExchangeFormID(aOldFormID, aNewFormID: Cardinal): Boolean; -begin - Result := False; -end; - -procedure TwbContainedInElement.ContainerChanged; -var - MainRecord : IwbMainRecord; - GroupRecord : IwbGroupRecord; - Grp : TwbGroupTypes; -begin - if cieLockCount > 0 then - Exit; - - if not Supports(GetContainer, IwbMainRecord, MainRecord) then - Exit; - if not Supports(MainRecord.Container, IwbGroupRecord, GroupRecord) then - Exit; - if GroupRecord.GroupType = 5 then - if not Supports(GroupRecord.Container, IwbGroupRecord, GroupRecord) then - Exit; - if GroupRecord.GroupType = 4 then - if not Supports(GroupRecord.Container, IwbGroupRecord, GroupRecord) then - Exit; - - if wbVWDAsQuestChildren then Grp := [8..9] else Grp := [8..10]; - if GroupRecord.GroupType in Grp then - if not Supports(GroupRecord.Container, IwbGroupRecord, GroupRecord) then - Exit; - - if wbVWDAsQuestChildren then Grp := [1, 6, 7, 10] else Grp := [1, 6, 7]; - if not (GroupRecord.GroupType in Grp) then - Exit; - - PCardinal(GetDataBasePtr)^ := GroupRecord.GroupLabel; - Exclude(eStates, esSortKeyValid); - Exclude(eStates, esExtendedSortKeyValid); - eSortKey := ''; - eExtendedSortKey := ''; -end; - -constructor TwbContainedInElement.Create(const aMainRecord: IwbMainRecord); -var - BasePtr : Pointer; - EndPtr : Pointer; - GroupRecord : IwbGroupRecord; - Grp : TwbGroupTypes; -begin - // MainRecord must be in a group - if not Supports(aMainRecord.Container, IwbGroupRecord, GroupRecord) then - Assert(False); - // if that group is Exterior Sub-Block, then it must be in a group too, get it - if GroupRecord.GroupType = 5 then - if not Supports(GroupRecord.Container, IwbGroupRecord, GroupRecord) then - Assert(False); - // if that group is Exterior Block, then it must be in a group too, get it - if GroupRecord.GroupType = 4 then - if not Supports(GroupRecord.Container, IwbGroupRecord, GroupRecord) then - Assert(False); - // if group is persistent, temporary or vwd cell children, it should be in a group too - // if vwd is treated as quest children, then exclude it from check - if wbVWDAsQuestChildren then Grp := [8..9] else Grp := [8..10]; - if GroupRecord.GroupType in Grp then - if not Supports(GroupRecord.Container, IwbGroupRecord, GroupRecord) then - Assert(False); - - // the final list of parent groups, mainrecords in those will have ContainedIn element - if wbVWDAsQuestChildren then Grp := [1, 6, 7, 10] else Grp := [1, 6, 7]; - Assert(GroupRecord.GroupType in Grp); - - Include(dcFlags, dcfDontMerge); - Include(dcFlags, dcfDontSave); - - BasePtr := nil; - EndPtr := nil; - inherited Create(aMainRecord, BasePtr, EndPtr, wbContainedInDef[GroupRecord.GroupType], '', False); - - SetSortOrder(-2); - - BasePtr := nil; - EndPtr := nil; - - RequestStorageChange(BasePtr, EndPtr, GetDataSize); - Assert(Assigned(BasePtr)); - - PCardinal(BasePtr)^ := GroupRecord.GroupLabel; -end; - -procedure TwbContainedInElement.DoAfterSet(const aOldValue, aNewValue: Variant); -var - OldFormID : Cardinal; - NewFormID : Cardinal; - _File : IwbFile; - MainRecord : IwbMainRecord; - NewOwner : IwbMainRecord; - GroupRecord : IwbGroupRecord; - OldGroup : IwbGroupRecord; - - Group1 : IwbGroupRecord; - Group2 : IwbGroupRecord; - Group3 : IwbGroupRecord; - CorrectGroup : Integer; - i : Integer; -begin - Inc(cieLockCount); - try - inherited; - if aOldValue <> aNewValue then begin - OldFormID := aOldValue; - NewFormID := aNewValue; - _File := GetFile; - MainRecord := GetContainer as IwbMainRecord; - OldGroup := MainRecord.Container as IwbGroupRecord; - NewOwner := _File.RecordByFormID[NewFormID, False]; - if not Assigned(NewOwner) then begin - if Assigned(dcDataBasePtr) then - PCardinal(dcDataBasePtr)^ := OldFormID; - Exit; - end; - if not _File.Equals(NewOwner._File) then - NewOwner := wbCopyElementToFile(NewOwner, _File, False, True, '', '', '') as IwbMainRecord; - GroupRecord := NewOwner.EnsureChildGroup; - - case GroupRecord.GroupType of - 1: begin - Assert(OldGroup.GroupType in [1, 5]); - Group1 := OldGroup; - Group2 := nil; - Group3 := nil; - if OldGroup.GroupType = 5 then begin - if not Supports(Group1.Container, IwbGroupRecord, Group2) then - Assert(False); - Assert(Group2.GroupType = 4); - - Group3 := nil; - for i := 0 to Pred(GroupRecord.ElementCount) do - if Supports(GroupRecord.Elements[i], IwbGroupRecord, Group3) then - if (Group3.GroupType = 4) and (Group3.GroupLabel = Group2.GroupLabel) then - Break - else - Group3 := nil; - if not Assigned(Group3) then - Group3 := TwbGroupRecord.Create(GroupRecord, 4, Group2.GroupLabel); - GroupRecord := Group3; - - Group3 := nil; - for i := 0 to Pred(GroupRecord.ElementCount) do - if Supports(GroupRecord.Elements[i], IwbGroupRecord, Group3) then - if (Group3.GroupType = 5) and (Group3.GroupLabel = Group1.GroupLabel) then - Break - else - Group3 := nil; - if not Assigned(Group3) then - Group3 := TwbGroupRecord.Create(GroupRecord, 5, Group1.GroupLabel); - GroupRecord := Group3; - - if not Supports(Group2.Container, IwbGroupRecord, Group3) then - Assert(False); - Assert(Group3.GroupType = 1); - end; - - Group1.RemoveElement(MainRecord); - if Group1.ElementCount = 0 then begin - (Group1 as IwbGroupRecordInternal).SetModified(True); - Group1.Remove; - if Assigned(Group2) then - if Group2.ElementCount = 0 then begin - (Group2 as IwbGroupRecordInternal).SetModified(True); - Group2.Remove; - if Assigned(Group3) then - if Group3.ElementCount = 0 then begin - (Group3 as IwbGroupRecordInternal).SetModified(True); - Group3.Remove; - end else - (Group3 as IwbGroupRecordInternal).SetModified(True); - end else - (Group2 as IwbGroupRecordInternal).SetModified(True); - end else - (Group1 as IwbGroupRecordInternal).SetModified(True); - - GroupRecord.AddElement(MainRecord); - (GroupRecord as IwbGroupRecordInternal).SetModified(True); - (GroupRecord as IwbGroupRecordInternal).Sort; - end; - 6: begin - if MainRecord.IsPersistent then - CorrectGroup := 8 - else if MainRecord.IsVisibleWhenDistant and not wbVWDInTemporary then - CorrectGroup := 10 - else - CorrectGroup := 9; - - Group3 := nil; - for i := 0 to Pred(GroupRecord.ElementCount) do - if Supports(GroupRecord.Elements[i], IwbGroupRecord, Group3) then - if Group3.GroupType = CorrectGroup then - Break - else - Group3 := nil; - - if not Assigned(Group3) then - Group3 := TwbGroupRecord.Create(GroupRecord, CorrectGroup, GroupRecord.ChildrenOf); - - OldGroup.RemoveElement(MainRecord); - if OldGroup.ElementCount = 0 then - OldGroup.Remove - else - (OldGroup as IwbGroupRecordInternal).SetModified(True); - Group3.AddElement(MainRecord); - (Group3 as IwbGroupRecordInternal).SetModified(True); - (Group3 as IwbGroupRecordInternal).Sort; - end; - 7: begin - OldGroup.RemoveElement(MainRecord); - if OldGroup.ElementCount = 0 then - OldGroup.Remove - else - (OldGroup as IwbGroupRecordInternal).SetModified(True); - GroupRecord.AddElement(MainRecord); - (GroupRecord as IwbGroupRecordInternal).SetModified(True); - (GroupRecord as IwbGroupRecordInternal).Sort; - end; - else - Assert(False); - end; - - end; - finally - Dec(cieLockCount); - end; - ContainerChanged; -end; - -procedure TwbContainedInElement.ElementChanged(const aElement: IwbElement; aContainer: Pointer); -begin -end; - -procedure TwbContainedInElement.InvalidateParentStorage; -begin -end; - -function TwbContainedInElement.IsElementEditable(const aElement: IwbElement): Boolean; -begin - Result := False; -end; - -procedure TwbContainedInElement.SetModified(aValue: Boolean); -begin - if not aValue then - inherited - else begin - Exclude(eStates, esSortKeyValid); - Exclude(eStates, esExtendedSortKeyValid); - eSortKey := ''; - end; -end; - -{ TwbMainRecordEntryHeader } - -procedure TwbMainRecordEntryHeader.BeginUse; -begin - Assert(not mrehInUse); - mrehInUse := True; - - Inc(mrehGeneration); - mrehHead := nil; - mrehTail := nil; - mrehCount := 0; -end; - -procedure TwbMainRecordEntryHeader.EndUse; -begin - Assert(mrehInUse); - mrehInUse := False; - - Inc(mrehGeneration); - mrehHead := nil; - mrehTail := nil; - mrehCount := 0; -end; - -const - WRLD : TwbSignature = 'WRLD'; - CELL : TwbSignature = 'CELL'; - DIAL : TwbSignature = 'DIAL'; - QUST : TwbSignature = 'QUST'; - -{ TwbFileSource } - -constructor TwbFileSource.CreateNew(const aFileName: string; aLoadOrder: Integer); -begin - Include(flStates, fsIsNew); - flLoadOrder := aLoadOrder; - flFileName := aFileName; -end; - -procedure TwbFileSource.GetMasters(aMasters: TStrings); -var - Header : IwbFileHeader; - MasterFiles : IwbContainerElementRef; - fPath : String; - i : Integer; - modOffset : Cardinal; - modPtr : Pointer; - mods : TwbArray; -begin - if (GetElementCount <> 1) or not Supports(GetElement(0), IwbFileHeader, Header) then - raise Exception.CreateFmt('Unexpected error reading file "%s"', [flFileName]); - - if Header.FileMagic <> wbFileMagic then - raise Exception.CreateFmt('Expected File Magic %s, found %s in file "%s"', - [wbFileMagic, String(Header.FileMagic), flFileName]); - - if Pos('Absolute:', wbFilePlugins)=1 then begin - modOffset := Cardinal(flView)+StrToInt(Copy(wbFilePlugins, 10, Length(wbFilePlugins))); - modPtr := Pointer(modOffset); - mods := TwbArray.Create(nil, modPtr, flEndPtr, wbArray('Modules', wbLenString('PluginName', 2), -4), '', False); - Supports(mods, IwbContainerElementRef, MasterFiles); - end else - MasterFiles := Header.ElementByName[wbFilePlugins] as IwbContainerElementRef; - - if Assigned(MasterFiles) then - for i := 0 to Pred(MasterFiles.ElementCount) do begin - fPath := wbDataPath + MasterFiles[i].Value; - if FileExists(fPath) then - aMasters.Add(MasterFiles[i].Value) - end; - -end; - -function CreateTemporaryCopy(FileName, CompareFile: String): String; -var - s : String; - i : Integer; - -begin - if not SameText(ExtractFilePath(CompareFile), wbDataPath) then begin - s := wbDataPath + ExtractFileName(CompareFile); - if FileExists(s) then // Finds a unique name - for i := 0 to 255 do begin - s := wbDataPath + ExtractFileName(CompareFile) + IntToHex(i, 3); - if not FileExists(s) then Break; - end; - if FileExists(s) then begin - wbProgressCallback('Could not copy '+FileName+' into '+wbDataPath); - Exit; - end; - CompareFile := s; - CopyFile(PChar(FileName), PChar(CompareFile), false); - end; - Result := CompareFile; -end; - -function SelectTemporaryCopy(FileName, CompareFile: String): String; -var - s : String; - i : Integer; - -begin - if not SameText(ExtractFilePath(CompareFile), wbDataPath) then begin - for i := 0 to 255 do begin - s := wbDataPath + ExtractFileName(CompareFile) + IntToHex(i, 3); - if FileExists(s) then Break; - end; - if not FileExists(s) then - s := wbDataPath + CompareFile + IntToHex(0, 3); - CompareFile := s; - if not FileExists(CompareFile) then - CopyFile(PChar(FileName), PChar(CompareFile), false); - end; - Result := CompareFile; -end; - -procedure TwbFileSource.Scan; -var - CurrentPtr : Pointer; - Header : IwbFileHeader; - MasterFiles : IwbContainerElementRef; - i : Integer; - ExtractInfo : TByteSet; - Element : IwbElement; - Container : IwbContainer; - SelfRef : IwbContainerElementRef; - fPath : String; - modOffset : Cardinal; - modPtr : Pointer; - mods : TwbArray; - -begin - SelfRef := Self as IwbContainerElementRef; - flProgress('Start processing'); - - wbBaseOffset := Cardinal(flView); - - CurrentPtr := flView; - TwbFileHeader.Create(Self, CurrentPtr, flEndPtr, wbFileHeader, '', False); - - if (GetElementCount <> 1) or not Supports(GetElement(0), IwbFileHeader, Header) then - raise Exception.CreateFmt('Unexpected error reading file "%s"', [flFileName]); - - if Header.FileMagic <> wbFileMagic then - raise Exception.CreateFmt('Expected header Magic %s, found %s in file "%s"', - [wbFileMagic, String(Header.FileMagic), flFileName]); - - if fsOnlyHeader in flStates then - Exit; - - if Pos('Absolute:', wbFilePlugins)=1 then begin - modOffset := Cardinal(flView)+StrToInt(Copy(wbFilePlugins, 10, Length(wbFilePlugins))); - modPtr := Pointer(modOffset); - mods := TwbArray.Create(nil, modPtr, flEndPtr, wbArray('Modules', wbLenString('PluginName', 2), -4), '', False); - Supports(mods, IwbContainerElementRef, MasterFiles); - end else - MasterFiles := Header.ElementByName[wbFilePlugins] as IwbContainerElementRef; - - if Assigned(MasterFiles) then - for i := 0 to Pred(MasterFiles.ElementCount) do begin - fPath := wbDataPath + MasterFiles[i].Value; - if FileExists(fPath) then - AddMaster(fPath) - else if wbUseFalsePlugins then begin - fPath := wbDataPath + wbAppName + TheEmptyPlugin; // place holder to keep save indexes - if not FileExists(fPath) then - fPath := ExtractFilePath(wbProgramPath) + wbAppName + TheEmptyPlugin; // place holder to keep save indexes - if FileExists(fPath) then - AddMaster(SelectTemporaryCopy(fPath, MasterFiles[i].Value), True); - end; - end; - - if flCompareTo <> '' then - AddMaster(flCompareTo); - - if Assigned(wbExtractInfo) then - ExtractInfo := wbExtractInfo^ - else - ExtractInfo := []; - - for i := 0 to Pred(wbFileChapters.MemberCount) do begin - case wbFileChapters.Members[i].DefType of - dtArray: Element := TwbArray.Create(Self, currentPtr, flEndPtr, wbFileChapters.Members[i], ''); - dtStruct: Element := TwbStruct.Create(Self, currentPtr, flEndPtr, wbFileChapters.Members[i], ''); - dtStructChapter: Element := TwbChapter.Create(Self, currentPtr, flEndPtr, wbFileChapters.Members[i], ''); - dtUnion: Element := TwbUnion.Create(Self, currentPtr, flEndPtr, wbFileChapters.Members[i], ''); - else - Element := TwbValue.Create(Self, currentPtr, flEndPtr, wbFileChapters.Members[i], ''); - end; - if (i in ExtractInfo) and Supports(Element, IwbContainer, Container) then - with Element as TwbContainer do DoInit; - end; - - for i := 0 to Pred(GetElementCount) do - GetElement(i).SortOrder := i; - - flProgress('Processing completed'); - flLoadFinished := True; -end; - -{ TwbFileHeader } - -function TwbFileHeader.GetFileMagic: TwbFileMagic; -var - Element : IwbElement; - Container : IwbContainer; -begin - Result := ''; - if not Supports(Self, IwbContainer, Container) or (Container.ElementCount < 1) then Exit; - Element := Container.Elements[0]; - if Assigned(Element) then - Result := Element.NativeValue; -end; - -{ TwbChapter } - -constructor TwbChapter.Create(const aContainer : IwbContainer; - const aValueDef : IwbValueDef; - const aSource : IwbElement; - const aOnlySK : Boolean; - const aNameSuffix : string); -var - Dummy : Integer; -begin - if Assigned(aValueDef) then - Assert(Supports(aValueDef, IwbStructCDef)); - inherited; - cChapterSkipped := cChapterSkipped or ChaptersToSkip.Find(aValueDef.Name, Dummy); -end; - -function TwbChapter.GetChapterName: String; -var - Struct : IwbStructCDef; -begin - if Assigned(vbValueDef) and Supports(vbValueDef, IwbStructCDef, Struct) then - Result := Struct.GetChapterName(dcBasePtr, dcEndPtr, Self) - else - Result := Struct.GetChapterTypeName(dcBasePtr, dcEndPtr, Self); -end; - -function TwbChapter.GetChapterType: Integer; -var - Struct : IwbStructCDef; -begin - Result := -1; - if Assigned(vbValueDef) and Supports(vbValueDef, IwbStructCDef, Struct) then - Result := Struct.GetChapterType(dcBasePtr, dcEndPtr, Self); -end; - -function TwbChapter.GetChapterTypeName: String; -var - Struct : IwbStructCDef; -begin - if Assigned(vbValueDef) and Supports(vbValueDef, IwbStructCDef, Struct) then - Result := Struct.GetChapterTypeName(dcBasePtr, dcEndPtr, Self) - else - Result := IntToStr(Struct.GetChapterType(dcBasePtr, dcEndPtr, Self)); -end; - -function TwbChapter.GetElementType: TwbElementType; -begin - Result := etStructChapter; -end; - -function TwbChapter.GetSkipped: Boolean; -begin - Result := cChapterSkipped; -end; - -{ TwbKeepAliveRoot } - -constructor TwbKeepAliveRoot.Create; -begin - inherited; - Setup; -end; - -destructor TwbKeepAliveRoot.Destroy; -begin - inherited; - Teardown; -end; - -procedure TwbKeepAliveRoot.Done; -begin - Teardown; -end; - -procedure TwbKeepAliveRoot.Setup; -begin - New(karKAC); - karKAC.kacFinished := False; - karKAC.kacPrev := wbKeepAliveContext; - karKAC.kacHead := TwbContainer.Create(nil); - wbKeepAliveContext := karKAC; -end; - -procedure TwbKeepAliveRoot.Teardown; -var - KAC : PwbKeepAliveContext; -begin - if Assigned(karKAC) then begin - karKAC.kacFinished := True; - karKAC := nil; - end; - - KAC := wbKeepAliveContext; - while Assigned(KAC) and KAC.kacFinished do begin - wbKeepAliveContext := KAC.kacPrev; - while Assigned(KAC.kacHead) do - KAC.kacHead := KAC.kacHead.ReleaseKeepAlive; - Dispose(KAC); - KAC := wbKeepAliveContext; - end; -end; - -initialization - wbContainedInDef[1] := wbFormIDCk('Worldspace', [WRLD], False, cpNormal, True); - wbContainedInDef[6] := wbFormIDCk('Cell', [CELL], False, cpNormal, True); - wbContainedInDef[7] := wbFormIDCk('Topic', [DIAL], False, cpNormal, True); - wbContainedInDef[10] := wbFormIDCk('Quest', [QUST], False, cpNormal, True); - - SubRecordOrderList := TwbFastStringList.Create; - SubRecordOrderList.Sorted := True; - SubRecordOrderList.Duplicates := dupIgnore; - - RecordToSkip := TwbFastStringList.Create; - RecordToSkip.Sorted := True; - RecordToSkip.Duplicates := dupIgnore; - - GroupToSkip := TwbFastStringList.Create; - GroupToSkip.Sorted := True; - GroupToSkip.Duplicates := dupIgnore; - - ChaptersToSkip := TwbFastStringList.Create; - ChaptersToSkip.Sorted := True; - ChaptersToSkip.Duplicates := dupIgnore; - - FilesMap := TwbFastStringList.Create; - FilesMap.Sorted := True; - FilesMap.Duplicates := dupError; -finalization - WriteSubRecordOrderList; - FreeAndNil(SubRecordOrderList); - FreeAndNil(RecordToSkip); - FreeAndNil(GroupToSkip); - FreeAndNil(ChaptersToSkip); - FreeAndNil(FilesMap); - wbContainedInDef[1] := nil; - wbContainedInDef[6] := nil; - wbContainedInDef[7] := nil; - wbContainedInDef[10] := nil; -end. diff --git a/lib/xedit/wbInit.pas b/lib/xedit/wbInit.pas deleted file mode 100644 index 91c84bf..0000000 --- a/lib/xedit/wbInit.pas +++ /dev/null @@ -1,887 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} - -unit wbInit; - -{$I wbDefines.inc} - -interface - -uses - Classes; - -var - wbApplicationTitle : string; - wbScriptsPath : string; - wbScriptToRun : string; - wbBackupPath : string; - wbTempPath : string; - wbSavePath : string; - wbMyGamesTheGamePath : string; - wbPluginsFileName : String; - wbSettingsFileName : string; - wbModGroupFileName : string; - wbPluginToUse : string; // Passed a specific plugin as parameter - wbLogFile : string; // Optional log file for this session - wbMyProfileName : string; - - wbMasterUpdateDone : Boolean; - wbDontSave : Boolean; - wbDontBackup : Boolean = False; - wbRemoveTempPath : Boolean = True; - wbQuickShowConflicts : Boolean; - wbQuickClean : Boolean; - - wbParamIndex : integer = 1; // First unused parameter - wbPluginsToUse : TStringList; - -function wbFindNextValidCmdLineFileName(var startingIndex : integer; out aValue : string; defaultPath : string = '') : Boolean; -function wbFindNextValidCmdLinePlugin(var startingIndex : integer; out aValue : string; defaultPath : string) : Boolean; -function wbFindCmdLineParam(const aSwitch : string; out aValue : string): Boolean; overload; - -function wbLoadMOHookFile: Boolean; -procedure SwitchToCoSave; - -implementation - -uses - SysUtils, - Windows, - Registry, - ShellApi, - Dialogs, - ShlObj, - IOUtils, - IniFiles, - wbHelpers, - wbInterface, - wbImplementation, - wbDefinitionsFNV, - wbDefinitionsFNVSaves, - wbDefinitionsFO3, - wbDefinitionsFO3Saves, - wbDefinitionsFO4, - wbDefinitionsFO4Saves, - wbDefinitionsTES3, - wbDefinitionsTES4, - wbDefinitionsTES4Saves, - wbDefinitionsTES5, - wbDefinitionsTES5Saves; - -function wbFindCmdLineParam(const aSwitch : string; - const aChars : TSysCharSet; - aIgnoreCase : Boolean; - out aValue : string) - : Boolean; overload; -var - i : Integer; - s : string; -begin - Result := False; - aValue := ''; - for i := 1 to ParamCount do begin - s := ParamStr(i); - if (aChars = []) or (s[1] in aChars) then - if aIgnoreCase then begin - if AnsiCompareText(Copy(s, 2, Length(aSwitch)), aSwitch) = 0 then begin - if (length(s)>(length(aSwitch)+2)) and (s[Length(aSwitch) + 2] = ':') then begin - aValue := Copy(s, Length(aSwitch) + 3, MaxInt); - Result := True; - end; - Exit; - end; - end else - if AnsiCompareStr(Copy(s, 2, Length(aSwitch)), aSwitch) = 0 then begin - if s[Length(aSwitch) + 2] = ':' then begin - aValue := Copy(s, Length(aSwitch) + 3, MaxInt); - Result := True; - end; - Exit; - end; - end; -end; - -function wbFindCmdLineParam(var startingIndex : integer; - const aChars : TSysCharSet; - out aValue : string) - : Boolean; overload; -var - i : integer; - s : string; -begin - Result := False; - aValue := ''; - for i := startingIndex to ParamCount do begin - s := ParamStr(i); - if (aChars = []) or (s[1] in aChars) then // skipped - Inc(startingIndex) - else begin - aValue := ParamStr(i); - startingIndex := i+1; - Result := True; - break; - end - end; -end; - -function wbFindCmdLineParam(const aSwitch : string; - out aValue : string) - : Boolean; overload; -begin - Result := wbFindCmdLineParam(aSwitch, SwitchChars, True, aValue); -end; - -function wbFindCmdLineParam(var startingIndex : integer; out aValue : string) : Boolean; overload; -begin - Result := wbFindCmdLineParam(startingIndex, SwitchChars, aValue); -end; - -function wbCheckForValidExtension(aFilePath : string; const anExtension : string): Boolean; overload; -begin - Result := UpperCase(ExtractFileExt(aFilePath)) = UpperCase(anExtension); -end; - -function wbCheckForPluginExtension(aFilePath : string): Boolean; -begin - Result := wbCheckForValidExtension(aFilePath, '.esp') or wbCheckForValidExtension(aFilePath, '.esm'); -end; - -function wbCheckForValidExtension(aFilePath : string): Boolean; overload; -begin - Result := wbCheckForPluginExtension(aFilePath) or - wbCheckForValidExtension(aFilePath, '.fos') or wbCheckForValidExtension(aFilePath, '.ess'); -end; - -function wbFindNextValidCmdLineFileName(var startingIndex : integer; out aValue : string; defaultPath : string = '') : Boolean; -begin - Result := wbFindCmdLineParam(startingIndex, SwitchChars, aValue); - if Result and not FileExists(aValue) then - if (defaultPath<>'') then - if FileExists(defaultPath+'\'+aValue) then - aValue := ExpandFileName(defaultPath+'\'+aValue) - else - Result := False - else - Result := False; -end; - -function wbFindNextValidCmdLinePlugin(var startingIndex : integer; out aValue : string; defaultPath : string) : Boolean; -begin - repeat - Result := wbFindNextValidCmdLineFileName(startingIndex, aValue, defaultPath); - until not Result or wbCheckForPluginExtension(aValue); - if Result then - if (AnsiCompareText(ExtractFilePath(ExpandFileName(aValue)), ExpandFileName(defaultPath)) = 0) then begin - aValue := ExtractFileName(aValue); - if not Assigned(wbPluginsToUse) then wbPluginsToUse := TStringList.Create; - wbPluginsToUse.Add(aValue); - end else - Result := False; -end; - -// several ini settings should be read before record definitions -// they may affect definitions like wbSimpleRecords -// and should be overridden by command line parameters -procedure ReadSettings; -var - Settings: TMemIniFile; -begin - try - Settings := TMemIniFile.Create(wbSettingsFileName); - try - wbLoadBSAs := Settings.ReadBool('Options', 'LoadBSAs', wbLoadBSAs); - wbSimpleRecords := Settings.ReadBool('Options', 'SimpleRecords', wbSimpleRecords); - wbShowFlagEnumValue := Settings.ReadBool('Options', 'ShowFlagEnumValue', wbShowFlagEnumValue); - wbTrackAllEditorID := Settings.ReadBool('Options', 'TrackAllEditorID', wbTrackAllEditorID); - finally - Settings.Free; - end; - finally - end; -end; - -function GetCSIDLShellFolder(CSIDLFolder: integer): string; -begin - SetLength(Result, MAX_PATH); - SHGetSpecialFolderPath(0, PChar(Result), CSIDLFolder, True); - SetLength(Result, StrLen(PChar(Result))); - if (Result <> '') then - Result := IncludeTrailingBackslash(Result); -end; - -function CheckAppPath: string; -const - //gmFNV, gmFO3, gmTES3, gmTES4, gmTES5, gmSSE, gmFO4 - ExeName : array[TwbGameMode] of string = - ('FalloutNV.exe', 'Fallout3.exe', 'Morrowind.exe', 'Oblivion.exe', 'TESV.exe', 'SkyrimSE.exe', 'Fallout4.exe'); -var - s: string; -begin - Result := ''; - s := ExtractFilePath(ParamStr(0)); - while Length(s) > 3 do begin - if FileExists(s + ExeName[wbGameMode]) and DirectoryExists(s + 'Data') then begin - Result := s; - Exit; - end; - s := ExtractFilePath(ExcludeTrailingPathDelimiter(s)); - end; -end; - -{===SafeLoadLibrary============================================================} -{$IFDEF CPUX86} -function TestAndClearFPUExceptions(AExceptionMask: Word): Boolean; -asm - PUSH ECX - MOV CX, AX - FSTSW AX - TEST AX, CX - JNE @@bad - XOR EAX, EAX - INC EAX - JMP @@exit -@@bad: - XOR EAX, EAX -@@exit: - POP ECX - FCLEX - RET -end; -{------------------------------------------------------------------------------} -function SafeLoadLibrary(const Filename: string; ErrorMode: UINT): HMODULE; -var - OldMode: UINT; - FPUControlWord: Word; -begin - OldMode := SetErrorMode(ErrorMode); - try - FPUControlWord := Get8087CW(); - Result := LoadLibrary(PChar(Filename)); - TestAndClearFPUExceptions(0); - Set8087CW(FPUControlWord); - finally - SetErrorMode(OldMode); - end; -end; -{==============================================================================} -{$ENDIF CPUX86} - - -function wbLoadMOHookFile: Boolean; -var - HookDll : HMODULE; - Init : function(logLevel: Integer; profileName: LPCWSTR): BOOL; cdecl; -begin - if not wbShouldLoadMOHookFile then - Exit(True); - Result := False; - if not FileExists(wbMOHookFile) then - Exit; - - HookDll := SafeLoadLibrary(wbMOHookFile, SEM_NOOPENFILEERRORBOX); - if HookDll <> 0 then begin - Pointer(@Init) := GetProcAddress(HookDll, 'Init'); - if Assigned(Pointer(@Init)) then - Result := Init(0, PWideChar(UnicodeString(wbMOProfile))); - end; -end; - -procedure DoInitPath(const ParamIndex: Integer); -const - sBethRegKey = '\SOFTWARE\Bethesda Softworks\'; - sBethRegKey64 = '\SOFTWARE\Wow6432Node\Bethesda Softworks\'; -var - s : String; - IniFile : TIniFile; -begin - wbModGroupFileName := wbProgramPath + wbAppName + wbToolName + '.modgroups'; - - if not wbFindCmdLineParam('S', wbScriptsPath) then - wbScriptsPath := wbProgramPath + 'Edit Scripts\'; - - if not wbFindCmdLineParam('T', wbTempPath) then - wbTempPath := IncludeTrailingPathDelimiter(TPath.GetTempPath + wbAppName + 'Edit') - else - wbRemoveTempPath := not DirectoryExists(wbTempPath); - - if not wbFindCmdLineParam('D', wbDataPath) then begin - wbDataPath := CheckAppPath; - - if wbDataPath = '' then with TRegistry.Create do try - RootKey := HKEY_LOCAL_MACHINE; - - if not OpenKeyReadOnly(sBethRegKey + wbGameName2 + '\') then - if not OpenKeyReadOnly(sBethRegKey64 + wbGameName2 + '\') then begin - s := 'Fatal: Could not open registry key: ' + sBethRegKey + wbGameName + '\'; -// if wbGameMode = gmTES5 then // All game exists on steam now - ShowMessage(s+#13+#10+'This can happen after Steam updates, run game''s launcher to restore registry settings'); - wbDontSave := True; - Exit; - end; - - wbDataPath := ReadString('Installed Path'); - - if wbDataPath = '' then begin - s := 'Fatal: Could not determine '+wbGameName2+' installation path, no "Installed Path" registry key'; -// if wbGameMode = gmTES5 then - ShowMessage(s+#13+#10+'This can happen after Steam updates, run game''s launcher to restore registry settings'); - wbDontSave := True; - end; - finally - Free; - end; - if wbDataPath <>'' then - wbDataPath := IncludeTrailingPathDelimiter(wbDataPath) + 'Data\'; - end else - wbDataPath := IncludeTrailingPathDelimiter(wbDataPath); - - wbOutputPath := wbDataPath; - if wbFindCmdLineParam('O', s) and (Length(s) > 0) then - if s[1] = '.' then - //assume relative path - wbOutputPath := IncludeTrailingPathDelimiter(wbOutputPath + s) - else - //assume absolute path - wbOutputPath := IncludeTrailingPathDelimiter(s); - - wbMOHookFile := wbDataPath + '..\Mod Organizer\hook.dll'; - - if not wbFindCmdLineParam('I', wbTheGameIniFileName) then begin - wbMyProfileName := GetCSIDLShellFolder(CSIDL_PERSONAL); - if wbMyProfileName = '' then begin - ShowMessage('Fatal: Could not determine my documents folder'); - Exit; - end; - wbMyGamesTheGamePath := wbMyProfileName + 'My Games\'+ wbGameName2 +'\'; - - if wbGameMode in [gmFO3, gmFNV] then - wbTheGameIniFileName := wbMyGamesTheGamePath + 'Fallout.ini' - else if wbGameMode = gmFO4 then - wbTheGameIniFileName := wbMyGamesTheGamePath + 'Fallout4.ini' - else - wbTheGameIniFileName := wbMyGamesTheGamePath + wbGameName + '.ini'; - end; - - if not wbFindCmdLineParam('G', wbSavePath) then begin - if wbMyGamesTheGamePath = '' then - wbMyGamesTheGamePath := ExtractFilePath(wbTheGameIniFileName); - - s := 'Saves\'; - if FileExists(wbTheGameIniFileName) then begin - IniFile := TIniFile.Create(wbTheGameIniFileName); - try - s := IniFile.ReadString('General', 'SLocalSavePath', s); - finally - FreeAndNil(IniFile); - end; - end; - wbSavePath := wbMyGamesTheGamePath + s; - end; - wbSavePath := IncludeTrailingPathDelimiter(wbSavePath); - - wbParamIndex := ParamIndex; - if not wbFindCmdLineParam('P', wbPluginsFileName) then - if not (wbFindNextValidCmdLineFileName(wbParamIndex, wbPluginsFileName) and SameText(ExtractFileExt(wbPluginsFileName), '.txt')) - or wbCheckForValidExtension(wbPluginsFileName) - then begin - wbParamIndex := ParamIndex; - wbPluginsFileName := GetCSIDLShellFolder(CSIDL_LOCAL_APPDATA); - if wbPluginsFileName = '' then begin - ShowMessage('Fatal: Could not determine the local application data folder'); - Exit; - end; - - wbPluginsFileName := wbPluginsFileName + wbGameName2 + '\Plugins.txt'; - end; - - // settings in the ini file next to app, or in the same folder with plugins.txt - wbSettingsFileName := wbProgramPath + wbAppName + wbToolName + '.ini'; - if not FileExists(wbSettingsFileName) then - wbSettingsFileName := ChangeFileExt(wbPluginsFileName, '.'+LowerCase(wbAppName)+'viewsettings'); - - wbBackupPath := ''; - if not (wbDontSave or wbFindCmdLineParam('B', wbBackupPath)) then begin - wbBackupPath := wbDataPath + wbAppName + 'Edit Backups\'; - if not DirectoryExists(wbBackupPath) then - if not ForceDirectories(wbBackupPath) then - wbBackupPath := wbDataPath; - end; - wbFindCmdLineParam('R', wbLogFile); -end; - -var - wbForcedModes: string; - AppGameMode, AppToolMode, AppSourceMode: string; - -procedure DetectAppMode; -const - SourceModes : array [1..2] of string = ('plugins', 'saves'); - GameModes: array [1..6] of string = ('tes4', 'tes5', 'sse', 'fo3', 'fnv', 'fo4'); - ToolModes: array [1..12] of string = ( - 'edit', 'view', 'lodgen', 'script', 'translate', - 'setesm', 'clearesm', 'sortandclean', 'sortandcleanmasters', - 'checkforerrors', 'checkforitm', 'checkfordr'); -var - s, p: string; -begin - // Detecting game mode - // check command line params first for mode overrides - // they should take precendence over application name detection - // AppSourceMode := SourceModes[1]; - for s in SourceModes do - if FindCmdLineSwitch(s) or wbFindCmdLineParam(s, p) or (Pos(s, wbForcedModes) <> 0) then begin - AppSourceMode := s; - Break; - end; - // if no overrrides, then check by executable name - if AppSourceMode = '' then - for s in SourceModes do - if (Pos(s, LowerCase(ExtractFileName(ParamStr(0)))) <> 0) or (Pos(s, wbForcedModes) <> 0) then begin - AppSourceMode := s; - Break; - end; - // if still nothing, then default value - if AppSourceMode = '' then - AppSourceMode := 'plugins'; - - for s in GameModes do - if FindCmdLineSwitch(s) or wbFindCmdLineParam(s, p) or (Pos(s, wbForcedModes) <> 0) then begin - AppGameMode := s; - Break; - end; - // if no overrrides, then check by executable name - if AppGameMode = '' then - for s in GameModes do - if (Pos(s, LowerCase(ExtractFileName(ParamStr(0)))) <> 0) or (Pos(s, wbForcedModes) <> 0) then begin - AppGameMode := s; - Break; - end; - // if still nothing, then default value - if AppGameMode = '' then - AppGameMode := 'fo4'; - - // the same for tool mode - for s in ToolModes do - if FindCmdLineSwitch(s) or wbFindCmdLineParam(s, p) or (Pos(s, wbForcedModes) <> 0) then begin - AppToolMode := s; - Break; - end; - if AppToolMode = '' then - for s in ToolModes do - if (Pos(s, LowerCase(ExtractFileName(ParamStr(0)))) <> 0) or (Pos(s, wbForcedModes) <> 0) then begin - AppToolMode := s; - Break; - end; - if AppToolMode = '' then - AppToolMode := 'edit'; -end; - -function isMode(aMode: String): Boolean; -begin - aMode := LowerCase(aMode); - Result := (AppGameMode = aMode) or (AppToolMode = aMode) or (AppSourceMode = aMode); -end; - -// Force app modes -function CheckForcedMode: Boolean; -var - s: string; - i: integer; -begin - Result := False; - // there is a game specific script provided to execute - // go into 'script' tool mode and detect game mode by script's extension - i := 1; - if wbFindCmdLineParam('script', s) or wbFindNextValidCmdLineFileName(i, s) then begin - if not FileExists(s) then - Exit; - wbScriptToRun := s; - s := ExtractFileExt(s); - i := Pos(UpperCase('pas'), UpperCase(s)); - if (i > 0) and (i = Length(s) - 2) then begin - wbForcedModes := Copy(s, 2, Length(s) - 4) + ',script'; - Result := True; - end; - end; -end; - -procedure wbDoInit; -var - s: string; -begin - wbReportMode := False; - wbEditAllowed := True; - wbDontSave := False; - - CheckForcedMode; - DetectAppMode; - - if isMode('Saves') then begin - wbToolSource := tsSaves; - wbSourceName := 'Saves'; - wbUseFalsePlugins := True; - end else begin // defaults to plugin - wbToolSource := tsPlugins; - wbSourceName := 'Plugins'; - end; - - if isMode('View') then begin - wbToolMode := tmView; - wbToolName := 'View'; - wbEditAllowed := False; - wbDontSave := True; - end else if isMode('MasterUpdate') then begin - wbToolMode := tmMasterUpdate; - wbToolName := 'MasterUpdate'; - end else if isMode('MasterRestore') then begin - wbToolMode := tmMasterRestore; - wbToolName := 'MasterRestore'; - end else if isMode('LODGen') then begin - wbToolMode := tmLODgen; - wbToolName := 'LODGen'; - wbEditAllowed := False; - wbDontSave := True; - end else if isMode('Script') then begin - wbToolMode := tmScript; - wbToolName := 'Script'; - end else if isMode('Translate') then begin - wbToolMode := tmTranslate; - wbToolName := 'Trans'; - end else if isMode('setESM') then begin - wbToolMode := tmESMify; - wbToolName := 'SettingESMflag'; - end else if isMode('clearESM') then begin - wbToolMode := tmESPify; - wbToolName := 'ClearingESMflag'; - end else if isMode('SortAndClean') then begin - wbToolMode := tmSortAndCleanMasters; - wbToolName := 'SortAndCleanMasters'; - end else if isMode('CheckForErrors') then begin - wbToolMode := tmCheckForErrors; - wbToolName := 'CheckForErrors'; - end else if isMode('CheckForITM') then begin - wbToolMode := tmCheckForITM; - wbToolName := 'CheckForITM'; - end else if isMode('CheckForDR') then begin - wbToolMode := tmCheckForDR; - wbToolName := 'CheckForDR'; - end else if isMode('Edit') then begin - wbToolMode := tmEdit; - wbToolName := 'Edit'; - end else begin - ShowMessage('Application name must contain Edit, View, LODGen, MasterUpdate, MasterRestore, setESM, clearESM, sortAndCleanMasters, CheckForITM, CheckForDR or CheckForErrors to select mode.'); - Exit; - end; - - if isMode('FNV') then begin - wbGameMode := gmFNV; - wbAppName := 'FNV'; - wbGameName := 'FalloutNV'; - if not (wbToolMode in wbAlwaysMode) and not (wbToolMode in [tmMasterUpdate, tmMasterRestore]) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbToolName); - Exit; - end; - if not (wbToolSource in [tsPlugins, tsSaves]) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbSourceName); - Exit; - end; - end else if isMode('FO3') then begin - wbGameMode := gmFO3; - wbAppName := 'FO3'; - wbGameName := 'Fallout3'; - if not (wbToolMode in wbAlwaysMode) and not (wbToolMode in [tmMasterUpdate, tmMasterRestore]) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbToolName); - Exit; - end; - if not (wbToolSource in [tsPlugins]) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbSourceName); - Exit; - end; - end else if isMode('TES3') then begin - wbGameMode := gmTES3; - wbAppName := 'TES3'; - wbGameName := 'Morrowind'; - if not (wbToolMode in []) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbToolName); - Exit; - end; - if not (wbToolSource in []) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbSourceName); - Exit; - end; - end else if isMode('TES4') then begin - wbGameMode := gmTES4; - wbAppName := 'TES4'; - wbGameName := 'Oblivion'; - if not (wbToolMode in wbAlwaysMode) and not (wbToolMode in []) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbToolName); - Exit; - end; - if not (wbToolSource in [tsPlugins]) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbSourceName); - Exit; - end; - end else if isMode('TES5') then begin - wbGameMode := gmTES5; - wbAppName := 'TES5'; - wbGameName := 'Skyrim'; - if not (wbToolMode in wbAlwaysMode) and not (wbToolMode in [tmTranslate]) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbToolName); - Exit; - end; - if not (wbToolSource in [tsPlugins, tsSaves]) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbSourceName); - Exit; - end; - end else if isMode('SSE') then begin - wbGameMode := gmSSE; - wbAppName := 'SSE'; - wbGameName := 'Skyrim'; - wbGameName2 := 'Skyrim Special Edition'; - if not (wbToolMode in wbAlwaysMode) and not (wbToolMode in [tmTranslate]) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbToolName); - Exit; - end; - if not (wbToolSource in [tsPlugins, tsSaves]) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbSourceName); - Exit; - end; - end else if isMode('FO4') then begin - wbGameMode := gmFO4; - wbAppName := 'FO4'; - wbGameName := 'Fallout4'; - wbArchiveExtension := '.ba2'; - if not (wbToolMode in wbAlwaysMode) and not (wbToolMode in [tmTranslate]) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbToolName); - Exit; - end; - if not (wbToolSource in [tsPlugins, tsSaves]) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbSourceName); - Exit; - end; - end else begin - ShowMessage('Application name must contain FNV, FO3, FO4, SSE, TES4 or TES5 to select game.'); - Exit; - end; - if (wbToolSource = tsSaves) and (wbToolMode = tmEdit) then begin - ShowMessage('Application '+wbGameName+' does not currently support '+wbSourceName+' in '+wbToolName+' mode.'); - Exit; - end; - - if wbGameName2 = '' then - wbGameName2 := wbGameName; - - DoInitPath(wbParamIndex); - - if wbGameMode = gmFNV then begin - wbVWDInTemporary := True; - wbLoadBSAs := False; - ReadSettings; - end else if wbGameMode = gmFO3 then begin - wbVWDInTemporary := True; - wbLoadBSAs := False; - ReadSettings; - end else if wbGameMode = gmTES3 then begin - wbLoadBSAs := False; - wbAllowInternalEdit := false; - ReadSettings; - end else if wbGameMode = gmTES4 then begin - wbLoadBSAs := True; - wbAllowInternalEdit := false; - ReadSettings; - end else if wbGameMode = gmTES5 then begin - wbVWDInTemporary := True; - wbLoadBSAs := True; // localization won't work otherwise - wbHideIgnored := False; // to show Form Version - ReadSettings; - end else if wbGameMode = gmSSE then begin - wbVWDInTemporary := True; - wbLoadBSAs := True; // localization won't work otherwise - wbHideIgnored := False; // to show Form Version - ReadSettings; - end else if wbGameMode = gmFO4 then begin - wbVWDInTemporary := True; - wbVWDAsQuestChildren := True; - wbLoadBSAs := True; // localization won't work otherwise - wbHideIgnored := False; // to show Form Version - ReadSettings; - //wbCreateContainedIn := False; - end else begin - Exit; - end; - - case wbGameMode of - gmFNV: case wbToolSource of - tsSaves: DefineFNVSaves; - tsPlugins: DefineFNV; - end; - gmFO3: case wbToolSource of - tsSaves: DefineFO3Saves; - tsPlugins: DefineFO3; - end; - gmFO4: case wbToolSource of - tsSaves: DefineFO4Saves; - tsPlugins: DefineFO4; - end; - gmTES3: case wbToolSource of - tsPlugins: DefineTES3; - end; - gmTES4: case wbToolSource of - tsSaves: DefineTES4Saves; - tsPlugins: DefineTES4; - end; - gmTES5: case wbToolSource of - tsSaves: DefineTES5Saves; - tsPlugins: DefineTES5; - end; - gmSSE: case wbToolSource of - tsSaves: DefineTES5Saves; - tsPlugins: DefineTES5; - end - else - ShowMessage('Application name must contain FNV, FO3, FO4, SSE, TES4 or TES5 to select game.'); - Exit; - end; - - case wbGameMode of - gmTES5, gmSSE: - wbLanguage := 'English'; - gmFO4: - wbLanguage := 'En'; - end; - if wbFindCmdLineParam('l', s) then - wbLanguage := s; - - if wbFindCmdLineParam('cp', s) then begin - if SameText(s, 'utf-8') then - wbStringEncoding := seUTF8; - end; - - if FindCmdLineSwitch('speed') then - wbSpeedOverMemory := True; - if FindCmdLineSwitch('memory') then - wbSpeedOverMemory := False; - - if FindCmdLineSwitch('report') then - wbReportMode := (DebugHook <> 0); - if FindCmdLineSwitch('MoreInfoForIndex') then - wbMoreInfoForIndex := true; - - if FindCmdLineSwitch('fixup') then - wbAllowInternalEdit := True - else if FindCmdLineSwitch('nofixup') then - wbAllowInternalEdit := False; - - if FindCmdLineSwitch('skipbsa') then - wbLoadBSAs := False - else if FindCmdLineSwitch('forcebsa') then - wbLoadBSAs := True; - - if FindCmdLineSwitch('skipInternalEditing') then - wbAllowInternalEdit := False - else if FindCmdLineSwitch('forceInternalEditing') then - wbAllowInternalEdit := True; - - if FindCmdLineSwitch('showfixup') then - wbShowInternalEdit := True - else if FindCmdLineSwitch('hidefixup') then - wbShowInternalEdit := False; - - if FindCmdLineSwitch('quickshowconflicts') then - wbQuickShowConflicts := True; - - if FindCmdLineSwitch('IKnowWhatImDoing') then - wbIKnowWhatImDoing := True; - - if FindCmdLineSwitch('quickclean') and (wbToolSource in [tsPlugins]) then - wbQuickClean := wbIKnowWhatImDoing; - - if FindCmdLineSwitch('TrackAllEditorID') then - wbTrackAllEditorID := True; - - if wbToolMode in wbPluginModes then // look for the file name - if not wbFindNextValidCmdLinePlugin(wbParamIndex, wbPluginToUse, wbDataPath) then begin - ShowMessage(wbToolName+' mode requires a valid plugin name!'); - Exit; - end; - - if wbToolMode = tmLODgen then begin - wbIKnowWhatImDoing := True; - wbAllowInternalEdit := False; - wbShowInternalEdit := False; - wbLoadBSAs := True; - wbBuildRefs := False; - end else if wbToolMode = tmScript then begin - wbIKnowWhatImDoing := True; - wbLoadBSAs := True; - wbBuildRefs := True; - end else if wbToolMode in [tmMasterUpdate, tmESMify] then begin - wbIKnowWhatImDoing := True; - wbAllowInternalEdit := False; - wbShowInternalEdit := False; - wbLoadBSAs := False; - wbBuildRefs := False; - wbMasterUpdateFilterONAM := wbToolMode in [tmESMify]; - if FindCmdLineSwitch('filteronam') then - wbMasterUpdateFilterONAM := True - else if FindCmdLineSwitch('noFilteronam') then - wbMasterUpdateFilterONAM := True; - if FindCmdLineSwitch('FixPersistence') then - wbMasterUpdateFixPersistence := True - else if FindCmdLineSwitch('NoFixPersistence') then - wbMasterUpdateFixPersistence := False; - end else if wbToolMode in [tmMasterRestore, tmESPify, tmCheckForDR, tmCheckForITM, tmCheckForErrors] then begin - wbIKnowWhatImDoing := True; - wbAllowInternalEdit := False; - wbShowInternalEdit := False; - wbLoadBSAs := False; - wbBuildRefs := False; - end else if wbToolMode = tmTranslate then begin - wbTranslationMode := True; - end; - - wbApplicationTitle := wbAppName + wbToolName + ' ' + VersionString; - {$IFDEF LiteVersion} - wbApplicationTitle := wbApplicationTitle + ' Lite'; - {$ENDIF} - {$IFDEF WIN64} - wbApplicationTitle := wbApplicationTitle + ' x64'; - {$ENDIF WIN64} - - if FindCmdLineSwitch('fixuppgrd') then - wbFixupPGRD := True; - - wbShouldLoadMOHookFile := wbFindCmdLineParam('moprofile', wbMOProfile); - - if (wbToolMode = tmEdit) and not wbIsAssociatedWithExtension('.' + wbAppName + 'pas') then try - wbAssociateWithExtension('.' + wbAppName + 'pas', wbAppName + 'Script', wbAppName + wbToolName + ' script'); - except end; - -end; - -procedure SwitchToCoSave; -begin - case wbGameMode of - gmFNV: SwitchToFNVCoSave; - gmFO3: SwitchToFO3CoSave; - gmTES4: SwitchToTES4CoSave; - gmTES5: SwitchToTES5CoSave; - gmSSE: SwitchToTES5CoSave; - end; -end; - -initialization - wbDoInit; - -end. diff --git a/lib/xedit/wbInterface.pas b/lib/xedit/wbInterface.pas deleted file mode 100644 index 41e0287..0000000 --- a/lib/xedit/wbInterface.pas +++ /dev/null @@ -1,14801 +0,0 @@ -{****************************************************************************** - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} - -unit wbInterface; - -{$I wbDefines.inc} - -interface - -uses - Classes, - SysUtils, - Graphics; - -const - VersionString = '3.2'; - clOrange = $004080FF; - wbFloatDigits = 6; - wbHardcodedDat = '.Hardcoded.keep.this.with.the.exe.and.otherwise.ignore.it.I.really.mean.it.dat'; - -type - TwbProgressCallback = procedure(const aStatus: string); - TwbPointerArray = array [0..Pred(High(Integer) div SizeOf(Pointer))] of Pointer; - PwbPointerArray = ^TwbPointerArray; {General array of pointer} - -threadvar - wbProgressCallback : TwbProgressCallback; - wbCurrentTick : Integer; - wbCurrentAction : string; - wbStartTime : TDateTime; - wbShowStartTime : Integer; - -var - wbDisplayLoadOrderFormID : Boolean = False; - wbSimpleRecords : Boolean = True; - wbFixupPGRD : Boolean = False; - wbIKnowWhatImDoing : Boolean = False; - wbHideUnused : Boolean = True; - wbHideIgnored : Boolean = True; - wbHideNeverShow : Boolean = True; - wbShowFormVersion : Boolean = False; - wbShowFlagEnumValue : Boolean = False; - wbShowGroupRecordCount : Boolean = False; - wbDisplayShorterNames : Boolean = False; - wbSortSubRecords : Boolean = False; - wbSortFLST : Boolean = True; - wbSortGroupRecord : Boolean = False; - wbRemoveOffsetData : Boolean = True; - wbEditAllowed : Boolean = False; - wbFlagsAsArray : Boolean = False; - wbDelayLoadRecords : Boolean = True; - wbMoreInfoForUnknown : Boolean = False; - wbMoreInfoForIndex : Boolean = False; - wbTranslationMode : Boolean = False; - wbTestWrite : Boolean = False; - wbForceNewHeader : Boolean = False; // add wbNewHeaderAddon value to the headers of mainrecords and GRUP records - wbNewHeaderAddon : Cardinal = 40; // 4 additional bytes, 40 - new form version field - wbRequireLoadOrder : Boolean = False; - wbCreateContainedIn : Boolean = True; - wbVWDInTemporary : Boolean = False; - wbVWDAsQuestChildren : Boolean = False; - wbResolveAlias : Boolean = True; - wbActorTemplateHide : Boolean = True; - wbClampFormID : Boolean = True; - wbAllowErrors : Boolean = True; - wbDoNotBuildRefsFor : TStringList; - wbCopyIsRunning : Integer = 0; - - wbUDRSetXESP : Boolean = True; - wbUDRSetScale : Boolean = False; - wbUDRSetScaleValue : Single = 0.0; - wbUDRSetZ : Boolean = True; - wbUDRSetZValue : Single = -30000; - wbUDRSetMSTT : Boolean = True; - wbUDRSetMSTTValue : Int64 = $0000001B; { AshPile01 } - - wbMasterUpdateFilterONAM : Boolean = False; - wbMasterUpdateFixPersistence : Boolean = True; - - wbAllowInternalEdit : Boolean = True; - wbShowInternalEdit : Boolean = False; - - wbReportMode : Boolean = False; - wbReportUnused : Boolean = False; - wbReportRequired : Boolean = True; - wbReportUnusedData : Boolean = True; - wbReportUnknownFormIDs : Boolean = True; - wbReportUnknownFloats : Boolean = True; - wbReportUnknownStrings : Boolean = True; - wbReportEmpty : Boolean = True; - wbReportSometimesEmpty : Boolean = True; - wbReportFormIDs : Boolean = True; - wbReportNotFoundButAllowedFormIDs : Boolean = True; - wbReportUnknownFlags : Boolean = True; - wbReportUnknownEnums : Boolean = True; - wbReportFormIDNotAllowedReferences : Boolean = True; - wbReportUnknown : Boolean = True; - wbMoreInfoForRequired : Boolean = False; - wbMoreInfoForDecider : Boolean = False; - wbTrackAllEditorID : Boolean = False; - wbShowTip : Boolean = True; - - wbCheckExpectedBytes : Boolean = True; - - wbRotationFactor : Extended = 180/Pi; - wbRotationScale : Integer = 4; - - wbDumpOffset : Integer = 0; // 1= starting offset, 2 = Count, 3 = Offsets, size and count - wbBaseOffset : Cardinal = 0; - - wbProgramPath : string; - wbDataPath : string; - wbOutputPath : string; - wbTheGameIniFileName : string; - - wbShouldLoadMOHookFile : Boolean; - wbMOProfile : string; - wbMOHookFile : string; - - wbSpeedOverMemory : Boolean = False; - -{$IFDEF USE_CODESITE} -type - TwbLoggingArea = ( - laAddIfMissing, - laElementAssign, - laElementCanAssign, - laElementSetToDefault, - laElementWriteToStream, - laElementMergeStorage, - - laDummy - ); - TwbLoggingAreas = set of TwbLoggingArea; - -var - wbLoggingAreas : TwbLoggingAreas = [ - - laAddIfMissing, - laElementAssign, - laElementCanAssign, - laElementSetToDefault, - //laElementWriteToStream, - //laElementMergeStorage, - - laDummy - ]; - -function wbCodeSiteLoggingEnabled: Boolean; -function wbBeginCodeSiteLogging: Integer; -function wbEndCodeSiteLogging: Integer; -{$ENDIF} - - -type - TConflictAll = ( - caUnknown, - caOnlyOne, - caNoConflict, - caConflictBenign, - caOverride, - caConflict, - caConflictCritical - ); - - TByteSet = set of Byte; - TConflictAllSet = set of TConflictAll; - TConflictAllColors = array[TConflictAll] of TColor; - - TConflictThis = ( - ctUnknown, - ctIgnored, - ctNotDefined, - ctIdenticalToMaster, - ctOnlyOne, - ctHiddenByModGroup, - ctMaster, - ctConflictBenign, - ctOverride, - ctIdenticalToMasterWinsConflict, - ctConflictWins, - ctConflictLoses - ); - - TConflictThisSet = set of TConflictThis; - TConflictThisColors = array[TConflictThis] of TColor; - -var - wbColorConflictAll: TConflictAllColors = ( - clDefault, // caUnknown - clDefault, // caOnlyOne - clLime, // caNoConflict - clYellow, // caConflictBenign - clYellow, // caOverride - clRed, // caConflict - clFuchsia // caConflictCritical - ); - - wbColorConflictThis: TConflictThisColors = ( - clWindowText, // ctUnknown - clWindowText, // ctIgnored - clMedGray, // ctNotDefined - clDkGray, // ctIdenticalToMaster - clWindowText, // ctOnlyOne - clLtGray, // ctHiddenByModGroup - clPurple, // ctMaster - clWindowText, // ctConflictBenign - clGreen, // ctOverride - clOlive, // ctIdenticalToMasterWinsConflict - clOrange, // ctConflictWins - clRed // ctConflictLoses - ); - -type - TwbConflictPriority = ( - cpIgnore, - cpBenignIfAdded, - cpBenign, - cpTranslate, - cpNormal, - cpNormalIgnoreEmpty, - cpCritical, - cpFormID - ); - - LongRecSmall = packed record - Lo, Hi: Smallint; - end; - - PwbSignature = ^TwbSignature; - TwbSignature = array[0..3] of AnsiChar; - TwbSignatures = array of TwbSignature; - TwbFileMagic = string; - - TwbIntType = ( - it0, - itU8, - itS8, - itU16, - itS16, - itU32, - itS32, - itU64, - itS64, - itU24, - itU6to30 - ); - - TwbDefType = ( - dtRecord, - dtSubRecord, - dtSubRecordArray, - dtSubRecordStruct, - dtSubRecordUnion, - dtString, - dtLString, - dtLenString, - dtByteArray, - dtInteger, - dtIntegerFormater, - dtIntegerFormaterUnion, - dtFlag, - dtFloat, - dtArray, - dtStruct, - dtUnion, - dtEmpty, - dtStructChapter - ); - - TwbGroupTypes = set of Byte; - TwbStringEncoding = (seCP1252, seUTF8); - -var - dtNonValues : set of TwbDefType = [ - dtRecord, - dtSubRecord, - dtSubRecordArray, - dtSubRecordStruct, - dtSubRecordUnion, - dtArray, - dtStruct, - dtUnion, - dtStructChapter - ]; - - wbStringEncoding: TwbStringEncoding = seCP1252; - -type - IwbDef = interface; - - TwbDefs = array of IwbDef; - TwbDefPath = array of record - Def : IwbDef; - Index : Integer; - end; - - IwbElement = interface; - - IwbDef = interface - ['{C7739FBD-3B58-48A2-9DD0-8057D3496892}'] - function GetDefType: TwbDefType; - function GetDefTypeName: string; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; - function Assign(const aTarget: IwbElement; aIndex: Integer; const aSource: IwbElement; aOnlySK: Boolean): IwbElement; - function GetDefID: Cardinal; - function Equals(const aDef: IwbDef): Boolean; - function GetConflictPriority(const aElement: IwbElement): TwbConflictPriority; - function GetConflictPriorityCanChange: Boolean; - function GetRequired: Boolean; - function CanContainFormIDs: Boolean; - function GetDontShow(const aElement: IwbElement): Boolean; - function GetHasDontShow: Boolean; - function GetRoot: IwbDef; - function GetNoReach: Boolean; - function GetParent: IwbDef; - - procedure Report(const aParents: TwbDefPath); - procedure Used(const aElement: IwbElement = nil; const s: string = ''); - procedure PossiblyRequired; - procedure NotRequired; - function IsNotRequired: Boolean; - - property DefType: TwbDefType - read GetDefType; - property DefTypeName: string - read GetDefTypeName; - property DefID: Cardinal - read GetDefID; - property ConflictPriority[const aElement: IwbElement]: TwbConflictPriority - read GetConflictPriority; - property ConflictPriorityCanChange: Boolean - read GetConflictPriorityCanChange; - property Required: Boolean - read GetRequired; - property DontShow[const aElement: IwbElement]: Boolean - read GetDontShow; - property HasDontShow: Boolean - read GetHasDontShow; - property Root: IwbDef - read GetRoot; - property NoReach: Boolean - read GetNoReach; - property Parent: IwbDef - read GetParent; - end; - - TwbElementType = ( - etFile, - etMainRecord, - etGroupRecord, - etSubRecord, - etSubRecordStruct, - etSubRecordArray, - etSubRecordUnion, - etArray, - etStruct, - etValue, - etFlag, - etStringListTerminator, - etUnion, - etStructChapter - ); - - TwbElementTypes = set of TwbElementType; - - IwbContainer = interface; - IwbFile = interface; - IwbNamedDef = interface; - IwbValueDef = interface; - IwbMainRecord = interface; - - TwbElementState = ( - esModified, - esInternalModified, - esUnsaved, - esSortKeyValid, - esExtendedSortKeyValid, - esHidden, - esParentHidden, - esParentHiddenChecked, - esNotReachable, - esReachable, - esTagged, - esDeciding, - esNotSuitableToAddTo, - esDummy, {Used in wbScriptAdapter as a default value} - esConstructionComplete, - esDestroying, - esChangeNotified, - esModifiedUpdated, - esSorting - ); - - TwbElementStates = set of TwbElementState; - - TwbEditType = ( - etDefault, - etComboBox, - etCheckComboBox - ); - - TDynFiles = array of IwbFile; - - IwbElement = interface - ['{F4B4637D-C794-415F-B5C7-587EAA4095B3}'] - - function GetElementID: Cardinal; - function GetElementStates: TwbElementStates; - procedure SetElementState(aState: TwbElementState; Clear: Boolean = false); - function Equals(const aElement: IwbElement): Boolean; - - function GetValue: string; - function GetCheck: string; - function GetSortKey(aExtended: Boolean): string; - function GetSortPriority: Integer; - function GetName: string; - function GetBaseName: string; - function GetDisplayName: string; - function GetShortName: string; - function GetPath: string; - function GetFullPath: string; - function GetPathName: string; - function GetSkipped: Boolean; - function GetDef: IwbNamedDef; - function GetValueDef: IwbValueDef; - function GetResolvedValueDef: IwbValueDef; - function GetElementType: TwbElementType; - function GetContainer: IwbContainer; - function GetContainingMainRecord: IwbMainRecord; - function GetFile: IwbFile; - function GetReferenceFile: IwbFile; - function GetSortOrder: Integer; - procedure SetSortOrder(aSortOrder: Integer); - function GetMemoryOrder: Integer; - procedure SetMemoryOrder(aSortOrder: Integer); - procedure BuildRef; - function CompareExchangeFormID(aOldFormID: Cardinal; aNewFormID: Cardinal): Boolean; - function GetEditValue: string; - procedure SetEditValue(const aValue: string); - function GetNativeValue: Variant; - procedure SetNativeValue(const aValue: Variant); - function GetIsEditable: Boolean; - function GetIsRemoveable: Boolean; - procedure RequestStorageChange(var aBasePtr, aEndPtr: Pointer; aNewSize: Cardinal); - function GetConflictPriority: TwbConflictPriority; - function GetConflictPriorityCanChange: Boolean; - function GetModified: Boolean; - procedure MarkModifiedRecursive; - function GetIsInjected: Boolean; - function GetReferencesInjected: Boolean; - function GetInjectionSourceFiles: TDynFiles; - function GetIsNotReachable: Boolean; - function GetDataSize: Integer; - procedure SetDataSize(aSize: Integer); - procedure MergeStorage(var aBasePtr: Pointer; aEndPtr: Pointer); - procedure InformStorage(var aBasePtr: Pointer; aEndPtr: Pointer); - procedure AddReferencedFromID(aFormID: Cardinal); - function CanContainFormIDs: Boolean; - function GetLinksTo: IwbElement; - function GetNoReach: Boolean; - procedure ReportRequiredMasters(aStrings: TStrings; aAsNew: Boolean; recursive: Boolean = True; initial: Boolean = false); - function AddIfMissing(const aElement: IwbElement; aAsNew, aDeepCopy : Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; - procedure ResetConflict; - procedure ResetReachable; - function RemoveInjected(aCanRemove: Boolean): Boolean; - function GetEditType: TwbEditType; - function GetEditInfo: string; - function GetDontShow: Boolean; - procedure SetToDefault; - - procedure NotifyChanged(aContainer: Pointer); - - function CanAssign(aIndex: Integer; const aElement: IwbElement; aCheckDontShow: Boolean): Boolean; - function Assign(aIndex: Integer; const aElement: IwbElement; aOnlySK: Boolean): IwbElement; - procedure Remove; - - function HasErrors: Boolean; - - procedure Hide; - procedure Show; - function GetIsHidden: Boolean; - - procedure MoveUp; - procedure MoveDown; - function CanMoveUp: Boolean; - function CanMoveDown: Boolean; - - procedure NextMember; - procedure PreviousMember; - function CanChangeMember: Boolean; - - procedure Tag; - procedure ResetTags; - function IsTagged: Boolean; - - property IsHidden: Boolean - read GetIsHidden; - - procedure WriteToStream(aStream: TStream; aResetModified: Boolean); - - function CopyInto(const aFile: IwbFile; AsNew, DeepCopy: Boolean; const aPrefixRemove, aPrefix, aSuffix: string): IwbElement; - - function GetTreeHead: Boolean; // Is the element expected to be a "header record" in the tree navigator - function GetTreeBranch: Boolean; // Is the element expected to show in the tree navigator - - property ElementID: Cardinal - read GetElementID; - property ElementStates: TwbElementStates - read GetElementStates; - - property Container: IwbContainer - read GetContainer; - property ContainingMainRecord: IwbMainRecord - read GetContainingMainRecord; - property _File: IwbFile - read GetFile; - property ReferenceFile: IwbFile - read GetReferenceFile; - property InjectionSourceFiles: TDynFiles - read GetInjectionSourceFiles; - - property ElementType: TwbElementType - read GetElementType; - property Name: string - read GetName; - property BaseName: string - read GetBaseName; - property DisplayName: string - read GetDisplayName; - property ShortName: string - read GetShortName; - property Path: string - read GetPath; - property FullPath: string - read GetFullPath; - property PathName: string - read GetPathName; - property Skipped: Boolean - read GetSkipped; - - property Value: string - read GetValue; - property SortKey[aExtended: Boolean]: string - read GetSortKey; - property Check: string - read GetCheck; - - property Modified: Boolean - read GetModified; - property IsInjected: Boolean - read GetIsInjected; - property IsNotReachable: Boolean - read GetIsNotReachable; - property ReferencesInjected: Boolean - read GetReferencesInjected; - - property IsEditable: Boolean - read GetIsEditable; - property EditValue: string - read GetEditValue - write SetEditValue; - property NativeValue: Variant - read GetNativeValue - write SetNativeValue; - - property IsRemoveable: Boolean - read GetIsRemoveable; - - property Def: IwbNamedDef - read GetDef; - property ValueDef: IwbValueDef - read GetValueDef; - property ResolvedValueDef: IwbValueDef - read GetResolvedValueDef; - - property MemoryOrder: Integer - read GetMemoryOrder - write SetMemoryOrder; - property SortPriority: Integer - read GetSortPriority; - property SortOrder: Integer - read GetSortOrder - write SetSortOrder; - - property ConflictPriority: TwbConflictPriority - read GetConflictPriority; - property ConflictPriorityCanChange: Boolean - read GetConflictPriorityCanChange; - - property DataSize: Integer - read GetDataSize - write SetDataSize; - - property LinksTo: IwbElement - read GetLinksTo; - property NoReach: Boolean - read GetNoReach; - - property EditType: TwbEditType - read GetEditType; - property EditInfo: string - read GetEditInfo; - - property DontShow: Boolean - read GetDontShow; - - property TreeHead: Boolean - read GetTreeHead; - - property TreeBranch: Boolean - read GetTreeBranch; - end; - - IwbRecord = interface; - - TwbContainerState = ( - csInit, - csInitOnce, - csInitDone, - csInitializing, - csReseting, - csRefsBuild, - csAsCreatedEmpty - ); - - TwbContainerStates = set of TwbContainerState; - - TDynStrings = array of string; - - IwbContainerBase = interface(IwbElement) - ['{1484D26A-0F67-41FA-9044-8772E68CBA56}'] - - function GetElement(aIndex: Integer): IwbElement; - function GetElementCount: Integer; - function GetElementByName(const aName: string): IwbElement; - function GetRecordBySignature(const aSignature: TwbSignature): IwbRecord; - function GetElementByMemoryOrder(aSortOrder: Integer): IwbElement; - function GetElementBySignature(const aSignature: TwbSignature): IwbElement; - function GetElementBySortOrder(aSortOrder: Integer): IwbElement; - function GetAdditionalElementCount: Integer; - function GetContainerStates: TwbContainerStates; - function GetElementByPath(const aPath: string): IwbElement; - function GetElementValue(const aName: string): string; - function GetElementExists(const aName: string): Boolean; - function GetElementEditValue(const aName: string): string; - procedure SetElementEditValue(const aName, aValue: string); - function GetElementNativeValue(const aName: string): Variant; - procedure SetElementNativeValue(const aName: string; const aValue: Variant); - function GetElementLinksTo(const aName: string): IwbElement; - function GetElementSortKey(const aName: string; aExtended: Boolean): string; - - procedure AddElement(const aElement: IwbElement); - procedure InsertElement(aPos: Integer; const aElement: IwbElement); - function RemoveElement(aPos: Integer; aMarkModified: Boolean = False): IwbElement; overload; - function RemoveElement(const aElement: IwbElement; aMarkModified: Boolean = False): IwbElement; overload; - function RemoveElement(const aName: string): IwbElement; overload; - procedure ReverseElements; - - function LastElement: IwbElement; - - function IsElementRemoveable(const aElement: IwbElement): Boolean; - function IsElementEditable(const aElement: IwbElement): Boolean; - - function IndexOf(const aElement: IwbElement): Integer; - - function CanElementReset: Boolean; - - function GetAddList: TDynStrings; - function Add(const aName: string; aSilent: Boolean = True): IwbElement; - - property Elements[aIndex: Integer]: IwbElement - read GetElement; default; - property ElementCount: Integer - read GetElementCount; - property AdditionalElementCount: Integer - read GetAdditionalElementCount; - - property ElementByPath[const aPath: string]: IwbElement - read GetElementByPath; - property ElementValues[const aName: string]: string - read GetElementValue; - property ElementEditValues[const aName: string]: string - read GetElementEditValue - write SetElementEditValue; - property ElementNativeValues[const aName: string]: Variant - read GetElementNativeValue - write SetElementNativeValue; - property ElementLinksTo[const aName: string]: IwbElement - read GetElementLinksTo; - property ElementExists[const aName: string]: Boolean - read GetElementExists; - property ElementSortKeys[const aName: string; aExtended: Boolean]: string - read GetElementSortKey; - - - property ContainerStates: TwbContainerStates - read GetContainerStates; - - property ElementByName[const aName: string]: IwbElement - read GetElementByName; - property RecordBySignature[const aSignature: TwbSignature]: IwbRecord - read GetRecordBySignature; - property ElementByMemoryOrder[aSortOrder: Integer]: IwbElement - read GetElementByMemoryOrder; - property ElementBySignature[const aSignature: TwbSignature]: IwbElement - read GetElementBySignature; - property ElementBySortOrder[aSortOrder: Integer]: IwbElement - read GetElementBySortOrder; - end; - - IwbContainer = interface(IwbContainerBase) - ['{4C4FCDD0-C885-458A-B8F2-EA3EFF8B5EEE}'] - procedure Bar; - end; - - IwbContainerElementRef= interface(IwbContainerBase) - ['{4066BCCF-01AA-4638-9C3D-3475CD8D5749}'] - function ReleaseKeepAlive: IwbContainerElementRef; - end; - - IwbKeepAliveRoot = interface(IInterface) - ['{D1D2C080-CE73-428F-B88F-BF9503CB8619}'] - procedure Done; - end; - - IwbSortableContainer = interface(IwbContainer) - ['{A8A65D99-507C-4D2D-86EF-57BC99E09964}'] - function GetSorted: Boolean; - - property Sorted: Boolean - read GetSorted; - end; - - IwbGroupRecord = interface; - - TwbFileState = ( - fsIsNew, - fsIsCompareLoad, - fsOnlyHeader, - fsIsHardcoded, - fsIsGameMaster, - fsIsTemporary, - fsHasNoFormID - ); - - TwbFileStates = set of TwbFileState; - TwbPluginExtensions = TDynStrings; - - IwbFile = interface(IwbContainer) - ['{38AA15A6-F652-45C7-B875-9CB502E5DA92}'] - function GetFileName: string; - function GetUnsavedSince: TDateTime; - function GetMaster(aIndex: Integer): IwbFile; - function GetMasterCount: Integer; - function GetRecordByFormID(aFormID: Cardinal; aAllowInjected: Boolean): IwbMainRecord; - function GetRecordByEditorID(const aEditorID: string): IwbMainRecord; - function GetLoadOrder: Integer; - procedure ForceLoadOrder(aValue: Integer); - function GetGroupBySignature(const aSignature: TwbSignature): IwbGroupRecord; - function HasGroup(const aSignature: TwbSignature): Boolean; - function GetFileStates: TwbFileStates; - procedure BuildReachable; - - function LoadOrderFormIDtoFileFormID(aFormID: Cardinal): Cardinal; - function FileFormIDtoLoadOrderFormID(aFormID: Cardinal): Cardinal; - - function LoadOrderFileIDtoFileFileID(aFileID: Byte): Byte; - function FileFileIDtoLoadOrderFileID(aFileID: Byte): Byte; - - function NewFormID: Cardinal; - - procedure AddMasters(aMasters: TStrings); - procedure AddMasterIfMissing(const aMaster: string); - procedure SortMasters; - procedure CleanMasters; - - function GetRecord(aIndex: Integer): IwbMainRecord; - function GetRecordCount: Integer; - function GetHeader: IwbMainRecord; - - function GetIsESM: Boolean; - procedure SetIsESM(Value: Boolean); - - function GetIsLocalized: Boolean; - procedure SetIsLocalized(Value: Boolean); - - function GetNextObjectID: Cardinal; - procedure SetNextObjectID(aObjectID: Cardinal); - - function GetIsNotPlugin: Boolean; - function GetHasNoFormID: Boolean; - procedure SetHasNoFormID(Value: Boolean); - - property FileName: string - read GetFileName; - property UnsavedSince: TDateTime - read GetUnsavedSince; - - function HasMaster(const aFileName: string): Boolean; - property Masters[aIndex: Integer]: IwbFile - read GetMaster; - property MasterCount: Integer - read GetMasterCount; - - property RecordByFormID[aFormID: Cardinal; aAllowInjected: Boolean]: IwbMainRecord - read GetRecordByFormID; - property RecordByEditorID[const aEditorID: string]: IwbMainRecord - read GetRecordByEditorID; - property GroupBySignature[const aSignature: TwbSignature]: IwbGroupRecord - read GetGroupBySignature; - - property Records[aIndex: Integer]: IwbMainRecord - read GetRecord; - property RecordCount: Integer - read GetRecordCount; - - property Header: IwbMainRecord - read GetHeader; - - property LoadOrder: Integer - read GetLoadOrder; - - property FileStates: TwbFileStates - read GetFileStates; - - property IsESM: Boolean - read GetIsESM - write SetIsESM; - - property IsLocalized: Boolean - read GetIsLocalized - write SetIsLocalized; - - property NextObjectID: Cardinal - read GetNextObjectID - write SetNextObjectID; - - property IsNotPlugin: Boolean // Save or other file to display. - read GetIsNotPlugin; - property HasNoFormID: Boolean // Like Morrowind for example. Also true for save/coSave. - read GetHasNoFormID - write SetHasNoFormID; - end; - - IwbDataContainer = interface(IwbContainer) - ['{6E547F7C-87E4-4917-8F43-4D3CEE5AFE8C}'] - function GetDataBasePtr: Pointer; - function GetDataEndPtr: Pointer; - function GetDataSize: Integer; - function GetDontCompare: Boolean; - function GetDontSave: Boolean; - function IsValidOffset(aBasePtr, aEndPtr: Pointer; anOffset: Integer): Boolean; - function IsLocalOffset(anOffset: Integer): Boolean; - - property DataBasePtr: Pointer - read GetDataBasePtr; - property DataEndPtr: Pointer - read GetDataEndPtr; - property DataSize: Integer - read GetDataSize; - - property DontCompare: Boolean - read GetDontCompare; - property DontSave: Boolean - read GetDontSave; - end; - - TDynDataContainers = array of IwbDataContainer; - - IwbRecord = interface(IwbDataContainer) - ['{4FC53881-25E2-421D-8AF6-F589979767E6}'] - function GetSignature: TwbSignature; - - property Signature: TwbSignature - read GetSignature; - end; - - IwbHasSignature = interface(IwbElement) - ['{DF563D7C-A441-4864-B47A-49F3A96508F7}'] - function GetSignature: TwbSignature; - - property Signature: TwbSignature - read GetSignature; - end; - - PwbMainRecordStructFlags = ^TwbMainRecordStructFlags; - TwbMainRecordStructFlags = packed record - _Flags: Cardinal; - function IsESM: Boolean; inline; - function IsDeleted: Boolean; inline; - function IsLocalized: Boolean; inline; - function CastsShadows: Boolean; inline; - function IsPersistent: Boolean; inline; - function IsInitiallyDisabled: Boolean; inline; - function IsIgnored: Boolean; inline; - function IsVisibleWhenDistant: Boolean; inline; - function IsDangerous: Boolean; inline; - function IsCompressed: Boolean; inline; - function CantWait: Boolean; inline; - function HasLODtree: Boolean; inline; - - procedure SetESM(aValue: Boolean); - procedure SetDeleted(aValue: Boolean); - procedure SetLocalized(aValue: Boolean); - procedure SetPersistent(aValue: Boolean); - procedure SetCompressed(aValue: Boolean); - procedure SetInitiallyDisabled(aValue: Boolean); - procedure SetVisibleWhenDistant(aValue: Boolean); - end; - - PwbMainRecordStructFlags3 = ^TwbMainRecordStructFlags3; - TwbMainRecordStructFlags3 = packed record - _Flags: Cardinal; - end; - - TwbVector = packed record - x: Single; - y: Single; - z: Single; - end; - - TwbGridCell = record - x, y: Integer; - end; - - TDynMainRecords = array of IwbMainRecord; - - IwbMainRecord = interface(IwbRecord) - ['{F06FD5E2-621D-4422-BA00-CB3CA72B3691}'] - function GetFormID: Cardinal; - function GetFixedFormID: Cardinal; - function GetLoadOrderFormID: Cardinal; - procedure SetLoadOrderFormID(aFormID: Cardinal); - function GetEditorID: string; - function GetCanHaveEditorID: Boolean; - procedure SetEditorID(const aValue: string); - function GetFullName: string; - function GetDisplayNameKey: string; - function GetMaster: IwbMainRecord; - function GetIsMaster: Boolean; - function GetMasterOrSelf: IwbMainRecord; - function GetOverride(aIndex: Integer): IwbMainRecord; - function GetOverrideCount: Integer; - procedure AddReferencedBy(aMainRecord: IwbMainRecord); - procedure RemoveReferencedBy(aMainRecord: IwbMainRecord); - function GetReferencedBy(aIndex: Integer): IwbMainRecord; - function GetReferencedByCount: Integer; - function GetIsWinningOverride: Boolean; - function GetWinningOverride: IwbMainRecord; - function GetHighestOverrideOrSelf(aMaxLoadOrder: Integer): IwbMainRecord; - function GetFlags: TwbMainRecordStructFlags; - function GetChildGroup: IwbGroupRecord; - function EnsureChildGroup: IwbGroupRecord; - function GetBaseRecord: IwbMainRecord; - function GetBaseRecordID: Cardinal; - - function GetConflictAll: TConflictAll; - procedure SetConflictAll(aValue: TConflictAll); - function GetConflictThis: TConflictThis; - procedure SetConflictThis(aValue: TConflictThis); - - function GetIsESM: Boolean; - procedure SetIsESM(aValue: Boolean); - function GetIsPersistent: Boolean; - procedure SetIsPersistent(aValue: Boolean); - function GetIsDeleted: Boolean; - procedure SetIsDeleted(aValue: Boolean); - function GetIsLocalized: Boolean; - procedure SetIsLocalized(aValue: Boolean); - function GetIsCompressed: Boolean; - procedure SetIsCompressed(aValue: Boolean); - function GetIsVisibleWhenDistant: Boolean; - procedure SetIsVisibleWhenDistant(aValue: Boolean); - function GetHasVisibleWhenDistantMesh: Boolean; - function GetHasMesh: Boolean; - function GetHasPrecombinedMesh: Boolean; - function GetPrecombinedMesh: string; - function GetIsInitiallyDisabled: Boolean; - procedure SetIsInitiallyDisabled(aValue: Boolean); - - procedure UpdateRefs; - - function GetPosition(out aPosition: TwbVector): Boolean; - function SetPosition(const aPosition: TwbVector): Boolean; - function GetRotation(out aRotation: TwbVector): Boolean; - function GetScale(out aScale: Single): Boolean; - - function GetGridCell(out aGridCell: TwbGridCell): Boolean; - - procedure Delete; - procedure DeleteInto(const aFile: IwbFile); - - function MasterRecordsFromMasterFilesAndSelf: TDynMainRecords; - - function GetFormVersion: Cardinal; - procedure SetFormVersion(aFormVersion: Cardinal); - - procedure ChangeFormSignature(aSignature: TwbSignature); - procedure ClampFormID(aIndex: Cardinal); - - property Version: Cardinal - read GetFormVersion - write SetFormVersion; - - property BaseRecord: IwbMainRecord - read GetBaseRecord; - property BaseRecordID: Cardinal - read GetBaseRecordID; - property FormID: Cardinal - read GetFormID; - property FixedFormID: Cardinal - read GetFixedFormID; - property LoadOrderFormID: Cardinal - read GetLoadOrderFormID - write SetLoadOrderFormID; - property EditorID: string - read GetEditorID - write SetEditorID; - property CanHaveEditorID: Boolean - read GetCanHaveEditorID; - property FullName: string - read GetFullName; - property DisplayNameKey: string - read GetDisplayNameKey; - - property Flags: TwbMainRecordStructFlags - read GetFlags; - - property Master: IwbMainRecord - read GetMaster; - property MasterOrSelf: IwbMainRecord - read GetMasterOrSelf; - property IsMaster: Boolean - read GetIsMaster; - - property ChildGroup: IwbGroupRecord - read GetChildGroup; - - property Overrides[aIndex: Integer]: IwbMainRecord - read GetOverride; - property OverrideCount: Integer - read GetOverrideCount; - property IsWinningOverride: Boolean - read GetIsWinningOverride; - property WinningOverride: IwbMainRecord - read GetWinningOverride; - property HighestOverrideOrSelf[aMaxLoadOrder: Integer]: IwbMainRecord - read GetHighestOverrideOrSelf; - - property ReferencedBy[aIndex: Integer]: IwbMainRecord - read GetReferencedBy; - property ReferencedByCount: Integer - read GetReferencedByCount; - - property IsESM: Boolean - read GetIsESM - write SetIsESM; - property IsPersistent: Boolean - read GetIsPersistent - write SetIsPersistent; - property IsDeleted: Boolean - read GetIsDeleted - write SetIsDeleted; - property IsCompressed: Boolean - read GetIsCompressed - write SetIsCompressed; - property IsLocalized: Boolean - read GetIsLocalized - write SetIslocalized; - property IsVisibleWhenDistant: Boolean - read GetIsVisibleWhenDistant - write SetIsVisibleWhenDistant; - property HasVisibleWhenDistantMesh: Boolean - read GetHasVisibleWhenDistantMesh; - property HasMesh: Boolean - read GetHasMesh; - property HasPrecombinedMesh: Boolean - read GetHasPrecombinedMesh; - property PrecombinedMesh: string - read GetPrecombinedMesh; - property IsInitiallyDisabled: Boolean - read GetIsInitiallyDisabled - write SetIsInitiallyDisabled; - - property ConflictAll: TConflictAll - read GetConflictAll - write SetConflictAll; - property ConflictThis: TConflictThis - read GetConflictThis - write SetConflictThis; - end; - - IwbFileHeader = interface(IwbDataContainer) - ['{E309EEE2-C20E-4506-BF46-B63F903706C9}'] - function GetFileMagic: TwbFileMagic; - - property FileMagic: TwbFileMagic - read GetFileMagic; - end; - - IwbChapter = interface - ['{3E575648-EF6F-4e9f-956F-D2E184B670E4}'] - function GetChapterType: Integer; - function GetChapterTypeName: String; - function GetChapterName: String; - property ChapterType: Integer - read GetChapterType; - property ChapterTypeName: String - read GetChapterTypeName; - property ChapterName: String - read GetChapterName; - end; - - TDynElements = array of IwbElement; - {$IFDEF WIN32} - TDynCardinalArray = array of Cardinal; - {$ENDIF WIN32} - {$IFDEF WIN64} - TDynCardinalArray = array of UInt64; - {$ENDIF WIN32} - - IwbSubRecord = interface(IwbRecord) - ['{CDE36A3D-64F6-4B8E-980E-FBAB8D9FCAF7}'] - function GetSubRecordHeaderSize: Integer; - property SubRecordHeaderSize: Integer - read GetSubRecordHeaderSize; - end; - - TDynGroupRecords = array of IwbGroupRecord; - - IwbGroupRecord = interface(IwbRecord) - ['{BFF16E47-4E66-4EAD-9BEF-364728AE0A6B}'] - function GetGroupType: Integer; - function GetGroupLabel: Cardinal; - procedure SetGroupLabel(aLabel: Cardinal); - function GetChildrenOf: IwbMainRecord; - - function FindChildGroup(aType: Integer; aMainRecord: IwbMainRecord): IwbGroupRecord; - - function GetMainRecordByEditorID(const aEditorID: string): IwbMainRecord; - function GetMainRecordByFormID(const aFormID: Cardinal): IwbMainRecord; - - procedure AddElement(const aElement: IwbElement); - - property GroupType: Integer - read GetGroupType; - property GroupLabel: Cardinal - read GetGroupLabel - write SetGroupLabel; - - property ChildrenOf: IwbMainRecord - read GetChildrenOf; - - property MainRecordByEditorID[const aEditorID: string]: IwbMainRecord - read GetMainRecordByEditorID; - property MainRecordByFormID[const aFormID: Cardinal]: IwbMainRecord - read GetMainRecordByFormID; - end; - - IwbSubRecordArray = interface - ['{26937F7A-5F31-4D65-932F-038BD0FA9FEF}'] - end; - - IwbSubRecordStruct = interface - ['{E8C496D3-D396-4685-87EC-82E1FD2588B8}'] - end; - - IwbSubRecordUnion = interface - ['{11959F58-B396-4449-9D9D-5DF1251C3E76}'] - end; - - TwbCallbackType = ( - ctToStr, - ctToSortKey, - ctCheck, - ctToEditValue, - ctEditType, - ctEditInfo - ); - - TwbAfterLoadCallback = procedure(const aElement: IwbElement); - TwbAfterSetCallback = procedure(const aElement: IwbElement; const aOldValue, aNewValue: Variant); - TwbDontShowCallback = function(const aElement: IwbElement): Boolean; - TwbFloatNormalizer = function(const aElement: IwbElement; aFloat: Extended): Extended; - TwbGetConflictPriority = procedure(const aElement: IwbElement; var aConflictPriority: TwbConflictPriority); - TwbIntToStrCallback = function(aInt: Int64; const aElement: IwbElement; aType: TwbCallbackType): string; - TwbStrToIntCallback = function(const aString: string; const aElement: IwbElement): Int64; - TwbAddInfoCallback = function(const aMainRecord: IwbMainRecord): string; - TwbUnionDecider = function(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; - TwbIntegerDefFormaterUnionDecider = function(const aElement: IwbElement): Integer; - TwbIsSortedCallback = function(const aContainer: IwbContainer): Boolean; - TwbCountCallback = function(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Cardinal; - TwbSizeCallback = function(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement;var CompressedSize: Integer): Cardinal; - TwbGetChapterTypeCallback = function(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; - TwbGetChapterTypeNameCallback = function(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): String; - TwbGetChapterNameCallback = function(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): String; - - IwbNamedDef = interface(IwbDef) - ['{F8FEDE89-C089-42C5-B587-49A7D87055F0}'] - function GetName: string; - function GetPath: string; - procedure AfterLoad(const aElement: IwbElement); - procedure AfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); - - function GetTreeHead: Boolean; // Is the element expected to be a "header record" in the tree navigator - procedure SetTreeHead(aValue: Boolean); // Make the element a "header record" in the tree navigator; - function GetTreeBranch: Boolean; // Is the element included in a "leaf" expected to be displayed in the view pane - procedure SetTreeBranch(aValue: Boolean); // Make the element included in a "leaf" visible in the tree navigator; - - property Name: string - read GetName; - property Path: string - read GetPath; - - property TreeHead: Boolean - read GetTreeHead write SetTreeHead; - - property TreeBranch: Boolean - read GetTreeBranch write SetTreeBranch; - end; - - IwbSignatureDef = interface(IwbNamedDef) - ['{EF20E1A2-8719-4934-AC36-C91DC72C3F70}'] - function GetDefaultSignature: TwbSignature; - - function GetSignatures(const aIndex: Integer): TwbSignature; - function GetSignatureCount: Integer; - - function CanHandle(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; - - property DefaultSignature: TwbSignature - read GetDefaultSignature; - - property Signatures[const aIndex: Integer]: TwbSignature - read GetSignatures; - property SignatureCount: Integer - read GetSignatureCount; - end; - - IwbRecordMemberDef = interface; - - IwbStructDef = interface; - - PwbRecordDef = ^IwbRecordDef; - IwbRecordDef = interface(IwbSignatureDef) - ['{89FE380F-7A0B-493C-AA9E-08957A4C167B}'] - function ContainsMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; - function GetMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : IwbRecordMemberDef; - function GetMemberIndexFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Integer; - - function AllowUnordered: Boolean; - function AdditionalInfoFor(const aMainRecord: IwbMainRecord): string; - - function GetMember(aIndex: Integer): IwbRecordMemberDef; - function GetMemberCount: Integer; - - function GetSkipSignature(const aSignature: TwbSignature): Boolean; - - function GetQuickInitLimit: Integer; - function GetContainsEditorID: Boolean; - - function GetRecordHeaderStruct: IwbStructDef; - - property Members[aIndex: Integer]: IwbRecordMemberDef read GetMember; - property MemberCount: Integer read GetMemberCount; - - property SkipSignature[const aSignature: TwbSignature]: Boolean - read GetSkipSignature; - - property QuickInitLimit: Integer - read GetQuickInitLimit; - property ContainsEditorID: Boolean - read GetContainsEditorID; - - property RecordHeaderStruct: IwbStructDef - read GetRecordHeaderStruct; - end; - - IwbHasSortKeyDef = interface(IwbRecordDef) - ['{877FEF58-72B1-4735-9E08-166B5F4043F3}'] - function GetSortKey(aIndex: Integer; aExtended: Boolean): Integer; - function GetSortKeyCount(aExtended: Boolean): Integer; - function IsInSK(aIndex: Integer): Boolean; - - property SortKeys[aIndex: Integer; aExtended: Boolean]: Integer - read GetSortKey; - property SortKeyCount[aExtended: Boolean]: Integer - read GetSortKeyCount; - end; - - IwbRecordMemberDef = interface(IwbSignatureDef) - ['{259F3F08-F4ED-439D-8C1A-48137C84E52A}'] - end; - - TwbUsedMasters = array[Byte] of Boolean; - PwbUsedMasters = ^TwbUsedMasters; - - IwbValueDef = interface(IwbNamedDef) - ['{BBF684A6-0EE5-4EF6-83DD-D323A0D2919A}'] - function ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; - function ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; - function Check(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; - function GetLinksTo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): IwbElement; - procedure BuildRef(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement); - function GetIsVariableSize: Boolean; - function GetCanBeZeroSize: Boolean; - function ToEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; - procedure FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); - function ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; - procedure FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); - function GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; - function GetEditType(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): TwbEditType; - function GetEditInfo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; - function SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; - - procedure MasterCountUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aOld, aNew: Byte); - procedure MasterIndicesUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aOld, aNew: TBytes); - procedure FindUsedMasters(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aMasters: PwbUsedMasters); - function CompareExchangeFormID(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aOldFormID: Cardinal; aNewFormID: Cardinal): Boolean; - - function GetElementMap: TDynCardinalArray; - - property Size[aBasePtr, aEndPtr: Pointer; const aElement: IwbElement]: Integer - read GetSize; - property DefaultSize[aBasePtr, aEndPtr: Pointer; const aElement: IwbElement]: Integer - read GetDefaultSize; - property IsVariableSize: Boolean - read GetIsVariableSize; - property CanBeZeroSize: Boolean - read GetCanBeZeroSize; - property IsEditable[aBasePtr, aEndPtr: Pointer; const aElement: IwbElement]: Boolean - read GetIsEditable; - property EditValue[aBasePtr, aEndPtr: Pointer; const aElement: IwbElement]: string - read ToEditValue - write FromEditValue; - property NativeValue[aBasePtr, aEndPtr: Pointer; const aElement: IwbElement]: Variant - read ToNativeValue - write FromNativeValue; - property LinksTo[aBasePtr, aEndPtr: Pointer; const aElement: IwbElement]: IwbElement - read GetLinksTo; - - property EditType[aBasePtr, aEndPtr: Pointer; const aElement: IwbElement]: TwbEditType - read GetEditType; - property EditInfo[aBasePtr, aEndPtr: Pointer; const aElement: IwbElement]: string - read GetEditInfo; - end; - - IwbSubRecordDef = interface(IwbRecordMemberDef) - ['{D848E426-8768-45F4-B192-4DEFBE34D40A}'] - function GetValue: IwbValueDef; - procedure HasUnusedData; - - property Value: IwbValueDef read GetValue; - end; - - IwbSubRecordArrayDef = interface(IwbRecordMemberDef) - ['{67943BAC-B558-4112-8DBC-C94A44E0B1D1}'] - function GetElement: IwbRecordMemberDef; - function GetSorted(const aContainer: IwbContainer): Boolean; - - property Element: IwbRecordMemberDef read GetElement; - property Sorted[const aContainer: IwbContainer]: Boolean read GetSorted; - end; - - IwbSubRecordStructDef = interface(IwbRecordMemberDef) - ['{B5441812-5229-488B-AEA6-C182CEBED441}'] - end; - - IwbSubRecordUnionDef = interface(IwbRecordMemberDef) - ['{BC66ABFF-3108-4C64-B416-674A2A8F297D}'] - end; - - IwbUnionDef = interface(IwbValueDef) - ['{04D6B7BA-B457-4E43-9910-592395FEA0D6}'] - function Decide(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): IwbValueDef; - - function GetMember(aIndex: Integer): IwbValueDef; - function GetMemberCount: Integer; - - property Members[aIndex: Integer]: IwbValueDef read GetMember; - property MemberCount: Integer read GetMemberCount; - end; - - IwbStringDef = interface(IwbValueDef) - ['{37B02D28-EDB4-41C6-B933-9F56C013A88A}'] - function GetStringSize: Integer; - - property StringSize: Integer - read GetStringSize; - end; - - IwbLenStringDef = interface(IwbValueDef) - ['{1AD7FAE2-DAA7-4651-B78D-10E138EDF48B}'] - end; - - IwbByteArrayDef = interface(IwbValueDef) - ['{3069E1AC-4307-421B-93E4-797E18075EF9}'] - end; - - IwbEmptyDef = interface(IwbValueDef) - ['{0A858744-947B-4B6E-9972-D8BF5398C87C}'] - function GetSorted: Boolean; - - property Sorted: Boolean - read GetSorted; - end; - - IwbIntegerDefFormater = interface; - - IwbIntegerDef = interface(IwbValueDef) - ['{00A270B0-ACFC-444C-A7E8-A577BD40704E}'] - function ToInt(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Int64; - procedure FromInt(aValue: Int64; aBasePtr, aEndPtr: Pointer; const aElement: IwbElement); - - function GetFormater(const aElement: IwbElement): IwbIntegerDefFormater; - function GetFormaterCanChange: Boolean; - function GetIntType: TwbIntType; - function GetExpectedLength(aValue: Int64 = 0): Integer; - - property Formater[const aElement: IwbElement]: IwbIntegerDefFormater - read GetFormater; - property FormaterCanChange: Boolean - read GetFormaterCanChange; - property IntType: TwbIntType - read GetIntType; - - property ExpectedLength[aValue: Int64 = 0]: Integer - read GetExpectedLength; - end; - - IwbInternalIntegerDef = interface(IwbIntegerDef) - ['{16A15EF7-6295-4817-BA94-CDD7E8C1CF8B}'] - procedure ReplaceFormater(const aFormater: IwbIntegerDefFormater); - end; - - IwbFloatDef = interface(IwbValueDef) - ['{29F116C6-0208-4D55-ACA7-2A9BB17BF80B}'] - end; - - IwbArrayDef = interface(IwbValueDef) - ['{BD195F99-4AC3-4BD0-9193-267332E97D79}'] - function GetElement: IwbValueDef; - function GetCount: Integer; - function GetElementLabel(aIndex: Integer): string; - function GetSorted: Boolean; - function GetCanAddTo: Boolean; - function GetCountCallBack: TwbCountCallback; - function GetPrefixSize(aBasePtr: Pointer): Integer; - function GetPrefixLength(aBasePtr: Pointer): Integer; - function GetPrefixCount(aBasePtr: Pointer): Cardinal; - procedure SetPrefixCount(aBasePtr: Pointer; aCount: Cardinal); - - property Element: IwbValueDef - read GetElement; - property ElementCount: Integer - read GetCount; - - property ElementLabel[aIndex: Integer]: string - read GetElementLabel; - - property Sorted: Boolean - read GetSorted; - - property CountCallBack: TwbCountCallback - read GetCountCallback; - - property CanAddTo: Boolean - read GetCanAddTo; - - property PrefixSize[aBasePtr: Pointer]: Integer // how many bytes of storage for the prefix - read GetPrefixSize; - property PrefixLength[aBasePtr: Pointer]: Integer // Integer size of the prefix - read GetPrefixLength; - property PrefixCount[aBasePtr: Pointer]: Cardinal // Value stored in the prefix - read GetPrefixCount write SetPrefixCount; - end; - - IwbStructDef = interface(IwbValueDef) - ['{9B20A03C-BC3F-433A-9781-E46BD5C660A9}'] - - function GetMemberCount: Integer; - function GetMember(aIndex: Integer): IwbValueDef; - function GetMemberByName(const aName: string): IwbValueDef; - function GetOptionalFromElement: Integer; - - property MemberCount: Integer read GetMemberCount; - property Members[aIndex: Integer]: IwbValueDef read GetMember; - property MembersByName[const aName: string]: IwbValueDef read GetMemberByName; - property OptionalFromElement: Integer read GetOptionalFromElement; - end; - - IwbStructCDef = interface(IwbStructDef) - ['{B72FD1AD-018D-47D3-91E7-5028C5E0E759}'] - function GetSizing(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement;var CompressedSize: Integer): Cardinal; - function GetChapterType(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; - function GetChapterTypeName(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): String; - function GetChapterName(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): String; - end; - - TwbStructCompression = ( - scNone, - scZComp, - scLZComp - ); - - IwbStructZDef = interface(IwbStructCDef) // Compressible structure !!! NOT SAFE FOR EDIT AT THE MOMEMNT !!! - ['{8ED8E461-E4BB-494E-8A3B-B352A245B9A0}'] - end; - - IwbStructLZDef = interface(IwbStructZDef) // Compressible structure using LZ4 !!! NOT SAFE FOR EDIT AT THE MOMEMNT !!! - ['{A5AB100F-83CA-4B53-B3CD-2BF926210900}'] - end; - - IwbIntegerDefFormater = interface(IwbDef) - ['{56A6EB7B-3A90-4F09-8E80-D7399569DFCC}'] - - function ToString(aInt: Int64; const aElement: IwbElement): string; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; - function Check(aInt: Int64; const aElement: IwbElement): string; - procedure BuildRef(aInt: Int64; const aElement: IwbElement); - - function GetEditType(aInt: Int64; const aElement: IwbElement): TwbEditType; - function GetEditInfo(aInt: Int64; const aElement: IwbElement): string; - - function ToEditValue(aInt: Int64; const aElement: IwbElement): string; - function FromEditValue(const aValue: string; const aElement: IwbElement): Int64; - function GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; - function GetLinksTo(aInt: Int64; const aElement: IwbElement): IwbElement; - - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; - - function MasterCountUpdated(aInt: Int64; aOld, aNew: Byte; const aElement: IwbElement): Int64; - function MasterIndicesUpdated(aInt: Int64; const aOld, aNew: TBytes; const aElement: IwbElement): Int64; - procedure FindUsedMasters(aInt: Int64; aMasters: PwbUsedMasters; const aElement: IwbElement); - function CompareExchangeFormID(var aInt: Int64; aOldFormID: Cardinal; aNewFormID: Cardinal; const aElement: IwbElement): Boolean; - - function GetRequiresKey: Boolean; - - property IsEditable[aInt: Int64; const aElement: IwbElement]: Boolean - read GetIsEditable; - property LinksTo[aInt: Int64; const aElement: IwbElement]: IwbElement - read GetLinksTo; - - property EditType[aInt: Int64; const aElement: IwbElement]: TwbEditType - read GetEditType; - property EditInfo[aInt: Int64; const aElement: IwbElement]: string - read GetEditInfo; - - property RequiresKey: Boolean - read GetRequiresKey; - end; - - IwbIntegerDefFormaterUnion = interface(IwbIntegerDefFormater) - ['{C04B1181-A570-41AE-A31E-7977B722EE0A}'] - function Decide(const aElement: IwbElement): IwbIntegerDefFormater; - - function GetMember(aIndex: Integer): IwbIntegerDefFormater; - function GetMemberCount: Integer; - - property Members[aIndex: Integer]: IwbIntegerDefFormater read GetMember; - property MemberCount: Integer read GetMemberCount; - end; - - IwbDumpIntegerDefFormater = interface(IwbIntegerDefFormater) - ['{9767F3EF-0E6F-45FB-AC9F-31A9B4312760}'] - end; - - IwbFormID = interface(IwbIntegerDefFormater) - ['{71C4A255-B983-488C-9837-0A720132348A}'] - function GetMainRecord(aInt: Int64; const aElement: IwbElement): IwbMainRecord; - end; - - IwbRefID = interface(IwbFormID) - ['{F6EEAFDD-5AD7-4DB3-BF45-5D5DB53465D4}'] - end; - - IwbFormIDChecked = interface(IwbFormID) - ['{DC7CBC9F-07EC-430B-94EE-ECE1867A2660}'] - function GetSignature(aIndex: Integer): TwbSignature; - function GetSignatureCount: Integer; - - property Signatures[aIndex: Integer]: TwbSignature - read GetSignature; - property SignatureCount: Integer - read GetSignatureCount; - end; - - IwbChar4 = interface(IwbIntegerDefFormater) - ['{CF657B3A-E7A6-48FE-AC68-8DF15962A531}'] - end; - - IwbStr4 = interface(IwbIntegerDefFormater) // 4 bytes strings stored as itU32 - ['{2DC5200E-C1F1-47e7-A927-3D110D59F55A}'] - end; // The interface handles swaping the character in readable order - - IwbFlagsDef = interface; - - IwbFlagDef = interface(IwbValueDef) - ['{CCD4FBC4-D1CA-4B91-9E2F-6EE6118D5D07}'] - function GetFlagsDef: IwbFlagsDef; - function GetFlagIndex: Integer; - - property FlagsDef: IwbFlagsDef - read GetFlagsDef; - property FlagIndex: Integer - read GetFlagIndex; - end; - - IwbFlagsDef = interface(IwbIntegerDefFormater) - ['{EF564466-A671-453A-88CF-42A0AA32D849}'] - function GetBaseFlagsDef: IwbFlagsDef; - function GetFlag(aIndex: Integer): string; - function GetFlagCount: Integer; - function GetFlagIgnoreConflict(aIndex: Integer): Boolean; - function GetFlagDontShow(const aElement: IwbElement; aIndex: Integer): Boolean; - function GetFlagHasDontShow(aIndex: Integer): Boolean; - procedure FlagGetCP(const aElement: IwbElement; aIndex: Integer; var aCP: TwbConflictPriority); - function GetFlagHasGetCP(aIndex: Integer): Boolean; - function GetFlagDef(aIndex : Integer): IwbFlagDef; - - property BaseFlagsDef: IwbFlagsDef - read GetBaseFlagsDef; - - property Flags[aIndex: Integer] : string - read GetFlag; - property FlagCount: Integer - read GetFlagCount; - - property FlagIgnoreConflict[aIndex: Integer] : Boolean - read GetFlagIgnoreConflict; - - property FlagDontShow[const aElement: IwbElement; aIndex: Integer]: Boolean - read GetFlagDontShow; - property FlagHasDontShow[aIndex: Integer]: Boolean - read GetFlagHasDontShow; - property FlagHasGetCP[aIndex: Integer]: Boolean - read GetFlagHasGetCP; - - property FlagDef[aIndex: Integer]: IwbFlagDef - read GetFlagDef; - end; - - IwbEnumDef = interface(IwbIntegerDefFormater) - ['{A3AFE02E-F72D-4E0E-BC56-219F7EE2B564}'] - - function GetName(aIndex: Integer): string; - function GetNameCount: Integer; - - property Names[aIndex: Integer]: string - read GetName; - property NameCount: Integer - read GetNameCount; - end; - - IwbKey2Data6EnumDef = interface(IwbEnumDef) - ['{A74C58CC-6280-4143-B72B-4AD4F68A9957}'] - end; - - IwbData6Key2EnumDef = interface(IwbEnumDef) - ['{AC7F99C9-9DF1-43BB-9052-6AD4B69E706F}'] - end; - - IwbCallbackDef = interface(IwbIntegerDefFormater) - ['{BF6A0830-F981-4E0A-B4F2-2A09D575CD19}'] - function GetCallback: TwbIntToStrCallback; - - property Callback: TwbIntToStrCallback - read GetCallback; - end; - - IwbResourceContainer = interface; - - IwbResource = interface(IInterface) - ['{B626E8BF-D2E3-40D1-8F3A-E6001D76B97B}'] - function GetContainer: IwbResourceContainer; - function GetData: TBytes; - - property Container: IwbResourceContainer - read GetContainer; - end; - - IwbResourceContainer = interface(IInterface) - ['{023EA9C4-19B5-4587-B298-559EEF8F224E}'] - function GetName: String; - function OpenResource(const aFileName: string): IwbResource; - function ResourceExists(const aFileName: string): Boolean; - procedure ResourceList(const aList: TStrings; const aFolder: string = ''); - procedure ResolveHash(const aHash: Int64; var Results: TDynStrings); - - property Name: string - read GetName; - end; - - IwbFolder = interface(IwbResourceContainer) - ['{E71981ED-3C0C-4334-8476-116AEB0EEA1E}'] - function GetPathName: string; - - property PathName: string - read GetPathName; - end; - - IwbBSAFile = interface(IwbResourceContainer) - ['{DC987017-9F5C-42D2-BAD2-E1A622E99081}'] - function GetFileName: string; - - property FileName: string - read GetFileName; - end; - - IwbBA2File = interface(IwbResourceContainer) - ['{D05EAAEC-8A23-4CDD-83E4-7593AC846CE3}'] - function GetFileName: string; - - property FileName: string - read GetFileName; - end; - - TDynResources = array of IwbResource; - - IwbContainerHandler = interface(IInterface) - ['{0CC80043-EADC-4C7D-8677-8719735582C7}'] - procedure AddFolder(const aPath: string); - procedure AddBSA(const aFileName: string); - procedure AddBA2(const aFileName: string); - - function OpenResource(const aFileName: string): TDynResources; - function OpenResourceData(const aContainerName, aFileName: string): TBytes; - function ResolveHash(const aHash: Int64): TDynStrings; - function ContainerExists(aContainerName: string): Boolean; - procedure ContainerList(const aList: TStrings); - procedure ContainerResourceList(const aContainerName: string; const aList: TStrings; - const aFolder: string = ''); - function ResourceExists(const aFileName: string): Boolean; - function ResourceCount(const aFileName: string; aContainers: TStrings = nil): Integer; - procedure ResourceCopy(const aContainerName, aFileName, aPathOut: string); - end; - -var - SortedElementTypes : set of TwbElementType = [ - etFile, - etMainRecord, - etGroupRecord, - etSubRecord, - etSubRecordArray, - etArray - ]; - wbPluginExtensions : TwbPluginExtensions; - -function wbRecord(const aSignature : TwbSignature; - const aName : string; - const aMembers : array of IwbRecordMemberDef; - aAllowUnordered : Boolean = False; - aAddInfoCallback: TwbAddInfoCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil) - : IwbRecordDef; overload; - -function wbRecord(const aSignature : TwbSignature; - const aName : string; - const aRecordFlags : IwbIntegerDefFormater; - const aMembers : array of IwbRecordMemberDef; - aAllowUnordered : Boolean = False; - aAddInfoCallback: TwbAddInfoCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil) - : IwbRecordDef; overload; - -function wbSubRecord(const aSignature : TwbSignature; - const aName : string; - const aValue : IwbValueDef; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aSizeMatch : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbSubRecord(const aSignatures : array of TwbSignature; - const aName : string; - const aValue : IwbValueDef; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aSizeMatch : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbString(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbString(const aName : string = 'Unknown'; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; - -function wbStringForward(const aSignature : TwbSignature; // When the editor can leave chars after the ending #0 - const aName : string = 'Unknown'; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbString( aForward : Boolean = False; - const aName : string = 'Unknown'; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; - -function wbStringT(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbStringT(const aName : string = 'Unknown'; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; - -function wbStringScript(const aSignature : TwbSignature; - const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbStringScript(const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; - -function wbStringLC(const aSignature : TwbSignature; - const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbStringLC(const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; - -function wbStringKC(const aSignature : TwbSignature; - const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbStringKC(const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; - -function wbLString(const aSignature : TwbSignature; - const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbLString(const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; - -function wbLStringKC(const aSignature : TwbSignature; - const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbLStringKC(const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; - -function wbStringMgefCode(const aSignature : TwbSignature; - const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbStringMgefCode(const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; - -function wbLenString(const aSignature : TwbSignature; - const aName : string; - aPrefix : Integer = 4; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbLenString(const aName : string; - aPrefix : Integer = 4; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbLenStringDef; overload; - -function wbLenStringT(const aSignature : TwbSignature; - const aName : string; - aPrefix : Integer = 4; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbLenStringT(const aName : string; - aPrefix : Integer = 4; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbLenStringDef; overload; -function wbUnion(const aSignature : TwbSignature; - const aName : string; - aDecider : TwbUnionDecider; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbUnion(const aName : string; - aDecider : TwbUnionDecider; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbUnionDef; overload; - - -function wbByteArray(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aSize : Int64 = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aSizeMatch : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbByteArray(const aName : string = 'Unknown'; - aSize : Int64 = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbByteArrayDef; overload; - -function wbByteArrayT(const aName : string = 'Unknown'; - aSize : Int64 = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbByteArrayDef; overload; - -function wbByteArray(const aName : string; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbByteArrayDef; overload; - -function wbUnknown(const aSignature : TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbUnknown(aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbByteArrayDef; overload; - -function wbInteger(const aSignature : TwbSignature; - const aName : string; - const aIntType : TwbIntType; - const aFormater : IwbIntegerDefFormater = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aMatchSize : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbInteger(const aName : string; - const aIntType : TwbIntType; - const aFormater : IwbIntegerDefFormater = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; - -function wbInteger(const aSignature : TwbSignature; - const aName : string; - const aIntType : TwbIntType; - const aToStr : TwbIntToStrCallback; - const aToInt : TwbStrToIntCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbInteger(const aName : string; - const aIntType : TwbIntType; - const aToStr : TwbIntToStrCallback; - const aToInt : TwbStrToIntCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; - - -function wbIntegerT(const aSignature : TwbSignature; - const aName : string; - const aIntType : TwbIntType; - const aFormater : IwbIntegerDefFormater = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aMatchSize : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbIntegerT(const aName : string; - const aIntType : TwbIntType; - const aFormater : IwbIntegerDefFormater = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64= 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; - -function wbIntegerT(const aSignature : TwbSignature; - const aName : string; - const aIntType : TwbIntType; - const aToStr : TwbIntToStrCallback; - const aToInt : TwbStrToIntCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbIntegerT(const aName : string; - const aIntType : TwbIntType; - const aToStr : TwbIntToStrCallback; - const aToInt : TwbStrToIntCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; - -function wbFloat(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbFloat(const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; - -function wbFloat(const aName : string; - aPriority : TwbConflictPriority; - aRequired : Boolean; - aDontShow : TwbDontShowCallback; - aAfterSet : TwbAfterSetCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; - -function wbDouble(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbDouble(const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; - -function wbDouble(const aName : string; - aPriority : TwbConflictPriority; - aRequired : Boolean; - aDontShow : TwbDontShowCallback; - aAfterSet : TwbAfterSetCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; - -function wbFloatT(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbFloatT(const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; - -function wbFloatT(const aName : string; - aPriority : TwbConflictPriority; - aRequired : Boolean; - aDontShow : TwbDontShowCallback; - aAfterSet : TwbAfterSetCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; - -function wbDoubleT(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbDoubleT(const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; - -function wbDoubleT(const aName : string; - aPriority : TwbConflictPriority; - aRequired : Boolean; - aDontShow : TwbDontShowCallback; - aAfterSet : TwbAfterSetCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; - -{--- wbArray - list of identical elements -------------------------------------} -function wbArray(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - aCount : Integer = 0; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbArray(const aName : string; - const aElement : IwbValueDef; - aCount : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArray(const aName : string; - const aElement : IwbValueDef; - aCount : Integer; - aAfterLoad : TwbAfterLoadCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArray(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbArray(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbArray(const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArray(const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArray(const aName : string; - const aElement : IwbValueDef; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArrayPT(const aSignature : TwbSignature; // case where the prefix is terminated. - const aName : string; - const aElement : IwbValueDef; - aCount : Integer = 0; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbArrayPT(const aName : string; - const aElement : IwbValueDef; - aCount : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArrayPT(const aName : string; - const aElement : IwbValueDef; - aCount : Integer; - aAfterLoad : TwbAfterLoadCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArrayT(const aName : string; // case where members are not terminated, but the array itself yes - const aElement : IwbValueDef; - aCount : Integer; - const aLabels : array of string; - aAfterLoad : TwbAfterLoadCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArrayPT(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbArrayPT(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbArrayPT(const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArrayPT(const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArrayT(const aName : string; // case where members are not terminated, but the array itself yes - const aElement : IwbValueDef; - const aLabels : array of string; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArrayPT(const aName : string; - const aElement : IwbValueDef; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbRArray(const aName : string; - const aElement : IwbRecordMemberDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordArrayDef; overload; - -function wbArrayS(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - aCount : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbArrayS(const aName : string; - const aElement : IwbValueDef; - aCount : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aCanAddTo : Boolean = True; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArrayS(const aName : string; - const aElement : IwbValueDef; - aCount : Integer; - aAfterLoad : TwbAfterLoadCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArrayS(const aName : string; - const aElement : IwbValueDef; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArray(const aName : string; - const aElement : IwbValueDef; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority; - aRequired : Boolean; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbArrayS(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbArrayS(const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - - -function wbRArrayS(const aName : string; - const aElement : IwbRecordMemberDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aIsSorted : TwbIsSortedCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordArrayDef; overload; - -{--- wbStruct - ordered list of members ----------------------------------------} -function wbStructSK(const aSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; - -function wbStructSK(const aSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbValueDef; - {$IFDEF WIN32} - const aElementMap : array of Cardinal; - {$ENDIF WIN32} - {$IFDEF WIN64} - const aElementMap : array of UInt64; - {$ENDIF WIN64} - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; - -function wbStructSK(const aSignature : TwbSignature; - const aSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbMultiStructSK(const aSignatures : array of TwbSignature; - const aSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; - -function wbStructExSK(const aSortKey : array of Integer; - const aExSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; - -function wbStructExSK(const aSignature : TwbSignature; - const aSortKey : array of Integer; - const aExSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbStruct(const aSignature : TwbSignature; - const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbStruct(const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; - -function wbStructC(const aName : string; - aSizing : TwbSizeCallback; - aGetChapterType : TwbGetChapterTypeCallback; - aGetChapterTypeName : TwbGetChapterTypeNameCallback; - aGetChapterName : TwbGetChapterNameCallback; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; - -function wbStructZ(const aName : string; - aSizing : TwbSizeCallback; - aGetChapterType : TwbGetChapterTypeCallback; - aGetChapterTypeName : TwbGetChapterTypeNameCallback; - aGetChapterName : TwbGetChapterNameCallback; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; - -function wbStructLZ(const aName : string; - aSizing : TwbSizeCallback; - aGetChapterType : TwbGetChapterTypeCallback; - aGetChapterTypeName : TwbGetChapterTypeNameCallback; - aGetChapterName : TwbGetChapterNameCallback; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; - -function wbRStruct(const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAllowUnordered : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordStructDef; overload; - -function wbRStructSK(const aSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAllowUnordered : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordStructDef; overload; - -function wbRStructExSK(const aSortKey : array of Integer; - const aExSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAllowUnordered : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordStructDef; overload; - -function wbRUnion(const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordUnionDef; - -{--- wbStructS - array of struct ----------------------------------------------} -function wbStructS(const aSignature : TwbSignature; - const aName : string; - const aElementName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbStructS(const aName : string; - const aElementName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; - -function wbRStructS(const aName : string; - const aElementName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordArrayDef; overload; - -function wbRStructsSK(const aName : string; - const aElementName : string; - const aSortKey : array of Integer; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordArrayDef; overload; - -function wbEmpty(const aSignature : TwbSignature; - const aName : string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbEmpty(const aName : string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aSorted : Boolean = False; - aGetCP : TwbGetConflictPriority = nil) - : IwbValueDef; overload; - -function wbRefID: IwbRefID; overload; - -function wbRefID(const aName : string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; - -function wbRefIDT(const aName : string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; - -function wbDumpInteger : IwbIntegerDefFormater; overload; - -function wbKey2Data6Enum(const aNames : array of string) - : IwbKey2Data6EnumDef; overload; - -function wbData6Key2Enum(const aNames : array of string) - : IwbData6Key2EnumDef; overload; - -function wbFormID: IwbFormID; overload; - -function wbFormID(const aValidRefs : array of TwbSignature; - aPersistent: Boolean) - : IwbFormID; overload; - -function wbFormIDNoReach(const aValidRefs : array of TwbSignature; - aPersistent : Boolean) - : IwbFormID; overload; - -function wbFormID(const aValidRefs : array of TwbSignature; - const aValidFlstRefs : array of TwbSignature; - aPersistent : Boolean) - : IwbFormID; overload; - -function wbFormIDNoReach(const aValidRefs : array of TwbSignature; - const aValidFlstRefs : array of TwbSignature; - aPersistent : Boolean) - : IwbFormID; overload; - -function wbFormID(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbFormID(const aName : string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil) - : IwbIntegerDef; overload; - -function wbFormIDT(const aName : string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; - -function wbFormIDCk(const aSignature : TwbSignature; - const aName : string; - const aValidRefs : array of TwbSignature; - aPersistent: Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbFormIDCkNoReach(const aSignature : TwbSignature; - const aName : string; - const aValidRefs : array of TwbSignature; - aPersistent: Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbFormIDCk(const aName : string; - const aValidRefs : array of TwbSignature; - aPersistent: Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil) - : IwbIntegerDef; overload; - -function wbFormIDCkNoReach(const aName : string; - const aValidRefs : array of TwbSignature; - aPersistent: Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; - -function wbFormIDCk(const aSignature : TwbSignature; - const aName : string; - const aValidRefs : array of TwbSignature; - const aValidFlstRefs : array of TwbSignature; - aPersistent : Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; - -function wbFormIDCk(const aName : string; - const aValidRefs : array of TwbSignature; - const aValidFlstRefs : array of TwbSignature; - aPersistent : Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; - -function wbFormIDCkNoReach(const aName : string; - const aValidRefs : array of TwbSignature; - const aValidFlstRefs : array of TwbSignature; - aPersistent : Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; - -function wbChar4: IwbChar4; - -function wbStr4: IwbStr4; - -function wbFlags(const aNames : array of string; - aUnknownIsUnused : Boolean = False) - : IwbFlagsDef; overload; -function wbFlags(const aNames : array of string; - const aFlagsToIgnore : array of integer) - : IwbFlagsDef; overload; -function wbFlags(const aNames : array of string; - const aDontShows : array of TwbDontShowCallback; - aUnknownIsUnused : Boolean = False) - : IwbFlagsDef; overload; - -function wbFlags(const aBaseFlagsDef : IwbFlagsDef; - const aNames : array of string; - aUnknownIsUnused : Boolean = False) - : IwbFlagsDef; overload; -function wbFlags(const aBaseFlagsDef : IwbFlagsDef; - const aNames : array of string; - const aFlagsToIgnore : array of integer) - : IwbFlagsDef; overload; -function wbFlags(const aBaseFlagsDef : IwbFlagsDef; - const aNames : array of string; - const aDontShows : array of TwbDontShowCallback; - aUnknownIsUnused : Boolean = False) - : IwbFlagsDef; overload; - -function wbEnum(const aNames : array of string) - : IwbEnumDef; overload; -function wbEnum(const aNames : array of string; - const aSparseNames : array of const) - : IwbEnumDef; overload; - - -function wbDiv(aValue : Integer) - : IwbIntegerDefFormater; -function wbMul(aValue : Integer) - : IwbIntegerDefFormater; -function wbCallback(const aToStr : TwbIntToStrCallback; - const aToInt : TwbStrToIntCallback) - : IwbIntegerDefFormater; - -function wbFormaterUnion(aDecider : TwbIntegerDefFormaterUnionDecider; - aMembers : array of IwbIntegerDefFormater) - : IwbIntegerDefFormaterUnion; - -function wbIsPlugin(aFileName: string): Boolean; - -function wbStr4ToString(aInt: Int64): string; - -type - PwbRecordDefEntry = ^TwbRecordDefEntry; - TwbRecordDefEntry = record - rdeSignature : TwbSignature; - rdeHash : Integer; - rdeDef : IwbRecordDef; - rdeNext : Integer; - end; - - TwbRecordDefEntries = array of TwbRecordDefEntry; - -const - RecordDefHashMapSize = 1546; - -var - wbRecordDefs : TwbRecordDefEntries; - wbRecordDefHashMap : array[0..Pred(RecordDefHashMapSize)] of Integer; - - wbIgnoreRecords : TStringList; - wbGroupOrder : TStringList; - wbLoadBSAs : Boolean{} = True{}; - wbLoadAllBSAs : Boolean{} = False{}; - wbArchiveExtension : string = '.bsa'; - wbBuildRefs : Boolean{} = True{}; - wbContainerHandler : IwbContainerHandler; - wbLoaderDone : Boolean; - wbLoaderError : Boolean; - -procedure wbAddGroupOrder(const aSignature: TwbSignature); -function wbGetGroupOrder(const aSignature: TwbSignature): Integer; - -function IntToHex64(Value: Int64; Digits: Integer): string; inline; -function CmpB8(a, b: Byte): Integer; -function CmpI32(a, b : Integer) : Integer; -function CmpW32(a, b: Cardinal): Integer; -function CmpI64(const a, b : Int64) : Integer; -function CompareElementsFormIDAndLoadOrder(Item1, Item2: Pointer): Integer; - -function ConflictAllToColor(aConflictAll: TConflictAll): TColor; -function ConflictThisToColor(aConflictThis: TConflictThis): TColor; - -var - wbGetFormIDCallback : function(const aElement: IwbElement): Cardinal; - -function wbFlagsList(aFlags: array of const; aDeleted : Boolean = True; aUnknowns: Boolean = False): TDynStrings; -function wbGetFormID(const aElement: IwbElement): Cardinal; -function wbPositionToGridCell(const aPosition: TwbVector): TwbGridCell; -function wbSubBlockFromGridCell(const aGridCell: TwbGridCell): TwbGridCell; -function wbBlockFromSubBlock(const aSubBlock: TwbGridCell): TwbGridCell; -function wbGridCellToGroupLabel(const aGridCell: TwbGridCell): Cardinal; -function wbIsInGridCell(const aPosition: TwbVector; const aGridCell: TwbGridCell): Boolean; - -var - wbRecordFlags : IwbIntegerDef; - wbMainRecordHeader : IwbStructDef; - wbSizeOfMainRecordStruct : Integer; - -type - TwbGameMode = (gmFNV, gmFO3, gmTES3, gmTES4, gmTES5, gmSSE, gmFO4); - TwbToolMode = (tmView, tmEdit, tmDump, tmExport, tmMasterUpdate, tmMasterRestore, tmLODgen, tmScript, - tmTranslate, tmESMify, tmESPify, tmSortAndCleanMasters, - tmCheckForErrors, tmCheckForITM, tmCheckForDR); - TwbToolSource = (tsPlugins, tsSaves); - TwbSetOfMode = set of TwbToolMode; - -var - wbGameMode : TwbGameMode; - wbToolMode : TwbToolMode; - wbToolSource : TwbToolSource; - wbAppName : string; - wbGameName : string; - wbGameName2 : string; // game title name - wbToolName : string; - wbSourceName : String; - wbLanguage : string; - wbAutoModes : TwbSetOfMode = [ tmMasterUpdate, tmMasterRestore, tmLODgen, // Tool modes that run without user interaction until final status - tmESMify, tmESPify, tmSortAndCleanMasters, - tmCheckForErrors, tmCheckForITM, tmCheckForDR ]; - wbPluginModes : TwbSetOfMode = [ tmESMify, tmESPify, tmSortAndCleanMasters, - tmCheckForErrors, tmCheckForITM, tmCheckForDR ]; // Auto modes that require a specific plugin to be provided. - wbAlwaysMode : TwbSetOfMode = [ tmView, tmEdit, tmESMify, tmESPify, tmSortAndCleanMasters, - tmLODgen, tmScript, tmCheckForITM, tmCheckForDR, tmCheckForErrors ]; // Modes available to all decoded games - -function wbDefToName(const aDef: IwbDef): string; -function wbDefsToPath(const aDefs: TwbDefPath): string; - -procedure ReportDefs; - -type - IwbProgress = interface - ['{054006B0-096D-43CD-A92A-3095B525C854}'] - - procedure UpdateStatus(aPosition: Integer; const aStatus: string); - end; - - IwbWaitForm = interface - ['{185C220C-3135-4A8A-8E0E-8001759F3C85}'] - function GetIsCanceled: Boolean; - - function CreateProgress(const aCaption : string; - const aStatus : string; - aMax : Integer) - : IwbProgress; - - property IsCanceled: Boolean - read GetIsCanceled; - end; - - TwbCreateWaitForm = function(const aCaption : string; - const aMessage : string; - aCanCancel : Boolean; - aShowDelay : Integer = 0; - aUpdateDelay : Integer = 0) - : IwbWaitForm; - -function NullCreateWaitForm(const aCaption : string; - const aMessage : string; - aCanCancel : Boolean; - aShowDelay : Integer = 0; - aUpdateDelay : Integer = 0) - : IwbWaitForm; - -var - wbCreateWaitForm : TwbCreateWaitForm = NullCreateWaitForm; - -type - TwbFastStringList = class(TStringList) - protected - function CompareStrings(const S1, S2: string): Integer; override; - public - constructor CreateSorted(aDups : TDuplicates = dupError); - - procedure Clear(aFreeObjects: Boolean = False); reintroduce; - end; - - TwbFastStringListCS = class(TwbFastStringList) - public - procedure AfterConstruction; override; - end; - - TwbFastStringListIC = class(TwbFastStringList) - end; - -function RadiansNormalize(const aElement: IwbElement; aFloat: Extended): Extended; - -function wbBeginInternalEdit(aForce: Boolean = False): Boolean; -procedure wbEndInternalEdit; -function wbIsInternalEdit: Boolean; - -function StrToSignature(const s: string): TwbSignature; -function wbStringToAnsi(const aString: string; const aElement: IwbElement): AnsiString; -function wbAnsiToString(const aString: AnsiString; const aElement: IwbElement): string; - -function FixupFormID(aFormID: Cardinal; const aOld, aNew: TBytes): Cardinal; - -threadvar - _InternalEditCount: Integer; - _BlockInternalEdit: Boolean; - -var - wbActorValueEnum: IwbEnumDef; - -function GetContainerFromUnion(const aElement: IwbElement): IwbContainer; -function GetContainerRefFromUnionOrValue(const aElement: IwbElement): IwbContainerElementRef; -function GetElementFromUnion(const aElement: IwbElement): IwbElement; - -var - wbHeaderSignature : TwbSignature = 'TES4'; - wbFileMagic : TwbFileMagic; - wbFilePlugins : String = 'Master Files'; - wbUseFalsePlugins : Boolean = False; - wbFileHeader : IwbStructDef; - wbFileChapters : IwbStructDef; - wbBytesToSkip : Cardinal = 0; - wbBytesToDump : Cardinal = $FFFFFFFF; - wbBytesToGroup : Cardinal = 4; - wbExtractInfo : ^TByteSet; - wbTerminator : Byte = Ord('|'); - wbPlayerRefID : Cardinal = $14; - wbChangedFormOffset : Integer = 10000; - wbOfficialDLC : array of string; - -type - {$IFDEF WIN32} - TwbRefIDArray = array of Cardinal; - {$ENDIF WIN32} - {$IFDEF WIN64} - TwbRefIDArray = array of UInt64; - {$ENDIF WIN64} - -function wbReadInteger24(aBasePtr: pointer): Int64; -procedure InitializeRefIDArray(anArray: TwbRefIDArray); - -function wbFindRecordDef(const aSignature : TwbSignature; - out aRecordDef : PwbRecordDef) - : Boolean; overload; - -function wbFindRecordDef(const aSignature : AnsiString; - out aRecordDef : PwbRecordDef) - : Boolean; overload; - -function _wbRecordDefMap: TStringList; - -implementation - -uses - Windows, - Variants, - Math, - AnsiStrings, - TypInfo, - wbSort, - wbLocalization; - -function StrToSignature(const s: string): TwbSignature; -var - t: AnsiString; -begin - t := AnsiString(s); - if Length(t) >= 4 then - Result := PwbSignature(@t[1])^ - else - raise Exception.Create('"'+t+'" is not a valid signature'); -end; - -function IsTranslatable(const aElement: IwbElement): Boolean; -var - Def: IwbDef; -begin - Result := False; - - if Assigned(aElement) then begin - Def := aElement.ValueDef; - if not Assigned(Def) then - Def := aElement.Def; - - if Assigned(Def) then - Result := Def.ConflictPriority[aElement] = cpTranslate; - end; -end; - -function wbStringToAnsi(const aString: String; const aElement: IwbElement): AnsiString; -var - Translatable: Boolean; -begin - if Assigned(aElement) then - Translatable := IsTranslatable(aElement) - else - Translatable := True; - - if Translatable and (wbStringEncoding = seUTF8) then - Result := UTF8Encode(aString) - else - Result := AnsiString(aString); -end; - -function wbAnsiToString(const aString: AnsiString; const aElement: IwbElement): string; -var - Translatable: Boolean; -begin - if Assigned(aElement) then - Translatable := IsTranslatable(aElement) - else - Translatable := True; - - if Translatable and (wbStringEncoding = seUTF8) then - Result := UTF8Decode(aString) - else - Result := string(aString); -end; - -function wbBeginInternalEdit(aForce: Boolean): Boolean; -begin - Result := wbEditAllowed and (wbAllowInternalEdit or aForce) and not _BlockInternalEdit; - if Result then - Inc(_InternalEditCount); -end; - -procedure wbEndInternalEdit; -begin - Dec(_InternalEditCount); -end; - -function wbIsInternalEdit: Boolean; -begin - Result := _InternalEditCount > 0; -end; - - -var - OnePi : Single = 3.1415927;//(2!) 653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067; - TwoPi : Extended; - -function RoundToEx(const AValue: Extended; const ADigit: TRoundToRange): Extended; -var - LFactor: Extended; -begin - LFactor := IntPower(10, ADigit); - Result := Round(AValue / LFactor) * LFactor; -end; - -function DoSingleSameValue(const A, B: Single): Boolean; -const - SingleResolution : Single = 0.000000499999999999999999999; -begin - Result := Abs(A - B) <= Max(Min(Abs(A), Abs(B)) * SingleResolution, SingleResolution) -end; - -function SingleSameValue(const A, B: Extended): Boolean; -var - sA, sB: Single; -begin - sA := A; - sB := B; - Result := DoSingleSameValue(sA, sB); -end; - -function RadiansNormalize(const aElement: IwbElement; aFloat: Extended): Extended; -begin -// Result := RoundToEx(aFloat, -6); - Result := aFloat; - - if Abs(Result/TwoPi) > 100.0 then - Result := Result - Sign(Result)*TwoPi*Trunc(Abs(Result/TwoPi) - 100.0); - - while Result < 0.0 do - Result := Result + TwoPi; - while Result > TwoPi do - Result := Result - TwoPi; - if SingleSameValue(Result, 0.0) or (Result < 0.0) then - Result := 0.0; - if SingleSameValue(Result, TwoPi) or (Result > TwoPi) then - Result := 0.0; - -// Result := RoundToEx(Result, -6); -end; - -type - TwbNullWaitForm = class(TInterfacedObject, IwbWaitForm) - protected - {--- IwbWaitForm ---} - function GetIsCanceled: Boolean; - - function CreateProgress(const aCaption : string; - const aStatus : string; - aMax : Integer) - : IwbProgress; - end; - - TwbNullProgress = class(TInterfacedObject, IwbProgress) - protected - {--- IwbProgress ---} - procedure UpdateStatus(aPosition: Integer; const aStatus: string); - end; - -{ TwbNullWaitForm } - -function TwbNullWaitForm.CreateProgress(const aCaption, aStatus: string; aMax: Integer): IwbProgress; -begin - Result := TwbNullProgress.Create; -end; - -function TwbNullWaitForm.GetIsCanceled: Boolean; -begin - Result := False; -end; - -{ TwbNullProgress } - -procedure TwbNullProgress.UpdateStatus(aPosition: Integer; const aStatus: string); -begin -end; - -function NullCreateWaitForm(const aCaption : string; - const aMessage : string; - aCanCancel : Boolean; - aShowDelay : Integer = 0; - aUpdateDelay : Integer = 0) - : IwbWaitForm; -begin - Result := TwbNullWaitForm.Create; -end; - -procedure ReportDefs; -var - i: Integer; -begin - for i:= Low(wbRecordDefs) to High(wbRecordDefs) do - wbRecordDefs[i].rdeDef.Report(nil); -end; - -function wbDefToName(const aDef: IwbDef): string; -var - SignatureDef : IwbSignatureDef; - Signature : TwbSignature; - NamedDef : IwbNamedDef; - i : Integer; -begin - if Supports(aDef, IwbSignatureDef, SignatureDef) then begin - Signature := SignatureDef.DefaultSignature; - if Signature[0]=#0 then - Result := '$(00)'+Signature[1]+Signature[2]+Signature[3] + ' - ' + SignatureDef.Name - else - Result := Signature + ' - ' + SignatureDef.Name; - end else if Supports(aDef, IwbNamedDef, NamedDef) then begin - Result := NamedDef.Name; - end else if Assigned(aDef) then begin - Result := '<'+GetEnumName(TypeInfo(TwbDefType), Ord(aDef.DefType))+'>'; - end else - Result := ''; - for i := Length(Result) downto 1 do - if Result[i]<' ' then begin - Insert('$('+IntToHex(Ord(Result[i]), 2)+')', Result, i); - Delete(Result, i + 5, 1); - end; -end; - -function wbDefsToPath(const aDefs: TwbDefPath): string; -var - i: Integer; -begin - Result := ''; - for i := Low(aDefs) to High(aDefs) do begin - Result := Result + wbDefToName(aDefs[i].Def) + ' \ '; - if aDefs[i].Index >= 0 then - Result := Result + '['+IntToStr(aDefs[i].Index)+'] '; - end; -end; -function wbIsInGridCell(const aPosition: TwbVector; const aGridCell: TwbGridCell): Boolean; -var - GridCell : TwbGridCell; -begin - GridCell := wbPositionToGridCell(aPosition); - Result := (GridCell.x = aGridCell.x) and (GridCell.y = aGridCell.y); -end; - -function wbPositionToGridCell(const aPosition: TwbVector): TwbGridCell; -begin - Result.x := Trunc(aPosition.x / 4096); - if aPosition.x < 0 then - Dec(Result.x); - Result.y := Trunc(aPosition.y / 4096); - if aPosition.y < 0 then - Dec(Result.y); -end; - -function wbSubBlockFromGridCell(const aGridCell: TwbGridCell): TwbGridCell; -begin - Result.x := aGridCell.x div 8; - if (aGridCell.x < 0) and ((aGridCell.x mod 8) <> 0) then - Dec(Result.x); - Result.y := aGridCell.y div 8; - if (aGridCell.y < 0) and ((aGridCell.y mod 8) <> 0) then - Dec(Result.y); -end; - -function wbBlockFromSubBlock(const aSubBlock: TwbGridCell): TwbGridCell; -begin - Result.x := aSubBlock.x div 4; - if (aSubBlock.x < 0) and ((aSubBlock.x mod 4) <> 0) then - Dec(Result.x); - Result.y := aSubBlock.y div 4; - if (aSubBlock.y < 0) and ((aSubBlock.y mod 4) <> 0) then - Dec(Result.y); -end; - -function wbGridCellToGroupLabel(const aGridCell: TwbGridCell): Cardinal; -var - x, y: Smallint; - xx,yy: Word; -begin - x := aGridCell.x; - y := aGridCell.y; - xx := PWord(@x)^; - yy := PWord(@y)^; - Result := Cardinal(yy) or (Cardinal(xx) shl 16); -end; - -function wbGetFormID(const aElement: IwbElement): Cardinal; -begin - if Assigned(wbGetFormIDCallback) then - Result := wbGetFormIDCallback(aElement) - else - Result := 0; -end; - -function ConflictAllToColor(aConflictAll: TConflictAll): TColor; -begin - Result := wbColorConflictAll[aConflictAll]; -end; - -function ConflictThisToColor(aConflictThis: TConflictThis): TColor; -begin - Result := wbColorConflictThis[aConflictThis]; -end; - -procedure wbAddGroupOrder(const aSignature: TwbSignature); -begin - if not Assigned(wbGroupOrder) then - wbGroupOrder := TwbFastStringListCS.CreateSorted; - wbGroupOrder.AddObject(aSignature, Pointer(wbGroupOrder.Count)); -end; - -function wbGetGroupOrder(const aSignature: TwbSignature): Integer; -begin - if Assigned(wbGroupOrder) then begin - Result := wbGroupOrder.IndexOf(aSignature); - if Result >= 0 then - Result := Integer(wbGroupOrder.Objects[Result]); - end else - Result := -1; -end; - -function CompareElementsFormIDAndLoadOrder(Item1, Item2: Pointer): Integer; -var - MainRecord1, MainRecord2: IwbMainRecord; -begin - if Item1 = Item2 then begin - Result := 0; - Exit; - end; - - MainRecord1 := IwbElement(Item1) as IwbMainRecord; - MainRecord2 := IwbElement(Item2) as IwbMainRecord; - - Result := CmpW32( - MainRecord1.LoadOrderFormID, - MainRecord2.LoadOrderFormID); - if Result = 0 then - Result := CmpI32( - MainRecord1._File.LoadOrder, - MainRecord2._File.LoadOrder); -end; - -function wbFlagsList(aFlags: array of const; aDeleted : Boolean = True; aUnknowns: Boolean = False): TDynStrings; -var - e: IwbEnumDef; - i: integer; - s: string; -begin - e := wbEnum([], aFlags); - SetLength(Result, 32); - for i := 0 to 31 do - if i = 12 then - Result[i] := 'Ignored' - else if aDeleted and (i = 5) then - Result[i] := 'Deleted' - else begin - s := e.ToString(i, nil); - if Pos('<', s) <> 1 then - Result[i] := s - else if aUnknowns then - Result[i] := 'Unknown ' + IntToStr(i); - end -end; - -type - TwbDef = class; - - IwbDefInternal = interface(IwbDef) - ['{8EBA62A9-AF6B-4377-B52C-A1CEBF5B3ED6}'] - function SetParent(const aParent: TwbDef; aForceDuplicate: Boolean): IwbDef; - end; - - TwbDefClass = class of TwbDef; - TwbDef = class(TInterfacedObject, IwbDef, IwbDefInternal) - private - defSource : IwbDef; - defParent : TwbDef; - - defPriority : TwbConflictPriority; - defGetCP : TwbGetConflictPriority; - defRequired : Boolean; - - defUsed : Boolean; - defReported : Boolean; - defPossiblyRequired : Boolean; - defNotRequired : Boolean; - - IsUnknown : Boolean; - IsUnknownChecked : Boolean; - UnknownValues : TStringList; - protected - constructor Clone(const aSource: TwbDef); virtual; - constructor Create(aPriority: TwbConflictPriority; aRequired: Boolean; aGetCP: TwbGetConflictPriority); - - {---IwbDef---} - function GetDefType: TwbDefType; virtual; abstract; - function GetDefTypeName: string; virtual; abstract; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; virtual; - function Assign(const aTarget: IwbElement; aIndex: Integer; const aSource: IwbElement; aOnlySK: Boolean): IwbElement; virtual; - function GetDefID: Cardinal; - function Equals(const aDef: IwbDef): Boolean; reintroduce; virtual; - function GetConflictPriority(const aElement: IwbElement): TwbConflictPriority; virtual; - function GetConflictPriorityCanChange: Boolean; virtual; - function GetRequired: Boolean; - function CanContainFormIDs: Boolean; virtual; - function GetDontShow(const aElement: IwbElement): Boolean; virtual; - function GetHasDontShow: Boolean; virtual; - function GetRoot: IwbDef; - function GetParent: IwbDef; - - procedure Report(const aParents: TwbDefPath); virtual; - procedure Used(const aElement: IwbElement; const s: string); - procedure PossiblyRequired; - procedure NotRequired; - function IsNotRequired: Boolean; - function GetNoReach: Boolean; virtual; - - {--- IwbDefInternal ---} - function SetParent(const aParent: TwbDef; aForceDuplicate: Boolean): IwbDef; virtual; - procedure ParentSet; virtual; - - function Duplicate: TwbDef; - end; - - TwbNamedDef = class(TwbDef, IwbNamedDef) - private - noName : string; - noAfterLoad : TwbAfterLoadCallback; - noAfterSet : TwbAfterSetCallback; - noDontShow : TwbDontShowCallback; - noTerminator : Boolean; - noUnused : Boolean; - noTreeHead : Boolean; - noTreeBranch : Boolean; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority; - aTerminator : Boolean); - {--- IwbDef ---} - function GetDontShow(const aElement: IwbElement): Boolean; override; - function GetHasDontShow: Boolean; override; - - {--- IwbDefInternal ---} - procedure ParentSet; override; - - {---IwbNamedDef---} - function GetName: string; - function GetPath: string; - procedure AfterLoad(const aElement: IwbElement); virtual; - procedure AfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); - function GetTreeHead: Boolean; // Is the element expected to be a "header record" in the tree navigator - procedure SetTreeHead(aValue: Boolean); // Make the element a "header record" in the tree navigator; - function GetTreeBranch: Boolean; // Is the element included in a "leaf" expected to be displayed in the view pane - procedure SetTreeBranch(aValue: Boolean); // Make the element included in a "leaf" visible in the tree navigator; - end; - - TwbSignatureDef = class(TwbNamedDef, IwbSignatureDef) - private - soSignatures : TwbSignatures; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aSignature : TwbSignature; - const aName : string; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority); overload; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aSignatures : array of TwbSignature; - const aName : string; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority); overload; - - {---IwbSignatureDef---} - function GetDefaultSignature: TwbSignature; - - function GetSignatures(const aIndex: Integer): TwbSignature; - function GetSignatureCount: Integer; - - function CanHandle(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; virtual; - end; - - TwbRecordDef = class(TwbSignatureDef, IwbRecordDef) - private - recRecordFlags : IwbIntegerDefFormater; - recRecordHeaderStruct : IwbStructDef; - recMembers : array of IwbRecordMemberDef; - recSignatures : TStringList; - recAllowUnordered : Boolean; - recAddInfoCallback : TwbAddInfoCallback; - recCanContainFormIDs : Boolean; - recQuickInitLimit : Integer; - recContainsEditorID : Boolean; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aSignature : TwbSignature; - const aName : string; - const aRecordFlags : IwbIntegerDefFormater; - const aMembers : array of IwbRecordMemberDef; - aAllowUnordered : Boolean; - aAddInfoCallback : TwbAddInfoCallback; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback); - destructor Destroy; override; - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - procedure Report(const aParents: TwbDefPath); override; - - {---IwbRecordDef---} - function ContainsMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; - function GetMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : IwbRecordMemberDef; - function GetMemberIndexFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Integer; - function AllowUnordered: Boolean; - function AdditionalInfoFor(const aMainRecord: IwbMainRecord): string; - - function GetMember(aIndex: Integer): IwbRecordMemberDef; - function GetMemberCount: Integer; - function CanContainFormIDs: Boolean; override; - function GetSkipSignature(const aSignature: TwbSignature): Boolean; virtual; - function GetQuickInitLimit: Integer; - function GetContainsEditorID: Boolean; - function GetRecordHeaderStruct: IwbStructDef; - - procedure AfterLoad(const aElement: IwbElement); override; - end; - - TwbSubRecordDef = class(TwbSignatureDef, IwbRecordMemberDef, IwbSubRecordDef) - private - srValue : IwbValueDef; - srSizeMatch : Boolean; - - srHasUnusedData: Boolean; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aSignature : TwbSignature; - const aName : string; - const aValue : IwbValueDef; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aSizeMatch : Boolean; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority); overload; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aSignatures : array of TwbSignature; - const aName : string; - const aValue : IwbValueDef; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aSizeMatch : Boolean; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority); overload; - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - procedure Report(const aParents: TwbDefPath); override; - - {---IwbSubRecordDef---} - function GetValue: IwbValueDef; - function CanContainFormIDs: Boolean; override; - procedure HasUnusedData; - function CanHandle(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; override; - end; - - TwbSubRecordArrayDef = class(TwbNamedDef, IwbRecordMemberDef, IwbSubRecordArrayDef) - private - sraElement : IwbRecordMemberDef; - sraSorted : Boolean; - sraIsSorted : TwbIsSortedCallback; - public - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; aRequired: Boolean; - const aName : string; - const aElement : IwbRecordMemberDef; - aSorted : Boolean; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aIsSorted : TwbIsSortedCallback; - aGetCP : TwbGetConflictPriority); - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function CanContainFormIDs: Boolean; override; - procedure Report(const aParents: TwbDefPath); override; - - {---IwbNamedDef---} - procedure AfterLoad(const aElement: IwbElement); override; - - {---IwbSignatureDef---} - function GetDefaultSignature: TwbSignature; - - function GetSignatures(const aIndex: Integer): TwbSignature; - function GetSignatureCount: Integer; - - function CanHandle(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; virtual; - - {---IwbSubRecordArrayDef---} - function GetElement: IwbRecordMemberDef; - function GetSorted(const aContainer: IwbContainer): Boolean; - end; - - TwbSubRecordStructDef = class(TwbNamedDef, IwbRecordMemberDef, IwbSubRecordStructDef, IwbRecordDef) - private - srsMembers : array of IwbRecordMemberDef; - srsSignatures : TStringList; - srsSkipSignatures : TStringList; - srsCanContainFormIDs : Boolean; - srsAllowUnordered : Boolean; - public - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aDontShow : TwbDontShowCallback; - aAllowUnordered : Boolean; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aGetCP : TwbGetConflictPriority); - destructor Destroy; override; - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function CanContainFormIDs: Boolean; override; - procedure Report(const aParents: TwbDefPath); override; - - {---IwbNamedDef---} - procedure AfterLoad(const aElement: IwbElement); override; - - {---IwbSignatureDef---} - function GetDefaultSignature: TwbSignature; - - function GetSignatures(const aIndex: Integer): TwbSignature; - function GetSignatureCount: Integer; - - function CanHandle(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; virtual; - - {---IwbRecordDef---} - function ContainsMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; - function GetMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : IwbRecordMemberDef; - function GetMemberIndexFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Integer; - function AllowUnordered: Boolean; - function AdditionalInfoFor(const aMainRecord: IwbMainRecord): string; - - function GetMember(aIndex: Integer): IwbRecordMemberDef; - function GetMemberCount: Integer; - function GetSkipSignature(const aSignature: TwbSignature): Boolean; virtual; - function GetQuickInitLimit: Integer; virtual; - function GetContainsEditorID: Boolean; - function GetRecordHeaderStruct: IwbStructDef; - end; - - TwbSubRecordUnionDef = class(TwbNamedDef, IwbRecordMemberDef, IwbSubRecordUnionDef, IwbRecordDef) - private - sruMembers : array of IwbRecordMemberDef; - sruSignatures : TStringList; - sruSkipSignatures : TStringList; - sruCanContainFormIDs : Boolean; - public - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority); - destructor Destroy; override; - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function CanContainFormIDs: Boolean; override; - procedure Report(const aParents: TwbDefPath); override; - - {---IwbSignatureDef---} - function GetDefaultSignature: TwbSignature; - - function GetSignatures(const aIndex: Integer): TwbSignature; - function GetSignatureCount: Integer; - - function CanHandle(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; virtual; - - {---IwbRecordDef---} - function ContainsMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; - function GetMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : IwbRecordMemberDef; - function GetMemberIndexFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Integer; - function AllowUnordered: Boolean; - function AdditionalInfoFor(const aMainRecord: IwbMainRecord): string; - - function GetMember(aIndex: Integer): IwbRecordMemberDef; - function GetMemberCount: Integer; - function GetSkipSignature(const aSignature: TwbSignature): Boolean; virtual; - function GetQuickInitLimit: Integer; virtual; - function GetContainsEditorID: Boolean; - function GetRecordHeaderStruct: IwbStructDef; - end; - - - TwbSubRecordStructSKDef = class(TwbSubRecordStructDef, IwbHasSortKeyDef) - private - srsSortKey : array of Integer; - srsExSortKey : array of Integer; - srsMemberInSK : array of Boolean; - public - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - const aSortKey : array of Integer; - const aExSortKey : array of Integer; - aDontShow : TwbDontShowCallback; - aAllowUnordered : Boolean; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aGetCP : TwbGetConflictPriority); - - {---IwbHasSortKeyDef---} - function GetSortKey(aIndex: Integer; aExtended: Boolean): Integer; - function GetSortKeyCount(aExtended: Boolean): Integer; - function IsInSK(aIndex: Integer): Boolean; - end; - - TwbValueDefState = ( - vdsIsVariableSize, - vdsIsVariableSizeChecked - ); - TwbValueDefStates = set of TwbValueDefState; - - TwbValueDef = class(TwbNamedDef, IwbValueDef) - protected - vdStates: TwbValueDefStates; - {---IwbValueDef---} - function ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; reintroduce; virtual; abstract; - function ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; virtual; - function Check(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; virtual; - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; virtual; abstract; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; virtual; abstract; - function GetLinksTo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): IwbElement; virtual; - procedure BuildRef(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement); virtual; - function GetIsVariableSize: Boolean; - function GetIsVariableSizeInternal: Boolean; virtual; - function GetCanBeZeroSize: Boolean; virtual; - function ToEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; virtual; - procedure FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); virtual; - function ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; virtual; - procedure FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); virtual; - function GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; virtual; - function GetEditType(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): TwbEditType; virtual; - function GetEditInfo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; virtual; - function SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; virtual; - function GetElementMap: TDynCardinalArray; virtual; - - procedure MasterCountUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aOld, aNew: Byte); virtual; - procedure MasterIndicesUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aOld, aNew: TBytes); virtual; - procedure FindUsedMasters(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aMasters: PwbUsedMasters); virtual; - function CompareExchangeFormID(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aOldFormID: Cardinal; aNewFormID: Cardinal): Boolean; virtual; - end; - - TwbUnionDef = class(TwbValueDef, IwbUnionDef) - protected {private} - udDecider: TwbUnionDecider; - udMembers: array of IwbValueDef; - ubCanContainFormIDs: Boolean; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aDecider : TwbUnionDecider; - const aMembers : array of IwbValueDef; - aDontShow : TwbDontShowCallback; - aAfterSet : TwbAfterSetCallback; - aGetCP : TwbGetConflictPriority); - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function CanContainFormIDs: Boolean; override; - procedure Report(const aParents: TwbDefPath); override; - - {---IwbValueDef---} - function ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; override; - function Check(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetLinksTo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): IwbElement; override; - procedure BuildRef(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement); override; - function GetIsVariableSizeInternal: Boolean; override; - function ToEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - procedure FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); override; - function ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; override; - procedure FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); override; - function GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - function GetEditType(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): TwbEditType; override; - function GetEditInfo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - - {---IwbUnionDef---} - function Decide(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): IwbValueDef; - function GetMember(aIndex: Integer): IwbValueDef; - function GetMemberCount: Integer; - end; - - TwbStringTransformType = ( - ttToString, - ttToSortKey, - ttToEditValue, - ttFromEditValue, - ttToNativeValue, - ttFromNativeValue - ); - - TwbStringDef = class(TwbValueDef, IwbStringDef) - protected - sdSize: Integer; - sdForward: boolean; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aSize : Integer; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority; - aTerminator : Boolean; - aForward : boolean = false); virtual; - function ToStringNative(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): AnsiString; virtual; - function ToStringTransform(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aTransformType: TwbStringTransformType): string; - - procedure FromStringNative(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: AnsiString); virtual; - procedure FromStringTransform(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string; aTransformType: TwbStringTransformType); - - function TransformString(const s: AnsiString; aTransformType: TwbStringTransformType; const aElement: IwbElement): AnsiString; virtual; - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function CanContainFormIDs: Boolean; override; - - {---IwbValueDef---} - function ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; override; - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetIsVariableSizeInternal: Boolean; override; - function ToEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - procedure FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); override; - function ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; override; - procedure FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); override; - function GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - function SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - - {---IwbStringDef---} - function GetStringSize: Integer; - end; - - TwbStringScriptDef = class(TwbStringDef) - protected - function TransformString(const s: AnsiString; aTransformType: TwbStringTransformType; const aElement: IwbElement): AnsiString; override; - end; - - TwbStringLCDef = class(TwbStringDef) - protected - function TransformString(const s: AnsiString; aTransformType: TwbStringTransformType; const aElement: IwbElement): AnsiString; override; - end; - - TwbStringKCDef = class(TwbStringDef) // Keep Case - protected - function ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; override; - end; - - TwbStringMgefCodeDef = class(TwbStringDef) - protected - function TransformString(const s: AnsiString; aTransformType: TwbStringTransformType; const aElement: IwbElement): AnsiString; override; - - {---IwbDef---} - function CanContainFormIDs: Boolean; override; - - {---IwbValueDef---} - function GetLinksTo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): IwbElement; override; - procedure BuildRef(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement); override; - - procedure MasterCountUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aOld, aNew: Byte); override; - procedure MasterIndicesUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aOld, aNew: TBytes); override; - procedure FindUsedMasters(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aMasters: PwbUsedMasters); override; - function SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - end; - - TwbLStringDef = class(TwbStringDef) - protected - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function ToStringNative(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): AnsiString; override; - procedure FromStringNative(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: AnsiString); override; - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - end; - - TwbLStringKCDef = class(TwbLStringDef) - protected - function ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; override; - end; - - TwbLenStringDef = class(TwbValueDef, IwbLenStringDef) - protected - Prefix: Integer; - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aPrefix : integer; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority; - aTerminator : Boolean); - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function CanContainFormIDs: Boolean; override; - - {---IwbValueDef---} - function ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function Check(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetIsVariableSizeInternal: Boolean; override; - function ToEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - procedure FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); override; - function ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; override; - procedure FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); override; - function GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - function SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - - function GetPrefixLen: Integer; - function GetPrefixOffset: Integer; - function GetPrefixValue(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; - procedure SetPrefixValue(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement; aValue: Cardinal); - end; - - TwbByteArrayDef = class(TwbValueDef, IwbByteArrayDef) - protected {private} - badSize : Int64; - - FoundFormIDAtOffSet : array of Integer; - NotFoundFormIDAtOffSet : array of Integer; - SignaturesAtOffSet : array of TStringList; - FormIDsAtOffSetFoundIn : array of TStringList; - - FoundFloatAtOffSet : array of Integer; - NotFoundFloatAtOffSet : array of Integer; - FloatsAtOffSet : array of TStringList; - - FoundString : Integer; - NotFoundString : Integer; - Strings : TStringList; - -//------------------------------------------------------------------------------ -// Added LString Routine -//------------------------------------------------------------------------------ - FoundLString : Integer; - NotFoundLString : Integer; - - IsEmpty : Integer; - IsNotEmpty : Integer; - - badCountCallback : TwbCountCallBack; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aSize : Int64; - aDontShow : TwbDontShowCallback; - aCountCallback : TwbCountCallback; - aGetCP : TwbGetConflictPriority; - aTerminator : Boolean); - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function CanContainFormIDs: Boolean; override; - - procedure Report(const aParents: TwbDefPath); override; - - {---IwbValueDef---} - function ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetIsVariableSizeInternal: Boolean; override; - function ToEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - procedure FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); override; - function ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; override; - procedure FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); override; - function GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - function SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - end; - - TwbEmptyDef = class(TwbValueDef, IwbEmptyDef) - protected {private} - edSorted: Boolean; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aAfterLoad : TwbAfterLoadCallback; aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aSorted : Boolean; - aGetCP : TwbGetConflictPriority); - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanContainFormIDs: Boolean; override; - - {---IwbValueDef---} - function ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; override; - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetCanBeZeroSize: Boolean; override; - procedure FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); override; - function GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - - {--- IwbEmptyDef ---} - function GetSorted: Boolean; - end; - - TwbIntegerDef = class(TwbValueDef, IwbIntegerDef, IwbInternalIntegerDef) - private - inType : TwbIntType; - inFormater : IwbIntegerDefFormater; - inDefault : Int64; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aIntType : TwbIntType; - const aFormater : IwbIntegerDefFormater; - aDontShow : TwbDontShowCallback; - aAfterSet : TwbAfterSetCallback; - aDefault : Int64; - aGetCP : TwbGetConflictPriority; - aTerminator : Boolean); - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function Assign(const aTarget: IwbElement; aIndex: Integer; const aSource: IwbElement; aOnlySK: Boolean): IwbElement; override; - function CanContainFormIDs: Boolean; override; - procedure Report(const aParents: TwbDefPath); override; - function GetNoReach: Boolean; override; - - {---IwbValueDef---} - function ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; override; - function Check(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetLinksTo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): IwbElement; override; - procedure BuildRef(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement); override; - function ToEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - procedure FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); override; - function ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; override; - procedure FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); override; - function GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - function GetEditType(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): TwbEditType; override; - function GetEditInfo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - - procedure MasterCountUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aOld, aNew: Byte); override; - procedure MasterIndicesUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aOld, aNew: TBytes); override; - procedure FindUsedMasters(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aMasters: PwbUsedMasters); override; - function CompareExchangeFormID(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aOldFormID: Cardinal; aNewFormID: Cardinal): Boolean; override; - - {---IwbIntegerDef---} - function ToInt(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Int64; - procedure FromInt(aValue: Int64; aBasePtr, aEndPtr: Pointer; const aElement: IwbElement); - function GetFormater(const aElement: IwbElement): IwbIntegerDefFormater; - function GetFormaterCanChange: Boolean; - function GetIntType: TwbIntType; - function GetExpectedLength(aValue: Int64 = 0): Integer; - - {---IwbInternalIntegerDef---} - procedure ReplaceFormater(const aFormater: IwbIntegerDefFormater); - end; - - TwbFloatDef = class(TwbValueDef, IwbFloatDef) - private - fdDefault : Extended; - fdScale : Extended; - fdDigits : Integer; - fdNormalizer : TwbFloatNormalizer; - fdDouble : Boolean; - protected - constructor Clone(const aSource: TwbDef); override; - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function CanContainFormIDs: Boolean; override; - - {---IwbValueDef---} - function ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; override; - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function ToEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - procedure FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); override; - function ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; override; - procedure FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); override; - function GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - function SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; override; - - function ToValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Extended; - public - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aScale : Extended; - aDigits : Integer; - aDontShow : TwbDontShowCallback; - aNormalizer : TwbFloatNormalizer; - aDefault : Extended; - aGetCP : TwbGetConflictPriority; - aDouble : Boolean; - aTerminator : Boolean); - end; - - TwbArrayDef = class(TwbValueDef, IwbArrayDef) - private - arCount : Integer; - arCountCallback : TwbCountCallback; - arElement : IwbValueDef; - arLabels : array of string; - arSorted : Boolean; - arCanAddTo : Boolean; - arTerminated : Boolean; - protected - constructor Clone(const aSource: TwbDef); override; - - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aElement : IwbValueDef; - aCount : Integer; - const aLabels : array of string; - aSorted : Boolean; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority; - aCanAddTo : Boolean; - aTerminator : Boolean; - aTerminated : Boolean); overload; - - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aElement : IwbValueDef; - aCountCallback : TwbCountCallback; - const aLabels : array of string; - aSorted : Boolean; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority; - aCanAddTo : Boolean; - aTerminator : Boolean; - aTerminated : Boolean); overload; - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanContainFormIDs: Boolean; override; - procedure Report(const aParents: TwbDefPath); override; - - {---IwbValueDef---} - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function GetIsVariableSizeInternal: Boolean; override; - function GetCanBeZeroSize: Boolean; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - - {---IwbArrayDef---} - function GetElement: IwbValueDef; - function GetCount: Integer; - function GetElementLabel(aIndex: Integer): string; - function GetSorted: Boolean; - function GetCanAddTo: Boolean; - function GetCountCallBack: TwbCountCallback; - function GetPrefixSize(aBasePtr: Pointer): Integer; - function GetPrefixLength(aBasePtr: Pointer): Integer; - function GetPrefixCount(aBasePtr: Pointer): Cardinal; - procedure SetPrefixCount(aBasePtr: Pointer; aValue: Cardinal); - end; - - TwbStructDef = class(TwbValueDef, IwbStructDef) - private - stMembers : array of IwbValueDef; - stSortKey : array of Integer; - stExSortKey : array of Integer; - stElementMap : TDynCardinalArray; - stCanContainFormIDs : Boolean; - stOptionalFromElement : Integer; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aMembers : array of IwbValueDef; - const aSortKey : array of Integer; - const aExSortKey : array of Integer; - {$IFDEF WIN32} - const aElementMap : array of Cardinal; - {$ENDIF WIN32} - {$IFDEF WIN64} - const aElementMap : array of UInt64; - {$ENDIF WIN64} - aOptionalFromElement : Integer; - aDontShow : TwbDontShowCallback; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aGetCP : TwbGetConflictPriority); - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanContainFormIDs: Boolean; override; - procedure Report(const aParents: TwbDefPath); override; - - {---IwbValueDef---} - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; override; - function GetIsVariableSizeInternal: Boolean; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function GetElementMap: TDynCardinalArray; override; - - {---IwbStructDef---} - function GetMemberCount: Integer; - function GetMember(aIndex: Integer): IwbValueDef; - function GetMemberByName(const aName: string): IwbValueDef; - function GetOptionalFromElement: Integer; - end; - - TwbStructCDef = class(TwbStructDef, IwbStructCDef) - private - scSizeCallback : TwbSizeCallback; - scGetChapterType : TwbGetChapterTypeCallback; - scGetChapterTypeName : TwbGetChapterTypeNameCallback; - scGetChapterName : TwbGetChapterNameCallback; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aMembers : array of IwbValueDef; - const aSortKey : array of Integer; - const aExSortKey : array of Integer; - aOptionalFromElement : Integer; - aDontShow : TwbDontShowCallback; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aSizeCallBack : TwbSizeCallback; - aGetChapterType : TwbGetChapterTypeCallback; - aGetChapterTypeName : TwbGetChapterTypeNameCallback; - aGetChapterName : TwbGetChapterNameCallback; - aGetCP : TwbGetConflictPriority); - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - public - function GetSizing(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement;var CompressedSize: Integer): Cardinal; virtual; - function GetChapterType(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; virtual; - function GetChapterTypeName(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): String; virtual; - function GetChapterName(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): String; virtual; - end; - - TwbStructZDef = class(TwbStructCDef, IwbStructZDef) - end; - - TwbStructLZDef = class(TwbStructCDef, IwbStructLZDef) - end; - - TwbIntegerDefFormater = class(TwbDef, IwbIntegerDefFormater) - protected - constructor Clone(const aSource: TwbDef); override; - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - - {---IwbIntegerDefFormater---} - function ToString(aInt: Int64; const aElement: IwbElement): string; reintroduce; virtual; abstract; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; virtual; abstract; - function Check(aInt: Int64; const aElement: IwbElement): string; virtual; - procedure BuildRef(aInt: Int64; const aElement: IwbElement); virtual; - - function GetEditType(aInt: Int64; const aElement: IwbElement): TwbEditType; virtual; - function GetEditInfo(aInt: Int64; const aElement: IwbElement): string; virtual; - - function ToEditValue(aInt: Int64; const aElement: IwbElement): string; virtual; - function FromEditValue(const aValue: string; const aElement: IwbElement): Int64; virtual; - function GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; virtual; - function GetLinksTo(aInt: Int64; const aElement: IwbElement): IwbElement; virtual; - - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - - function MasterCountUpdated(aInt: Int64; aOld, aNew: Byte; const aElement: IwbElement): Int64; virtual; - function MasterIndicesUpdated(aInt: Int64; const aOld, aNew: TBytes; const aElement: IwbElement): Int64; virtual; - procedure FindUsedMasters(aInt: Int64; aMasters: PwbUsedMasters; const aElement: IwbElement); virtual; - function CompareExchangeFormID(var aInt: Int64; aOldFormID: Cardinal; aNewFormID: Cardinal; const aElement: IwbElement): Boolean; virtual; - - function GetRequiresKey: Boolean; virtual; - end; - - TwbIntegerDefFormaterUnion = class(TwbIntegerDefFormater, IwbIntegerDefFormaterUnion) - private - idfuDecider: TwbIntegerDefFormaterUnionDecider; - idfuMembers: array of IwbIntegerDefFormater; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - aGetCP : TwbGetConflictPriority; - aDecider : TwbIntegerDefFormaterUnionDecider; - const aMembers : array of IwbIntegerDefFormater); - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function CanContainFormIDs: Boolean; override; - procedure Report(const aParents: TwbDefPath); override; - function GetNoReach: Boolean; override; - - {---IwbIntegerDefFormater---} - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; override; - function Check(aInt: Int64; const aElement: IwbElement): string; override; - procedure BuildRef(aInt: Int64; const aElement: IwbElement); override; - - function GetEditType(aInt: Int64; const aElement: IwbElement): TwbEditType; override; - function GetEditInfo(aInt: Int64; const aElement: IwbElement): string; override; - - function ToEditValue(aInt: Int64; const aElement: IwbElement): string; override; - function FromEditValue(const aValue: string; const aElement: IwbElement): Int64; override; - function GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; override; - function GetLinksTo(aInt: Int64; const aElement: IwbElement): IwbElement; override; - - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - - function MasterCountUpdated(aInt: Int64; aOld, aNew: Byte; const aElement: IwbElement): Int64; override; - function MasterIndicesUpdated(aInt: Int64; const aOld, aNew: TBytes; const aElement: IwbElement): Int64; override; - procedure FindUsedMasters(aInt: Int64; aMasters: PwbUsedMasters; const aElement: IwbElement); override; - function CompareExchangeFormID(var aInt: Int64; aOldFormID: Cardinal; aNewFormID: Cardinal; const aElement: IwbElement): Boolean; override; - - {---IwbIntegerDefFormaterUnion---} - function Decide(const aElement: IwbElement): IwbIntegerDefFormater; - - function GetMember(aIndex: Integer): IwbIntegerDefFormater; - function GetMemberCount: Integer; - - property Members[aIndex: Integer]: IwbIntegerDefFormater read GetMember; - property MemberCount: Integer read GetMemberCount; - end; - - TwbDumpIntegerDefFormater = class(TwbIntegerDefFormater, IwbDumpIntegerDefFormater) - protected - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; override; - end; - - TwbFormID = class(TwbIntegerDefFormater, IwbFormID) - protected - FoundSignatures: TStringList; - FoundNotAllowedReferences: TStringList; - NotResolved: TStringList; - - constructor Clone(const aSource: TwbDef); override; - - function IsValid(const aSignature: TwbSignature): Boolean; virtual; - function IsValidFlst(const aSignature: TwbSignature): Boolean; virtual; - function CheckFlst(const aMainRecord: IwbMainRecord): Boolean; virtual; - function IsValidMainRecord(const aMainRecord: IwbMainRecord): Boolean; virtual; - - function FindRecordForAVCode(aInt: Int64; const aElement: IwbElement): IwbMainRecord; - - {---IwbDef---} - procedure Report(const aParents: TwbDefPath); override; - - {---IwbIntegerDefFormater---} - function Check(aInt: Int64; const aElement: IwbElement): string; override; - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; override; - procedure BuildRef(aInt: Int64; const aElement: IwbElement); override; - - function GetEditType(aInt: Int64; const aElement: IwbElement): TwbEditType; override; - function GetEditInfo(aInt: Int64; const aElement: IwbElement): string; override; - - function ToEditValue(aInt: Int64; const aElement: IwbElement): string; override; - function FromEditValue(const aValue: string; const aElement: IwbElement): Int64; override; - function GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; override; - function GetLinksTo(aInt: Int64; const aElement: IwbElement): IwbElement; override; - - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function CanContainFormIDs: Boolean; override; - - function MasterCountUpdated(aInt: Int64; aOld, aNew: Byte; const aElement: IwbElement): Int64; override; - function MasterIndicesUpdated(aInt: Int64; const aOld, aNew: TBytes; const aElement: IwbElement): Int64; override; - procedure FindUsedMasters(aInt: Int64; aMasters: PwbUsedMasters; const aElement: IwbElement); override; - function CompareExchangeFormID(var aInt: Int64; aOldFormID: Cardinal; aNewFormID: Cardinal; const aElement: IwbElement): Boolean; override; - - {---IwbFormID---} - function GetMainRecord(aInt: Int64; const aElement: IwbElement): IwbMainRecord; virtual; - end; - - TwbRefID = class(TwbFormID, IwbRefID) - protected - {---IwbIntegerDefFormater---} - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - procedure BuildRef(aInt: Int64; const aElement: IwbElement); override; - end; - - TwbFormIDChecked = class(TwbFormID, IwbFormIDChecked) - protected {private} - fidcValidRefsArr : array of TwbSignature; - fidcValidRefs : TStringList; - fidcValidFlstRefsArr : array of TwbSignature; - fidcValidFlstRefs : TStringList; - fidcPersistent : Boolean; - fidcNoReach : Boolean; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(const aValidRefs : array of TwbSignature; - const aValidFlstRefs : array of TwbSignature; - aPersistent : Boolean; - aNoReach : Boolean = False); - destructor Destroy; override; - - function IsValid(const aSignature: TwbSignature): Boolean; override; - function IsValidFlst(const aSignature: TwbSignature): Boolean; override; - function CheckFlst(const aMainRecord: IwbMainRecord): Boolean; override; - function IsValidMainRecord(const aMainRecord: IwbMainRecord): Boolean; override; - - {---IwbDef---} - procedure Report(const aParents: TwbDefPath); override; - function GetNoReach: Boolean; override; - - {---IwbIntegerDefFormater---} - function Check(aInt: Int64; const aElement: IwbElement): string; override; - function FromEditValue(const aValue: string; const aElement: IwbElement): Int64; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - - {---IwbFormIDChecked---} - function GetSignature(aIndex: Integer): TwbSignature; - function GetSignatureCount: Integer; - end; - - TwbChar4 = class(TwbIntegerDefFormater, IwbChar4) - protected - constructor Clone(const aSource: TwbDef); override; - - {---IwbIntegerDefFormater---} - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; override; - procedure BuildRef(aInt: Int64; const aElement: IwbElement); override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function GetLinksTo(aInt: Int64; const aElement: IwbElement): IwbElement; override; - - function ToEditValue(aInt: Int64; const aElement: IwbElement): string; override; - function FromEditValue(const aValue: string; const aElement: IwbElement): Int64; override; - function GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; override; - function CanContainFormIDs: Boolean; override; - end; - - TwbStr4 = class(TwbIntegerDefFormater, IwbStr4) - protected - constructor Clone(const aSource: TwbDef); override; - - {---IwbIntegerDefFormater---} - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - - function ToEditValue(aInt: Int64; const aElement: IwbElement): string; override; - function FromEditValue(const aValue: string; const aElement: IwbElement): Int64; override; - function GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; override; - function CanContainFormIDs: Boolean; override; - end; - - TwbFlagsDef = class(TwbIntegerDefFormater, IwbFlagsDef) - private - flgBaseFlagsDef : IwbFlagsDef; - flgNames : array of string; - flgDontShows : array of TwbDontShowCallback; - flgHasDontShows : Boolean; - flgUnusedMask : Int64; - flgIgnoreMask : Int64; - flgUnknownIsUnused : Boolean; - flgGetCPs : array of TwbGetConflictPriority; - flgHasGetCPs : Boolean; - flgFlagDefs : array of IwbFlagDef; - - UnknownFlags : array[0..63] of Integer; - HasUnknownFlags : Boolean; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(const aBaseFlagsDef : IwbFlagsDef; - const aNames : array of string; - const aDontShows : array of TwbDontShowCallback; - aUnknownIsUnused : Boolean; - aIgnoreMask : Int64; - const aGetCPs : array of TwbGetConflictPriority); - - {---IwbDef---} - procedure Report(const aParents: TwbDefPath); override; - function GetDefTypeName: string; override; - - {---IwbIntegerDefFormater---} - function Check(aInt: Int64; const aElement: IwbElement): string; override; - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - function Assign(const aTarget: IwbElement; aIndex: Integer; const aSource: IwbElement; aOnlySK: Boolean): IwbElement; override; - function CanContainFormIDs: Boolean; override; - - function GetEditType(aInt: Int64; const aElement: IwbElement): TwbEditType; override; - function GetEditInfo(aInt: Int64; const aElement: IwbElement): string; override; - - function ToEditValue(aInt: Int64; const aElement: IwbElement): string; override; - function FromEditValue(const aValue: string; const aElement: IwbElement): Int64; override; - function GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; override; - - function GetRequiresKey: Boolean; override; - - {---IwbFlagsDef---} - function GetBaseFlagsDef: IwbFlagsDef; - function GetFlag(aIndex: Integer): string; - function GetFlagCount: Integer; - function GetFlagIgnoreConflict(aIndex: Integer): Boolean; - function GetFlagDontShow(const aElement: IwbElement; aIndex: Integer): Boolean; - function GetFlagHasDontShow(aIndex: Integer): Boolean; - procedure FlagGetCP(const aElement: IwbElement; aIndex: Integer; var aCP: TwbConflictPriority); - function GetFlagHasGetCP(aIndex: Integer): Boolean; - function GetFlagDef(aIndex : Integer): IwbFlagDef; - end; - - TwbFlagDef = class(TwbValueDef, IwbFlagDef) - private - fdFlagIndex : Integer; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority; - aTerminator : Boolean; - aFlagIndex : Integer); - - {---IwbDef---} - function GetDefType: TwbDefType; override; - function GetDefTypeName: string; override; - function CanContainFormIDs: Boolean; override; - function GetHasDontShow: Boolean; override; - function GetDontShow(const aElement: IwbElement): Boolean; override; - function GetConflictPriority(const aElement: IwbElement): TwbConflictPriority; override; - function GetConflictPriorityCanChange: Boolean; override; - function GetCanBeZeroSize: Boolean; override; - - {---IwbValueDef---} - function ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; override; - function GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - function GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; override; - - {---IwbFlagDef---} - function GetFlagsDef: IwbFlagsDef; - function GetFlagIndex: Integer; - end; - - PwbSparseName = ^TwbSparseName; - TwbSparseName = record - snIndex : Int64; - snName : string; - end; - - TwbEnumDef = class(TwbIntegerDefFormater, IwbEnumDef) - private - enNames : array of string; - enSparseNames : array of TwbSparseName; - enSparseNamesMap : array of PwbSparseName; - enEditInfo : string; - - UnknownEnums: TStringList; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(const aNames : array of string; - const aSparseNames : array of const); - - function FindSparseName(aSearchIndex: Int64; var Index: Integer): Boolean; - - function CanContainFormIDs: Boolean; override; - - {---IwbDef---} - procedure Report(const aParents: TwbDefPath); override; - function GetDefTypeName: string; override; - - {---IwbIntegerDefFormater---} - function Check(aInt: Int64; const aElement: IwbElement): string; override; - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - - function GetEditType(aInt: Int64; const aElement: IwbElement): TwbEditType; override; - function GetEditInfo(aInt: Int64; const aElement: IwbElement): string; override; - - function ToEditValue(aInt: Int64; const aElement: IwbElement): string; override; - function FromEditValue(const aValue: string; const aElement: IwbElement): Int64; override; - function GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; override; - - {---IwbEnumDef---} - function GetName(aIndex: Integer): string; - function GetNameCount: Integer; - end; - - TwbKey2Data6EnumDef = class(TwbEnumDef, IwbKey2Data6EnumDef) - protected - {---IwbIntegerDefFormater---} - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; override; - end; - - TwbData6Key2EnumDef = class(TwbEnumDef, IwbData6Key2EnumDef) - protected - {---IwbIntegerDefFormater---} - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; override; - end; - - TwbDivDef = class(TwbIntegerDefFormater) - private - ddValue: Integer; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aValue: Integer); - - function CanContainFormIDs: Boolean; override; - - {---IwbIntegerDefFormater---} - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - - function ToEditValue(aInt: Int64; const aElement: IwbElement): string; override; - function FromEditValue(const aValue: string; const aElement: IwbElement): Int64; override; - function GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; override; - end; - - TwbMulDef = class(TwbIntegerDefFormater) - private - mdValue: Integer; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(aValue: Integer); - - function CanContainFormIDs: Boolean; override; - - {---IwbIntegerDefFormater---} - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - - function ToEditValue(aInt: Int64; const aElement: IwbElement): string; override; - function FromEditValue(const aValue: string; const aElement: IwbElement): Int64; override; - function GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; override; - end; - - TwbCallbackDef = class(TwbIntegerDefFormater, IwbCallbackDef) - private - cdToStr: TwbIntToStrCallback; - cdToInt: TwbStrToIntCallback; - protected - constructor Clone(const aSource: TwbDef); override; - constructor Create(const aToStr : TwbIntToStrCallback; - const aToInt : TwbStrToIntCallback); - - function CanContainFormIDs: Boolean; override; - - {---IwbIntegerDefFormater---} - function Check(aInt: Int64; const aElement: IwbElement): string; override; - function ToString(aInt: Int64; const aElement: IwbElement): string; override; - function ToSortKey(aInt: Int64; const aElement: IwbElement): string; override; - function CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; override; - - function GetEditType(aInt: Int64; const aElement: IwbElement): TwbEditType; override; - function GetEditInfo(aInt: Int64; const aElement: IwbElement): string; override; - - function ToEditValue(aInt: Int64; const aElement: IwbElement): string; override; - function FromEditValue(const aValue: string; const aElement: IwbElement): Int64; override; - function GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; override; - - {---IwbCallbackDef---} - function GetCallback: TwbIntToStrCallback; - end; - - -function wbRecord(const aSignature : TwbSignature; - const aName : string; - const aMembers : array of IwbRecordMemberDef; - aAllowUnordered : Boolean = False; - aAddInfoCallback : TwbAddInfoCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil) - : IwbRecordDef; -begin - Result := wbRecord(aSignature, aName, nil, aMembers, aAllowUnordered, aAddInfoCallback, aPriority, aRequired, aAfterLoad, aAfterSet); -end; - -function wbRecord(const aSignature : TwbSignature; - const aName : string; - const aRecordFlags : IwbIntegerDefFormater; - const aMembers : array of IwbRecordMemberDef; - aAllowUnordered : Boolean = False; - aAddInfoCallback : TwbAddInfoCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil) - : IwbRecordDef; -var - Hash : Integer; - Index : Integer; - RDE : PwbRecordDefEntry; - NewIndex : Integer; -begin - Hash := Cardinal(aSignature) mod RecordDefHashMapSize; - Index := Pred(wbRecordDefHashMap[Hash]); - if Index >= 0 then begin - RDE := @wbRecordDefs[Index]; - while Assigned(RDE) do begin - if Cardinal(RDE.rdeSignature) = Cardinal(aSignature) then - raise Exception.CreateFmt('Duplicated record definition for signature %s', [String(aSignature)]); - if RDE.rdeNext >= 0 then - RDE := @wbRecordDefs[RDE.rdeNext] - else - RDE := nil; - end; - end; - - Result := TwbRecordDef.Create(aPriority, aRequired, aSignature, aName, aRecordFlags, aMembers, aAllowUnordered, aAddInfoCallback, aAfterLoad, aAfterSet); - NewIndex := Length(wbRecordDefs); - SetLength(wbRecordDefs, Succ(NewIndex)); - with wbRecordDefs[NewIndex] do begin - rdeDef := Result; - rdeSignature := aSignature; - rdeHash := Hash; - rdeNext := Index; - end; - wbRecordDefHashMap[Hash] := Succ(NewIndex); -end; - -function wbSubRecord(const aSignature : TwbSignature; - const aName : string; - const aValue : IwbValueDef; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aSizeMatch : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; -begin - Result := TwbSubRecordDef.Create(aPriority, aRequired, aSignature, aName, aValue, aAfterLoad, aAfterSet, aSizeMatch, aDontShow, aGetCP); -end; - -function wbSubRecord(const aSignatures : array of TwbSignature; - const aName : string; - const aValue : IwbValueDef; - aAfterLoad : TwbAfterLoadCallback = nil; aAfterSet: TwbAfterSetCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aSizeMatch : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; -begin - Result := TwbSubRecordDef.Create(aPriority, aRequired, aSignatures, aName, aValue, aAfterLoad, aAfterSet, aSizeMatch, aDontShow, aGetCP); -end; - - -function wbString(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbString('', aSize, aPriority), nil, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbString(const aName : string = 'Unknown'; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; -begin - Result := TwbStringDef.Create(aPriority, aRequired, aName, aSize, nil, aAfterSet, aDontShow, aGetCP, False); -end; - -function wbStringForward(const aSignature : TwbSignature; // When the editor can leave chars after the ending #0 - const aName : string = 'Unknown'; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbString(True, '', aSize, aPriority, aRequired, aDontShow, aAfterSet), nil, aAfterSet, aPriority, aRequired, False, aDontShow); -end; - -function wbString( aForward : Boolean = False; - const aName : string = 'Unknown'; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; -begin - Result := TwbStringDef.Create(aPriority, aRequired, aName, aSize, nil, aAfterSet, aDontShow, aGetCP, False, aForward); -end; - -function wbStringT(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbStringT('', aSize, aPriority, aRequired, aDontShow, aAfterSet, aGetCP), nil, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbStringT(const aName : string = 'Unknown'; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; -begin - Result := TwbStringDef.Create(aPriority, aRequired, aName, aSize, nil, aAfterSet, aDontShow, aGetCP, True); -end; - -function wbStringScript(const aSignature : TwbSignature; - const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbStringScript('', aSize, aPriority), nil, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbStringScript(const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; -begin - Result := TwbStringScriptDef.Create(aPriority, aRequired, aName, aSize, nil, aAfterSet, aDontShow, aGetCP, False); -end; - -function wbStringLC(const aSignature : TwbSignature; - const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbStringLC('', aSize, aPriority), nil, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbStringLC(const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; -begin - Result := TwbStringLCDef.Create(aPriority, aRequired, aName, aSize, nil, aAfterSet, aDontShow, aGetCP, False); -end; - -function wbStringKC(const aSignature : TwbSignature; - const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbStringKC('', aSize, aPriority), nil, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbStringKC(const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; -begin - Result := TwbStringKCDef.Create(aPriority, aRequired, aName, aSize, nil, aAfterSet, aDontShow, aGetCP, False); -end; - -function wbLString(const aSignature : TwbSignature; - const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbLString('', aSize, aPriority), nil, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbLString(const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; -begin - Result := TwbLStringDef.Create(aPriority, aRequired, aName, aSize, nil, aAfterSet, aDontShow, aGetCP, False); -end; - -function wbLStringKC(const aSignature : TwbSignature; - const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbLStringKC('', aSize, aPriority), nil, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbLStringKC(const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; -begin - Result := TwbLStringKCDef.Create(aPriority, aRequired, aName, aSize, nil, aAfterSet, aDontShow, aGetCP, False); -end; - -function wbStringMgefCode(const aSignature : TwbSignature; - const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbStringMgefCode('', aSize, aPriority), nil, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbStringMgefCode(const aName : string; - aSize : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStringDef; overload; -begin - Result := TwbStringMgefCodeDef.Create(aPriority, aRequired, aName, aSize, nil, aAfterSet, aDontShow, aGetCP, False); -end; - -function wbLenString(const aSignature : TwbSignature; - const aName : string; - aPrefix : Integer = 4; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbLenString('', aPrefix, aPriority), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbLenString(const aName : string; - aPrefix : Integer = 4; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbLenStringDef; overload; -begin - Result := TwbLenStringDef.Create(aPriority, aRequired, aName, aPrefix, nil, nil, aDontShow, aGetCP, False); -end; - -function wbLenStringT(const aSignature : TwbSignature; - const aName : string; - aPrefix : Integer = 4; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbLenStringT('', aPrefix, aPriority), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbLenStringT(const aName : string; - aPrefix : Integer = 4; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbLenStringDef; overload; -begin - Result := TwbLenStringDef.Create(aPriority, aRequired, aName, aPrefix, nil, nil, aDontShow, aGetCP, True); -end; - -function wbUnion(const aSignature : TwbSignature; - const aName : string; - aDecider : TwbUnionDecider; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbUnion('', aDecider, aMembers, aPriority), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbUnion(const aName : string; - aDecider : TwbUnionDecider; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbUnionDef; overload; -begin - Result := TwbUnionDef.Create(aPriority, aRequired, aName, aDecider, aMembers, aDontShow, aAfterSet, aGetCP); -end; - - -function wbByteArray(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aSize : Int64 = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aSizeMatch : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbByteArray('', aSize, aPriority), nil, nil, aPriority, aRequired, aSizeMatch, aDontShow, aGetCP); -end; - -function wbByteArray(const aName : string = 'Unknown'; - aSize : Int64 = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbByteArrayDef; overload; -begin - Result := TwbByteArrayDef.Create(aPriority, aRequired, aName, aSize, aDontShow, nil, aGetCP, False); -end; - -function wbByteArrayT(const aName : string = 'Unknown'; - aSize : Int64 = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbByteArrayDef; overload; -begin - Result := TwbByteArrayDef.Create(aPriority, aRequired, aName, aSize, aDontShow, nil, aGetCP, True); -end; - -function wbByteArray(const aName : string; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbByteArrayDef; overload; -begin - Result := TwbByteArrayDef.Create(aPriority, aRequired, aName, 0, aDontShow, aCountCallback, aGetCP, False); -end; - -function wbUnknown(const aSignature : TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; -begin - Result := wbByteArray(aSignature, 'Unknown', 0, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbUnknown(aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbByteArrayDef; -begin - Result := wbByteArray('Unknown', 0, aPriority, aRequired, aDontShow, aGetCP); -end; - -function wbInteger(const aSignature : TwbSignature; - const aName : string; - const aIntType : TwbIntType; - const aFormater : IwbIntegerDefFormater = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aMatchSize : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbInteger('', aIntType, aFormater, aPriority, False, nil, nil, aDefault), nil, aAfterSet, aPriority, aRequired, aMatchSize, aDontShow, aGetCP); -end; - -function wbIntegerT(const aSignature : TwbSignature; - const aName : string; - const aIntType : TwbIntType; - const aFormater : IwbIntegerDefFormater = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aMatchSize : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbIntegerT('', aIntType, aFormater, aPriority, False, nil, nil, aDefault), nil, aAfterSet, aPriority, aRequired, aMatchSize, aDontShow, aGetCP); -end; - -function wbInteger(const aName : string; - const aIntType : TwbIntType; - const aFormater : IwbIntegerDefFormater = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; -begin - Result := TwbIntegerDef.Create(aPriority, aRequired, aName, aIntType, aFormater, aDontShow, aAfterSet, aDefault, aGetCP, False); -end; - -function wbIntegerT(const aName : string; - const aIntType : TwbIntType; - const aFormater : IwbIntegerDefFormater = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; -begin - Result := TwbIntegerDef.Create(aPriority, aRequired, aName, aIntType, aFormater, aDontShow, aAfterSet, aDefault, aGetCP, True); -end; - -function wbInteger(const aSignature : TwbSignature; - const aName : string; - const aIntType : TwbIntType; - const aToStr : TwbIntToStrCallback; - const aToInt : TwbStrToIntCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -var - Callback: IwbIntegerDefFormater; -begin - if Assigned(aToStr) then - Callback := wbCallback(aToStr, aToInt); - Result := wbInteger(aSignature, aName, aIntType, Callback, aPriority, aRequired, False, aDontShow, aAfterSet, aDefault); -end; - -function wbIntegerT(const aSignature : TwbSignature; - const aName : string; - const aIntType : TwbIntType; - const aToStr : TwbIntToStrCallback; - const aToInt : TwbStrToIntCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -var - Callback: IwbIntegerDefFormater; -begin - if Assigned(aToStr) then - Callback := wbCallback(aToStr, aToInt); - Result := wbIntegerT(aSignature, aName, aIntType, Callback, aPriority, aRequired, False, aDontShow, aAfterSet, aDefault, aGetCP); -end; - -function wbInteger(const aName : string; - const aIntType : TwbIntType; - const aToStr : TwbIntToStrCallback; - const aToInt : TwbStrToIntCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; -var - Callback: IwbIntegerDefFormater; -begin - if Assigned(aToStr) then - Callback := wbCallback(aToStr, aToInt); - Result := wbInteger(aName, aIntType, Callback, aPriority, aRequired, aDontShow, aAfterSet, aDefault); -end; - -function wbIntegerT(const aName : string; - const aIntType : TwbIntType; - const aToStr : TwbIntToStrCallback; - const aToInt : TwbStrToIntCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDefault : Int64 = 0; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; -var - Callback: IwbIntegerDefFormater; -begin - if Assigned(aToStr) then - Callback := wbCallback(aToStr, aToInt); - Result := wbIntegerT(aName, aIntType, Callback, aPriority, aRequired, aDontShow, aAfterSet, aDefault, aGetCP); -end; - -function wbFloat(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbFloat('', aPriority, False, aScale, aDigits, nil, aNormalizer, aDefault, aGetCP), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbDouble(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbDouble('', aPriority, False, aScale, aDigits, nil, aNormalizer, aDefault), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbFloat(const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; -begin - Result := TwbFloatDef.Create(aPriority, aRequired, aName, nil, nil, aScale, aDigits, aDontShow, aNormalizer, aDefault, aGetCP, False, False); -end; - -function wbDouble(const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; -begin - Result := TwbFloatDef.Create(aPriority, aRequired, aName, nil, nil, aScale, aDigits, aDontShow, aNormalizer, aDefault, aGetCP, True, False); -end; - -function wbFloat(const aName : string; - aPriority : TwbConflictPriority; - aRequired : Boolean; - aDontShow : TwbDontShowCallback; - aAfterSet : TwbAfterSetCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; -begin - Result := TwbFloatDef.Create(aPriority, aRequired, aName, nil, aAfterSet, 1.0, -1, aDontShow, aNormalizer, aDefault, aGetCP, False, False); -end; - -function wbDouble(const aName : string; - aPriority : TwbConflictPriority; - aRequired : Boolean; - aDontShow : TwbDontShowCallback; - aAfterSet : TwbAfterSetCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; -begin - Result := TwbFloatDef.Create(aPriority, aRequired, aName, nil, aAfterSet, 1.0, -1, aDontShow, aNormalizer, aDefault, aGetCP, True, False); -end; - -function wbFloatT(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbFloatT('', aPriority, False, aScale, aDigits, nil, aNormalizer, aDefault), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbDoubleT(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbDoubleT('', aPriority, False, aScale, aDigits, nil, aNormalizer, aDefault), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbFloatT(const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; -begin - Result := TwbFloatDef.Create(aPriority, aRequired, aName, nil, nil, aScale, aDigits, aDontShow, aNormalizer, aDefault, aGetCP, False, True); -end; - -function wbDoubleT(const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aScale : Extended = 1.0; - aDigits : Integer = -1; - aDontShow : TwbDontShowCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; -begin - Result := TwbFloatDef.Create(aPriority, aRequired, aName, nil, nil, aScale, aDigits, aDontShow, aNormalizer, aDefault, aGetCP, True, True); -end; - -function wbFloatT(const aName : string; - aPriority : TwbConflictPriority; - aRequired : Boolean; - aDontShow : TwbDontShowCallback; - aAfterSet : TwbAfterSetCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; -begin - Result := TwbFloatDef.Create(aPriority, aRequired, aName, nil, aAfterSet, 1.0, -1, aDontShow, aNormalizer, aDefault, aGetCP, False, True); -end; - -function wbDoubleT(const aName : string; - aPriority : TwbConflictPriority; - aRequired : Boolean; - aDontShow : TwbDontShowCallback; - aAfterSet : TwbAfterSetCallback = nil; - aNormalizer : TwbFloatNormalizer = nil; - aDefault : Extended = 0.0; - aGetCP : TwbGetConflictPriority = nil) - : IwbFloatDef; overload; -begin - Result := TwbFloatDef.Create(aPriority, aRequired, aName, nil, aAfterSet, 1.0, -1, aDontShow, aNormalizer, aDefault, aGetCP, True, True); -end; - -{--- wbArray - list of identical elements -------------------------------------} -function wbArray(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - aCount : Integer = 0; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbArray('', aElement, aCount, aPriority), aAfterLoad, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbArray(const aName : string; - const aElement : IwbValueDef; - aCount : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCount, [], False, nil, nil, aDontShow, aGetCP, True, False, False); -end; - - -function wbArray(const aName : string; - const aElement : IwbValueDef; - aCount : Integer; - aAfterLoad : TwbAfterLoadCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCount, [], False, aAfterLoad, nil, aDontShow, aGetCP, True, False, False); -end; - -function wbArrayPT(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - aCount : Integer = 0; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbArrayPT('', aElement, aCount, aPriority), aAfterLoad, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbArrayPT(const aName : string; - const aElement : IwbValueDef; - aCount : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCount, [], False, nil, nil, aDontShow, aGetCP, True, True, False); -end; - -function wbArrayPT(const aName : string; - const aElement : IwbValueDef; - aCount : Integer; - aAfterLoad : TwbAfterLoadCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCount, [], False, aAfterLoad, nil, aDontShow, aGetCP, True, True, False); -end; - -function wbArrayT(const aName : string; - const aElement : IwbValueDef; - aCount : Integer; - const aLabels : array of string; - aAfterLoad : TwbAfterLoadCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCount, aLabels, False, aAfterLoad, nil, aDontShow, aGetCP, True, True, True); -end; - -function wbRArray(const aName : string; - const aElement : IwbRecordMemberDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordArrayDef; overload; -begin - Result := TwbSubRecordArrayDef.Create(aPriority, aRequired, aName, aElement, False, aAfterLoad, aAfterSet, aDontShow, nil, aGetCP); -end; - -function wbArray(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbArray('', aElement, aLabels, aPriority), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbArray(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbArray('', aElement, aLabels, aCountCallback, aPriority), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbArray(const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, Length(aLabels), aLabels, False, nil, nil, aDontShow, aGetCP, True, False, False); -end; - -function wbArray(const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCountCallback, aLabels, False, nil, nil, aDontShow, aGetCP, True, False, False); -end; - -function wbArray(const aName : string; - const aElement : IwbValueDef; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCountCallback, [], False, nil, nil, aDontShow, aGetCP, True, False, False); -end; - -function wbArrayPT(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbArrayPT('', aElement, aLabels, aPriority), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbArrayPT(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbArrayPT('', aElement, aLabels, aCountCallback, aPriority), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbArrayPT(const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, Length(aLabels), aLabels, False, nil, nil, aDontShow, aGetCP, True, True, False); -end; - -function wbArrayPT(const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCountCallback, aLabels, False, nil, nil, aDontShow, aGetCP, True, True, False); -end; - -function wbArrayT(const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCountCallback, aLabels, False, nil, nil, aDontShow, aGetCP, True, True, True); -end; - -function wbArrayPT(const aName : string; - const aElement : IwbValueDef; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCountCallback, [], False, nil, nil, aDontShow, aGetCP, True, True, False); -end; - -{--- wbArrayS - list of identical elements - gets sorted ----------------------} -function wbArrayS(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - aCount : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbArrayS('', aElement, aCount, aPriority, False, aAfterLoad, aAfterSet), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbArrayS(const aName : string; - const aElement : IwbValueDef; - aCount : Integer = 0; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aCanAddTo : Boolean = True; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCount, [], True, aAfterLoad, aAfterSet, aDontShow, aGetCP, aCanAddTo, False, False); -end; - -function wbArrayS(const aName : string; - const aElement : IwbValueDef; - aCount : Integer; - aAfterLoad : TwbAfterLoadCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCount, [], True, aAfterLoad, aAfterSet, aDontShow, aGetCP, True, False, False); -end; - -function wbArrayS(const aName : string; - const aElement : IwbValueDef; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCountCallback, [], True, aAfterLoad, aAfterSet, aDontShow, aGetCP, True, False, False); -end; - -function wbArray(const aName : string; - const aElement : IwbValueDef; - aCountCallback : TwbCountCallback; - aPriority : TwbConflictPriority; - aRequired : Boolean; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, aCountCallback, [], False, aAfterLoad, aAfterSet, aDontShow, aGetCP, True, False, False); -end; - -function wbRArrayS(const aName : string; - const aElement : IwbRecordMemberDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aIsSorted : TwbIsSortedCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordArrayDef; overload; -begin - Result := TwbSubRecordArrayDef.Create(aPriority, aRequired, aName, aElement, True, aAfterLoad, aAfterSet, aDontShow, aIsSorted, aGetCP); -end; - -function wbArrayS(const aSignature : TwbSignature; - const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbArrayS('', aElement, aLabels, aPriority, False, aAfterLoad), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbArrayS(const aName : string; - const aElement : IwbValueDef; - const aLabels : array of string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := TwbArrayDef.Create(aPriority, aRequired, aName, aElement, Length(aLabels), aLabels, True, aAfterLoad, aAfterSet, aDontShow, aGetCP, True, False, False); -end; - -{--- wbStruct - ordered list of members ----------------------------------------} -function wbStructSK(const aSignature : TwbSignature; - const aSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbStructSK(aSortKey, '', aMembers, aPriority, False, nil, aOptionalFromElement), aAfterLoad, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbMultiStructSK(const aSignatures : array of TwbSignature; - const aSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; -begin - Result := wbSubRecord(aSignatures, aName, wbStructSK(aSortKey, '', aMembers, aPriority, False, nil, aOptionalFromElement), aAfterLoad, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbStructSK(const aSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; -begin - Result := TwbStructDef.Create(aPriority, aRequired, aName, aMembers, aSortKey, [], [], aOptionalFromElement, aDontShow, aAfterLoad, aAfterSet, aGetCP); -end; - -function wbStructSK(const aSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbValueDef; - {$IFDEF WIN32} - const aElementMap : array of Cardinal; - {$ENDIF WIN32} - {$IFDEF WIN64} - const aElementMap : array of UInt64; - {$ENDIF WIN64} - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; -begin - Result := TwbStructDef.Create(aPriority, aRequired, aName, aMembers, aSortKey, [], aElementMap, aOptionalFromElement, aDontShow, aAfterLoad, aAfterSet, aGetCP); -end; - - -function wbStructExSK(const aSignature : TwbSignature; - const aSortKey : array of Integer; - const aExSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbStructExSK(aSortKey, aExSortKey, '', aMembers, aPriority, False, nil, aOptionalFromElement), aAfterLoad, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbStructExSK(const aSortKey : array of Integer; - const aExSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; -begin - Result := TwbStructDef.Create(aPriority, aRequired, aName, aMembers, aSortKey, aExSortKey, [], aOptionalFromElement, aDontShow, aAfterLoad, aAfterSet, aGetCP); -end; - -function wbStruct(const aSignature : TwbSignature; - const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbSubRecord(aSignature, aName, wbStruct('', aMembers, aPriority, False, nil, aOptionalFromElement), aAfterLoad, aAfterSet, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbStruct(const aName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; -begin - Result := TwbStructDef.Create(aPriority, aRequired, aName, aMembers, [], [], [], aOptionalFromElement, aDontShow, aAfterLoad, aAfterSet, aGetCP); -end; - -function wbStructC(const aName : string; - aSizing : TwbSizeCallback; - aGetChapterType : TwbGetChapterTypeCallback; - aGetChapterTypeName : TwbGetChapterTypeNameCallback; - aGetChapterName : TwbGetChapterNameCallback; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; -begin - Result := TwbStructCDef.Create(aPriority, aRequired, aName, aMembers, [], [], aOptionalFromElement, aDontShow, aAfterLoad, aAfterSet, aSizing, aGetChapterType, aGetChapterTypeName, aGetChapterName, aGetCP); -end; - -function wbStructZ(const aName : string; - aSizing : TwbSizeCallback; - aGetChapterType : TwbGetChapterTypeCallback; - aGetChapterTypeName : TwbGetChapterTypeNameCallback; - aGetChapterName : TwbGetChapterNameCallback; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; -begin - Result := TwbStructZDef.Create(aPriority, aRequired, aName, aMembers, [], [], aOptionalFromElement, aDontShow, aAfterLoad, aAfterSet, aSizing, aGetChapterType, aGetChapterTypeName, agetChapterName, aGetCP); -end; - -function wbStructLZ(const aName : string; - aSizing : TwbSizeCallback; - aGetChapterType : TwbGetChapterTypeCallback; - aGetChapterTypeName : TwbGetChapterTypeNameCallback; - aGetChapterName : TwbGetChapterNameCallback; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aOptionalFromElement : Integer = -1; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbStructDef; overload; -begin - Result := TwbStructLZDef.Create(aPriority, aRequired, aName, aMembers, [], [], aOptionalFromElement, aDontShow, aAfterLoad, aAfterSet, aSizing, aGetChapterType, aGetChapterTypeName, agetChapterName, aGetCP); -end; - -function wbRStruct(const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAllowUnordered : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordStructDef; overload; -begin - Result := TwbSubRecordStructDef.Create(aPriority, aRequired, aName, aMembers, aSkipSigs, aDontShow, aAllowUnordered, aAfterLoad, aAfterSet, aGetCP); -end; - -function wbRStructSK(const aSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAllowUnordered : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordStructDef; overload; -begin - Result := TwbSubRecordStructSKDef.Create(aPriority, aRequired, aName, aMembers, aSkipSigs, aSortKey, [], aDontShow, aAllowUnordered, aAfterLoad, aAfterSet, aGetCP); -end; - -function wbRStructExSK(const aSortKey : array of Integer; - const aExSortKey : array of Integer; - const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAllowUnordered : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordStructDef; overload; -begin - Result := TwbSubRecordStructSKDef.Create(aPriority, aRequired, aName, aMembers, aSkipSigs, aSortKey, aExSortKey, aDontShow, aAllowUnordered, aAfterLoad, aAfterSet, aGetCP); -end; - -function wbRUnion(const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordUnionDef; overload; -begin - Result := TwbSubRecordUnionDef.Create(aPriority, aRequired, aName, aMembers, aSkipSigs, aDontShow, aGetCP); -end; - -{--- wbStructS - array of struct ----------------------------------------------} -function wbStructS(const aSignature : TwbSignature; - const aName : string; - const aElementName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbArray(aSignature, aName, wbStruct(aElementName, aMembers, aPriority), 0, nil, nil, aPriority, aRequired, aDontShow, aGetCP); -end; - -function wbStructS(const aName : string; - const aElementName : string; - const aMembers : array of IwbValueDef; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbArrayDef; overload; -begin - Result := wbArray(aName, wbStruct(aElementName, aMembers, aPriority), 0, aPriority, aRequired, aDontShow, aGetCP); -end; - -function wbRStructS(const aName : string; - const aElementName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordArrayDef; overload; -begin - Result := wbRArray(aName, wbRStruct(aElementName, aMembers, aSkipSigs ,aPriority), aPriority, aRequired, nil, nil, aDontShow, aGetCP); -end; - -function wbRStructsSK(const aName : string; - const aElementName : string; - const aSortKey : array of Integer; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aAfterLoad : TwbAfterLoadCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordArrayDef; overload; -begin - Result := wbRArrayS(aName, wbRStructSK(aSortKey, aElementName, aMembers, aSkipSigs, aPriority), aPriority, aRequired, aAfterLoad, aAfterSet, aDontShow, nil, aGetCP); -end; - -function wbEmpty(const aSignature : TwbSignature; - const aName : string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; -begin - Result := wbSubRecord(aSignature, aName, wbEmpty('', aPriority, aRequired), nil, nil, aPriority, aRequired, False, aDontShow, aGetCP); -end; - -function wbEmpty(const aName : string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aSorted : Boolean = False; - aGetCP : TwbGetConflictPriority = nil) - : IwbValueDef; -begin - Result := TwbEmptyDef.Create(aPriority, aRequired, aName, nil, nil, aDontShow, aSorted, aGetCP); -end; - -function wbDumpInteger : IwbIntegerDefFormater; -begin - Result := TwbDumpIntegerDefFormater.Create(cpNormal, False, nil); -end; - -function wbKey2Data6Enum(const aNames : array of string) : IwbKey2Data6EnumDef; -begin - Result := TwbKey2Data6EnumDef.Create(aNames, []); -end; - -function wbData6Key2Enum(const aNames : array of string) : IwbData6Key2EnumDef; -begin - Result := TwbData6Key2EnumDef.Create(aNames, []); -end; - -var - _RefID: IwbRefID; - -function wbRefID: IwbRefID; -begin - if wbReportMode then - Result := TwbRefID.Create(cpNormal, False, nil) - else begin - if not Assigned(_RefID) then - _RefID := TwbRefID.Create(cpNormal, False, nil); - Result := _RefID; - end; -end; - -function wbRefID(const aName : string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; -begin - Result := wbInteger(aName, itU24, wbRefID, aPriority, aRequired, aDontShow, aAfterSet, 0, aGetCP); -end; - -function wbRefIDT(const aName : string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; -begin - Result := wbIntegerT(aName, itU24, wbRefID, aPriority, aRequired, aDontShow, aAfterSet, 0, aGetCP); -end; - -var - _FormID: IwbFormID; - -function wbFormID: IwbFormID; -begin - if wbReportMode then - Result := TwbFormID.Create(cpNormal, False, nil) - else begin - if not Assigned(_FormID) then - _FormID := TwbFormID.Create(cpNormal, False, nil); - Result := _FormID; - end; -end; - -function wbFormID(const aValidRefs : array of TwbSignature; - aPersistent: Boolean) - : IwbFormID; -begin - Result := TwbFormIDChecked.Create(aValidRefs, [], aPersistent); -end; - -function wbFormID(const aValidRefs : array of TwbSignature; - const aValidFlstRefs : array of TwbSignature; - aPersistent : Boolean) - : IwbFormID; -begin - Result := TwbFormIDChecked.Create(aValidRefs, aValidFlstRefs, aPersistent); -end; - -function wbFormIDNoReach(const aValidRefs : array of TwbSignature; - aPersistent: Boolean) - : IwbFormID; -begin - Result := TwbFormIDChecked.Create(aValidRefs, [], aPersistent, True); -end; - -function wbFormIDNoReach(const aValidRefs : array of TwbSignature; - const aValidFlstRefs : array of TwbSignature; - aPersistent : Boolean) - : IwbFormID; -begin - Result := TwbFormIDChecked.Create(aValidRefs, aValidFlstRefs, aPersistent, True); -end; - - -function wbChar4: IwbChar4; -begin - Result := TwbChar4.Create(cpNormal, False, nil); -end; - -function wbStr4: IwbStr4; -begin - Result := TwbStr4.Create(cpNormal, False, nil); -end; - -function wbFormID(const aSignature : TwbSignature; - const aName : string = 'Unknown'; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbInteger( - aSignature, - aName, - itU32, - wbFormID, - aPriority, - aRequired, - False, - aDontShow, - nil, - 0, - aGetCP); -end; - -function wbFormID(const aName : string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil) - : IwbIntegerDef; overload; -begin - Result := wbInteger(aName, itU32, wbFormID, aPriority, aRequired, aDontShow, aAfterSet); -end; - -function wbFormIDT(const aName : string; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; -begin - Result := wbIntegerT(aName, itU32, wbFormID, aPriority, aRequired, aDontShow, aAfterSet, 0, aGetCP); -end; - -function wbFormIDCk(const aSignature : TwbSignature; - const aName : string; - const aValidRefs : array of TwbSignature; - aPersistent: Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbInteger(aSignature, aName, itU32, wbFormID(aValidRefs, aPersistent), aPriority, aRequired, False, aDontShow, nil, 0, aGetCP); -end; - -function wbFormIDCkNoReach(const aSignature : TwbSignature; - const aName : string; - const aValidRefs : array of TwbSignature; - aPersistent: Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbInteger(aSignature, aName, itU32, wbFormIDNoReach(aValidRefs, aPersistent), aPriority, aRequired, False, aDontShow, nil, 0, aGetCP); -end; - -function wbFormIDCk(const aName : string; - const aValidRefs : array of TwbSignature; - aPersistent: Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aAfterSet : TwbAfterSetCallback = nil) - : IwbIntegerDef; overload; -begin - Result := wbInteger(aName, itU32, wbFormID(aValidRefs, aPersistent), aPriority, aRequired, aDontShow, aAfterSet); -end; - -function wbFormIDCkNoReach(const aName : string; - const aValidRefs : array of TwbSignature; - aPersistent: Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; -begin - Result := wbInteger(aName, itU32, wbFormIDNoReach(aValidRefs, aPersistent), aPriority, aRequired, aDontShow, nil, 0, aGetCP); -end; - - -function wbFormIDCk(const aSignature : TwbSignature; - const aName : string; - const aValidRefs : array of TwbSignature; - const aValidFlstRefs : array of TwbSignature; - aPersistent : Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbSubRecordDef; overload; -begin - Result := wbInteger(aSignature, aName, itU32, wbFormID(aValidRefs, aValidFlstRefs, aPersistent), aPriority, aRequired, False, aDontShow, nil, 0, aGetCP); -end; - -function wbFormIDCk(const aName : string; - const aValidRefs : array of TwbSignature; - const aValidFlstRefs : array of TwbSignature; - aPersistent : Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; -begin - Result := wbInteger(aName, itU32, wbFormID(aValidRefs, aValidFlstRefs, aPersistent), aPriority, aRequired, aDontShow, nil, 0, aGetCP); -end; - -function wbFormIDCkNoReach(const aName : string; - const aValidRefs : array of TwbSignature; - const aValidFlstRefs : array of TwbSignature; - aPersistent : Boolean = False; - aPriority : TwbConflictPriority = cpNormal; - aRequired : Boolean = False; - aDontShow : TwbDontShowCallback = nil; - aGetCP : TwbGetConflictPriority = nil) - : IwbIntegerDef; overload; -begin - Result := wbInteger(aName, itU32, wbFormIDNoReach(aValidRefs, aValidFlstRefs, aPersistent), aPriority, aRequired, aDontShow, nil, 0, aGetCP); -end; - - -function wbFlags(const aNames : array of string; - aUnknownIsUnused : Boolean = False) - : IwbFlagsDef; -begin - Result := wbFlags(nil, aNames, aUnknownIsUnused); -end; - -function wbFlags(const aNames : array of string; - const aFlagsToIgnore : array of integer) - : IwbFlagsDef; overload; -begin - Result := wbFlags(nil, aNames, aFlagsToIgnore); -end; - - -function wbFlags(const aNames : array of string; - const aDontShows : array of TwbDontShowCallback; - aUnknownIsUnused : Boolean = False) - : IwbFlagsDef; overload; -begin - Result := wbFlags(nil, aNames, aDontShows, aUnknownIsUnused); -end; - -function wbFlags(const aBaseFlagsDef : IwbFlagsDef; - const aNames : array of string; - aUnknownIsUnused : Boolean = False) - : IwbFlagsDef; -begin - Result := TwbFlagsDef.Create(aBaseFlagsDef, aNames, [], aUnknownIsUnused, 0, []); -end; - -function wbFlags(const aBaseFlagsDef : IwbFlagsDef; - const aNames : array of string; - const aFlagsToIgnore : array of integer) - : IwbFlagsDef; overload; -var - IgnoreMask : Int64; - i : Integer; - Index : Int64; -begin - IgnoreMask := 0; - for i := Low(aFlagsToIgnore) to High(aFlagsToIgnore) do begin - Index := aFlagsToIgnore[i]; - if (Index >= 0) and (Index <= High(aNames)) then - IgnoreMask := IgnoreMask or (1 shl Index); - end; - Result := TwbFlagsDef.Create(aBaseFlagsDef, aNames, [], False, IgnoreMask, []); -end; - - -function wbFlags(const aBaseFlagsDef : IwbFlagsDef; - const aNames : array of string; - const aDontShows : array of TwbDontShowCallback; - aUnknownIsUnused : Boolean = False) - : IwbFlagsDef; overload; -begin - Result := TwbFlagsDef.Create(aBaseFlagsDef, aNames, aDontShows, aUnknownIsUnused, 0, []); -end; - -function wbEnum(const aNames : array of string) - : IwbEnumDef; -begin - Result := TwbEnumDef.Create(aNames, []); -end; - -function wbEnum(const aNames : array of string; - const aSparseNames : array of const) - : IwbEnumDef; overload; -begin - Result := TwbEnumDef.Create(aNames, aSparseNames); -end; - - -function wbDiv(aValue : Integer) - : IwbIntegerDefFormater; -begin - Result := TwbDivDef.Create(aValue); -end; - -function wbMul(aValue : Integer) - : IwbIntegerDefFormater; -begin - Result := TwbMulDef.Create(aValue); -end; - -function wbCallback(const aToStr : TwbIntToStrCallback; - const aToInt : TwbStrToIntCallback) - : IwbIntegerDefFormater; -begin - Result := TwbCallbackDef.Create(aToStr, aToInt); -end; - -function wbFormaterUnion(aDecider : TwbIntegerDefFormaterUnionDecider; - aMembers : array of IwbIntegerDefFormater) - : IwbIntegerDefFormaterUnion; -begin - Result := TwbIntegerDefFormaterUnion.Create(cpNormal, False, nil, aDecider, aMembers); -end; - -{ TwbDef } - -function TwbDef.Assign(const aTarget : IwbElement; - aIndex : Integer; - const aSource : IwbElement; - aOnlySK : Boolean) - : IwbElement; -begin - Result := nil; - aTarget.SetEditValue(aSource.EditValue); -end; - -function TwbDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -begin - Result := False; -end; - -function TwbDef.CanContainFormIDs: Boolean; -begin - Result := True; -end; - -constructor TwbDef.Clone(const aSource: TwbDef); -begin - with aSource do - Self.Create(defPriority, defRequired, defGetCP).defSource := aSource; -end; - -constructor TwbDef.Create(aPriority: TwbConflictPriority; aRequired: Boolean; aGetCP: TwbGetConflictPriority); -begin - defPriority := aPriority; - defRequired := aRequired; - defGetCP := aGetCP; - inherited Create; -end; - -function TwbDef.Duplicate: TwbDef; -begin - Result := TwbDefClass(ClassType).Clone(Self); -end; - -function TwbDef.Equals(const aDef: IwbDef): Boolean; -begin - Result := Assigned(aDef) and (aDef.DefID = GetDefID); -end; - -function TwbDef.GetConflictPriority(const aElement: IwbElement): TwbConflictPriority; -begin - Result := defPriority; - if Assigned(defGetCP) then - defGetCP(aElement, Result); -end; - -function TwbDef.GetConflictPriorityCanChange: Boolean; -begin - Result := Assigned(defGetCP); -end; - -function TwbDef.GetDefID: Cardinal; -begin - Result := Cardinal(Self); -end; - -function TwbDef.GetDontShow(const aElement: IwbElement): Boolean; -begin - Result := False; -end; - -function TwbDef.GetHasDontShow: Boolean; -begin - Result := False; -end; - -function TwbDef.GetNoReach: Boolean; -begin - Result := False; -end; - -function TwbDef.GetParent: IwbDef; -begin - Result := defParent; -end; - -function TwbDef.GetRequired: Boolean; -begin - Result := defRequired; -end; - -function TwbDef.GetRoot: IwbDef; -begin - Result := defSource; - if not Assigned(Result) then - Result := Self - else - Result := Result.GetRoot; -end; - -function TwbDef.IsNotRequired: Boolean; -begin - Result := defNotRequired; -end; - -procedure TwbDef.NotRequired; -begin - defNotRequired := True; -end; - -procedure TwbDef.ParentSet; -begin - {can be overriden} -end; - -procedure TwbDef.PossiblyRequired; -begin - defPossiblyRequired := True; -end; - -procedure TwbDef.Report(const aParents: TwbDefPath); -var - i, j : Integer; - sl : TStringList; -begin - if defReported then - Exit; - - if wbReportUnused then - if not defUsed then - WriteLn('Unused: ', wbDefsToPath(aParents), wbDefToName(Self)); - - if wbReportRequired and defPossiblyRequired then - if defNotRequired = defRequired then - if defNotRequired then - WriteLn('Not Required: ', wbDefsToPath(aParents), wbDefToName(Self)) - else - WriteLn('Required: ', wbDefsToPath(aParents), wbDefToName(Self)); - - if wbReportUnknown then - if Assigned(UnknownValues) then begin - WriteLn('Unknown Field: ', wbDefsToPath(aParents), wbDefToName(Self), ' (', UnknownValues.Count ,')'); - for i := 0 to Pred(UnknownValues.Count) do begin - sl := UnknownValues.Objects[i] as TStringList; - WriteLn(' ', UnknownValues[i], ' (', sl.Count ,')'); - for j := 0 to Pred(sl.Count) do - WriteLn(' ', sl[j]); - end; - end else - if IsUnknown then - WriteLn('Unknown Field: ', wbDefsToPath(aParents), wbDefToName(Self)); - - defReported := True; -end; - -function TwbDef.SetParent(const aParent: TwbDef; aForceDuplicate: Boolean): IwbDef; -begin - Assert(Assigned(aParent)); - if Assigned(defParent) or aForceDuplicate then - Result := Duplicate.SetParent(aParent, False) - else begin - Result := Self; - defParent := aParent; - ParentSet; - end; -end; - -procedure TwbDef.Used(const aElement: IwbElement; const s: string); -var - i: Integer; - NamedDef: IwbNamedDef; -begin - if not wbReportMode then - Exit; - - defUsed := True; - - if not IsUnknown then - if not IsUnknownChecked then begin - IsUnknownChecked := True; - if Supports(defParent, IwbNamedDef, NamedDef) then - if Pos('unknown', LowerCase(NamedDef.Name)) > 0 then - IsUnknown := True; - end; - - if wbReportUnknown then - if IsUnknown and Assigned(aElement) and (s <> '') then begin - - if not Assigned(UnknownValues) then - UnknownValues := TwbFastStringListCS.CreateSorted; - - if UnknownValues.Count < 20 then begin - if not UnknownValues.Find(s, i) then - i := UnknownValues.AddObject(s, TwbFastStringListCS.CreateSorted(dupIgnore)); - - with UnknownValues.Objects[i] as TStringList do - if Count < 20 then - Add(aElement.FullPath); - end; - end; -end; - -{ TwbNamedDef } - -procedure TwbNamedDef.AfterLoad(const aElement: IwbElement); -begin - Used(nil, ''); - if Assigned(noAfterLoad) then - noAfterLoad(aElement); -end; - - -procedure TwbNamedDef.AfterSet(const aElement: IwbElement; const aOldValue, aNewValue: Variant); -begin - if Assigned(noAfterSet) then - noAfterSet(aElement, aOldValue, aNewValue); -end; - -constructor TwbNamedDef.Clone(const aSource: TwbDef); -begin - with (aSource as TwbNamedDef) do begin - Self.Create(defPriority, defRequired, noName, noAfterLoad, noAfterSet, noDontShow, defGetCP, noTerminator).defSource := aSource; - Self.noTreeHead := GetTreeHead; - Self.notreeBranch := GetTreeBranch; - end -end; - -constructor TwbNamedDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority; - aTerminator : Boolean); -begin - noName := aName; - noDontShow := aDontShow; - noAfterLoad := aAfterLoad; - noAfterSet := aAfterSet; - noTerminator := aTerminator; - noTreeHead := False; - noTreeBranch := False; - if aName = 'Unused' then begin - noUnused := True; - if aPriority = cpNormal then - aPriority := cpIgnore; - end; - inherited Create(aPriority, aRequired, aGetCP); - - if Pos('unknown', LowerCase(aName)) > 0 then - IsUnknown := True; -end; - -function TwbNamedDef.GetDontShow(const aElement: IwbElement): Boolean; -begin - if Assigned(noDontShow) then - Result := noDontShow(aElement) - else - Result := wbHideUnused and noUnused; -end; - -function TwbNamedDef.GetHasDontShow: Boolean; -begin - Result := Assigned(noDontShow) or (wbHideUnused and noUnused); -end; - -function TwbNamedDef.GetName: string; -begin - Result := noName; -end; - -function TwbNamedDef.GetPath: string; -var - Parent: IwbDef; - NamedDef: IwbNamedDef; -begin - Result := GetName; - Parent := defParent; - while Assigned(Parent) do begin - if Supports(Parent, IwbNamedDef, NamedDef) then - Result := NamedDef.Name + ' \ ' + Result - else - Result := Parent.DefTypeName + ' \ ' + Result; - Parent := Parent.Parent; - end; -end; - -function TwbNamedDef.GetTreeBranch: Boolean; -begin - Result := noTreeBranch; -end; - -function TwbNamedDef.GetTreeHead: Boolean; -begin - Result := noTreeHead; -end; - -procedure TwbNamedDef.ParentSet; -var - Parent: IwbNamedDef; -begin - inherited; - if not (IsUnknown or noUnused) and (noName = '') and Supports(defParent, IwbNamedDef, Parent) then begin - IsUnknown := IsUnknown or (Pos('unknown', LowerCase(Parent.Name)) > 0); - noUnused := noUnused or (Parent.Name = 'Unused'); - end; -end; - -procedure TwbNamedDef.SetTreeBranch(aValue: Boolean); -begin - noTreeBranch := avalue; -end; - -procedure TwbNamedDef.SetTreeHead(aValue: Boolean); -begin - noTreeHead := aValue; -end; - -{ TwbSignatureDef } - -function TwbSignatureDef.CanHandle(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; -begin - Result := aSignature = GetDefaultSignature; -end; - -constructor TwbSignatureDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aSignature : TwbSignature; - const aName : string; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority); -begin - SetLength(soSignatures, 1); - soSignatures[0] := aSignature; - inherited Create(aPriority, aRequired, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP, False); -end; - -constructor TwbSignatureDef.Clone(const aSource: TwbDef); -begin - with (aSource as TwbSignatureDef) do - Self.Create(defPriority, defRequired, soSignatures, noName, noAfterLoad, noAfterSet, noDontShow, defGetCP).defSource := aSource; -end; - -constructor TwbSignatureDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aSignatures : array of TwbSignature; - const aName : string; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority); -var - i: Integer; -begin - Assert(Length(aSignatures) >= 1); - SetLength(soSignatures, Length(aSignatures)); - for i := Low(soSignatures) to High(soSignatures) do - soSignatures[i] := aSignatures[i]; - inherited Create(aPriority, aRequired, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP, False); -end; - - -function TwbSignatureDef.GetDefaultSignature: TwbSignature; -begin - Result := soSignatures[0]; -end; - -function TwbSignatureDef.GetSignatureCount: Integer; -begin - Result := Length(soSignatures); -end; - -function TwbSignatureDef.GetSignatures(const aIndex: Integer): TwbSignature; -begin - Result := soSignatures[aIndex]; -end; - -{ TwbRecordDef } - -function TwbRecordDef.AdditionalInfoFor(const aMainRecord: IwbMainRecord): string; -begin - if (wbCopyIsRunning = 0) and Assigned(recAddInfoCallback) then - Result := recAddInfoCallback(aMainRecord) - else - Result := ''; -end; - -procedure TwbRecordDef.AfterLoad(const aElement: IwbElement); -var - Found : Boolean; - Container : IwbContainerElementRef; - Element : IwbElement; - i, j : Integer; -begin - inherited; - if wbReportMode and wbReportRequired and Supports(aElement, IwbContainerElementRef, Container) then begin - for i := Low(recMembers) to High(recMembers) do if not recMembers[i].IsNotRequired then begin - Found := False; - for j := 0 to Pred(Container.ElementCount) do begin - Element := Container.Elements[j]; - if recMembers[i].Equals(Element.Def) or recMembers[i].Equals(Element.ValueDef) then begin - Found := True; - Break; - end; - end; - recMembers[i].PossiblyRequired; - if not Found then - recMembers[i].NotRequired; - end; - end; -end; - -function TwbRecordDef.AllowUnordered: Boolean; -begin - Result := recAllowUnordered; -end; - -function TwbRecordDef.CanContainFormIDs: Boolean; -begin - Result := recCanContainFormIDs; -end; - -constructor TwbRecordDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbRecordDef do - Self.Create(defPriority, defRequired, GetDefaultSignature, noName, recRecordFlags, recMembers, - recAllowUnordered, recAddInfoCallback, noAfterLoad, noAfterSet).defSource := aSource; -end; - -function TwbRecordDef.ContainsMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; -var - Dummy: Integer; -begin - Result := recSignatures.Find(aSignature, Dummy); -end; - -constructor TwbRecordDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aSignature : TwbSignature; - const aName : string; - const aRecordFlags : IwbIntegerDefFormater; - const aMembers : array of IwbRecordMemberDef; - aAllowUnordered : Boolean; - aAddInfoCallback : TwbAddInfoCallback; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback); -var - i, j : Integer; - Sig : TwbSignature; -begin - recRecordFlags := aRecordFlags; - recQuickInitLimit := -1; - recAllowUnordered := aAllowUnordered; - recAddInfoCallback := aAddInfoCallback; - - if Assigned(recRecordFlags) and Assigned(wbRecordFlags) and Assigned(wbMainRecordHeader) then begin - recRecordHeaderStruct := (wbMainRecordHeader as IwbDefInternal).SetParent(Self, True) as IwbStructDef; - (recRecordHeaderStruct.MembersByName[wbRecordFlags.Name] as IwbInternalIntegerDef).ReplaceFormater(recRecordFlags); - end; - - recSignatures := TwbFastStringListCS.CreateSorted(dupAccept); - if aAllowUnordered then - recSignatures.Duplicates := dupError; - - SetLength(recMembers, Length(aMembers)); - for i := Low(recMembers) to High(recMembers) do begin - recMembers[i] := (aMembers[i] as IwbDefInternal).SetParent(Self, False) as IwbRecordMemberDef; - recCanContainFormIDs := recCanContainFormIDs or aMembers[i].CanContainFormIDs; - for j := 0 to Pred(aMembers[i].SignatureCount) do begin - Sig := aMembers[i].Signatures[j]; - if (Sig = 'EDID') or - (Sig = 'FULL') or - ( - (Sig = 'NAME') and - ( - (aSignature = 'REFR') or - (aSignature = 'ACHR') or - (aSignature = 'ACRE') or - (aSignature = 'PGRE') or - (aSignature = 'PMIS') or - (aSignature = 'PARW') or {>>> Skyrim <<<} - (aSignature = 'PBEA') or {>>> Skyrim <<<} - (aSignature = 'PFLA') or {>>> Skyrim <<<} - (aSignature = 'PCON') or {>>> Skyrim <<<} - (aSignature = 'PBAR') or {>>> Skyrim <<<} - (aSignature = 'PHZD') {>>> Skyrim <<<} - ) - ) then begin - - recQuickInitLimit := i; - if Sig = 'EDID' then - recContainsEditorID := True; - - end; - try - recSignatures.AddObject(Sig, Pointer(i) ); - except - on E: Exception do - raise Exception.Create('Duplicate definition ' + Sig + ' in allow unordered record ' + aSignature); - end; - end; - end; - - inherited Create(aPriority, aRequired, aSignature, aName, aAfterLoad, aAfterSet, nil, nil); -end; - -function TwbRecordDef.GetMember(aIndex: Integer): IwbRecordMemberDef; -begin - Result := recMembers[aIndex]; -end; - -function TwbRecordDef.GetMemberCount: Integer; -begin - Result := Length(recMembers); -end; - -function TwbRecordDef.GetMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : IwbRecordMemberDef; -var - i: Integer; -begin - if recSignatures.Find(aSignature, i) then - Result := recMembers[Integer(recSignatures.Objects[i])] - else - Result := nil; -end; - -function TwbRecordDef.GetMemberIndexFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Integer; -var - i: Integer; -begin - if recSignatures.Find(aSignature, i) then - Result := Integer(recSignatures.Objects[i]) - else - Result := -1; -end; - -function TwbRecordDef.GetQuickInitLimit: Integer; -begin - Result := recQuickInitLimit; -end; - -function TwbRecordDef.GetRecordHeaderStruct: IwbStructDef; -begin - if Assigned(recRecordHeaderStruct) then - Result := recRecordHeaderStruct - else - Result := wbMainRecordHeader; -end; - -function TwbRecordDef.GetSkipSignature(const aSignature: TwbSignature): Boolean; -begin - Result := False; -end; - -procedure TwbRecordDef.Report(const aParents: TwbDefPath); -var - Parents : TwbDefPath; - i : Integer; -begin - if defReported then - Exit; - - inherited; - Parents := aParents; - SetLength(Parents, Succ(Length(Parents))); - Parents[High(Parents)].Def := Self; - for i := Low(recMembers) to High(recMembers) do - if Assigned(recMembers[i]) then begin - Parents[High(Parents)].Index := i; - recMembers[i].Report(Parents); - end; - - defReported := True; -end; - -destructor TwbRecordDef.Destroy; -begin - inherited; - FreeAndNil(recSignatures); -end; - -function TwbRecordDef.GetContainsEditorID: Boolean; -begin - Result := recContainsEditorID; -end; - -function TwbRecordDef.GetDefType: TwbDefType; -begin - Result := dtRecord; -end; - -function TwbRecordDef.GetDefTypeName: string; -begin - Result := 'Record'; -end; - -{ TwbSubRecordDef } - -function TwbSubRecordDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - SubRecordDef : IwbSubRecordDef; -begin - if Supports(aDef, IwbSubRecordDef, SubRecordDef) then - Result := Equals(aDef) or Assigned(srValue) and srValue.CanAssign(aElement, aIndex, SubRecordDef.Value) - else - Result := Assigned(srValue) and srValue.CanAssign(aElement, aIndex, aDef); -end; - -function TwbSubRecordDef.CanContainFormIDs: Boolean; -begin - Result := srValue.CanContainFormIDs; -end; - -function TwbSubRecordDef.CanHandle(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; -begin - Result := inherited CanHandle(aSignature, aDataContainer); - if Result and srSizeMatch and Assigned(aDataContainer) and Assigned(srValue) then - Result := aDataContainer.DataSize = srValue.DefaultSize[nil, nil, nil]; -end; - -constructor TwbSubRecordDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbSubRecordDef do - Self.Create(defPriority, defRequired, soSignatures, noName, srValue, noAfterLoad, noAfterSet, srSizeMatch, noDontShow, defGetCP).defSource := aSource; -end; - -constructor TwbSubRecordDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aSignature : TwbSignature; - const aName : string; - const aValue : IwbValueDef; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aSizeMatch : Boolean; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority); -begin - srSizeMatch := aSizeMatch; - if Assigned(aValue) then - srValue := (aValue as IwbDefInternal).SetParent(Self, False) as IwbValueDef; - inherited Create(aPriority, aRequired, aSignature, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP); -end; - -constructor TwbSubRecordDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aSignatures : array of TwbSignature; - const aName : string; - const aValue : IwbValueDef; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aSizeMatch : Boolean; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority); -begin - srSizeMatch := aSizeMatch; - if Assigned(aValue) then - srValue := (aValue as IwbDefInternal).SetParent(Self, False) as IwbValueDef; - inherited Create(aPriority, aRequired, aSignatures, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP); -end; - -function TwbSubRecordDef.GetDefType: TwbDefType; -begin - Result := dtSubRecord; -end; - -function TwbSubRecordDef.GetDefTypeName: string; -begin - Result := 'SubRecord of '+GetValue.GetDefTypeName; -end; - -function TwbSubRecordDef.GetValue: IwbValueDef; -begin - Result := srValue; -end; - -procedure TwbSubRecordDef.HasUnusedData; -begin - srHasUnusedData := True; -end; - -procedure TwbSubRecordDef.Report(const aParents: TwbDefPath); -var - Parents : TwbDefPath; -begin - if defReported then - Exit; - - inherited; - if Assigned(srValue) then begin - Parents := aParents; - SetLength(Parents, Succ(Length(Parents))); - Parents[High(Parents)].Def := Self; - Parents[High(Parents)].Index := -1; - srValue.Report(Parents); - end; - if wbReportUnusedData then - if srHasUnusedData then - WriteLn('Has Unused Data: ', wbDefsToPath(aParents), wbDefToName(Self)); - - defReported := True; -end; - -{ TwbSubRecordArrayDef } - -procedure TwbSubRecordArrayDef.AfterLoad(const aElement: IwbElement); -var - Container: IwbContainerElementRef; -begin - inherited; - if wbReportMode and wbReportRequired and Supports(aElement, IwbContainerElementRef, Container) then begin - sraElement.PossiblyRequired; - if Container.ElementCount < 1 then - sraElement.NotRequired; - end; -end; - -function TwbSubRecordArrayDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - SubRecordArrayDef : IwbSubRecordArrayDef; -begin - if aIndex = Low(Integer) then - Result := Supports(aDef, IwbSubRecordArrayDef, SubRecordArrayDef) and - GetElement.CanAssign(aElement, aIndex, SubRecordArrayDef.Element) - else if aIndex = High(Integer) then - Result := GetElement.CanAssign(aElement, Low(Integer), aDef) - else - Result := False; -end; - -function TwbSubRecordArrayDef.CanContainFormIDs: Boolean; -begin - Result := sraElement.CanContainFormIDs; -end; - -function TwbSubRecordArrayDef.CanHandle(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; -begin - Result := sraElement.CanHandle(aSignature, aDataContainer); -end; - -constructor TwbSubRecordArrayDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbSubRecordArrayDef do - Self.Create(defPriority, defRequired, noName, sraElement, sraSorted, - noAfterLoad, noAfterSet, noDontShow, sraIsSorted, defGetCP).defSource := aSource; -end; - -constructor TwbSubRecordArrayDef.Create(aPriority : TwbConflictPriority; aRequired: Boolean; - const aName : string; - const aElement : IwbRecordMemberDef; - aSorted : Boolean; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aIsSorted : TwbIsSortedCallback; - aGetCP : TwbGetConflictPriority); -begin - if Assigned(aElement) then - sraElement := (aElement as IwbDefInternal).SetParent(Self, False) as IwbRecordMemberDef; - sraSorted := aSorted; - sraIsSorted := aIsSorted; - inherited Create(aPriority, aRequired, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP, False); -end; - -function TwbSubRecordArrayDef.GetElement: IwbRecordMemberDef; -begin - Result := sraElement; -end; - -function TwbSubRecordArrayDef.GetDefaultSignature: TwbSignature; -begin - Result := sraElement.GetDefaultSignature; -end; - -function TwbSubRecordArrayDef.GetSignatureCount: Integer; -begin - Result := sraElement.GetSignatureCount; -end; - -function TwbSubRecordArrayDef.GetSignatures(const aIndex: Integer): TwbSignature; -begin - Result := sraElement.GetSignatures(aIndex); -end; - -function TwbSubRecordArrayDef.GetSorted(const aContainer: IwbContainer): Boolean; -begin - if Assigned(sraIsSorted) then - Result := sraIsSorted(aContainer) - else - Result := sraSorted; -end; - -procedure TwbSubRecordArrayDef.Report(const aParents: TwbDefPath); -var - Parents : TwbDefPath; -begin - if defReported then - Exit; - - inherited; - if Assigned(sraElement) then begin - Parents := aParents; - SetLength(Parents, Succ(Length(Parents))); - Parents[High(Parents)].Def := Self; - Parents[High(Parents)].Index := -1; - sraElement.Report(Parents); - end; - - defReported := True; -end; - -function TwbSubRecordArrayDef.GetDefType: TwbDefType; -begin - Result := dtSubRecordArray; -end; - -function TwbSubRecordArrayDef.GetDefTypeName: string; -begin - Result := 'SubRecordArray of '+GetElement.GetDefTypeName; -end; - -{ TwbSubRecordStructDef } - -function TwbSubRecordStructDef.AdditionalInfoFor(const aMainRecord: IwbMainRecord): string; -begin - Result := ''; -end; - -procedure TwbSubRecordStructDef.AfterLoad(const aElement: IwbElement); -var - Found : Boolean; - Container : IwbContainerElementRef; - Element : IwbElement; - i, j : Integer; -begin - inherited; - if wbReportMode and wbReportRequired and Supports(aElement, IwbContainerElementRef, Container) then begin - for i := 1 to High(srsMembers) do if not srsMembers[i].IsNotRequired then begin - Found := False; - for j := 0 to Pred(Container.ElementCount) do begin - Element := Container.Elements[j]; - if srsMembers[i].Equals(Element.Def) or srsMembers[i].Equals(Element.ValueDef) then begin - Found := True; - Break; - end; - end; - srsMembers[i].PossiblyRequired; - if not Found then - srsMembers[i].NotRequired; - end; - end; -end; - -function TwbSubRecordStructDef.AllowUnordered: Boolean; -begin - Result := srsAllowUnordered; -end; - -function TwbSubRecordStructDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - SubRecordStructDef : IwbSubRecordStructDef; - RecordDef : IwbRecordDef; - i : Integer; -begin - if Supports(aDef, IwbSubRecordStructDef, SubRecordStructDef) then begin - Result := Equals(aDef); - if not Result and - Supports(aDef, IwbRecordDef, RecordDef) and - (GetMemberCount = RecordDef.MemberCount)then begin - Result := True; - for i := 0 to Pred(GetMemberCount) do - if not srsMembers[i].CanAssign(aElement, aIndex, RecordDef.Members[i]) then begin - Result := False; - Break; - end; - end; - end else - Result := False; -end; - -function TwbSubRecordStructDef.CanContainFormIDs: Boolean; -begin - Result := srsCanContainFormIDs; -end; - -function TwbSubRecordStructDef.CanHandle(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; -begin - if srsAllowUnordered then - Result := ContainsMemberFor(aSignature, aDataContainer) - else - Result := srsMembers[0].CanHandle(aSignature, aDataContainer); -end; - -constructor TwbSubRecordStructDef.Clone(const aSource: TwbDef); -var - SkipSigs : array of TwbSignature; - i : Integer; -begin - with aSource as TwbSubRecordStructDef do begin - if Assigned(srsSkipSignatures) then begin - SetLength(SkipSigs, srsSkipSignatures.Count); - for i := 0 to Pred(srsSkipSignatures.Count) do - SkipSigs[i] := StrToSignature(srsSkipSignatures[i]); - end; - Self.Create(defPriority, defRequired, noName, srsMembers, SkipSigs, noDontShow, srsAllowUnordered, noAfterLoad, noAfterSet, defGetCP).defSource := aSource; - end; -end; - -function TwbSubRecordStructDef.ContainsMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; -var - Dummy: Integer; -begin - Result := srsSignatures.Find(aSignature, Dummy); -end; - -constructor TwbSubRecordStructDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aDontShow : TwbDontShowCallback; - aAllowUnordered : Boolean; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aGetCP : TwbGetConflictPriority); -var - i,j: Integer; - FoundRequired : Boolean; -begin - srsAllowUnordered := aAllowUnordered; - srsSignatures := TwbFastStringListCS.CreateSorted(dupIgnore); - - FoundRequired := False; - SetLength(srsMembers, Length(aMembers)); - for i := Low(srsMembers) to High(srsMembers) do begin - srsMembers[i] := (aMembers[i] as IwbDefInternal).SetParent(Self, False) as IwbRecordMemberDef; - srsCanContainFormIDs := srsCanContainFormIDs or aMembers[i].CanContainFormIDs; - FoundRequired := FoundRequired or srsMembers[i].Required; - for j := 0 to Pred(aMembers[i].SignatureCount) do - srsSignatures.AddObject(aMembers[i].Signatures[j], Pointer(i) ); - end; - - if Length(aSkipSigs) > 0 then begin - srsSkipSignatures := TwbFastStringListCS.CreateSorted(dupIgnore); - for i := Low(aSkipSigs) to High(aSkipSigs) do - srsSkipSignatures.Add(aSkipSigs[i]); - end; - - inherited Create(aPriority, aRequired, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP, False); - - if srsAllowUnordered and not FoundRequired then - raise Exception.Create(GetPath + ' must contain at least one required element'); -end; - -destructor TwbSubRecordStructDef.Destroy; -begin - inherited; - FreeAndNil(srsSignatures); - FreeAndNil(srsSkipSignatures); -end; - -function TwbSubRecordStructDef.GetDefType: TwbDefType; -begin - Result := dtSubRecordStruct; -end; - -function TwbSubRecordStructDef.GetDefTypeName: string; -begin - Result := 'SubRecordStruct'; -end; - -function TwbSubRecordStructDef.GetMember(aIndex: Integer): IwbRecordMemberDef; -begin - Result := srsMembers[aIndex]; -end; - -function TwbSubRecordStructDef.GetMemberCount: Integer; -begin - Result := Length(srsMembers); -end; - -function TwbSubRecordStructDef.GetMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : IwbRecordMemberDef; -var - i: Integer; -begin - if srsSignatures.Find(aSignature, i) then - Result := srsMembers[Integer(srsSignatures.Objects[i])] - else - Result := nil; -end; - -function TwbSubRecordStructDef.GetMemberIndexFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Integer; -var - i: Integer; -begin - if srsSignatures.Find(aSignature, i) then - Result := Integer(srsSignatures.Objects[i]) - else - Result := -1; -end; - -function TwbSubRecordStructDef.GetQuickInitLimit: Integer; -begin - Result := -1; -end; - -function TwbSubRecordStructDef.GetRecordHeaderStruct: IwbStructDef; -begin - Result := wbMainRecordHeader; -end; - -function TwbSubRecordStructDef.GetContainsEditorID: Boolean; -begin - Result := False; -end; - -function TwbSubRecordStructDef.GetDefaultSignature: TwbSignature; -begin - Result := srsMembers[0].GetDefaultSignature; -end; - -function TwbSubRecordStructDef.GetSignatureCount: Integer; -begin - if srsAllowUnordered then - Result := srsSignatures.Count - else - Result := srsMembers[0].GetSignatureCount; -end; - -function TwbSubRecordStructDef.GetSignatures(const aIndex: Integer): TwbSignature; -begin - if srsAllowUnordered then - Result := StrToSignature(srsSignatures[aIndex]) - else - Result := srsMembers[0].GetSignatures(aIndex); -end; - -function TwbSubRecordStructDef.GetSkipSignature(const aSignature: TwbSignature): Boolean; -var - Dummy: Integer; -begin - Result := Assigned(srsSkipSignatures) and srsSkipSignatures.Find(aSignature, Dummy); -end; - -procedure TwbSubRecordStructDef.Report(const aParents: TwbDefPath); -var - Parents : TwbDefPath; - i : Integer; -begin - if defReported then - Exit; - - inherited; - Parents := aParents; - SetLength(Parents, Succ(Length(Parents))); - Parents[High(Parents)].Def := Self; - for i := Low(srsMembers) to High(srsMembers) do - if Assigned(srsMembers[i]) then begin - Parents[High(Parents)].Index := i; - srsMembers[i].Report(Parents); - end; - - defReported := True; -end; - -{ TwbSubRecordUnionDef } - -function TwbSubRecordUnionDef.AdditionalInfoFor(const aMainRecord: IwbMainRecord): string; -begin - Result := ''; -end; - -function TwbSubRecordUnionDef.AllowUnordered: Boolean; -begin - Result := True; -end; - -function TwbSubRecordUnionDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - SubRecordUnionDef : IwbSubRecordUnionDef; - RecordDef : IwbRecordDef; - i : Integer; -begin - for i := Low(sruMembers) to High(sruMembers) do begin - Result := sruMembers[i].CanAssign(aElement, aIndex, aDef); - if Result = True then - Exit; - end; - - if Supports(aDef, IwbSubRecordUnionDef, SubRecordUnionDef) then begin - Result := Equals(aDef); - if not Result and - Supports(aDef, IwbRecordDef, RecordDef) and - (GetMemberCount = RecordDef.MemberCount)then begin - Result := True; - for i := 0 to Pred(GetMemberCount) do - if not sruMembers[i].CanAssign(aElement, aIndex, RecordDef.Members[i]) then begin - Result := False; - Break; - end; - end; - end else - Result := False; -end; - -function TwbSubRecordUnionDef.CanContainFormIDs: Boolean; -begin - Result := sruCanContainFormIDs; -end; - -function TwbSubRecordUnionDef.CanHandle(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; -var - i: Integer; -begin - Result := False; - for i := Low(sruMembers) to High(sruMembers) do begin - Result := sruMembers[i].CanHandle(aSignature, aDataContainer); - if Result then - Exit; - end; -end; - -constructor TwbSubRecordUnionDef.Clone(const aSource: TwbDef); -var - SkipSigs : array of TwbSignature; - i : Integer; -begin - with aSource as TwbSubRecordUnionDef do begin - if Assigned(sruSkipSignatures) then begin - SetLength(SkipSigs, sruSkipSignatures.Count); - for i := 0 to Pred(sruSkipSignatures.Count) do - SkipSigs[i] := StrToSignature(sruSkipSignatures[i]); - end; - Self.Create(defPriority, defRequired, noName, sruMembers, SkipSigs, noDontShow, defGetCP).defSource := aSource; - end; -end; - -function TwbSubRecordUnionDef.ContainsMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Boolean; -begin - Result := CanHandle(aSignature, aDataContainer); -end; - -constructor TwbSubRecordUnionDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority); -var - i,j: Integer; -begin - sruSignatures := TwbFastStringListCS.CreateSorted(dupIgnore); - - SetLength(sruMembers, Length(aMembers)); - for i := Low(sruMembers) to High(sruMembers) do begin - sruMembers[i] := (aMembers[i] as IwbDefInternal).SetParent(Self, False) as IwbRecordMemberDef; - sruCanContainFormIDs := sruCanContainFormIDs or aMembers[i].CanContainFormIDs; - for j := 0 to Pred(aMembers[i].SignatureCount) do - sruSignatures.AddObject(aMembers[i].Signatures[j], Pointer(i)); - end; - - if Length(aSkipSigs) > 0 then begin - sruSkipSignatures := TwbFastStringListCS.CreateSorted(dupIgnore); - for i := Low(aSkipSigs) to High(aSkipSigs) do - sruSkipSignatures.Add(aSkipSigs[i]); - end; - - inherited Create(aPriority, aRequired, aName, nil, nil, aDontShow, aGetCP, False); -end; - -destructor TwbSubRecordUnionDef.Destroy; -begin - inherited; - FreeAndNil(sruSignatures); -end; - -function TwbSubRecordUnionDef.GetContainsEditorID: Boolean; -begin - Result := False; -end; - -function TwbSubRecordUnionDef.GetDefaultSignature: TwbSignature; -begin - Result := sruMembers[0].GetDefaultSignature; -end; - -function TwbSubRecordUnionDef.GetDefType: TwbDefType; -begin - Result := dtSubRecordUnion; -end; - -function TwbSubRecordUnionDef.GetDefTypeName: string; -begin - Result := 'SubRecordUnion'; -end; - -function TwbSubRecordUnionDef.GetMember(aIndex: Integer): IwbRecordMemberDef; -begin - Result := sruMembers[aIndex]; -end; - -function TwbSubRecordUnionDef.GetMemberCount: Integer; -begin - Result := Length(sruMembers); -end; - -function TwbSubRecordUnionDef.GetMemberFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : IwbRecordMemberDef; -var - i: Integer; -begin - Result := nil; - for i := Low(sruMembers) to High(sruMembers) do begin - if sruMembers[i].CanHandle(aSignature, aDataContainer) then begin - Result := sruMembers[i]; - Exit; - end; - end; -end; - -function TwbSubRecordUnionDef.GetMemberIndexFor(aSignature : TwbSignature; - const aDataContainer : IwbDataContainer) - : Integer; -var - i: Integer; -begin - Result := -1; - for i := Low(sruMembers) to High(sruMembers) do begin - if sruMembers[i].CanHandle(aSignature, aDataContainer) then begin - Result := i; - Exit; - end; - end; -end; - -function TwbSubRecordUnionDef.GetQuickInitLimit: Integer; -begin - Result := -1; -end; - -function TwbSubRecordUnionDef.GetRecordHeaderStruct: IwbStructDef; -begin - Result := wbMainRecordHeader; -end; - -function TwbSubRecordUnionDef.GetSignatureCount: Integer; -var - i: Integer; -begin - Result := 0; - for i := Low(sruMembers) to High(sruMembers) do - Inc(Result, sruMembers[i].GetSignatureCount); -end; - -function TwbSubRecordUnionDef.GetSignatures(const aIndex: Integer): TwbSignature; -var - i, j, k: Integer; -begin - j := aIndex; - for i := Low(sruMembers) to High(sruMembers) do begin - k := sruMembers[i].GetSignatureCount; - if k > 0 then begin - if j >= k then - Dec(j, k) - else begin - Result := sruMembers[i].GetSignatures(Pred(k)); - Exit; - end; - end; - end; - raise Exception.Create('Invalid index'); -end; - -function TwbSubRecordUnionDef.GetSkipSignature(const aSignature: TwbSignature): Boolean; -var - Dummy: Integer; -begin - Result := Assigned(sruSkipSignatures) and sruSkipSignatures.Find(aSignature, Dummy); -end; - -procedure TwbSubRecordUnionDef.Report(const aParents: TwbDefPath); -var - Parents : TwbDefPath; - i : Integer; -begin - if defReported then - Exit; - - inherited; - Parents := aParents; - SetLength(Parents, Succ(Length(Parents))); - Parents[High(Parents)].Def := Self; - for i := Low(sruMembers) to High(sruMembers) do - if Assigned(sruMembers[i]) then begin - Parents[High(Parents)].Index := i; - sruMembers[i].Report(Parents); - end; - - defReported := True; -end; - -function wbReadInteger24(aBasePtr: pointer): Int64; -var - Buffer : array[0..3] of Byte; -begin - Result := 0; - Buffer[3] := 0; - Buffer[2] := PByte(aBasePtr)^; aBasePtr := Pointer(Cardinal(aBasePtr)+1); - Buffer[1] := PByte(aBasePtr)^; aBasePtr := Pointer(Cardinal(aBasePtr)+1); - Buffer[0] := PByte(aBasePtr)^; - Move(Buffer, Result, SizeOf(Result)); -end; - -procedure WriteInteger24(aBasePtr: pointer; aValue: Int64); -var - Buffer : array[0..3] of Byte; -begin - Move(aValue, Buffer, SizeOf(aValue)); - PByte(aBasePtr)^ := Buffer[2]; aBasePtr := Pointer(Cardinal(aBasePtr)+1); - PByte(aBasePtr)^ := Buffer[1]; aBasePtr := Pointer(Cardinal(aBasePtr)+1); - PByte(aBasePtr)^ := Buffer[0]; -end; - -function ReadIntegerCounterSize(aBasePtr: pointer): Int64; -var - Key : Byte; -begin - if Assigned(aBasePtr) then begin - Key := $3 and PByte(aBasePtr)^; // The counter length is coded into the 2 least significant bits - case key of - 0: Result := 1; - 1: Result := 2; - 2: Result := 4; - else - Result := 1; - end - end else - Result := 1; // Minimum size -end; - -function ReadIntegerCounter(aBasePtr: pointer): Int64; -var - Key : Byte; -begin - Result := 0; - if Assigned(aBasePtr) then begin - Key := $3 and PByte(aBasePtr)^; // The counter length is coded into the 2 least significant bits - case key of - 0: Move(PByte(aBasePtr)^, Result, 1); // The 6 remaining bits are the count. - 1: Move(PWord(aBasePtr)^, Result, 2); // 6 + 8 bits of count - 2: Move(PCardinal(aBasePtr)^, Result, 4); // 6 + 24 bits of count - 3: ; // Not supposed to exist : zeroed out by the engine - end; - Result := Result shr 2; - end; -end; - -procedure WriteIntegerCounter(aBasePtr: pointer; aValue: Int64); -var - Buffer : array[0..3] of Byte; -begin - if Assigned(aBasePtr) then begin - Move(aValue, Buffer, SizeOf(aValue)); - if Buffer[3] > 0 then begin // 4 bytes counter - Buffer[3] := (Buffer[3] shl 2 ) or 3; - PByte(aBasePtr)^ := Buffer[3]; aBasePtr := Pointer(Cardinal(aBasePtr)+1); - PByte(aBasePtr)^ := Buffer[2]; aBasePtr := Pointer(Cardinal(aBasePtr)+1); - PByte(aBasePtr)^ := Buffer[1]; aBasePtr := Pointer(Cardinal(aBasePtr)+1); - PByte(aBasePtr)^ := Buffer[0]; - end else if Buffer[2] > 0 then begin - Buffer[2] := (Buffer[3] shl 2 ) or 2; - PByte(aBasePtr)^ := Buffer[2]; aBasePtr := Pointer(Cardinal(aBasePtr)+1); - PByte(aBasePtr)^ := Buffer[1]; aBasePtr := Pointer(Cardinal(aBasePtr)+1); - PByte(aBasePtr)^ := Buffer[0]; - end else if Buffer[1] > 0 then begin - Buffer[1] := (Buffer[1] shl 2 ) or 1; - PByte(aBasePtr)^ := Buffer[1]; aBasePtr := Pointer(Cardinal(aBasePtr)+1); - PByte(aBasePtr)^ := Buffer[0]; - end else begin - Buffer[0] := (Buffer[0] shl 2 ) or 0; - PByte(aBasePtr)^ := Buffer[0]; - end; - end; -end; - -{ TwbIntegerDef } - -function TwbIntegerDef.Assign(const aTarget : IwbElement; - aIndex : Integer; - const aSource : IwbElement; - aOnlySK : Boolean) - : IwbElement; -begin - if Assigned(inFormater) then - Result := inFormater.Assign(aTarget, aIndex, aSource, aOnlySK) - else - Result := inherited Assign(aTarget, aIndex, aSource, aOnlySK) -end; - -procedure TwbIntegerDef.BuildRef(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement); -var - Value : Int64; -begin - if Assigned(inFormater) then - if (Cardinal(aEndPtr) - Cardinal(aBasePtr)) >= GetExpectedLength then begin - case inType of - itU8: Value := PByte(aBasePtr)^; - itS8: Value := PShortInt(aBasePtr)^; - itU16: Value := PWord(aBasePtr)^; - itS16: Value := PSmallInt(aBasePtr)^; - itU24: Value := wbReadInteger24(aBasePtr); - itU32: Value := PCardinal(aBasePtr)^; - itS32: Value := PLongInt(aBasePtr)^; - itU64: Value := PUInt64(aBasePtr)^; //no U64 in delphi... - itS64: Value := PInt64(aBasePtr)^; - itU6to30: Value := ReadIntegerCounter(aBasePtr); - else - {it0:} Value := 0; - end; - inFormater.BuildRef(Value, aElement); - end; -end; - -function TwbIntegerDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - IntegerDef : IwbIntegerDef; -begin - Result := Supports(aDef, IwbIntegerDef, IntegerDef); - if Result then begin - if Assigned(inFormater) then - Result := inFormater.CanAssign(aElement, aIndex, IntegerDef.Formater[aElement]) - else if Assigned(IntegerDef.Formater[aElement]) then - Result := IntegerDef.Formater[aElement].CanAssign(aElement, aIndex, GetFormater(aElement)); - end else - if Assigned(inFormater) then - Result := inFormater.CanAssign(aElement, aIndex, aDef); -end; - -function TwbIntegerDef.CanContainFormIDs: Boolean; -begin - Result := Assigned(inFormater) and (inFormater.CanContainFormIDs); -end; - -function TwbIntegerDef.Check(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -var - Len : Cardinal; - Value : Int64; -begin - Result := ''; - Len := Cardinal(aEndPtr) - Cardinal(aBasePtr); - if Len < GetExpectedLength then begin - if wbCheckExpectedBytes then - Result := Format('Expected %d bytes of data, found %d', [GetExpectedLength , Len]) - end else begin - case inType of - itU8: Value := PByte(aBasePtr)^; - itS8: Value := PShortInt(aBasePtr)^; - itU16: Value := PWord(aBasePtr)^; - itS16: Value := PSmallInt(aBasePtr)^; - itU24: Value := wbReadInteger24(aBasePtr); - itU32: Value := PCardinal(aBasePtr)^; - itS32: Value := PLongInt(aBasePtr)^; - itU64: Value := PUInt64(aBasePtr)^; //no U64 in delphi... - itS64: Value := PInt64(aBasePtr)^; - itU6to30: Value := ReadIntegerCounter(aBasePtr); - else - {itU0:} Value := 0; - end; - if Assigned(inFormater) then - Result := inFormater.Check(Value, aElement) - else - Result := ''; - end; -end; - -constructor TwbIntegerDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbIntegerDef do - Self.Create(defPriority, defRequired, noName, inType, inFormater, noDontShow, noAfterSet, inDefault, defGetCP, noTerminator).defSource := aSource; -end; - -function TwbIntegerDef.CompareExchangeFormID(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aOldFormID, aNewFormID: Cardinal): Boolean; -var - i: Int64; -begin - if Assigned(inFormater) then begin - i := ToInt(aBasePtr, aEndPtr, aElement); - Result := inFormater.CompareExchangeFormID(i, aOldFormID, aNewFormID, aElement); - if Result then - FromInt(i, aBasePtr, aEndPtr, aElement); - end else - Result := inherited CompareExchangeFormID(aBasePtr, aEndPtr, aElement, aOldFormID, aNewFormID); -end; - -constructor TwbIntegerDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aIntType : TwbIntType; - const aFormater : IwbIntegerDefFormater; - aDontShow : TwbDontShowCallback; - aAfterSet : TwbAfterSetCallback; - aDefault : Int64; - aGetCP : TwbGetConflictPriority; - aTerminator : Boolean); -begin - inDefault := aDefault; - inType := aIntType; - if Assigned(aFormater) then - inFormater := (aFormater as IwbDefInternal).SetParent(Self, False) as IwbIntegerDefFormater; - inherited Create(aPriority, aRequired, aName, nil, aAfterSet, aDontShow, aGetCP, aTerminator); -end; - -procedure TwbIntegerDef.FindUsedMasters(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aMasters: PwbUsedMasters); -begin - if Assigned(inFormater) then - inFormater.FindUsedMasters(ToInt(aBasePtr, aEndPtr, aElement), aMasters, aElement) - else - inherited FindUsedMasters(aBasePtr, aEndPtr, aElement, aMasters); -end; - -procedure TwbIntegerDef.FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); -var - i: Int64; -begin - if aValue = '' then - i := 0 - else if Assigned(inFormater) then - i := inFormater.FromEditValue(aValue, aElement) - else - i := StrToInt64(aValue); - FromInt(i, aBasePtr, aEndPtr, aElement); -end; - -procedure TwbIntegerDef.FromInt(aValue: Int64; aBasePtr, aEndPtr: Pointer; const aElement: IwbElement); -begin - aElement.RequestStorageChange(aBasePtr, aEndPtr, GetExpectedLength(aValue)); - case inType of - itU8: PByte(aBasePtr)^ := aValue; - itS8: PShortInt(aBasePtr)^ := aValue; - itU16: PWord(aBasePtr)^ := aValue; - itS16: PSmallInt(aBasePtr)^ := aValue; - itU24: WriteInteger24(aBasePtr, aValue); - itU32: PCardinal(aBasePtr)^ := aValue; - itS32: PLongInt(aBasePtr)^ := aValue; - itU64: PUInt64(aBasePtr)^ := aValue; - itS64: PInt64(aBasePtr)^ := aValue; - itU6to30: WriteIntegerCounter(aBasePtr, aValue); - else - {it0: } - end; -end; - -procedure TwbIntegerDef.FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); -begin - aElement.RequestStorageChange(aBasePtr, aEndPtr, GetExpectedLength(aValue)); - case inType of - itS8: PShortInt(aBasePtr)^ := aValue; - itU16: PWord(aBasePtr)^ := aValue; - itS16: PSmallInt(aBasePtr)^ := aValue; - itU24: WriteInteger24(aBasePtr, aValue); - itU32: PCardinal(aBasePtr)^ := aValue; - itS32: PLongInt(aBasePtr)^ := aValue; - itU64: PUInt64(aBasePtr)^ := aValue; - itS64: PInt64(aBasePtr)^ := aValue; - itU6to30: WriteIntegerCounter(aBasePtr, aValue); - else - PByte(aBasePtr)^ := aValue; - end; -end; - -function TwbIntegerDef.GetDefType: TwbDefType; -begin - Result := dtInteger; -end; - -function TwbIntegerDef.GetDefTypeName: string; -begin - if Assigned(inFormater) then - Result := inFormater.GetDefTypeName - else case inType of - itS8: Result := 'Signed Byte'; - itU16: Result := 'Unsigned Word'; - itS16: Result := 'Signed Word'; - itU24: Result := 'RefID'; - itU32: Result := 'Unsigned DWord'; - itS32: Result := 'Signed DWord'; - itU64: Result := 'Unsigned QWord'; - itS64: Result := 'Signed QWord'; - itU6to30: Result := 'Counter'; - else - Result := 'Unsigned Byte'; - end; -end; - -function TwbIntegerDef.GetEditInfo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -begin - if Assigned(inFormater) then - Result := inFormater.EditInfo[ToInt(aBasePtr, aEndPtr, aElement), aElement] - else - Result := inherited GetEditInfo(aBasePtr, aEndPtr, aElement); -end; - -function TwbIntegerDef.GetEditType(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): TwbEditType; -begin - if Assigned(inFormater) then - Result := inFormater.EditType[ToInt(aBasePtr, aEndPtr, aElement), aElement] - else - Result := inherited GetEditType(aBasePtr, aEndPtr, aElement); -end; - -function TwbIntegerDef.GetExpectedLength(aValue: Int64 = 0): Integer; -const - ExpectedLen : array[TwbIntType] of Cardinal = ( - 0, 1, 1, 2, 2, 4, 4, 8, 8, 3, 1 - ); -begin - if inType = it0 then - Result := 0 - else begin - Result := ExpectedLen[inType]+Ord(noTerminator); - if (inType=itU6to30) and (aValue<>0) then - case (aValue and 3) of - 0 : Result := 1 + Ord(noTerminator); - 1 : Result := 2 + Ord(noTerminator); - 2 : Result := 4 + Ord(noTerminator); - end; - end; -end; - -function TwbIntegerDef.GetFormater(const aElement: IwbElement): IwbIntegerDefFormater; -var - Union: IwbIntegerDefFormaterUnion; -begin - Result := inFormater; - while Supports(Result, IwbIntegerDefFormaterUnion, Union) do - Result := Union.Decide(aElement); -end; - -function TwbIntegerDef.GetFormaterCanChange: Boolean; -begin - Result := Supports(inFormater, IwbIntegerDefFormaterUnion); -end; - -function TwbIntegerDef.GetIntType: TwbIntType; -begin - Result := inType; -end; - -function TwbIntegerDef.GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -begin - Result := wbIsInternalEdit or (not Assigned(inFormater) or inFormater.IsEditable[ToInt(aBasePtr, aEndPtr, aElement), aElement]); -end; - -function TwbIntegerDef.GetLinksTo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): IwbElement; -var - Value : Int64; -begin - Result := nil; - if Assigned(inFormater) then - if (Cardinal(aEndPtr) - Cardinal(aBasePtr)) >= GetExpectedLength then begin - case inType of - itU8: Value := PByte(aBasePtr)^; - itS8: Value := PShortInt(aBasePtr)^; - itU16: Value := PWord(aBasePtr)^; - itS16: Value := PSmallInt(aBasePtr)^; - itU24: Value := wbReadInteger24(aBasePtr); - itU32: Value := PCardinal(aBasePtr)^; - itS32: Value := PLongInt(aBasePtr)^; - itU64: Value := PUInt64(aBasePtr)^; //no U64 in delphi... - itS64: Value := PInt64(aBasePtr)^; - itU6to30: Value := ReadIntegerCounter(aBasePtr); - else - {it0:} Value := 0; - end; - Result := inFormater.LinksTo[Value, aElement]; - end; -end; - -function TwbIntegerDef.GetNoReach: Boolean; -begin - Result := Assigned(inFormater) and inFormater.NoReach; -end; - -function TwbIntegerDef.GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if inType = it0 then - Result := 0 - else if Assigned(aBasePtr) and Assigned(aEndPtr) and (Cardinal(aBasePtr) NewValue then - FromInt(NewValue, aBasePtr, aEndPtr, aElement) - end else - inherited MasterCountUpdated(aBasePtr, aEndPtr, aElement, aOld, aNew); -end; - -procedure TwbIntegerDef.MasterIndicesUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aOld, aNew: TBytes); -var - OldValue : Int64; - NewValue : Int64; -begin - if Assigned(inFormater) then begin - OldValue := ToInt(aBasePtr, aEndPtr, aElement); - NewValue := inFormater.MasterIndicesUpdated(OldValue, aOld, aNew, aElement); - if OldValue <> NewValue then - FromInt(NewValue, aBasePtr, aEndPtr, aElement) - end else - inherited MasterIndicesUpdated(aBasePtr, aEndPtr, aElement, aOld, aNew); -end; - -procedure TwbIntegerDef.ReplaceFormater(const aFormater: IwbIntegerDefFormater); -begin - defSource := nil; - if Assigned(aFormater) then - inFormater := (aFormater as IwbDefInternal).SetParent(Self, True) as IwbIntegerDefFormater - else - inFormater := nil -end; - -procedure TwbIntegerDef.Report(const aParents: TwbDefPath); -var - Parents : TwbDefPath; -begin - if defReported then - Exit; - - inherited; - if Assigned(inFormater) then begin - Parents := aParents; - SetLength(Parents, Succ(Length(Parents))); - Parents[High(Parents)].Def := Self; - Parents[High(Parents)].Index := -1; - inFormater.Report(aParents); - end; - - defReported := True; -end; - -function TwbIntegerDef.SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -begin - Result := not Assigned(aBasePtr) or (ToInt(aBasePtr, aEndPtr, aElement) <> inDefault); - if Result then - FromInt(inDefault, aBasePtr, aEndPtr, aElement); -end; - -function IntToHex64(Value: Int64; Digits: Integer): string; -begin - Result := IntToHex(Value, Digits); -end; - - -function TwbIntegerDef.ToEditValue(aBasePtr, aEndPtr: Pointer; - const aElement: IwbElement): string; -var - Len : Cardinal; - Value : Int64; -const - PlusMinus : array[Boolean] of string = ('+', '-'); -begin - Len := Cardinal(aEndPtr) - Cardinal(aBasePtr); - if (Len < GetExpectedLength) or (inType = it0) then - Result := '' - else begin - case inType of - itU8: Value := PByte(aBasePtr)^; - itS8: Value := PShortInt(aBasePtr)^; - itU16: Value := PWord(aBasePtr)^; - itS16: Value := PSmallInt(aBasePtr)^; - itU24: Value := wbReadInteger24(aBasePtr); - itU32: Value := PCardinal(aBasePtr)^; - itS32: Value := PLongInt(aBasePtr)^; - itU64: Value := PUInt64(aBasePtr)^; //no U64 in delphi... - itS64: Value := PInt64(aBasePtr)^; - itU6to30: Value := ReadIntegerCounter(aBasePtr); - else - {it0:} Value := 0; - end; - - Result := ''; - if Assigned(inFormater) then - Result := inFormater.ToEditValue(Value, aElement); - - if Result = '' then - Result := IntToStr(Value); - end; -end; - -function TwbIntegerDef.ToInt(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Int64; -var - Len : Cardinal; -begin - Len := Cardinal(aEndPtr) - Cardinal(aBasePtr); - if Len < GetExpectedLength then - Result := 0 - else - case inType of - itU8: Result := PByte(aBasePtr)^; - itS8: Result := PShortInt(aBasePtr)^; - itU16: Result := PWord(aBasePtr)^; - itS16: Result := PSmallInt(aBasePtr)^; - itU24: Result := wbReadInteger24(aBasePtr); - itU32: Result := PCardinal(aBasePtr)^; - itS32: Result := PLongInt(aBasePtr)^; - itU64: Result := PUInt64(aBasePtr)^; //no U64 in delphi... - itS64: Result := PInt64(aBasePtr)^; - itU6to30: Result := ReadIntegerCounter(aBasePtr); - else - {it0:} Result := 0; - end; -end; - -function TwbIntegerDef.ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; -begin - if (Cardinal(aEndPtr) - Cardinal(aBasePtr)) < GetExpectedLength then - VarClear(Result) - else - case inType of - itU8: Result := PByte(aBasePtr)^; - itS8: Result := PShortInt(aBasePtr)^; - itU16: Result := PWord(aBasePtr)^; - itS16: Result := PSmallInt(aBasePtr)^; - itU24: Result := wbReadInteger24(aBasePtr); - itU32: Result := PCardinal(aBasePtr)^; - itS32: Result := PLongInt(aBasePtr)^; - itU64: Result := PUInt64(aBasePtr)^; //no U64 in delphi... - itS64: Result := PInt64(aBasePtr)^; - itU6to30: Result := ReadIntegerCounter(aBasePtr); - else - {it0:} Result := 0; - end; -end; - -function TwbIntegerDef.ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; -var - Len : Cardinal; - Value : Int64; -const - PlusMinus : array[Boolean] of string = ('+', '-'); -begin - Len := Cardinal(aEndPtr) - Cardinal(aBasePtr); - if Len < GetExpectedLength then - if Assigned(inFormater) and inFormater.RequiresKey then - Result := inFormater.ToSortKey(0, aElement) - else - Result := '' - else begin - case inType of - itU8: Value := PByte(aBasePtr)^; - itS8: Value := PShortInt(aBasePtr)^; - itU16: Value := PWord(aBasePtr)^; - itS16: Value := PSmallInt(aBasePtr)^; - itU24: Value := wbReadInteger24(aBasePtr); - itU32: Value := PCardinal(aBasePtr)^; - itS32: Value := PLongInt(aBasePtr)^; - itU64: Value := PUInt64(aBasePtr)^; //no U64 in delphi... - itS64: Value := PInt64(aBasePtr)^; - itU6to30: Value := ReadIntegerCounter(aBasePtr); - else - {it0:} Value := 0; - end; - - Result := ''; - if Assigned(inFormater) then - Result := inFormater.ToSortKey(Value, aElement); - - if Result = '' then begin - case inType of - itS8: Value := Value + Abs(Int64(Low(ShortInt))); - itS16: Value := Value + Abs(Int64(Low(SmallInt))); - itS32: Value := Value + Abs(Int64(Low(LongInt))); - itS64: Value := Value + Abs(Int64(Low(Int64))); - end; - Result := Result + IntToHex64(Value, Succ(GetExpectedLength(Value) * 2)); - end; - end; -end; - -function TwbIntegerDef.ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -var - Len : Cardinal; - Value : Int64; -begin - Result := ''; - - if inType = it0 then - Exit; - - Len := Cardinal(aEndPtr) - Cardinal(aBasePtr); - if Len < GetExpectedLength then begin - if wbCheckExpectedBytes then - Result := Format('', [GetExpectedLength, Len]) - end else begin - case inType of - itU8: Value := PByte(aBasePtr)^; - itS8: Value := PShortInt(aBasePtr)^; - itU16: Value := PWord(aBasePtr)^; - itS16: Value := PSmallInt(aBasePtr)^; - itU24: Value := wbReadInteger24(aBasePtr); - itU32: Value := PCardinal(aBasePtr)^; - itS32: Value := PLongInt(aBasePtr)^; - itU64: Value := PUInt64(aBasePtr)^; //no U64 in delphi... - itS64: Value := PInt64(aBasePtr)^; - itU6to30: Value := ReadIntegerCounter(aBasePtr); - else - {it0:} Value := 0; - end; - if Assigned(inFormater) then - Result := inFormater.ToString(Value, aElement) - else - Result := IntToStr(Value); - if (Len > GetExpectedLength) and not (inType in [itU6to30]) then begin - if wbCheckExpectedBytes then - Result := Result + Format(' ', [GetExpectedLength , Len]) - end; - end; - Used(aElement, Result); -end; - -{ TwbArrayDef } - -constructor TwbArrayDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aElement : IwbValueDef; - aCount : Integer; - const aLabels : array of string; - aSorted : Boolean; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority; - aCanAddTo : Boolean; - aTerminator : Boolean; - aTerminated : Boolean); -var - i: Integer; -begin - Assert((not aSorted) or (Length(aLabels) < 1)); - - SetLength(arLabels, Length(aLabels)); - for i := Low(arLabels) to High(arLabels) do - arLabels[i] := aLabels[i]; - - arCount := aCount; - if Assigned(aElement) then - arElement := (aElement as IwbDefInternal).SetParent(Self, False) as IwbValueDef; - arSorted := aSorted; - arCanAddTo := aCanAddTo; - arTerminated := aTerminated; - inherited Create(aPriority, aRequired, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP, aTerminator); -end; - -function TwbArrayDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - ArrayDef: IwbArrayDef; -begin - Result := (aIndex = Low(Integer)) and - Supports(aDef, IwbArrayDef, ArrayDef) and - ( ( arCount <= 0 ) or (arCount = ArrayDef.ElementCount) ) and - arElement.CanAssign(aElement, aIndex, ArrayDef.Element); -end; - -function TwbArrayDef.CanContainFormIDs: Boolean; -begin - Result := arElement.CanContainFormIDs; -end; - -constructor TwbArrayDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbArrayDef do - if Assigned(arCountCallback) then - Self.Create(defPriority, defRequired, noName, arElement, arCountCallback, - arLabels, arSorted, noAfterLoad, noAfterSet, noDontShow, defGetCP, arCanAddTo, noTerminator, arTerminated).defSource := aSource - else - Self.Create(defPriority, defRequired, noName, arElement, arCount, - arLabels, arSorted, noAfterLoad, noAfterSet, noDontShow, defGetCP, arCanAddTo, noTerminator, arTerminated).defSource := aSource; -end; - -constructor TwbArrayDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aElement : IwbValueDef; - aCountCallback : TwbCountCallback; - const aLabels : array of string; - aSorted : Boolean; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority; - aCanAddTo : Boolean; - aTerminator : Boolean; - aTerminated : Boolean); -begin - arCountCallback := aCountCallback; - Create(aPriority, aRequired, aName, aElement, 0, aLabels, aSorted, aAfterLoad, aAfterSet, aDontShow, aGetCP, aCanAddTo, aTerminator, aTerminated); -end; - -function TwbArrayDef.GetCanAddTo: Boolean; -begin - Result := arCanAddTo; -end; - -function TwbArrayDef.GetCanBeZeroSize: Boolean; -begin - Result := True; -end; - -function TwbArrayDef.GetCount: Integer; -begin - Result := arCount; -end; - -function TwbArrayDef.GetCountCallBack: TwbCountCallback; -begin - Result := arCountCallBack; -end; - -function TwbArrayDef.GetDefType: TwbDefType; -begin - Result := dtArray; -end; - -function TwbArrayDef.GetDefTypeName: string; -var - Prefix: Integer; -begin - if arCount < 0 then begin - if arCount < -1 then - if arCount < -2 then - Prefix := 1 - else - Prefix := 2 - else - Prefix := 4; - if noTerminator then - Result := 'Separated Array with '+IntToStr(Prefix)+' Bytes Counter of ' - else - Result := 'Array with '+IntToStr(Prefix)+' Bytes Counter of '; - end else begin - if (arCount < 1) and Assigned(arCountCallback) then - if noTerminator then - Result := 'Separated Variable Count Array' - else - Result := 'Variable Count Array' - else if arCount > 0 then - if noTerminator then - Result := 'Separated Array of '+IntToStr(arCount)+' ' - else - Result := 'Array of '+IntToStr(arCount)+' ' - else - if noTerminator then - Result := 'Separated Array of ' - else - Result := 'Array of '; - end; - Result := Result + GetElement.GetDefTypeName; -end; - -function TwbArrayDef.GetElement: IwbValueDef; -begin - Result := arElement; -end; - -function TwbArrayDef.GetElementLabel(aIndex: Integer): string; -begin - if (aIndex >= Low(arLabels)) and (aIndex <= High(arLabels)) then - Result := arLabels[aIndex] - else - Result := ''; -end; - -function TwbArrayDef.GetIsVariableSizeInternal: Boolean; -begin - Result := (arCount <= 0) or arElement.IsVariableSize; -end; - -function TwbArrayDef.GetPrefixCount(aBasePtr: Pointer): Cardinal; -var - Count : int64; -begin - Result := 0; - if arCount = -255 then - Result := 0 - else if arCount = -254 then - Result := ReadIntegerCounter(aBasePtr) - else if arCount = -253 then begin // Matrix of count * count - Count := ReadIntegerCounter(aBasePtr); - Result := Count * Count; - end - else if arCount = -241 then begin // Matrix of cardinal * cardinal - Count := PCardinal(aBasePtr)^; - Result := Count * Count; - end - else if Assigned(aBasePtr) then - case GetPrefixlength(aBasePtr) of - 1: Result := PByte(aBasePtr)^; - 2: Result := PWord(aBasePtr)^; - 4: Result := PCardinal(aBasePtr)^; - end; -end; - -function TwbArrayDef.GetPrefixLength(aBasePtr: Pointer): Integer; -begin - Result := 0; - if arCount < 0 then - if arCount = -1 then - Result := 4 - else if arCount = -2 then - Result := 2 - else if arCount = -4 then - Result := 1 - else if arCount = -241 then - Result := 4 - else if arCount = -253 then - Result := ReadIntegerCounterSize(aBasePtr) - else if arCount = -254 then - Result := ReadIntegerCounterSize(aBasePtr); -end; - -function TwbArrayDef.GetPrefixSize(aBasePtr: Pointer): Integer; -begin - Result := GetPrefixLength(aBasePtr); - if (Result>0) and noTerminator then - Inc(Result); -end; - -function TwbArrayDef.GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Prefix : Integer; - Count : Integer; - Index : Integer; // Used instead of count for easier debugging output. - Size : Integer; - BasePtr : Pointer; - CheckedContainer : Boolean; - ArrayContainer : IwbContainerElementRef; - Element : IwbElement; - DataContainer : IwbDataContainer; - KnownSize : Boolean; -// aName : String; - - function CheckContainer: IwbContainerElementRef; - begin - if Assigned(aElement) and (aElement.ValueDef.DefID = GetDefID) then - Supports(aElement, IwbContainerElementRef, ArrayContainer); - Result := ArrayContainer; - CheckedContainer := True; - end; - - function Container: IwbContainerElementRef; - begin - if CheckedContainer then - Result := ArrayContainer - else - Result := CheckContainer; - end; - -begin - Result := 0; - CheckedContainer := False; - ArrayContainer := nil; - - if Assigned(aBasePtr) and Assigned(aEndPtr) and (Cardinal(aEndPtr) '+IntToHex64(Cardinal(aEndPtr), 8)+' for '+noName); - Exit; - end; - - Prefix := GetPrefixSize(aBasePtr); - BasePtr := aBasePtr; - Count := arCount; - if Count < 0 then begin - Count := GetPrefixCount(aBasePtr); - Result := Prefix; - end else begin - if (Count < 1) and Assigned(arCountCallback) and not (Container=nil) then - Count := arCountCallback(BasePtr, aEndPtr, ArrayContainer); - - if not Assigned(BasePtr) and (Count < 1) and not Assigned(arCountCallback) then // EXPERIMENT: Probably should not be done - Count := 1; - - if (Count < 1) and not Assigned(arCountCallback) then begin - Result := High(Integer); - Exit; - end; - end; - - if Assigned(BasePtr) then - Inc(PByte(BasePtr), Prefix); - - if Count > 0 then - if arElement.IsVariableSize then begin - if Container = nil then begin // Make sure it won't be used if unassigned, and still delay FindOurself until it is effectivly required - if not Assigned(BasePtr) then - Result := arElement.DefaultSize[nil, nil, aElement] - else - Result := High(Integer); - Exit; - end; - - if ArrayContainer.ElementCount = Count then begin - KnownSize := True; - for Index := 0 to Pred(Count) do begin - Element := ArrayContainer.Elements[Index]; - if Supports(Element, IwbDataContainer, DataContainer) then begin - Size := Cardinal(DataContainer.DataEndPtr)-Cardinal(DataContainer.DataBasePtr); - Inc(Result, Size); - end else begin - KnownSize := False; - Break; - end; - end; - end else - KnownSize := False; - - Index := 0; - if not KnownSize then - while (Count > Index) and (Cardinal(BasePtr) < Cardinal(aEndPtr)) do begin - Element := ArrayContainer.Elements[Index]; - if not Assigned(Element) then begin - if wbMoreInfoForIndex and (DebugHook <> 0) and Assigned(wbProgressCallback) then - wbProgressCallback('Debug: ['+ ArrayContainer.Path +'] Index ' + IntToStr(Index) + ' of ' + IntToStr(Count) + ' greater than max '+ - IntToStr(ArrayContainer.ElementCount-1)); - Element := aElement; // If it is too soon, revert to previous way of doing things - end; - Size := arElement.Size[BasePtr, aEndPtr, Element]; - if Size = High(Integer) then begin - Result := High(Integer); - Exit; - end; - Inc(Result, Size); - if Assigned(aBasePtr) and Assigned(aEndPtr) and (Cardinal(aEndPtr)aBasePtr) then -// wbProgressCallback('Found an array with a negative size! (2) '+IntToHex64(Cardinal(aBasePtr)+Result, 8)+ -// ' > '+IntToHex64(Cardinal(aEndPtr), 8)+' for '+noName); - Result := Cardinal(aEndPtr)-Cardinal(aBasePtr)+Result; - Exit; - end; - if Assigned(BasePtr) then - Inc(PByte(BasePtr), Size); - Inc(Index); - end; - - end else begin - if (Container <> nil) and (ArrayContainer.ElementCount > 0) then - Element := ArrayContainer.Elements[0] - else - Element := aElement; - - Size := arElement.Size[BasePtr, aEndPtr, Element]; - if Size = High(Integer) then begin - Result := High(Integer); - Exit; - end; - Result := (Count * Size) + Prefix; - if Assigned(aBasePtr) and Assigned(aEndPtr) and (Cardinal(aEndPtr)aBasePtr) then -// wbProgressCallback('Found a static array with a negative size! (3) '+IntToHex64(Cardinal(aBasePtr)+Result, 8)+ -// ' > '+IntToHex64(Cardinal(aEndPtr), 8)+' for '+noName); - Result := Cardinal(aEndPtr)-Cardinal(aBasePtr); - Exit; - end; - end; - Inc(Result, Ord(arTerminated)); -end; - -function TwbArrayDef.GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if ((arCount = 0) and not Assigned(arCountCallback)) then - Result := 0 - else - Result := GetSize(aBasePtr, aEndPtr, aElement); -end; - -function TwbArrayDef.GetSorted: Boolean; -begin - if wbCopyIsRunning = 0 then - Result := arSorted - else - Result := False; -end; - -procedure TwbArrayDef.Report(const aParents: TwbDefPath); -var - Parents : TwbDefPath; -begin - if defReported then - Exit; - - inherited; - if Assigned(arElement) then begin - Parents := aParents; - SetLength(Parents, Succ(Length(Parents))); - Parents[High(Parents)].Def := Self; - Parents[High(Parents)].Index := -1; - arElement.Report(aParents); - end; - - defReported := True; -end; - -procedure TwbArrayDef.SetPrefixCount(aBasePtr: Pointer; aValue: Cardinal); -begin - if arCount = -255 then - else if arCount = -254 then - WriteIntegerCounter(aBasePtr, aValue) - else if Assigned(aBasePtr) then - case GetPrefixlength(aBasePtr) of - 1: PByte(aBasePtr)^ := aValue; - 2: PWord(aBasePtr)^ := aValue; - 4: PCardinal(aBasePtr)^ := aValue; - end; -end; - -function TwbArrayDef.ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -begin - Result := ''; - Used(aElement, Result); -end; - -{ TwbStructDef } - -function TwbStructDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - StructDef : IwbStructDef; - i : Integer; -begin - Result := (aIndex = Low(Integer)) and - Supports(aDef, IwbStructDef, StructDef) and - ( GetMemberCount = StructDef.MemberCount); - if Result and not Equals(aDef) then - for i := 0 to Pred(GetMemberCount) do - if not stMembers[i].CanAssign(aElement, Low(Integer), StructDef.Members[i]) then begin - Result := False; - Exit; - end; -end; - -function TwbStructDef.CanContainFormIDs: Boolean; -begin - Result := stCanContainFormIDs; -end; - -constructor TwbStructDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbStructDef do - Self.Create(defPriority, defRequired, noName, stMembers, stSortKey, - stExSortKey, stElementMap, stOptionalFromElement, noDontShow, noAfterLoad, noAfterSet, defGetCP).defSource := aSource; -end; - -constructor TwbStructDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aMembers : array of IwbValueDef; - const aSortKey : array of Integer; - const aExSortKey : array of Integer; - {$IFDEF WIN32} - const aElementMap : array of Cardinal; - {$ENDIF WIN32} - {$IFDEF WIN64} - const aElementMap : array of UInt64; - {$ENDIF WIN64} - aOptionalFromElement : Integer; - aDontShow : TwbDontShowCallback; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aGetCP : TwbGetConflictPriority); -var - i: Integer; -begin - stOptionalFromElement := aOptionalFromElement; - SetLength(stMembers, Length(aMembers)); - for i := Low(stMembers) to High(stMembers) do begin - stMembers[i] := (aMembers[i] as IwbDefInternal).SetParent(Self, False) as IwbValueDef; - stCanContainFormIDs := stCanContainFormIDs or aMembers[i].CanContainFormIDs; - end; - SetLength(stSortKey, Length(aSortKey)); - for i := Low(stSortKey) to High(stSortKey) do - stSortKey[i] := aSortKey[i]; - SetLength(stExSortKey, Length(aExSortKey)); - for i := Low(stExSortKey) to High(stExSortKey) do - stExSortKey[i] := aExSortKey[i]; - SetLength(stElementMap, Length(aElementMap)); - for i := Low(stElementMap) to High(stElementMap) do - stElementMap[i] := aElementMap[i]; - if Length(stElementMap) > 0 then begin - Assert(Length(stElementMap) = Length(stMembers)); - // should really check that the element map only contains valid values - // and that there are no optional elements... - end; - inherited Create(aPriority, aRequired, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP, False); -end; - -function TwbStructDef.GetDefType: TwbDefType; -begin - Result := dtStruct; -end; - -function TwbStructDef.GetDefTypeName: string; -begin - Result := 'Structure'; -end; - -function TwbStructDef.GetElementMap: TDynCardinalArray; -begin - Result := stElementMap; -end; - -function TwbStructDef.GetMember(aIndex: Integer): IwbValueDef; -begin - Result := stMembers[aIndex]; -end; - -function TwbStructDef.GetMemberByName(const aName: string): IwbValueDef; -var - i: Integer; -begin - for i := Low(stMembers) to High(stMembers) do - if SameText(stMembers[i].Name, aName) then - Exit(stMembers[i]); - Result := nil; -end; - -function TwbStructDef.GetMemberCount: Integer; -begin - Result := Length(stMembers); -end; - -function TwbStructDef.GetOptionalFromElement: Integer; -begin - Result := stOptionalFromElement; -end; - -function TwbStructDef.GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - i : Integer; - Size : Integer; - scDef : IwbStructCDef; - BasePtr : Pointer; - Container : IwbContainerElementRef; - Element : IwbElement; -begin - Result := 0; - if Supports(Self, IwbStructCDef, scDef) then begin - scDef.GetSizing(aBasePtr, aEndPtr, aElement, Size); - if Size>0 then begin - Inc(Result, Size); - Exit; - end; - end; - if (Cardinal(aBasePtr) > Cardinal(aEndPtr)) then begin // if aBasePtr >= aEndPtr then no allocation (or error) -// wbProgressCallback('Found a struct with a negative size! (1) '+IntToHex64(Cardinal(aBasePtr), 8)+ -// ' > '+IntToHex64(Cardinal(aEndPtr), 8)+' for '+ noName); - end else if (not Assigned(aBasePtr) or (Cardinal(aBasePtr) = Cardinal(aEndPtr))) and (GetIsVariableSizeInternal) then begin - Result := 0; // assuming we would have called GetDefaultSize otherwise... GetDefaultSize(aBasePtr, aEndPtr, aElement); - end else begin - BasePtr := aBasePtr; - if GetIsVariableSize and Supports(aElement, IwbContainerElementRef, Container) and Equals(Container.ValueDef) and - (Container.ElementCount > 0) then begin - for i := 0 to Pred(Container.ElementCount) do begin - Element := Container.Elements[i]; - Size := Element.ValueDef.Size[BasePtr, aEndPtr, Element]; - if Size = High(Integer) then begin - Result := High(Integer); - Break; - end; - Inc(Result, Size); - if Assigned(aBasePtr) and Assigned(aEndPtr) and (Cardinal(aEndPtr)aBasePtr) then -// wbProgressCallback('Found a struct with a negative size! (2) '+IntToHex64(Cardinal(aBasePtr)+Size, 8)+ -// ' < '+IntToHex64(Cardinal(aEndPtr), 8)+' for '+noName); - Result := Cardinal(aEndPtr)-Cardinal(aBasePtr); - Break; - end; - if Assigned(BasePtr) then - Inc(PByte(BasePtr), Size); - end; - end else - for i := Low(stMembers) to High(stMembers) do begin - Size := stMembers[i].Size[BasePtr, aEndPtr, aElement]; - if Size = High(Integer) then begin - Result := High(Integer); - Break; - end; - Inc(Result, Size); - if Assigned(aBasePtr) and Assigned(aEndPtr) and (Cardinal(aEndPtr)aBasePtr) then -// wbProgressCallback('Found a struct with a negative size! (2) '+IntToHex64(Cardinal(aBasePtr)+Result, 8)+ -// ' > '+IntToHex64(Cardinal(aEndPtr), 8)+' for '+noName); - Result := Cardinal(aEndPtr)-Cardinal(aBasePtr); - Break; - end; - if Assigned(BasePtr) then - Inc(PByte(BasePtr), Size); - end; - end; -end; - -function TwbStructDef.GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - i : Integer; - Size : Integer; -begin - Result := 0; - for i := Low(stMembers) to High(stMembers) do begin - Size := stMembers[i].DefaultSize[aBasePtr, aEndPtr, aElement]; - if Size = High(Integer) then begin - Result := High(Integer); - Break; - end; - if Assigned(aBasePtr) then - Inc(PByte(aBasePtr), Size); - Inc(Result, Size); - end; -end; - -function TwbStructDef.GetIsVariableSizeInternal: Boolean; -var - i : Integer; -begin - Result := False; - for i := Low(stMembers) to High(stMembers) do - if stMembers[i].IsVariableSize then begin - Result := True; - Break; - end; -end; - -procedure TwbStructDef.Report(const aParents: TwbDefPath); -var - Parents : TwbDefPath; - i : Integer; -begin - if defReported then - Exit; - - inherited; - Parents := aParents; - SetLength(Parents, Succ(Length(Parents))); - Parents[High(Parents)].Def := Self; - for i := Low(stMembers) to High(stMembers) do - if Assigned(stMembers[i]) then begin - Parents[High(Parents)].Index := i; - stMembers[i].Report(Parents); - end; - - defReported := True; -end; - -function TwbStructDef.ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; -var - i, j : Integer; - SortMember : Integer; - BasePtr : Pointer; - EndPtr : Pointer; -begin - Result := ''; - if (Length(stSortKey) > 0) or (aExtended and (Length(stExSortKey) > 0)) then begin - for i := Low(stSortKey) to High(stSortKey) do begin - SortMember := stSortKey[i]; - if SortMember <= High(stMembers) then begin - BasePtr := aBasePtr; - for j := Low(stMembers) to Pred(SortMember) do begin - Inc(PByte(BasePtr), stMembers[j].Size[BasePtr, aEndPtr, aElement]); - if Cardinal(BasePtr) > Cardinal(aEndPtr) then - BasePtr := aEndPtr; - end; - - EndPtr := Pointer( Cardinal(BasePtr) + Cardinal(stMembers[SortMember].Size[BasePtr, aEndPtr, aElement]) ); - - if Cardinal(BasePtr) > Cardinal(aEndPtr) then - BasePtr := aEndPtr; - if Cardinal(EndPtr) > Cardinal(aEndPtr) then - EndPtr := aEndPtr; - - Result := Result + stMembers[SortMember].ToSortKey(BasePtr, EndPtr, aElement, aExtended); - end; - - if i < High(stSortKey) then - Result := Result + '|'; - end; - if aExtended then begin - if (Length(stSortKey) > 0) and (Length(stExSortKey) > 0) then - Result := Result + '|'; - - for i := Low(stExSortKey) to High(stExSortKey) do begin - SortMember := stExSortKey[i]; - if SortMember <= High(stMembers) then begin - BasePtr := aBasePtr; - for j := Low(stMembers) to Pred(SortMember) do begin - Inc(PByte(BasePtr), stMembers[j].Size[BasePtr, aEndPtr, aElement]); - if Cardinal(BasePtr) > Cardinal(aEndPtr) then - BasePtr := aEndPtr; - end; - - EndPtr := Pointer( Cardinal(BasePtr) + Cardinal(stMembers[SortMember].Size[BasePtr, aEndPtr, aElement]) ); - - if Cardinal(BasePtr) > Cardinal(aEndPtr) then - BasePtr := aEndPtr; - if Cardinal(EndPtr) > Cardinal(aEndPtr) then - EndPtr := aEndPtr; - - Result := Result + stMembers[SortMember].ToSortKey(BasePtr, EndPtr, aElement, aExtended); - end; - - if i < High(stExSortKey) then - Result := Result + '|'; - end; - end; - end else begin - BasePtr := aBasePtr; - for j := Low(stMembers) to High(stMembers) do begin - EndPtr := Pointer( Cardinal(BasePtr) + Cardinal(stMembers[j].Size[BasePtr, aEndPtr, aElement]) ); - - if Cardinal(BasePtr) > Cardinal(aEndPtr) then - BasePtr := aEndPtr; - if Cardinal(EndPtr) > Cardinal(aEndPtr) then - EndPtr := aEndPtr; - - Result := Result + stMembers[j].ToSortKey(BasePtr, EndPtr, aElement, aExtended); - - BasePtr := EndPtr; - - if j < High(stMembers) then - Result := Result + '|'; - end; - end; -end; - -function TwbStructDef.ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -begin - Result := ''; - Used(aElement, Result); -end; - -{ TwbFlagsDef } - -function TwbFlagsDef.Assign(const aTarget : IwbElement; - aIndex : Integer; - const aSource : IwbElement; - aOnlySK : Boolean) - : IwbElement; -var - FlagDef : IwbFlagDef; - i : Int64; -begin - if Supports(aSource.ValueDef, IwbFlagDef, FlagDef) then begin - i := aTarget.NativeValue; - i := i or (1 shl FlagDef.FlagIndex); - aTarget.NativeValue := i; - end else - Result := inherited Assign(aTarget, aIndex, aSource, aOnlySK); -end; - -function TwbFlagsDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - FlagsDef : IwbFlagsDef; - FlagDef : IwbFlagDef; - i : Integer; -begin - if Supports(aDef, IwbFlagsDef, FlagsDef) then begin - Result := FlagsDef.FlagCount = GetFlagCount; - if Result and not GetRoot.Equals(FlagsDef.Root) then - for i := 0 to Pred(GetFlagCount) do - if not SameStr(FlagsDef.Flags[i], GetFlag(i)) then begin - Result := False; - Exit; - end; - end else if Supports(aDef, IwbFlagDef, FlagDef) then begin - FlagsDef := FlagDef.FlagsDef; - Result := GetBaseFlagsDef.Equals(FlagsDef.BaseFlagsDef); - if Result then begin - i := FlagDef.FlagIndex; - Result := SameStr(FlagsDef.Flags[i], GetFlag(i)); - end; - end else - Result := false; -end; - -function TwbFlagsDef.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -function TwbFlagsDef.Check(aInt: Int64; const aElement: IwbElement): string; -var - i: Integer; - s: string; -begin - Result := ''; - if not flgUnknownIsUnused then begin - for i := 0 to 63 do - if (aInt and (Int64(1) shl i)) <> 0 then begin - s := ''; - if i <= High(flgNames) then - s := flgNames[i]; - if s = '' then begin - s := ''; - Result := Result + s + ', '; - end; - end; - SetLength(Result, Length(Result)-2); - end; -end; - -constructor TwbFlagsDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbFlagsDef do - Self.Create(flgBaseFlagsDef, flgNames, flgDontShows, flgUnknownIsUnused, flgIgnoreMask, flgGetCPs).defSource := aSource; -end; - -constructor TwbFlagsDef.Create(const aBaseFlagsDef : IwbFlagsDef; - const aNames : array of string; - const aDontShows : array of TwbDontShowCallback; - aUnknownIsUnused : Boolean; - aIgnoreMask : Int64; - const aGetCPs : array of TwbGetConflictPriority); -var - i: Integer; -begin - if Assigned(aBaseFlagsDef) then - flgBaseFlagsDef := aBaseFlagsDef.Root as IwbFlagsDef; - flgIgnoreMask := aIgnoreMask; - flgUnknownIsUnused := aUnknownIsUnused; - flgUnusedMask := 0; - if flgUnknownIsUnused then - flgUnusedMask := not flgUnusedMask; - SetLength(flgNames, Length(aNames)); - for i := Low(flgNames) to High(flgNames) do begin - flgNames[i] := aNames[i]; - if SameText(flgNames[i], 'Unused') then - flgUnusedMask := flgUnusedMask or (Int64(1) shl i) - else if flgUnknownIsUnused and (flgNames[i] <> '') then - flgUnusedMask := flgUnusedMask and not (Int64(1) shl i); - end; - SetLength(flgFlagDefs, Length(flgNames)); - - SetLength(flgDontShows, Length(aDontShows)); - for i := Low(flgDontShows) to High(flgDontShows) do begin - flgDontShows[i] := aDontShows[i]; - flgHasDontShows := flgHasDontShows or Assigned(flgDontShows[i]); - end; - - SetLength(flgGetCPs, Length(aGetCPs)); - for i := Low(flgGetCPs) to High(flgGetCPs) do begin - flgGetCPs[i] := aGetCPs[i]; - flgHasGetCPs := flgHasGetCPs or Assigned(flgGetCPs[i]); - end; - - inherited Create(cpNormal, False, nil); -end; - -function TwbFlagsDef.FromEditValue(const aValue: string; const aElement: IwbElement): Int64; -var - i: Integer; -begin - Result := 0; - for i := 1 to Length(aValue) do - case aValue[i] of - '0': {do nothing}; - '1': Result := Result or (Int64(1) shl Pred(i)); - else - raise Exception.Create('"'+aValue[i]+'" is not a valid character for a flag'); - end; - Result := Result and not flgUnusedMask; -end; - -function TwbFlagsDef.GetBaseFlagsDef: IwbFlagsDef; -begin - if Assigned(flgBaseFlagsDef) then - Result := flgBaseFlagsDef - else - Result := GetRoot as IwbFlagsDef; -end; - -function TwbFlagsDef.GetDefTypeName: string; -var - i: Integer; -begin - if Length(flgNames)=0 then - inherited - else begin - Result := '('+flgNames[Low(flgNames)]; - for i := 1 to High(flgNames) do - Result := Result+','+flgNames[i]; - Result := Result+')' - end; -end; - -function TwbFlagsDef.GetEditInfo(aInt: Int64; const aElement: IwbElement): string; -var - FlagCount : Integer; - IntegerDef : IwbIntegerDef; - i : Integer; - s : string; -begin - FlagCount := 64; - if Assigned(aElement) and (Supports(aElement.Def, IwbIntegerDef, IntegerDef) or Supports(aElement.ValueDef, IwbIntegerDef, IntegerDef)) then - case IntegerDef.IntType of - it0: FlagCount := 0; - itU8, itS8: FlagCount := 8; - itU16, itS16: FlagCount := 16; - itU32, itS32: FlagCount := 32; - end; - - with TStringList.Create do try - for i := 0 to Pred(FlagCount) do begin - s := ''; - if i <= High(flgNames) then - s := flgNames[i]; - if s = '' then - if flgUnknownIsUnused then - s := 'Unused' - else - s := ''; - if GetFlagDontShow(aElement, i) then - s := '(' + s + ')'; - if wbShowFlagEnumValue then - s := s + ' (0x' + IntToHex(Int64(1) shl i, 8) + ')'; - Add(s); - end; - Result := CommaText; - finally - Free; - end; -end; - -function TwbFlagsDef.GetEditType(aInt: Int64; const aElement: IwbElement): TwbEditType; -begin - Result := etCheckComboBox; -end; - -function TwbFlagsDef.GetFlag(aIndex: Integer): string; -begin - Result := flgNames[aIndex]; - if wbShowFlagEnumValue then - Result := Result + ' (0x' + IntToHex(Int64(1) shl aIndex, 8) + ')'; -end; - -function TwbFlagsDef.GetFlagCount: Integer; -begin - Result := Length(flgNames); -end; - -function TwbFlagsDef.GetFlagDef(aIndex: Integer): IwbFlagDef; -var - FlagDef: IwbFlagDef; -begin - Result := flgFlagDefs[aIndex]; - if not Assigned(Result) then begin - FlagDef := TwbFlagDef.Create(defPriority, False, flgNames[aIndex], nil, nil, - nil, nil, False, aIndex).SetParent(Self, False) as IwbFlagDef; - - {this really should be done threadsafe with a locked compare exchange} - flgFlagDefs[aIndex] := FlagDef; - - Result := flgFlagDefs[aIndex]; - end; -end; - -function TwbFlagsDef.GetFlagDontShow(const aElement: IwbElement; aIndex: Integer): Boolean; -begin - Result := False; - if flgHasDontShows and (aIndex <= High(flgDontShows)) and Assigned(flgDontShows[aIndex]) then - Result := flgDontShows[aIndex](aElement); -end; - -procedure TwbFlagsDef.FlagGetCP(const aElement : IwbElement; - aIndex : Integer; - var aCP : TwbConflictPriority); -begin - if flgHasGetCPs and (aIndex <= High(flgGetCPs)) and Assigned(flgGetCPs[aIndex]) then - flgGetCPs[aIndex](aElement, aCP); -end; - -function TwbFlagsDef.GetFlagHasDontShow(aIndex: Integer): Boolean; -begin - Result := flgHasDontShows and (aIndex <= High(flgDontShows)) and Assigned(flgDontShows[aIndex]); -end; - -function TwbFlagsDef.GetFlagHasGetCP(aIndex: Integer): Boolean; -begin - Result := flgHasGetCPs and (aIndex <= High(flgGetCPs)) and Assigned(flgGetCPs[aIndex]); -end; - -function TwbFlagsDef.GetFlagIgnoreConflict(aIndex: Integer): Boolean; -begin - Result := (flgIgnoreMask and (Int64(1) shl Int64(aIndex))) <> 0; -end; - -function TwbFlagsDef.GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -procedure TwbFlagsDef.Report(const aParents: TwbDefPath); -var - i: Integer; -begin - if defReported then - Exit; - - inherited; - if wbReportMode and wbReportUnknownFlags and HasUnknownFlags then begin - WriteLn('Unknown Flags in: ', wbDefsToPath(aParents), wbDefToName(Self)); - for i := 0 to 63 do - if UnknownFlags[i] > 0 then - WriteLn(' ', i,' (',UnknownFlags[i],')'); - end; - - defReported := True; -end; - -function TwbFlagsDef.GetRequiresKey: Boolean; -begin - Result := True; -end; - -function TwbFlagsDef.ToEditValue(aInt: Int64; const aElement: IwbElement): string; -var - i: Integer; -begin - aInt := aInt and not flgUnusedMask; - Result := StringOfChar('0', 64); - for i := 0 to 63 do - if (aInt and (Int64(1) shl i)) <> 0 then begin - Result[Succ(i)] := '1'; - aInt := aInt and not (Int64(1) shl i); - if aInt = 0 then begin - SetLength(Result, Succ(i)); - Exit; - end; - end; -end; - -function TwbFlagsDef.ToSortKey(aInt: Int64; const aElement: IwbElement): string; -var - i: Integer; -begin - aInt := aInt and not flgUnusedMask; - Result := StringOfChar('0', 64); - for i := 0 to 63 do - if (aInt and (Int64(1) shl i)) <> 0 then - if not GetFlagDontShow(aElement, i) then - Result[Succ(i)] := '1'; -end; - -function TwbFlagsDef.ToString(aInt: Int64; const aElement: IwbElement): string; -var - i: Integer; - s: string; -begin - Result := ''; - aInt := aInt and not flgUnusedMask; - for i := 0 to 63 do - if (aInt and (Int64(1) shl i)) <> 0 then begin - s := ''; - if i <= High(flgNames) then - s := flgNames[i]; - if s = '' then begin - s := ''; - if wbReportMode and wbReportUnknownFlags then begin - Inc(UnknownFlags[i]); - HasUnknownFlags := True; - end; - end; - if wbShowFlagEnumValue then - s := s + ' (0x' + IntToHex(Int64(1) shl i, 8) + ')'; - if not GetFlagDontShow(aElement, i) then - Result := Result + s + ', '; - end; - SetLength(Result, Length(Result)-2); - Used(aElement, Result); -end; - -{ TwbEnumDef } - -function TwbEnumDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - EnumDef: IwbEnumDef; - i: Integer; -begin - Result := Supports(aDef, IwbEnumDef, EnumDef) and (EnumDef.NameCount = GetNameCount); - if Result and not Equals(EnumDef) then - for i := 0 to Pred(GetNameCount) do - if not SameStr(EnumDef.Names[i], GetName(i)) then begin - Result := False; - Exit; - end; -end; - -function TwbEnumDef.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -function TwbEnumDef.Check(aInt: Int64; const aElement: IwbElement): string; -var - i: Integer; -begin - Result := ''; - - if (aInt >= Low(enNames)) and (aInt <= High(enNames)) then - Result := enNames[aInt]; - - if Result = '' then - if FindSparseName(aInt, i) then - Result := enSparseNamesMap[i].snName; - - if Result = '' then - Result := '' - else - Result := ''; -end; - -function CompareSparseName(Item1, Item2: Pointer): Integer; -var - Index1, Index2: Int64; -begin - Index1 := PwbSparseName(Item1).snIndex; - Index2 := PwbSparseName(Item2).snIndex; - - if Index1 < Index2 then - Result := -1 - else if Index1 = Index2 then - Result := 0 - else - Result := 1; -end; - -constructor TwbEnumDef.Clone(const aSource: TwbDef); -var - i: Integer; -begin - with aSource as TwbEnumDef do begin - inherited Create(defPriority, defRequired, defGetCP).defSource := aSource; - Self.enNames := Copy(enNames, 0, Length(enNames)); - Self.enSparseNames := Copy(enSparseNames, 0, Length(enSparseNames)); - Self.enEditInfo := enEditInfo; - end; - - SetLength(enSparseNamesMap, Length(enSparseNames)); - for i := Low(enSparseNames) to High(enSparseNames) do - enSparseNamesMap[i] := @enSparseNames[i]; - if Length(enSparseNames) > 0 then - wbMergeSort(@enSparseNamesMap[0], Length(enSparseNames), CompareSparseName); -end; - -constructor TwbEnumDef.Create(const aNames: array of string; - const aSparseNames : array of const); -var - i : Integer; - EditInfo : TStringList; -begin - EditInfo := TwbFastStringListIC.Create; - try - SetLength(enNames, Length(aNames)); - for i := Low(enNames) to High(enNames) do begin - enNames[i] := aNames[i]; - if aNames[i] <> '' then - if wbShowFlagEnumValue then - EditInfo.Add(aNames[i] + ' (' + IntToStr(i) + ')') - else - EditInfo.Add(aNames[i]); - end; - - Assert(Length(aSparseNames) mod 2 = 0); - SetLength(enSparseNames, Length(aSparseNames) div 2); - for i := Low(enSparseNames) to High(enSparseNames) do begin - Assert(aSparseNames[ i * 2 ].VType in [vtInteger, vtInt64]); - Assert(aSparseNames[Succ(i * 2)].VType in [vtAnsiString, vtChar, vtUnicodeString, vtWideChar]); - with enSparseNames[i] do begin - - if aSparseNames[i * 2].VType = vtInteger then - snIndex := aSparseNames[i * 2 ].VInteger - else - snIndex := aSparseNames[i * 2 ].VInt64^; - - if aSparseNames[Succ(i * 2)].VType = vtAnsiString then - snName := AnsiString(aSparseNames[Succ(i * 2)].VAnsiString) - else if aSparseNames[Succ(i * 2)].VType = vtChar then - snName := aSparseNames[Succ(i * 2)].VChar - else if aSparseNames[Succ(i * 2)].VType = vtUnicodeString then - snName := UnicodeString(aSparseNames[Succ(i * 2)].VUnicodeString) - else if aSparseNames[Succ(i * 2)].VType = vtWideChar then - snName := aSparseNames[Succ(i * 2)].VWideChar; - - if snName <> '' then - if wbShowFlagEnumValue then - EditInfo.Add(snName + ' (' + IntToStr(snIndex) + ')') - else - EditInfo.Add(snName); - end; - end; - EditInfo.Sort; - enEditInfo := EditInfo.CommaText; - finally - FreeAndNil(EditInfo); - end; - - SetLength(enSparseNamesMap, Length(enSparseNames)); - for i := Low(enSparseNames) to High(enSparseNames) do - enSparseNamesMap[i] := @enSparseNames[i]; - if Length(enSparseNames) > 0 then - wbMergeSort(@enSparseNamesMap[0], Length(enSparseNames), CompareSparseName); - - inherited Create(cpNormal, False, nil); -end; - -function CmpB8(a, b: Byte): Integer; -asm -{$IFDEF WIN32} - xor ecx, ecx - cmp al, dl - ja @@GT - je @@EQ -@@LT: - dec ecx - dec ecx -@@GT: - inc ecx -@@EQ: - mov eax, ecx -{$ENDIF WIN32} -{$IFDEF WIN64} - xor eax, eax - cmp ecx, edx - ja @@GT - je @@EQ -@@LT: - dec eax - dec eax -@@GT: - inc eax -@@EQ: -{$ENDIF WIN64} -end; - -function CmpI32(a, b : Integer) : Integer; -asm -{$IFDEF WIN32} - xor ecx, ecx - cmp eax, edx - jg @@GT - je @@EQ -@@LT: - dec ecx - dec ecx -@@GT: - inc ecx -@@EQ: - mov eax, ecx -{$ENDIF WIN32} -{$IFDEF WIN64} - xor eax, eax - cmp ecx, edx - jg @@GT - je @@EQ -@@LT: - dec eax - dec eax -@@GT: - inc eax -@@EQ: -{$ENDIF WIN64} -end; - -function CmpW32(a, b: Cardinal): Integer; -asm -{$IFDEF WIN32} - xor ecx, ecx - cmp eax, edx - ja @@GT - je @@EQ -@@LT: - dec ecx - dec ecx -@@GT: - inc ecx -@@EQ: - mov eax, ecx -{$ENDIF WIN32} -{$IFDEF WIN64} - xor eax, eax - cmp ecx, edx - ja @@GT - je @@EQ -@@LT: - dec eax - dec eax -@@GT: - inc eax -@@EQ: -{$ENDIF WIN64} -end; - -function CmpI64(const a, b : Int64) : Integer; -//begin -// if a = b then -// Result := nxEqual -// else if a < b then -// Result := nxSmallerThan -// else -// Result := nxGreaterThan; -//end; -asm -{$IFDEF WIN32} - xor eax, eax - mov edx, [ebp+20] - cmp edx, [ebp+12] - jg @@GT - jl @@LT - mov edx, [ebp+16] - cmp edx, [ebp+8] - ja @@GT - je @@EQ -@@LT: - dec eax - dec eax -@@GT: - inc eax -@@EQ: -{$ENDIF WIN32} -{$IFDEF WIN64} - xor rax, rax - cmp rcx, rdx - jg @@GT - je @@EQ -@@LT: - dec rax - dec rax -@@GT: - inc rax -@@EQ: -{$ENDIF WIN64} -end; - -function TwbEnumDef.FindSparseName(aSearchIndex: Int64; var Index: Integer): Boolean; -var - L, H, I, C: Integer; -begin - Result := False; - - L := Low(enSparseNamesMap); - H := High(enSparseNamesMap); - while L <= H do begin - I := (L + H) shr 1; - C := CmpI64(enSparseNamesMap[I].snIndex, aSearchIndex); - if C < 0 then - L := I + 1 - else begin - H := I - 1; - if C = 0 then begin - Result := True; - L := I; - end; - end; - end; - Index := L; -end; - -function TwbEnumDef.FromEditValue(const aValue: string; const aElement: IwbElement): Int64; -var - i, j: Integer; - Value: string; -begin - if aValue = '' then - Result := 0 - else begin - Value := aValue; - if wbShowFlagEnumValue and (Value[Length(Value)] = ')') then begin - // remove an integer value of enum from enum string value - i := LastDelimiter('(', Value); - if (i > 0) and TryStrToInt(Copy(Value, Succ(i), Length(Value) - Succ(i)), j) then - Delete(Value, Pred(i), Length(Value)); - end; - for i := Low(enNames) to High(enNames) do - if SameStr(enNames[i], Value) then begin - Result := i; - Exit; - end; - for i := Low(enSparseNames) to High(enSparseNames) do with enSparseNames[i] do - if SameStr(snName, Value) then begin - Result := snIndex; - Exit; - end; - Result := StrToInt64(Value); - end; -end; - -function TwbEnumDef.GetDefTypeName: string; -var - i: Integer; -begin - if Length(enNames)=0 then - inherited - else begin - Result := '('+enNames[Low(enNames)]; - for i := 1 to High(enNames) do - Result := Result+','+enNames[i]; - Result := Result+')' - end; -end; - -function TwbEnumDef.GetEditInfo(aInt: Int64; const aElement: IwbElement): string; -begin - Result := enEditInfo; -end; - -function TwbEnumDef.GetEditType(aInt: Int64; const aElement: IwbElement): TwbEditType; -begin - Result := etComboBox; -end; - -function TwbEnumDef.GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -function TwbEnumDef.GetName(aIndex: Integer): string; -begin - Result := enNames[aIndex]; -end; - -function TwbEnumDef.GetNameCount: Integer; -begin - Result := Length(enNames); -end; - -procedure TwbEnumDef.Report(const aParents: TwbDefPath); -var - i, j: Integer; - sl: TStringList; -begin - if defReported then - Exit; - - inherited; - if wbReportMode and wbReportUnknownEnums and Assigned(UnknownEnums) then begin - WriteLn('Unknown Enums in: ', wbDefsToPath(aParents), wbDefToName(Self)); - for i := 0 to Pred(UnknownEnums.Count) do begin - sl := UnknownEnums.Objects[i] as TStringList; - WriteLn(' ', UnknownEnums[i], ' (',sl.Count,')' ); - for j := 0 to Pred(sl.Count) do - WriteLn(' ', sl[j], ' (',Integer(sl.Objects[j]),')' ); - end; - end; - - defReported := True; -end; - -function TwbEnumDef.ToEditValue(aInt: Int64; const aElement: IwbElement): string; -var - i: Integer; -begin - Result := ''; - - if (aInt >= Low(enNames)) and (aInt <= High(enNames)) then begin - Result := enNames[aInt]; - if wbShowFlagEnumValue then - Result := Result + ' (' + IntToStr(aInt) + ')'; - end; - - if Result = '' then - if FindSparseName(aInt, i) then begin - Result := enSparseNamesMap[i].snName; - if wbShowFlagEnumValue then - Result := Result + ' (' + IntToStr(enSparseNamesMap[i].snIndex) + ')'; - end; - - if Result = '' then begin - Result := IntToStr(aInt); - if wbShowFlagEnumValue then - Result := Result + ' (' + IntToStr(aInt) + ')'; - end; -end; - -function TwbEnumDef.ToSortKey(aInt: Int64; const aElement: IwbElement): string; -begin - Result := ''; {handled by IntegerDef} -end; - -function TwbEnumDef.ToString(aInt: Int64; const aElement: IwbElement): string; -var - s: string; - i: Integer; -begin - Result := ''; - - if (aInt >= Low(enNames)) and (aInt <= High(enNames)) then begin - Result := enNames[aInt]; - if wbShowFlagEnumValue and (Result <> '') then - Result := Result + ' (' + IntToStr(aInt) + ')'; - end; - - if Result = '' then begin - if FindSparseName(aInt, i) then begin - Result := enSparseNamesMap[i].snName; - if wbShowFlagEnumValue then - Result := Result + ' (' + IntToStr(enSparseNamesMap[i].snIndex) + ')'; - end - else begin - Result := ''; - if wbReportMode and wbReportUnknownEnums then begin - if not Assigned(UnknownEnums) then - UnknownEnums := TwbFastStringListIC.CreateSorted; - if not UnknownEnums.Find(Result, i) then - i := UnknownEnums.AddObject(Result, TwbFastStringListIC.CreateSorted); - with UnknownEnums.Objects[i] as TStringList do begin - if Count < 10 then begin - s := aElement.FullPath; - if not Find(s, i) then - i := Add(s); - Objects[i] := TObject(Succ(Integer(Objects[i]))); - end; - end; - end; - end; - end; - Used(aElement, Result); -end; - -{ TwbStringDef } - -function TwbStringDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - StringDef: IwbStringDef; -begin - Result := Supports(aDef, IwbStringDef, StringDef) and - ((sdSize = 0) or (StringDef.StringSize = 0) or (sdSize <= StringDef.StringSize)); -end; - -function TwbStringDef.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -constructor TwbStringDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbStringDef do - Self.Create(defPriority, defRequired, noName, sdSize, noAfterLoad, noAfterSet, noDontShow, defGetCP, noTerminator).defSource := aSource; -end; - -constructor TwbStringDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aSize : Integer; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority; - aTerminator : Boolean; - aForward : boolean); -begin - sdSize := aSize; - sdForward := aForward; - inherited Create(aPriority, aRequired, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP, aTerminator); -end; - -procedure TwbStringDef.FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); -begin - FromStringTransform(aBasePtr, aEndPtr, aElement, aValue, ttFromEditValue); -end; - -procedure TwbStringDef.FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); -begin - FromStringTransform(aBasePtr, aEndPtr, aElement, aValue, ttFromNativeValue); -end; - -procedure TwbStringDef.FromStringNative(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: AnsiString); -var - NewSize : Integer; -begin - if sdSize > 0 then - NewSize := sdSize - else - NewSize := Succ(Length(aValue)); - - aElement.RequestStorageChange(aBasePtr, aEndPtr, NewSize + Ord(noTerminator)); - - if sdSize > 0 then begin - FillChar(aBasePtr^, sdSize, 0); - NewSize := Length(aValue); - if NewSize > 0 then - Move(aValue[1], aBasePtr^, NewSize); - end else begin - if NewSize > 1 then - Move(aValue[1], aBasePtr^, Length(aValue)); - - PAnsiChar(aBasePtr)[Pred(NewSize)] := #0; - end; - if noTerminator then - PAnsiChar(aBasePtr)[NewSize] := AnsiChar(wbTerminator); -end; - -procedure TwbStringDef.FromStringTransform(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string; aTransformType: TwbStringTransformType); -begin - FromStringNative(aBasePtr, aEndPtr, aElement, TransformString(wbStringToAnsi(aValue, aElement), aTransformType, aElement)); -end; - -function TwbStringDef.GetDefType: TwbDefType; -begin - Result := dtString; -end; - -function TwbStringDef.GetDefTypeName: string; -begin - Result := 'Terminated String'; -end; - -function TwbStringDef.GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -function TwbStringDef.GetIsVariableSizeInternal: Boolean; -begin - Result := sdSize = 0; -end; - -function TwbStringDef.GetStringSize: Integer; -begin - Result := sdSize; -end; - -function TwbStringDef.SetToDefault(aBasePtr, aEndPtr: Pointer; - const aElement: IwbElement): Boolean; -begin - Result := not Assigned(aBasePtr) or (ToString(aBasePtr, aEndPtr, aElement) <> ''); - if Result then - FromEditValue(aBasePtr, aEndPtr, aElement, ''); -end; - -function TwbStringDef.GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if sdSize > 0 then - Result := sdSize + Ord(noTerminator) - else begin - if aBasePtr = nil then - Result := 1 + Ord(noTerminator) - else begin - Result := Ord(noTerminator); - while Cardinal(aBasePtr) < Cardinal(aEndPtr) do begin - Inc(Result); - if PAnsiChar(aBasePtr)^ = #0 then - Exit; - - Inc(PByte(aBasePtr)); - end; - end; - end; -end; - -function TwbStringDef.GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if sdSize > 0 then - Result := sdSize + Ord(noTerminator) - else - Result := 1 + Ord(noTerminator); -end; - -function TwbStringDef.ToEditValue(aBasePtr, aEndPtr: Pointer; - const aElement: IwbElement): string; -begin - Result := ToStringTransform(aBasePtr, aEndPtr, aElement, ttToEditValue); -end; - -function TwbStringDef.ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; -begin - Result := ToStringTransform(aBasePtr, aEndPtr, aElement, ttToNativeValue); -end; - -function TwbStringDef.ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; -begin - Result := UpperCase(ToStringTransform(aBasePtr, aEndPtr, aElement, ttToSortKey)); -end; - -function TwbStringDef.ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -begin - Result := ToStringTransform(aBasePtr, aEndPtr, aElement, ttToString); -end; - -function TwbStringDef.ToStringNative(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): AnsiString; -var - aLen, Len : Cardinal; -begin - Len := Cardinal(aEndPtr) - Cardinal(aBasePtr); - if sdSize > 0 then begin - if Len > Cardinal(sdSize) then - Len := sdSize; - end; - - if sdForward then begin - aLen := 0; - while aLen < Len do begin - if PAnsiChar(aBasePtr)[aLen] = #0 then - Break; - Inc(aLen); - end; - Len := aLen; - //if aLen < Len then - // Len := Succ(aLen); - end else - while (Len > 0) and (PAnsiChar(aBasePtr)[Pred(Len)] = #0) do - Dec(Len); - - SetLength(Result, Len); - if Len > 0 then - Move(aBasePtr^, Result[1], Len); - Used(aElement, Result); -end; - -function TwbStringDef.ToStringTransform(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aTransformType: TwbStringTransformType): string; -begin - Result := wbAnsiToString(TransformString(ToStringNative(aBasePtr, aEndPtr, aElement), aTransformType, aElement), aElement); -end; - -function TwbStringDef.TransformString(const s: AnsiString; aTransformType: TwbStringTransformType; const aElement: IwbElement): AnsiString; -begin - Result := s; -end; - -{ TwbFloatDef } - -const - SingleNaN : Single = 0.0/0.0; - DoubleNaN : Double = 0.0/0.0; - SingleInf : Single = 1.0/0.0; - DoubleInf : Double = 1.0/0.0; - -function TwbFloatDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - FloatDef: IwbFloatDef; -begin - Result := Supports(aDef, IwbFloatDef, FloatDef); -end; - -function TwbFloatDef.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -constructor TwbFloatDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbFloatDef do - Self.Create(defPriority, defRequired, noName, noAfterLoad, noAfterSet, fdScale, fdDigits, noDontShow, - fdNormalizer, fdDefault, defGetCP, fdDouble, noTerminator).defSource := aSource; -end; - -constructor TwbFloatDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aScale : Extended; - aDigits : Integer; - aDontShow : TwbDontShowCallback; - aNormalizer : TwbFloatNormalizer; - aDefault : Extended; - aGetCP : TwbGetConflictPriority; - aDouble : Boolean; - aTerminator : Boolean); -begin - fdDefault := aDefault; - fdScale := aScale; - fdDigits := aDigits; - fdNormalizer := aNormalizer; - fdDouble := aDouble; - if fdDigits < 0 then - fdDigits := wbFloatDigits; - inherited Create(aPriority, aRequired, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP, aTerminator); -end; - -procedure TwbFloatDef.FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); -var - Value: Extended; -begin - aElement.RequestStorageChange(aBasePtr, aEndPtr, 4); - if aValue = '' then begin - if fdDouble then - PDouble(aBasePtr)^ := 0.0 - else - PSingle(aBasePtr)^ := 0.0; - end else if SameText(aValue, 'NaN') then begin - if fdDouble then - PDouble(aBasePtr)^ := DoubleNaN - else - PSingle(aBasePtr)^ := SingleNaN; - end else if SameText(aValue, 'Inf') then begin - if fdDouble then - PDouble(aBasePtr)^ := DoubleInf - else - PSingle(aBasePtr)^ := SingleInf; - end else if SameText(aValue, 'Default') or SameText(aValue, 'Max') then begin - if fdDouble then - PInt64(aBasePtr)^ := $7FEFFFFFFFFFFFFF - else - PCardinal(aBasePtr)^ := $7F7FFFFF; - end else if SameText(aValue, 'Min') then begin - if fdDouble then - PInt64(aBasePtr)^ := -$10000000000001 // $FFEFFFFFFFFFFFFF - else - PCardinal(aBasePtr)^ := $FF7FFFFF; - end else begin - Value := RoundToEx(StrToFloat(aValue), -fdDigits); - Value := Value / fdScale; - if Assigned(fdNormalizer) then - Value := fdNormalizer(aElement, Value); - if fdDouble then - PDouble(aBasePtr)^ := Value - else - PSingle(aBasePtr)^ := Value; - end; -end; - -procedure TwbFloatDef.FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); -var - Clear : Boolean; - Value : Extended; - Size : Integer; -begin - Clear := VarIsClear(aValue); - if not Clear then - Value := aValue - else - Value := 0; - - if fdDouble then - Size := SizeOf(Double)+Ord(noTerminator) - else - Size := SizeOf(Single)+Ord(noTerminator); - aElement.RequestStorageChange(aBasePtr, aEndPtr, Size); - if Assigned(aBasePtr) then begin - if Clear then begin - if fdDouble then - PDouble(aBasePtr)^ := DoubleNaN - else - PSingle(aBasePtr)^ := SingleNaN; - end else if fdDouble and (SameValue(Value, MaxDouble) or (Value > MaxDouble)) then - PInt64(aBasePtr)^ := $7FEFFFFFFFFFFFFF - else if fdDouble and (SameValue(Value, -MaxDouble) or (Value < -MaxDouble)) then - PInt64(aBasePtr)^ := -$10000000000001 // $FFEFFFFFFFFFFFFF - else if not fdDouble and (SameValue(Value, MaxSingle) or (Value > MaxSingle)) then - PCardinal(aBasePtr)^ := $7F7FFFFF - else if not fdDouble and (SameValue(Value, -MaxSingle) or (Value < -MaxSingle)) then - PCardinal(aBasePtr)^ := $FF7FFFFF - else begin - Value := RoundToEx(Value, -fdDigits); - Value := Value / fdScale; - if Assigned(fdNormalizer) then - Value := fdNormalizer(aElement, Value); - if fdDouble then - PDouble(aBasePtr)^ := Value - else - PSingle(aBasePtr)^ := Value; - end; - if noTerminator then - PByte(aBasePtr)[SizeOf(Single)] := wbTerminator; - end; -end; - -function TwbFloatDef.GetDefType: TwbDefType; -begin - Result := dtFloat; -end; - -function TwbFloatDef.GetDefTypeName: string; -begin - Result := 'Float'; -end; - -function TwbFloatDef.GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -function TwbFloatDef.GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if Assigned(aBasePtr) and Assigned(aEndPtr) and (Cardinal(aBasePtr) >= Cardinal(aEndPtr)) then - Result := Ord(noTerminator) - else - Result := GetDefaultSize(aBasePtr, aEndPtr, aElement) -end; - -function TwbFloatDef.GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if fdDouble then - Result := SizeOf(Double) + Ord(noTerminator) - else - Result := SizeOf(Single) + Ord(noTerminator); -end; - -function TwbFloatDef.SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -var - Value: Extended; -begin - Value := ToNativeValue(aBasePtr, aEndPtr, aElement); - if fdDouble then - Result := not Assigned(aBasePtr) or not SameValue(Value, fdDefault) - else - Result := not Assigned(aBasePtr) or not SingleSameValue(Value, fdDefault); - if Result then - FromNativeValue(aBasePtr, aEndPtr, aElement, fdDefault); -end; - -function TwbFloatDef.ToValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Extended; -var - Len : Cardinal; - Value : Extended; -begin - Len := Cardinal(aEndPtr) - Cardinal(aBasePtr); - if Len < GetDefaultSize(aBasePtr, aEndPtr, aElement) then - Result := NaN - else if fdDouble then try - if PInt64(aBasePtr)^ = $7FEFFFFFFFFFFFFF then - Result := maxDouble - else if PInt64(aBasePtr)^ = $FFEFFFFFFFFFFFFF then - Result := -maxDouble - else begin - Value := PDouble(aBasePtr)^; - if IsInfinite(Value) or IsNan(Value) then - Result := Value - else begin - try - if Value <> 0.0 then - if SameValue(Value, 0.0) then - Value := 0.0; - except - Value := 0.0; - end; - - if Assigned(fdNormalizer) then - Value := fdNormalizer(aElement, Value); - Value := Value * fdScale; - Result := RoundToEx(Value, -fdDigits); - end; - end; - except - Result := NaN; - end else try - if PCardinal(aBasePtr)^ = $7F7FFFFF then - Result := maxSingle - else if PCardinal(aBasePtr)^ = $FF7FFFFF then - Result := -maxSingle - else begin - Value := PSingle(aBasePtr)^; - if IsInfinite(Value) or IsNan(Value) then - Result := Value - else begin - try - if Value <> 0.0 then - if SingleSameValue(Value, 0.0) then - Value := 0.0; - except - Value := 0.0; - end; - - if Assigned(fdNormalizer) then - Value := fdNormalizer(aElement, Value); - Value := Value * fdScale; - Result := RoundToEx(Value, -fdDigits); - end; - end; - except - Result := NaN; - end; -end; - -function TwbFloatDef.ToEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -var - Value : Extended; -begin - Value := ToValue(aBasePtr, aEndPtr, aElement); - if IsNaN(Value) then - Result := 'NaN' - else if IsInfinite(Value) then - Result := 'Inf' - else if (Value = maxDouble) or (Value = maxSingle) then - Result := 'Default' // 'Max' ?? - else if (Value = -maxDouble) or (Value = -maxSingle) then - Result := 'Min' - else - Result := FloatToStrF(Value, ffFixed, 99, fdDigits); -end; - -function TwbFloatDef.ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; -var - Value: Extended; -begin - Value := ToValue(aBasePtr, aEndPtr, aElement); - if IsNaN(Value) then - VarClear(Result) - else if Value = maxDouble then - Result := maxDouble - else if Value = maxSingle then - Result := maxSingle - else - Result := Value; -end; - -function TwbFloatDef.ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; -var - Value : Extended; - g : Extended; -const - PlusMinus : array[Boolean] of string = ('+', '-'); -begin - Value := ToValue(aBasePtr, aEndPtr, aElement); - if IsNaN(Value) then - Result := StringOfChar(' ', 23) - else if (Value = maxDouble) or (Value = maxSingle) then - Result := '+' + StringOfChar('9', 22) - else begin - g := Abs(Value); - Result := FloatToStrF(g, ffFixed, 99, fdDigits); - - if Length(Result) < 22 then - Result := StringOfChar('0', 22 - Length(Result)) + Result; - Result := PlusMinus[(Value < 0) and not IsZero(Value, 0.0000009999999999)] + Result; - end; -end; - -function TwbFloatDef.ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -var - Len : Cardinal; - Value : Extended; -begin - Result := ''; - Len := Cardinal(aEndPtr) - Cardinal(aBasePtr); - if Len < GetDefaultSize(aBasePtr, aEndPtr, aElement) then begin - if wbCheckExpectedBytes then - Result := Format('', [GetDefaultSize(aBasePtr, aEndPtr, aElement), Len]) - end else begin - Value := ToValue(aBasePtr, aEndPtr, aElement); - if IsNan(Value) then - Result := 'NaN' - else if IsInfinite(Value) then - Result := 'Inf' - else if (Value=maxDouble) or (Value=maxSingle) then - Result := 'Default' // 'Max' ?? - else if (Value=-maxDouble) or (Value=-maxSingle) then - Result := 'Min' - else - Result := FloatToStrF(Value, ffFixed, 99, fdDigits); - if Len > GetDefaultSize(aBasePtr, aEndPtr, aElement) then - if wbCheckExpectedBytes then - Result := Format(' ', [GetDefaultSize(aBasePtr, aEndPtr, aElement), Len]); - end; - Used(aElement, Result); -end; - -{ TwbChar4 } - -procedure TwbChar4.BuildRef(aInt: Int64; const aElement: IwbElement); -var - U32: Cardinal; - _File: IwbFile; - Rec: IwbMainRecord; -begin - U32 := aInt; - - _File := aElement._File; - if Assigned(_File) then begin - Rec := _File.RecordByEditorID[PwbSignature(@U32)^]; - if Assigned(Rec) then - aElement.AddReferencedFromID(Rec.LoadOrderFormID); // should always be 00, these are only defined in Oblivion.esm - end; -end; - -function TwbChar4.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -begin - Result := Supports(aDef, IwbChar4); -end; - -function TwbChar4.CanContainFormIDs: Boolean; -begin - Result := True; -end; - -constructor TwbChar4.Clone(const aSource: TwbDef); -begin - with aSource as TwbChar4 do - Self.Create(defPriority, defRequired, defGetCP).defSource := aSource; -end; - -function TwbChar4.FromEditValue(const aValue: string; const aElement: IwbElement): Int64; -const - Empty : TwbSignature = ' '; -var - s : AnsiString; -begin - if aValue = '' then - Result := Cardinal(Empty) - else begin - s := AnsiString(aValue); - if Length(s) <> 4 then - raise Exception.Create('The value must be exactly 4 characters'); - - Result := PCardinal(@s[1])^; - end; -end; - -function TwbChar4.GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -function TwbChar4.GetLinksTo(aInt: Int64; const aElement: IwbElement): IwbElement; -var - U32: Cardinal; - _File: IwbFile; -begin - Result := nil; - U32 := aInt; - _File := aElement._File; - if Assigned(_File) then - Result := _File.RecordByEditorID[PwbSignature(@U32)^]; -end; - -function TwbChar4.ToEditValue(aInt: Int64; const aElement: IwbElement): string; -begin - Result := ToSortKey(aInt, aElement); -end; - -function TwbChar4.ToSortKey(aInt: Int64; const aElement: IwbElement): string; -var - U32: Cardinal; -begin - U32 := aInt; - Result := PwbSignature(@U32)^; -end; - -function TwbChar4.ToString(aInt: Int64; const aElement: IwbElement): string; -var - U32: Cardinal; - _File: IwbFile; - Rec: IwbRecord; -begin - U32 := aInt; - Result := PwbSignature(@U32)^; - - _File := aElement._File; - if Assigned(_File) then begin - Rec := _File.RecordByEditorID[Result]; - if Assigned(Rec) then begin - Result := Rec.Name; - Used(aElement, Result); - Exit; - end; - end; - - if U32 <> 0 then - Result := Result + ' '; - Used(aElement, Result); -end; - -{ TwbStr4 } - -function TwbStr4.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -begin - Result := Supports(aDef, IwbStr4); -end; - -function TwbStr4.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -constructor TwbStr4.Clone(const aSource: TwbDef); -begin - with aSource as TwbStr4 do - Self.Create(defPriority, defRequired, defGetCP).defSource := aSource; -end; - -function TwbStr4.FromEditValue(const aValue: string; const aElement: IwbElement): Int64; -const - Empty : TwbSignature = ' '; -var - s : AnsiString; - Temp : AnsiString; - i : Integer; -begin - if aValue = '' then - Result := Cardinal(Empty) - else begin - s := AnsiString(aValue); - if Length(s) <> 4 then - raise Exception.Create('The value must be exactly 4 characters'); - Temp := s; - for i := 1 to 4 do s[i] := Temp[5-i]; - - Result := PCardinal(@s[1])^; - end; -end; - -function TwbStr4.GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -function TwbStr4.ToEditValue(aInt: Int64; const aElement: IwbElement): string; -begin - Result := ToSortKey(aInt, aElement); -end; - -function TwbStr4.ToSortKey(aInt: Int64; const aElement: IwbElement): string; -begin - Result := wbStr4ToString(aInt); -end; - -function TwbStr4.ToString(aInt: Int64; const aElement: IwbElement): string; -begin - Result := ToSortKey(aInt, aElement); - Used(aElement, Result); -end; - -{ TwbFormID } - -procedure TwbFormID.BuildRef(aInt: Int64; const aElement: IwbElement); -begin - if ((aInt < $800) or (aInt = $FFFFFFFF)) and IsValid('ACVA') then - Exit; - - if (aInt <> 0) and (aInt <> $14) then - aElement.AddReferencedFromID(aInt); -end; - -function TwbFormID.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -begin - Result := Supports(aDef, IwbFormID); -end; - -function TwbFormID.CanContainFormIDs: Boolean; -begin - Result := True; -end; - -function TwbFormID.Check(aInt: Int64; - const aElement: IwbElement): string; -var - _File: IwbFile; - MainRecord: IwbMainRecord; -begin - Result := ''; - - if Assigned(aElement) then begin - _File := aElement._File; - if Assigned(_File) then begin - try - MainRecord := _File.RecordByFormID[aInt, True]; - if Assigned(MainRecord) then - Exit; - except - on E: Exception do begin - Result := E.Message; - Exit; - end; - end; - end; - end; - - if aInt > $800 then - Result := '['+IntToHex64(aInt,8)+'] < Error: Could not be resolved >'; -end; - -function TwbFormID.CheckFlst(const aMainRecord: IwbMainRecord): Boolean; -begin - Result := True; -end; - -constructor TwbFormID.Clone(const aSource: TwbDef); -begin - with aSource as TwbFormID do - Self.Create(defPriority, defRequired, defGetCP).defSource := aSource; -end; - -function TwbFormID.CompareExchangeFormID(var aInt: Int64; aOldFormID: Cardinal; aNewFormID: Cardinal; const aElement: IwbElement): Boolean; -var - _File : IwbFile; - - FormID : Cardinal; - FileID : Integer; - NewFileID : Integer; - i : Integer; -begin - Result := False; - - if {(aInt < $800) or} (aInt = $FFFFFFFF) and IsValid('ACVA') then // Allows source to be reserverd as this does NOT change the record itself - Exit; - - if Assigned(aElement) then begin - _File := aElement._File; - if Assigned(_File) then begin - FormID := aInt; - FileID := FormID shr 24; - - if FileID >= _File.MasterCount then - FileID := _File.LoadOrder - else - FileID := _File.Masters[FileID].LoadOrder; - - if FileID < 0 then - raise Exception.Create('Could not determine load order FormID for old value'); - - FormID := (FormID and $00FFFFFF) or (Cardinal(FileID) shl 24); - if FormID = aOldFormID then begin - FileID := aNewFormID shr 24; - NewFileID := -1; - if FileID = _File.LoadOrder then - NewFileID := _File.MasterCount - else - for i := 0 to Pred(_File.MasterCount) do - if _File.Masters[i].LoadOrder = FileID then begin - NewFileID := i; - break; - end; - if NewFileID < 0 then - raise Exception.Create('FormID ['+IntToHex64(aNewFormID, 8)+'] references a master which is not available in file ' + _File.Name); - - FormID := (aNewFormID and $00FFFFFF) or (Cardinal(NewFileID) shl 24); - if aInt <> FormID then begin - aInt := FormID; - Result := True; - end; - end; - end; - end; -end; - -function TwbFormID.FindRecordForAVCode(aInt: Int64; const aElement: IwbElement): IwbMainRecord; -var - CheckedFiles : TList; - MaxLoadOrder : Integer; - - function CheckFile(aFile: IwbFile): IwbMainRecord; - var - Group : IwbContainerElementRef; - i : Integer; - AV : Variant; - begin - if CheckedFiles.IndexOf(Pointer(aFile)) >= 0 then - Exit(nil); - CheckedFiles.Add(Pointer(aFile)); - - if Supports(aFile.GroupBySignature['MISC'], IwbContainerElementRef, Group) then begin - for i := 0 to Pred(Group.ElementCount) do - if Supports(Group.Elements[i], IwbMainRecord, Result) then begin - Result := Result.HighestOverrideOrSelf[MaxLoadOrder]; - if (Result.Flags._Flags and $000000C0) = $000000C0 then begin - AV := Result.ElementNativeValues['DATA\Actor Value']; - if not (VarIsNull(AV) or VarIsEmpty(AV)) then begin - if AV = aInt then - Exit; - end; - end; - end; - end; - Result := nil; - for i := Pred(aFile.MasterCount) downto 0 do begin - Result := CheckFile(aFile.Masters[i]); - if Assigned(Result) then - Exit; - end; - end; - -var - _File : IwbFile; -begin - Result := nil; - - if not Assigned(aElement) then - Exit; - - _File := aElement._File; - if not Assigned(_File) then - Exit; - - if aInt < $800 then begin - CheckedFiles := TList.Create; - try - MaxLoadOrder := _File.LoadOrder; - Result := CheckFile(_File); - finally - CheckedFiles.Free; - end; - end else try - Result := _File.RecordByFormID[aInt, True]; - except end; -end; - -procedure TwbFormID.FindUsedMasters(aInt: Int64; aMasters: PwbUsedMasters; const aElement: IwbElement); -var - OldValue : Cardinal; - FileID : Integer; -begin - if (aInt < $800) or (aInt = $FFFFFFFF) and IsValid('ACVA') then - Exit; - - OldValue := aInt; - if OldValue <> 0 then begin - FileID := OldValue shr 24; - aMasters[FileID] := True; - end; -end; - -function TwbFormID.FromEditValue(const aValue: string; const aElement: IwbElement): Int64; -var - _File : IwbFile; - - FormID : Cardinal; - FileID : Integer; - NewFileID : Integer; - i : Integer; - s, t : string; -begin - s := ''; - t := aValue; - i := Pos('[', t); - while i > 0 do begin - Delete(t, 1, i); - i := Pos(']', t); - if i > 0 then begin - s := Copy(t, 1, Pred(i)); - Delete(t, 1, i); - if (Length(s) = 13) and (s[5] = ':') then - Delete(s, 1, 5); - end; - - try - StrToInt64('$' + s); - if Length(s) = 8 then - i := 0 - else - i := Pos('[', t); - except - i := Pos('[', t); - end; - end; - - if Length(s) = 8 then - Result := StrToInt64('$' + s) - else begin - if IsValid('ACVA') and SameText(Trim(aValue), 'None') then begin - Result := $FF; - Exit; - end else - Result := StrToInt64('$' + aValue); - end; - - if not wbDisplayLoadOrderFormID then - Exit; - - if Result < $800 then - Exit; - - if Result = $FFFFFFFF then - Exit; - - if Assigned(aElement) then begin - _File := aElement._File; - if Assigned(_File) then begin - FormID := Result; - - FileID := FormID shr 24; - NewFileID := -1; - if FileID = _File.LoadOrder then - NewFileID := _File.MasterCount - else - for i := 0 to Pred(_File.MasterCount) do - if _File.Masters[i].LoadOrder = FileID then begin - NewFileID := i; - break; - end; - - if NewFileID < 0 then - raise Exception.Create('FormID ['+IntToHex64(FormID, 8)+'] references a master which is not available in file ' + _File.Name); - - FormID := (FormID and $00FFFFFF) or (Cardinal(NewFileID) shl 24); - Result := FormID; - end; - end; -end; - -function TwbFormID.GetEditInfo(aInt: Int64; const aElement: IwbElement): string; -var - ACVAIsValid : Boolean; - Strings : TStringList; - CheckAll : Boolean; - Wait : IwbWaitForm; - FilesProg : IwbProgress; - - procedure Process(const aFile: IwbFile); - var - i, j : Integer; - s : string; - MainRecord : IwbMainRecord; - GroupRecord : IwbGroupRecord; - GroupsProg : IwbProgress; - RecordsProg : IwbProgress; - begin - if CheckAll then begin - for i := 0 to Pred(aFile.RecordCount) do begin - MainRecord := aFile.Records[i]; - if IsValid(MainRecord.Signature) and IsValidMainRecord(MainRecord) then begin - if MainRecord.CanHaveEditorID and (MainRecord.EditorID = '') then - Continue; - - s := Trim(MainRecord.Name); - if s <> '' then begin - if s[1] = '<' then - Delete(s, 1, 1); - - if CheckFlst(MainRecord) then - Strings.Add(s); - - if not Assigned(RecordsProg) then - RecordsProg := Wait.CreateProgress('Records', s, Pred(aFile.RecordCount) ) - else - RecordsProg.UpdateStatus(i, s); - end; - end; - - if Wait.IsCanceled then - Exit; - end; - end else - for i := 0 to Pred(aFile.ElementCount) do begin - - if not Assigned(GroupsProg) then - GroupsProg := Wait.CreateProgress('Groups', aFile.Elements[i].Name, Pred(aFile.ElementCount) ) - else - GroupsProg.UpdateStatus(i, aFile.Elements[i].Name); - - if Supports(aFile.Elements[i], IwbGroupRecord, GroupRecord) then - if GroupRecord.GroupType = 0 then - if IsValid(TwbSignature(GroupRecord.GroupLabel)) then - for j := 0 to Pred(GroupRecord.ElementCount) do begin - - if Supports(GroupRecord.Elements[j], IwbMainRecord, MainRecord) then begin - if IsValid(MainRecord.Signature) and IsValidMainRecord(MainRecord) then begin - if MainRecord.CanHaveEditorID and (MainRecord.EditorID = '') then - Continue; - - s := Trim(MainRecord.Name); - if s <> '' then begin - if s[1] = '<' then - Delete(s, 1, 1); - - if CheckFlst(MainRecord) then - Strings.Add(s); - - if not Assigned(RecordsProg) then - RecordsProg := Wait.CreateProgress('Records', s, Pred(GroupRecord.ElementCount) ) - else - RecordsProg.UpdateStatus(j, s); - - end; - end; - end; - - if Wait.IsCanceled then - Exit; - end; - - if Wait.IsCanceled then - Exit; - end; - end; - -var - _File : IwbFile; - i : Integer; - s : string; -begin - Result := ''; - if not wbDisplayLoadOrderFormID then - Exit; - - ACVAIsValid := IsValid('ACVA'); - - if Assigned(aElement) then begin - _File := aElement._File; - if Assigned(_File) then begin - Strings := TwbFastStringListIC.Create; - try - CheckAll := - IsValid('CELL') or - IsValid('LAND') or - IsValid('ROAD') or - IsValid('REFR') or - IsValid('ACHR') or - IsValid('ACRE') or - IsValid('PGRE') or - IsValid('PGRD') or - IsValid('PARW') or {>>> Skyrim <<<} - IsValid('PBAR') or {>>> Skyrim <<<} - IsValid('PBEA') or {>>> Skyrim <<<} - IsValid('PFLA') or {>>> Skyrim <<<} - IsValid('PCON') or {>>> Skyrim <<<} - IsValid('PHZD') or {>>> Skyrim <<<} - IsValid('NAVM') or - IsValid('INFO'); - - Wait := wbCreateWaitForm('Building DropDownList', 'The DropDown list is being built. Please Wait...', True, 2000, 500); - - FilesProg := Wait.CreateProgress('Files', _File.Name, _File.MasterCount); - Process(_File); - for i := Pred(_File.MasterCount) downto 0 do if not Wait.IsCanceled then begin - FilesProg.UpdateStatus( _File.MasterCount - i, _File.Masters[i].Name ); - Process(_File.Masters[i]); - end; - - Wait := nil; - FilesProg := nil; - - if ACVAIsValid then begin - for i := 0 to Pred(wbActorValueEnum.NameCount) do - Strings.Add(wbActorValueEnum.Names[i] + ' [ACVA:' + IntToHex64(i, 8) + ']'); - Strings.Add(' None [ACVA:000000FF]'); - Strings.Add(' Invalid [ACVA:00000048]'); - end else begin - if IsValid('NULL') then - Strings.Add('NULL - Null Reference [00000000]'); - if IsValid('FFFF') then - Strings.Add('FFFF - None Reference [FFFFFFFF]'); - if IsValid('TRGT') then - Strings.Add('TARGET - Target Reference [00000000]'); - if IsValid('PLYR') then - Strings.Add('Player [00000014]'); - end; - - Strings.Sort; - s := ''; - for i := Pred(Strings.Count) downto 0 do - if Strings[i] <> s then - s := Strings[i] - else - Strings.Delete(i); - - Result := Strings.CommaText; - finally - FreeAndNil(Strings); - end; - end; - end; -end; - -function TwbFormID.GetEditType(aInt: Int64; const aElement: IwbElement): TwbEditType; -begin - Result := etComboBox; -end; - -function TwbFormID.GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -function TwbFormID.GetLinksTo(aInt: Int64; const aElement: IwbElement): IwbElement; -var - _File : IwbFile; -begin - Result := nil; - - if aInt = 0 then - Exit; - if aInt = $14 then - Exit; - if (aInt = $FFFFFFFF) and IsValid('FFFF') then - Exit; - - if (aInt < $800) and IsValid('ACVA') then - Exit; - - if Assigned(aElement) then begin - _File := aElement._File; - if Assigned(_File) then try - Result := _File.RecordByFormID[aInt, True]; - except end; - end; -end; - -function TwbFormID.GetMainRecord(aInt: Int64; const aElement: IwbElement): IwbMainRecord; -var - _File: IwbFile; -begin - Result := nil; - if Assigned(aElement) then begin - _File := aElement._File; - if Assigned(_File) then - Result := _File.RecordByFormID[aInt, True]; - end; -end; - -function TwbFormID.IsValid(const aSignature: TwbSignature): Boolean; -begin - Result := aSignature <> 'ACVA'; -end; - -function TwbFormID.IsValidFlst(const aSignature: TwbSignature): Boolean; -begin - Result := True; -end; - -function TwbFormID.IsValidMainRecord(const aMainRecord: IwbMainRecord): Boolean; -begin - Result := True; -end; - -function TwbFormID.MasterCountUpdated(aInt: Int64; aOld, aNew: Byte; const aElement: IwbElement): Int64; -var - OldValue : Cardinal; - NewValue : Cardinal; - FileID : Cardinal; -begin - OldValue := aInt; - NewValue := OldValue; - - if (aInt < $800) or (aInt = $FFFFFFFF) and (IsValid('ACVA') or IsValid('FFFF')) then begin - Result := NewValue; - Exit; - end; - - if OldValue <> 0 then begin - FileID := OldValue shr 24; - if FileID >= aOld then begin - FileID := aNew; - NewValue := (OldValue and $00FFFFFF) or (FileID shl 24); - end; - end; - - Result := NewValue; -end; - -function FixupFormID(aFormID: Cardinal; const aOld, aNew: TBytes): Cardinal; -var - FileID : Integer; - i : Integer; -begin - Result := aFormID; - if (Result = 0) or (Result = $14) or (Result = $FFFFFFFF) then - Exit; - FileID := aFormID shr 24; - for i := Low(aOld) to High(aOld) do - if aOld[i] = FileID then begin - Result := (aFormID and $00FFFFFF) or (Cardinal(aNew[i]) shl 24); - Exit; - end; -end; - -function TwbFormID.MasterIndicesUpdated(aInt: Int64; const aOld, aNew: TBytes; const aElement: IwbElement): Int64; -var - OldValue : Cardinal; - NewValue : Cardinal; -begin - OldValue := aInt; - NewValue := OldValue; - - if (aInt < $800) or (aInt = $FFFFFFFF) and (IsValid('ACVA') or IsValid('FFFF')) then begin - Result := NewValue; - Exit; - end; - - if OldValue <> 0 then - NewValue := FixupFormID(OldValue, aOld, aNew); - - Result := NewValue; -end; - -procedure TwbFormID.Report(const aParents: TwbDefPath); -var - i: Integer; -begin - if defReported then - Exit; - - inherited; - if wbReportMode then - if wbReportFormIDs then begin - if Assigned(FoundSignatures) then - if ClassType = TwbFormID then begin - WriteLn('Unchecked FormID Formater: ', wbDefsToPath(aParents), wbDefToName(Self)); - WriteLn(' ', FoundSignatures.CommaText); - for i := 0 to Pred(FoundSignatures.Count) do - WriteLn(' ', FoundSignatures.Strings[i], ' (', Integer(FoundSignatures.Objects[i]),')'); - end; - if Assigned(NotResolved) then begin - WriteLn('FormID contains unresolvable values: ', wbDefsToPath(aParents), wbDefToName(Self)); - for i := 0 to Pred(NotResolved.Count) do - WriteLn(' ', NotResolved.Strings[i], ' (', Integer(NotResolved.Objects[i]),')'); - end; - if Assigned(FoundNotAllowedReferences) then begin - WriteLn('FormID contains not allowed references: ', wbDefsToPath(aParents), wbDefToName(Self)); - for i := 0 to Pred(FoundNotAllowedReferences.Count) do - WriteLn(' ', FoundNotAllowedReferences.Strings[i], ' (', Integer(FoundNotAllowedReferences.Objects[i]),')'); - end; - end; - - defReported := True; -end; - -function TwbFormID.ToEditValue(aInt: Int64; const aElement: IwbElement): string; -begin - if wbDisplayLoadOrderFormID then begin - Result := ToString(aInt, aElement);//ToSortKey(aInt, aElement) - if (Length(Result) > 0) and (Result[1] = '<') then - Delete(Result, 1, 1); - end else - Result := IntToHex64(aInt, 8); -end; - -function TwbFormID.ToSortKey(aInt: Int64; const aElement: IwbElement): string; -var - MainRecord: IwbMainRecord; -begin - if (aInt < $800) or (aInt = $FFFFFFFF) then begin - Result := IntToHex64(aInt, 8); - Exit; - end; - - MainRecord := GetMainRecord(aInt, aElement); - if Assigned(MainRecord) then begin - try - Result := IntToHex64(MainRecord.LoadOrderFormID, 8); - Exit; - except - on E: Exception do begin - Result := IntToHex64(aInt, 8); - Exit; - end; - end; - end; - - Result := IntToHex64(aInt, 8); -end; - -function TwbFormID.ToString(aInt: Int64; const aElement: IwbElement): string; -var - _File : IwbFile; - i : Integer; - s : string; - MainRecord : IwbMainRecord; -begin - if ((aInt < $800) or (aInt = $FFFFFFFF)) and IsValid('ACVA') then begin - if (aInt = -1) or (aInt = $FF) or (aInt = $FFFFFFFF) then - Result := ' None [ACVA:000000FF]' - else if aInt = $48 then - Result := ' Invalid [ACVA:00000048]' - else begin - MainRecord := FindRecordForAVCode(aInt, aElement); - if Assigned(MainRecord) then - Result := MainRecord.FullName - else - Result := wbActorValueEnum.ToString(aInt, aElement); - Result := Result + ' [ACVA:' + IntToHex64(aInt,8) + ']'; - end; - Exit; - end; - - if aInt = 0 then begin - if IsValid('TRGT') and not IsValid('NULL') then begin - Result := 'TARGET - Target Reference ['+IntToHex64(aInt,8)+']'; - if wbReportMode then - if wbReportFormIDs then begin - if not Assigned(FoundSignatures) then - FoundSignatures := TwbFastStringListCS.CreateSorted; - if not FoundSignatures.Find('TRGT', i) then - i := FoundSignatures.Add('TRGT'); - FoundSignatures.Objects[i] := TObject(Succ(Integer(FoundSignatures.Objects[i]))); - end; - end else begin - Result := 'NULL - Null Reference ['+IntToHex64(aInt,8)+']'; - if wbReportMode then - if wbReportFormIDs then begin - if not Assigned(FoundSignatures) then - FoundSignatures := TwbFastStringListCS.CreateSorted; - if not FoundSignatures.Find('NULL', i) then - i := FoundSignatures.Add('NULL'); - FoundSignatures.Objects[i] := TObject(Succ(Integer(FoundSignatures.Objects[i]))); - end; - end; - Used(aElement, Result); - Exit; - end else if aInt = $FFFFFFFF then begin - Result := 'FFFF - None Reference ['+IntToHex64(aInt,8)+']'; - if wbReportMode then - if wbReportFormIDs then begin - if not Assigned(FoundSignatures) then - FoundSignatures := TwbFastStringListCS.CreateSorted; - if not FoundSignatures.Find('FFFF', i) then - i := FoundSignatures.Add('FFFF'); - FoundSignatures.Objects[i] := TObject(Succ(Integer(FoundSignatures.Objects[i]))); - end; - Used(aElement, Result); - Exit; - end else if aInt = $14 then begin - if wbReportMode then - if wbReportFormIDs then begin - if not Assigned(FoundSignatures) then - FoundSignatures := TwbFastStringListCS.CreateSorted; - if not FoundSignatures.Find('PLYR', i) then - i := FoundSignatures.Add('PLYR'); - FoundSignatures.Objects[i] := TObject(Succ(Integer(FoundSignatures.Objects[i]))); - end; - - Result := 'Player ['+IntToHex64(aInt,8)+']'; - Used(aElement, Result); - Exit; - end; - - if Assigned(aElement) then begin - _File := aElement._File; - if Assigned(_File) then begin - try - MainRecord := _File.RecordByFormID[aInt, True]; - if Assigned(MainRecord) then begin - Result := MainRecord.Name; - if wbReportMode then - if wbReportFormIDs then begin - if not Assigned(FoundSignatures) then - FoundSignatures := TwbFastStringListCS.CreateSorted; - if not FoundSignatures.Find(MainRecord.Signature, i) then - i := FoundSignatures.Add(MainRecord.Signature); - FoundSignatures.Objects[i] := TObject(Succ(Integer(FoundSignatures.Objects[i]))); - end; - - if wbReportFormIDNotAllowedReferences and (ClassType = TwbFormIDChecked) then with TwbFormIDChecked(Self) do begin - if fidcValidRefs.IndexOf(MainRecord.Signature) < 0 then begin - if not Assigned(FoundNotAllowedReferences) then - FoundNotAllowedReferences := TwbFastStringListCS.CreateSorted; - if not FoundNotAllowedReferences.Find(MainRecord.Name, i) then - i := FoundNotAllowedReferences.Add(MainRecord.Name); - FoundNotAllowedReferences.Objects[i] := TObject(Succ(Integer(FoundNotAllowedReferences.Objects[i]))); - end; - end; - - Used(aElement, Result); - Exit; - end; - except - on E: Exception do begin - Result := '['+IntToHex64(aInt,8)+'] '; - if wbReportMode then - if wbReportFormIDs then begin - if not Assigned(FoundSignatures) then - FoundSignatures := TwbFastStringListCS.CreateSorted; - if not FoundSignatures.Find('Error', i) then - i := FoundSignatures.Add('Error'); - FoundSignatures.Objects[i] := TObject(Succ(Integer(FoundSignatures.Objects[i]))); - end; - Used(aElement, Result); - Exit; - end; - end; - end; - end; - - if aInt < $800 then begin - s := IntToHex64(aInt,8); - Result := '['+s+'] '; - if wbReportMode then - if wbReportFormIDs then begin - if not Assigned(FoundSignatures) then - FoundSignatures := TwbFastStringListCS.CreateSorted; - if not FoundSignatures.Find('Hardcoded', i) then - i := FoundSignatures.Add('Hardcoded'); - FoundSignatures.Objects[i] := TObject(Succ(Integer(FoundSignatures.Objects[i]))); - - if not Assigned(NotResolved) then - NotResolved := TwbFastStringListCS.CreateSorted; - if NotResolved.Count < 50 then begin - if not NotResolved.Find(s, i) then - i := NotResolved.Add(s); - NotResolved.Objects[i] := TObject(Succ(Integer(NotResolved.Objects[i]))); - end; - end; - end else begin - s := IntToHex64(aInt,8); - Result := '['+s+'] < Error: Could not be resolved >'; - if wbReportMode then - if wbReportFormIDs then begin - if not Assigned(FoundSignatures) then - FoundSignatures := TwbFastStringListCS.CreateSorted; - if not FoundSignatures.Find('NotResolved', i) then - i := FoundSignatures.Add('NotResolved'); - FoundSignatures.Objects[i] := TObject(Succ(Integer(FoundSignatures.Objects[i]))); - - if not Assigned(NotResolved) then - NotResolved := TwbFastStringListCS.CreateSorted; - if NotResolved.Count < 50 then begin - if not NotResolved.Find(s, i) then - i := NotResolved.Add(s); - NotResolved.Objects[i] := TObject(Succ(Integer(NotResolved.Objects[i]))); - end; - end; - end; - Used(aElement, Result); -end; - -{ TwbByteArrayDef } - -function TwbByteArrayDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - ByteArrayDef: IwbByteArrayDef; -begin - Result := Supports(aDef, IwbByteArrayDef, ByteArrayDef); - if Result and (badSize > 0) then begin - Result := ByteArrayDef.IsVariableSize or (ByteArrayDef.DefaultSize[nil, nil, nil] <= Integer(badSize)); - end; -end; - -function TwbByteArrayDef.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -constructor TwbByteArrayDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbByteArrayDef do - Self.Create(defPriority, defRequired, noName, badSize, noDontShow, badCountCallBack, defGetCP, noTerminator).defSource := aSource; -end; - -constructor TwbByteArrayDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aSize : Int64; - aDontShow : TwbDontShowCallback; - aCountCallback : TwbCountCallback; - aGetCP : TwbGetConflictPriority; - aTerminator : Boolean); -begin - badSize := aSize; - badCountCallback := aCountCallback; - inherited Create(aPriority, aRequired, aName, nil, nil, aDontShow, aGetCP, aTerminator); -end; - -procedure TwbByteArrayDef.FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); -var - Bytes : array of Byte; - i, j : Integer; - Prefix : Integer; -begin - SetLength(Bytes, Length(aValue) div 2); - i := 1; - j := 0; - while i <= Length(aValue) do begin - case aValue[i] of - ' ', ',', ';': {allowed whitespace} - Inc(i); - '0'..'9', 'a'..'f', 'A'..'F': begin - if i = Length(aValue) then - raise Exception.Create('Unexpected end of value. Single digit in hexadecimal pair'); - if aValue[Succ(i)] in ['0'..'9', 'a'..'f', 'A'..'F'] then begin - Bytes[j] := StrToInt('$'+Copy(aValue,i, 2)); - Inc(j); - Inc(i, 2); - end else - raise Exception.Create('"'+aValue[Succ(i)]+'" at position '+IntToStr(Succ(i))+' is not a valid character for ' + GetName); - end; - else - raise Exception.Create('"'+aValue[i]+'" at position '+IntToStr(i)+' is not a valid character for ' + GetName); - end; - end; - - SetLength(Bytes, j); - - case badSize of - -1 : Prefix := SizeOf(Cardinal); - -2 : Prefix := SizeOf(Word); - -4 : Prefix := SizeOf(Byte); - else - Prefix := 0; - end; - if (badSize > 0) then - SetLength(Bytes, badSize); - - aElement.RequestStorageChange(aBasePtr, aEndPtr, Length(Bytes)+Prefix); - - if Length(Bytes) > 0 then - Move(Bytes[0], Pointer(Cardinal(aBasePtr)+Prefix)^, Length(Bytes)); -end; - -procedure TwbByteArrayDef.FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); -var - Bytes : TBytes; - Prefix : Integer; -begin - Bytes := aValue; - - case badSize of - -1 : Prefix := SizeOf(Cardinal); - -2 : Prefix := SizeOf(Word); - -4 : Prefix := SizeOf(Byte); - else - Prefix := 0; - end; - if (badSize > 0) then - SetLength(Bytes, badSize); - - aElement.RequestStorageChange(aBasePtr, aEndPtr, Length(Bytes)+Prefix); - - if Length(Bytes) > 0 then - Move(Bytes[0], Pointer(Cardinal(aBasePtr)+Prefix)^, Length(Bytes)); -end; - -function TwbByteArrayDef.GetDefType: TwbDefType; -begin - Result := dtByteArray; -end; - -function TwbByteArrayDef.GetDefTypeName: string; -begin - if badSize > 0 then - Result := IntToStr(badSize)+' Bytes Array' - else if Assigned(badCountCallback) then - Result := 'Variable Size Byte Array' - else case badSize of - -1 : Result := 'Variable Size Byte Array with four bytes length'; - -2 : Result := 'Variable Size Byte Array with two bytes length'; - -4 : Result := 'Variable Size Byte Array with one byte length'; - -255 : Result := 'Null'; - 0 : Result := 'Filler for remaining data'; - end -end; - -function TwbByteArrayDef.GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -function TwbByteArrayDef.GetIsVariableSizeInternal: Boolean; -begin - Result := badSize <= 0; -end; - -function TwbByteArrayDef.GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if Assigned(aBasePtr) and Assigned(aEndPtr) and (Cardinal(aBasePtr) >= Cardinal(aEndPtr)) then - Result := 0 - else if Assigned(badCountCallback) then - Result := badCountCallback(aBasePtr, aEndPtr, aElement) - else begin - Result := badSize; - if Assigned(aBasePtr) then - case Result of - -1 : Result := PCardinal(aBasePtr)^+SizeOf(Cardinal); - -2 : Result := PWord(aBasePtr)^+SizeOf(Word); - -4 : Result := PByte(aBasePtr)^+SizeOf(Byte); - -255 : Result := 0; // Explicitly null for wbNull (displays better in unions) - 0 : Result := High(Integer); - end - else if Result < 0 then Result := 0; - end; - if Result>0 then Inc(Result, Ord(noTerminator)); -end; - -function TwbByteArrayDef.GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if badSize>=0 then - Result := badSize - else - case badSize of - -1 : Result := SizeOf(Cardinal); - -2 : Result := SizeOf(Word); - -4 : Result := SizeOf(Byte); - -255 : Result := 0; // Explicitly null for wbNull (displays better in unions) - else - Result := 0; - end; - if Result>0 then Inc(Result, Ord(noTerminator)); -end; - -procedure TwbByteArrayDef.Report(const aParents: TwbDefPath); -var - FoundOne: Boolean; - {i,} j, k, l : Integer; - s: string; - sl: TStringList; - BA: TwbByteArrayDef; -begin - if defReported then - Exit; - - inherited; - BA := Self; - - s := wbDefsToPath(aParents) + wbDefToName(Self); - - if (Pos('Hashes', s) < 1) and - (Pos('SCDA', s) < 1) and - (Pos('SCTX', s) < 1) and - (Pos('MODT', s) < 1) and - (Pos('MO2T', s) < 1) and - (Pos('MO3T', s) < 1) and - (Pos('MO4T', s) < 1) and - (Pos('DMDT', s) < 1) and - (Pos('NIFT', s) < 1) and - (Pos('XRGD', s) < 1) and - (Pos('XCLP', s) < 1) and - (Pos('RCLR', s) < 1) then begin - - if wbReportUnknownFormIDs then begin - FoundOne := False; - with BA do begin - for j := Low(FoundFormIDAtOffSet) to High(FoundFormIDAtOffSet) do - if (FoundFormIDAtOffSet[j] > 2) and (NotFoundFormIDAtOffSet[j] = 0) then begin - if not FoundOne then begin - FoundOne := True; - WriteLn('Found FormIDs: ', s); - end; - with SignaturesAtOffSet[j] do begin - WriteLn(' Offset ', j, ': ', Count, ' (', FoundFormIDAtOffSet[j],')'); - for k := 0 to Pred(Count) do begin - sl := Objects[k] as TStringList; - WriteLn(' ', Strings[k], ' (', sl.Count,')'); - with sl do - for l := 0 to Pred(Count) do - WriteLn(' ', Strings[l],' (',Integer(Objects[l]),') '); - end; - if Assigned(FormIDsAtOffSetFoundIn[j]) then with FormIDsAtOffSetFoundIn[j] do - for k := 0 to Pred(Count) do - WriteLn(' ', Strings[k]); - end; - end; - - end; - end; - - if wbReportUnknownFloats then begin - FoundOne := False; - with BA do begin - for j := Low(FoundFloatAtOffSet) to High(FoundFloatAtOffSet) do - if (FoundFloatAtOffSet[j] > 2) and (NotFoundFloatAtOffSet[j] = 0) then begin - if not FoundOne then begin - FoundOne := True; - WriteLn('Found Floats: ', s); - end; - with FloatsAtOffSet[j] do begin - WriteLn(' Offset ', j, ': ', Count, ' (', FoundFloatAtOffSet[j],')'); - for k := 0 to Pred(Count) do - WriteLn(' ', Strings[k], ' (', Integer(Objects[k]),')'); - end; - end; - end; - end; - - end; - - if wbReportUnknownStrings then - if (FoundString > 0) and (NotFoundString < 1) then begin - WriteLn('Found Strings: ', s, ': ',Strings.Count,' (', FoundString, ')'); - with Strings do - for k := 0 to Pred(Count) do - WriteLn(' ', Strings[k], ' (', Integer(Objects[k]),')'); - end; - - if wbReportEmpty then - if IsEmpty > 0 then - if IsNotEmpty > 0 then begin - if wbReportSometimesEmpty then - WriteLn('Sometimes Empty: ', s, ': ', IsEmpty, ' (Empty) vs. ', IsNotEmpty, ' (not Empty)') - end else - WriteLn('Always Empty: ', s, ': ', IsEmpty, ' (Empty) vs. ', IsNotEmpty, ' (not Empty)'); - - defReported := True; -end; - -function TwbByteArrayDef.SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -var - Size : Integer; - Default : String; -begin - Size := GetSize(aBasePtr, aEndPtr, aElement); - if (Size > 0) and (Size < High(Integer)) then begin - Default := '00'; - while Length(Default)<(Size*3-1) do - Default := Default + ' 00'; - end else - Default := ''; - Result := not Assigned(aBasePtr) or (ToString(aBasePtr, aEndPtr, aElement) <> Default); - if Result then - FromEditValue(aBasePtr, aEndPtr, aElement, Default); -end; - -function TwbByteArrayDef.ToEditValue(aBasePtr, aEndPtr: Pointer; - const aElement: IwbElement): string; -begin - Result := ToString(aBasePtr, aEndPtr, aElement); -end; - -function TwbByteArrayDef.ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; -var - Bytes: TBytes; -begin - case badSize of - -1 : aBasePtr := Pointer(Cardinal(aBasePtr)+SizeOf(Cardinal)); - -2 : aBasePtr := Pointer(Cardinal(aBasePtr)+SizeOf(Word)); - -4 : aBasePtr := Pointer(Cardinal(aBasePtr)+SizeOf(Byte)); - end; - SetLength(Bytes, Cardinal(aEndPtr) - Cardinal(aBasePtr)); - if Length(Bytes) > 0 then - Move(aBasePtr^, Bytes[0], Length(Bytes)); - Result := Bytes; -end; - -function CountBits(aCardinal: Cardinal): Integer; -var - i: Integer; -begin - Result := 0; - for I := 0 to 31 do - if (aCardinal shr i) and 1 = 1 then - Inc(Result); -end; - -function TwbByteArrayDef.ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -var - p: PByte; -{} _File: IwbFile; - MainRecord: IwbMainRecord; - OffSet: Integer; - aInt: Cardinal; -// Path : string; - s: string; - i: Integer; - f, f2: Single; -begin - Result := ''; - case badSize of - -1 : aBasePtr := Pointer(Cardinal(aBasePtr)+SizeOf(Cardinal)); - -2 : aBasePtr := Pointer(Cardinal(aBasePtr)+SizeOf(Word)); - -4 : aBasePtr := Pointer(Cardinal(aBasePtr)+SizeOf(Byte)); - end; - p := aBasePtr; - while Cardinal(p) < Cardinal(aEndPtr) do begin - Result := Result + IntToHex64(p^, 2) + ' '; - Inc(p); - end; - SetLength(Result, Length(Result) - 1); - - if wbReportMode then begin - if Assigned(aElement) and (Self.noName <> 'Unused') then begin - _File := aElement._File; - - if wbReportUnknownFormIDs then begin - p := aBasePtr; - OffSet := 0; - while (Cardinal(p)+3) < Cardinal(aEndPtr) do begin - aInt := PCardinal(p)^; - if (aInt <> $0) and (aInt <> $14) and ((Length(NotFoundFormIDAtOffSet) < Succ(OffSet)) or (NotFoundFormIDAtOffSet[Offset] < 1)) then begin - MainRecord := nil; - try - MainRecord := _File.RecordByFormID[aInt, True]; - except - on E: Exception do begin - MainRecord := nil; - end; - end; - if Length(FoundFormIDAtOffSet) < Succ(Offset) then - SetLength(FoundFormIDAtOffSet, Succ(Offset)); - if Length(NotFoundFormIDAtOffSet) < Succ(Offset) then - SetLength(NotFoundFormIDAtOffSet, Succ(Offset)); - if Length(SignaturesAtOffSet) < Succ(Offset) then - SetLength(SignaturesAtOffSet, Succ(Offset)); - if Length(FormIDsAtOffSetFoundIn) < Succ(Offset) then - SetLength(FormIDsAtOffSetFoundIn, Succ(Offset)); - if Assigned(MainRecord) then begin - if (aInt > $14) and (CountBits(aInt) > 4) then begin - Inc(FoundFormIDAtOffSet[Offset]); - if not Assigned(SignaturesAtOffSet[Offset]) then - SignaturesAtOffSet[Offset] := TwbFastStringListCS.CreateSorted; - s := MainRecord.Signature; - if not SignaturesAtOffSet[Offset].Find(s, i) then - i := SignaturesAtOffSet[Offset].AddObject(s, TwbFastStringListCS.CreateSorted); - s := MainRecord.Name; - with TStringList(SignaturesAtOffSet[Offset].Objects[i]) do - if Find(s, i) then - Objects[i] := TObject(Succ(Integer(Objects[i]))) - else - if Count < 10 then - AddObject(s, TObject(1)); - - if not Assigned(FormIDsAtOffSetFoundIn[Offset]) then - FormIDsAtOffSetFoundIn[Offset] := TwbFastStringListCS.CreateSorted(dupIgnore); - if FormIDsAtOffSetFoundIn[Offset].Count < 50 then - FormIDsAtOffSetFoundIn[Offset].Add(aElement.FullPath); - end; - end else - Inc(NotFoundFormIDAtOffSet[Offset]); - end; - Inc(p,4); - Inc(OffSet,4); - end; - end; - - if wbReportUnknownFloats then begin - p := aBasePtr; - OffSet := 0; - while (Cardinal(p)+3) < Cardinal(aEndPtr) do begin - aInt := PCardinal(p)^; - f := PSingle(p)^; - if (aInt <> $0) and ((Length(NotFoundFloatAtOffSet) < Succ(OffSet)) or (NotFoundFloatAtOffSet[Offset] < 1)) then begin - - if Length(FoundFloatAtOffSet) < Succ(Offset) then - SetLength(FoundFloatAtOffSet, Succ(Offset)); - if Length(NotFoundFloatAtOffSet) < Succ(Offset) then - SetLength(NotFoundFloatAtOffSet, Succ(Offset)); - if Length(FloatsAtOffSet) < Succ(Offset) then - SetLength(FloatsAtOffSet, Succ(Offset)); - - try - f2 := RoundToEx(f, -3); {>>> Floating Point Violation <<<} - if (f2 <> 0) and (Abs(f-f2) < 0.0002) then begin - if (f2 > -1000000) and (f2 < 1000000) then begin - Inc(FoundFloatAtOffSet[Offset]); - - if not Assigned(FloatsAtOffSet[Offset]) then - FloatsAtOffSet[Offset] := TwbFastStringListCS.CreateSorted; - - s := FloatToStr(RoundToEx(f,-7)); - with FloatsAtOffSet[Offset] do if Count < 15 then begin - if not Find(s, i) then - i := AddObject(s, TObject(0)); - Objects[i] := TObject(Succ(Integer(Objects[i]))); - end; - end; - - end else - Inc(NotFoundFloatAtOffSet[Offset]); - except - Inc(NotFoundFloatAtOffSet[Offset]); - end; - - end; - Inc(p,4); - Inc(OffSet,4); - end; - end; - - if wbReportUnknownStrings then begin - if (badSize < 1) and (NotFoundString < 1) then begin - p := aBasePtr; - while (Cardinal(p)) < Cardinal(aEndPtr) do begin - if p^ < 32 then - if (Succ(Cardinal(p)) = Cardinal(aEndPtr)) and (p^ = 0) then begin - s := PAnsiChar(aBasePtr); - if Length(s) > 4 then begin - Inc(FoundString); - - if not Assigned(Strings) then - Strings := TwbFastStringListCS.CreateSorted; - - with Strings do if Count < 15 then begin - if not Find(s, i) then - i := AddObject(s, TObject(0)); - Objects[i] := TObject(Succ(Integer(Objects[i]))); - end; - end; - end else begin - Inc(NotFoundString); - Break; - end; - - Inc(p); - end; - end; - end; - - if wbReportEmpty then begin - if (Cardinal(aBasePtr)) < Cardinal(aEndPtr) then - Inc(IsNotEmpty) - else - Inc(IsEmpty); - end; - - end; - end; - Used(aElement, Result); -end; - -{ TwbDivDef } - -function TwbDivDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -begin - Result := True; -end; - -function TwbDivDef.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -constructor TwbDivDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbDivDef do - Self.Create(ddValue).defSource := aSource; -end; - -constructor TwbDivDef.Create(aValue: Integer); -begin - ddValue := aValue; - inherited Create(cpNormal, False, nil); -end; - -function TwbDivDef.FromEditValue(const aValue: string; const aElement: IwbElement): Int64; -begin - Result := Round(StrToFloat(aValue) * ddValue); -end; - -function TwbDivDef.GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -function TwbDivDef.ToEditValue(aInt: Int64; const aElement: IwbElement): string; -begin - Result := FloatToStrF(aInt / ddValue, ffFixed, 99, wbFloatDigits); -end; - -function TwbDivDef.ToSortKey(aInt: Int64; const aElement: IwbElement): string; -const - PlusMinus : array[Boolean] of string = ('+', '-'); -begin - Result := PlusMinus[aInt < 0] + IntToHex64(Abs(aInt), 16); -end; - -function TwbDivDef.ToString(aInt: Int64; const aElement: IwbElement): string; -begin - Result := FloatToStrF(aInt / ddValue, ffFixed, 99, wbFloatDigits); - Used(aElement, Result); -end; - -{ TwbMulDef } - -function TwbMulDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -begin - Result := True; -end; - -function TwbMulDef.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -constructor TwbMulDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbMulDef do - Self.Create(mdValue).defSource := aSource; -end; - -constructor TwbMulDef.Create(aValue: Integer); -begin - mdValue := aValue; - inherited Create(cpNormal, False, nil); -end; - -function TwbMulDef.FromEditValue(const aValue: string; const aElement: IwbElement): Int64; -begin - Result := StrToInt64(aValue) div mdValue; -end; - -function TwbMulDef.GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -function TwbMulDef.ToEditValue(aInt: Int64; const aElement: IwbElement): string; -begin - Result := IntToStr(aInt * mdValue); -end; - -function TwbMulDef.ToSortKey(aInt: Int64; const aElement: IwbElement): string; -begin - Result := ''; {handled by integer def} -end; - -function TwbMulDef.ToString(aInt: Int64; const aElement: IwbElement): string; -begin - Result := IntToStr(aInt * mdValue); - Used(aElement, Result); -end; - -{ TwbCallbackDef } - -function TwbCallbackDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - CallbackDef: IwbCallbackDef; -begin - Result := Supports(aDef, IwbCallbackDef, CallbackDef) and - (@CallbackDef.Callback = @cdToStr); -end; - -function TwbCallbackDef.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -function TwbCallbackDef.Check(aInt: Int64; const aElement: IwbElement): string; -begin - Result := cdToStr(aInt, aElement, ctCheck); -end; - -constructor TwbCallbackDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbCallbackDef do - Self.Create(cdToStr, cdToInt).defSource := aSource; -end; - -constructor TwbCallbackDef.Create(const aToStr : TwbIntToStrCallback; - const aToInt : TwbStrToIntCallback); -begin - cdToStr := aToStr; - cdToInt := aToInt; - inherited Create(cpNormal, False, nil); -end; - -function TwbCallbackDef.FromEditValue(const aValue: string; const aElement: IwbElement): Int64; -begin - if Assigned(cdToInt) then - Result := cdToInt(aValue, aElement) - else - Result := StrToInt64(aValue) -end; - -function TwbCallbackDef.GetCallback: TwbIntToStrCallback; -begin - Result := cdToStr; -end; - -function TwbCallbackDef.GetEditInfo(aInt: Int64; const aElement: IwbElement): string; -begin - Result := cdToStr(aInt, aElement, ctEditInfo); -end; - -function TwbCallbackDef.GetEditType(aInt: Int64; const aElement: IwbElement): TwbEditType; -var - s: string; -begin - Result := etDefault; - s := cdToStr(aInt, aElement, ctEditType); - if SameText(s, 'ComboBox') then - Result := etComboBox - else if SameText(s, 'CheckComboBox') then - Result := etCheckComboBox; -end; - -function TwbCallbackDef.GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -function TwbCallbackDef.ToEditValue(aInt: Int64; const aElement: IwbElement): string; -begin - Result := cdToStr(aInt, aElement, ctToEditValue); - if Result = '' then - Result := IntToStr(aInt); -end; - -function TwbCallbackDef.ToSortKey(aInt: Int64; const aElement: IwbElement): string; -begin - Result := cdToStr(aInt, aElement, ctToSortKey); -end; - -function TwbCallbackDef.ToString(aInt: Int64; const aElement: IwbElement): string; -begin - Result := cdToStr(aInt, aElement, ctToStr); - Used(aElement, Result); -end; - -{ TwbValueDef } - -procedure TwbValueDef.BuildRef; -begin - {nothing} -end; - -function TwbValueDef.Check(aBasePtr, aEndPtr: Pointer; - const aElement: IwbElement): string; -begin - Result := ''; -end; - -function TwbValueDef.CompareExchangeFormID(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aOldFormID, aNewFormID: Cardinal): Boolean; -begin - {can be overriden} - Result := False; -end; - -procedure TwbValueDef.FindUsedMasters(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aMasters: PwbUsedMasters); -begin - {can be overriden} -end; - -procedure TwbValueDef.FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); -begin - raise Exception.Create(GetName + ' is not editable.'); -end; - -procedure TwbValueDef.FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); -begin - raise Exception.Create(GetName + ' is not editable.'); -end; - -function TwbValueDef.GetCanBeZeroSize: Boolean; -begin - Result := False; -end; - -function TwbValueDef.GetEditInfo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -begin - Result := ''; -end; - -function TwbValueDef.GetEditType(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): TwbEditType; -begin - Result := etDefault; -end; - -function TwbValueDef.GetElementMap: TDynCardinalArray; -begin - Result := nil; -end; - -function TwbValueDef.GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -begin - Result := wbIsInternalEdit; -end; - -function TwbValueDef.GetIsVariableSize: Boolean; -begin - if not (vdsIsVariableSizeChecked in vdStates) then begin - if GetIsVariableSizeInternal then - Include(vdStates, vdsIsVariableSize) - else - Exclude(vdStates, vdsIsVariableSize); - Include(vdStates, vdsIsVariableSizeChecked) - end; - Result := vdsIsVariableSize in vdStates; -end; - -function TwbValueDef.GetIsVariableSizeInternal: Boolean; -begin - Result := False; -end; - -function TwbValueDef.GetLinksTo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): IwbElement; -begin - Result := nil; -end; - -procedure TwbValueDef.MasterCountUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aOld, aNew: Byte); -begin - {can be overriden} -end; - -procedure TwbValueDef.MasterIndicesUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aOld, aNew: TBytes); -begin - {can be overriden} -end; - -function TwbValueDef.SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -begin - Result := False; - {can be overriden} -end; - -function TwbValueDef.ToEditValue(aBasePtr, aEndPtr: Pointer; - const aElement: IwbElement): string; -begin - Result := ''; -end; - -function TwbValueDef.ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; -begin - VarClear(Result); -end; - -function TwbValueDef.ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; -begin - Result := UpperCase(ToString(aBasePtr, aEndPtr, aElement)); -end; - -{ TwbSubRecordStructSKDef } - -constructor TwbSubRecordStructSKDef.Clone(const aSource: TwbDef); -var - SkipSigs : array of TwbSignature; - i : Integer; -begin - with aSource as TwbSubRecordStructSKDef do begin - if Assigned(srsSkipSignatures) then begin - SetLength(SkipSigs, srsSkipSignatures.Count); - for i := 0 to Pred(srsSkipSignatures.Count) do - SkipSigs[i] := StrToSignature(srsSkipSignatures[i]); - end; - Self.Create(defPriority, defRequired, noName, srsMembers, SkipSigs, srsSortKey, srsExSortKey, noDontShow, srsAllowUnordered, noAfterLoad, noAfterSet, defGetCP).defSource := aSource; - end; -end; - -constructor TwbSubRecordStructSKDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aMembers : array of IwbRecordMemberDef; - const aSkipSigs : array of TwbSignature; - const aSortKey : array of Integer; - const aExSortKey : array of Integer; - aDontShow : TwbDontShowCallback; - aAllowUnordered : Boolean; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aGetCP : TwbGetConflictPriority); -var - i: Integer; -begin - SetLength(srsMemberInSK, Length(aMembers)); - - SetLength(srsSortKey, Length(aSortKey)); - for i := Low(srsSortKey) to High(srsSortKey) do begin - Assert( not srsMemberInSK[aSortKey[i]] ); - srsMemberInSK[aSortKey[i]] := True; - - srsSortKey[i] := aSortKey[i]; - end; - - SetLength(srsExSortKey, Length(aExSortKey)); - for i := Low(srsExSortKey) to High(srsExSortKey) do - srsExSortKey[i] := aExSortKey[i]; - - inherited Create(aPriority, aRequired, aName, aMembers, aSkipSigs, aDontShow, aAllowUnordered, aAfterLoad, aAfterSet, aGetCP); -end; - -function TwbSubRecordStructSKDef.GetSortKey(aIndex: Integer; aExtended: Boolean): Integer; -begin - if aIndex <= High(srsSortKey) then - Result := srsSortKey[aIndex] - else - Result := srsExSortKey[aIndex-Length(srsSortKey)]; -end; - -function TwbSubRecordStructSKDef.GetSortKeyCount(aExtended: Boolean): Integer; -begin - Result := Length(srsSortKey); - if aExtended then - Inc(Result, Length(srsExSortKey)); -end; - -function TwbSubRecordStructSKDef.IsInSK(aIndex: Integer): Boolean; -begin - Result := (aIndex >= Low(srsMemberInSK)) and (aIndex <= High(srsMemberInSK)) and srsMemberInSK[aIndex]; -end; - -{ TwbFormIDChecked } - -function TwbFormIDChecked.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - FormIDChecked : IwbFormIDChecked; - i : Integer; - Dummy : Integer; -begin - if Supports(aDef, IwbFormIDChecked, FormIDChecked) then begin - Result := False; - for i := 0 to Pred(FormIDChecked.SignatureCount) do - if (FormIDChecked.Signatures[i] <> 'NULL') and (FormIDChecked.Signatures[i] <> 'TRGT') then - if fidcValidRefs.Find(FormIDChecked.Signatures[i], Dummy) then begin - Result := True; - Exit; - end; - end else - Result := inherited CanAssign(aElement, aIndex, aDef); -end; - -function TwbFormIDChecked.Check(aInt: Int64; - const aElement: IwbElement): string; -var - _File: IwbFile; - MainRecord: IwbMainRecord; - Found: TwbSignature; -begin - Result := ''; - - {>>> No ACVA errors <<<} - if IsValid('ACVA') then - Exit; - - if aInt = 0 then begin - if IsValid('TRGT') and not IsValid('NULL') then begin - Found := 'TRGT'; - if fidcValidRefs.IndexOf(Found) < 0 then - Result := 'Found a TRGT reference, expected: ' + fidcValidRefs.CommaText; - end else begin - Found := 'NULL'; - if fidcValidRefs.IndexOf(Found) < 0 then - Result := 'Found a NULL reference, expected: ' + fidcValidRefs.CommaText; - end; - Exit; - end else if aInt = $FFFFFFFF then begin - Found := 'FFFF'; - if fidcValidRefs.IndexOf(Found) < 0 then - Result := 'Found a None (FFFFFFFF) reference, expected: ' + fidcValidRefs.CommaText; - Exit; - end else if aInt = $14 then begin - Found := 'PLYR'; - if fidcValidRefs.IndexOf(Found) < 0 then - Result := 'Found a PLYR reference, expected: ' + fidcValidRefs.CommaText; - Exit; - end; - - if Assigned(aElement) then begin - _File := aElement._File; - if Assigned(_File) then begin - try - MainRecord := _File.RecordByFormID[aInt, True]; - if Assigned(MainRecord) then begin - Found := MainRecord.Signature; - if fidcValidRefs.IndexOf(Found) < 0 then - Result := 'Found a '+Found+' reference, expected: ' + fidcValidRefs.CommaText - else begin - if fidcPersistent then - if not MainRecord.WinningOverride.Flags.IsPersistent then begin - Result := 'Target is not persistent'; - Exit; - end; - if not CheckFlst(MainRecord) then - Result := 'Referenced FLST contains invalid entry'; - end; - Exit; - end; - except - on E: Exception do begin - Result := E.Message; - Exit; - end; - end; - end; - end; - - if aInt > $800 then - Result := '['+IntToHex64(aInt,8)+'] < Error: Could not be resolved >'; -end; - -function TwbFormIDChecked.CheckFlst(const aMainRecord: IwbMainRecord): Boolean; -var - Container : IwbContainerElementRef; - i, j : Integer; - MainRecord : IwbMainRecord; -begin - Result := True; - - if fidcValidFlstRefs.Count < 1 then - Exit; - - if aMainRecord.Signature <> 'FLST' then - Exit; - - if Supports(aMainRecord.ElementByName['FormIDs'], IwbContainerElementRef, Container) then - for i := 0 to Pred(Container.ElementCount) do - if Supports(Container.Elements[i].LinksTo, IwbMainRecord, MainRecord) then - if not fidcValidFlstRefs.Find(MainRecord.Signature, j) then begin - Result := False; - Exit; - end; -end; - -constructor TwbFormIDChecked.Clone(const aSource: TwbDef); -begin - with aSource as TwbFormIDChecked do - Self.Create(fidcValidRefsArr, fidcValidFlstRefsArr, fidcPersistent, fidcNoReach).defSource := aSource; -end; - -constructor TwbFormIDChecked.Create(const aValidRefs : array of TwbSignature; - const aValidFlstRefs : array of TwbSignature; - aPersistent : Boolean; - aNoReach : Boolean); -var - i: Integer; -begin - fidcPersistent := aPersistent; - fidcNoReach := aNoReach; - - fidcValidRefs := TwbFastStringListCS.CreateSorted; - SetLength(fidcValidRefsArr, Length(aValidRefs)); - for i := Low(aValidRefs) to High(aValidRefs) do begin - fidcValidRefsArr[i] := aValidRefs[i]; - fidcValidRefs.Add(aValidRefs[i]); - end; - - fidcValidFlstRefs := TwbFastStringListCS.CreateSorted; - SetLength(fidcValidFlstRefsArr, Length(aValidFlstRefs)); - for i := Low(aValidFlstRefs) to High(aValidFlstRefs) do begin - fidcValidFlstRefsArr[i] := aValidFlstRefs[i]; - fidcValidFlstRefs.Add(aValidFlstRefs[i]); - end; - - inherited Create(cpNormal, False, nil); -end; - -destructor TwbFormIDChecked.Destroy; -begin - FreeAndNil(fidcValidRefs); - FreeAndNil(fidcValidFlstRefs); - inherited; -end; - -function TwbFormIDChecked.FromEditValue(const aValue: string; const aElement: IwbElement): Int64; -var - Error: string; -begin - Result := inherited FromEditValue(aValue, aElement); - if not wbAllowErrors then begin - Error := Check(Result, aElement); - if Error <> '' then - raise Exception.Create(Error); - end; -end; - -function TwbFormIDChecked.GetNoReach: Boolean; -begin - Result := fidcNoReach; -end; - -function TwbFormIDChecked.GetSignature(aIndex: Integer): TwbSignature; -begin - Result := StrToSignature(fidcValidRefs[aIndex]); -end; - -function TwbFormIDChecked.GetSignatureCount: Integer; -begin - Result := fidcValidRefs.Count; -end; - -function TwbFormIDChecked.IsValid(const aSignature: TwbSignature): Boolean; -begin - Result := fidcValidRefs.IndexOf(aSignature) >= 0; -end; - -function TwbFormIDChecked.IsValidFlst(const aSignature: TwbSignature): Boolean; -begin - Result := (fidcValidFlstRefs.Count = 0) or (fidcValidFlstRefs.IndexOf(aSignature) >= 0); -end; - -function TwbFormIDChecked.IsValidMainRecord(const aMainRecord: IwbMainRecord): Boolean; -begin - Result := not fidcPersistent or aMainRecord.IsPersistent; -end; - -procedure TwbFormIDChecked.Report(const aParents: TwbDefPath); -var - i, j : Integer; - s : string; - Sigs : TStringList; -begin - if defReported then - Exit; - - inherited; - if wbReportMode then - if wbReportFormIDs and Assigned(FoundSignatures) and (FoundSignatures.Count > 0) then begin - s := ''; - - Sigs := TwbFastStringListCS.CreateSorted; - try - Sigs.AddStrings(FoundSignatures); - - for i := 0 to Pred(fidcValidRefs.Count) do - if Sigs.Find(fidcValidRefs[i], j) then - Sigs.Delete(j) - else - s := s + fidcValidRefs[i] + ','; - SetLength(s, Pred(Length(s))); - - if not wbReportNotFoundButAllowedFormIDs then - s := ''; - - if (s <> '') or (Sigs.Count > 0) then begin - WriteLn('Differences in Checked FormID Formater: ', wbDefsToPath(aParents), wbDefToName(Self)); - if s <> '' then - WriteLn(' Not found but allowed: ', s); - if Sigs.Count > 0 then begin - WriteLn(' Found but not allowed: ', Sigs.CommaText); - for i := 0 to Pred(Sigs.Count) do - WriteLn(' ', Sigs.Strings[i], ' (', Integer(Sigs.Objects[i]),')'); - end; - end; - finally - Sigs.Free; - end; - end; - - defReported := True; -end; - -{ TwbIntegerDefFormater } - -procedure TwbIntegerDefFormater.BuildRef(aInt: Int64; - const aElement: IwbElement); -begin - { nothing } -end; - -function TwbIntegerDefFormater.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -begin - Result := False; -end; - -function TwbIntegerDefFormater.Check(aInt: Int64; - const aElement: IwbElement): string; -begin - Result := ''; -end; - -constructor TwbIntegerDefFormater.Clone(const aSource: TwbDef); -begin - with aSource as TwbIntegerDefFormater do - Self.Create(defPriority, defRequired, defGetCP).defSource := aSource; -end; - -function TwbIntegerDefFormater.CompareExchangeFormID(var aInt: Int64; - aOldFormID, aNewFormID: Cardinal; const aElement: IwbElement): Boolean; -begin - Result := False; // ? Should be overriden -end; - -procedure TwbIntegerDefFormater.FindUsedMasters(aInt: Int64; aMasters: PwbUsedMasters; const aElement: IwbElement); -begin - {can be overriden} -end; - -function TwbIntegerDefFormater.FromEditValue(const aValue: string; - const aElement: IwbElement): Int64; -begin - raise Exception.Create(Classname + ' does not support editing'); -end; - -function TwbIntegerDefFormater.GetDefType: TwbDefType; -begin - Result := dtIntegerFormater; -end; - -function TwbIntegerDefFormater.GetDefTypeName: string; -begin - Result := ClassName; -end; - -function TwbIntegerDefFormater.GetEditInfo(aInt: Int64; const aElement: IwbElement): string; -begin - Result := ''; -end; - -function TwbIntegerDefFormater.GetEditType(aInt: Int64; const aElement: IwbElement): TwbEditType; -begin - Result := etDefault; -end; - -function TwbIntegerDefFormater.GetIsEditable(aInt: Int64; const aElement: IwbElement): Boolean; -begin - Result := wbIsInternalEdit; -end; - -function TwbIntegerDefFormater.GetLinksTo(aInt: Int64; const aElement: IwbElement): IwbElement; -begin - Result := nil; -end; - -function TwbIntegerDefFormater.GetRequiresKey: Boolean; -begin - Result := False; -end; - -function TwbIntegerDefFormater.MasterCountUpdated(aInt: Int64; aOld, aNew: Byte; const aElement: IwbElement): Int64; -begin - Result := aInt; -end; - -function TwbIntegerDefFormater.MasterIndicesUpdated(aInt: Int64; const aOld, aNew: TBytes; const aElement: IwbElement): Int64; -begin - Result := aInt; -end; - -function TwbIntegerDefFormater.ToEditValue(aInt: Int64; - const aElement: IwbElement): string; -begin - Result := ''; -end; - -{ TwbUnionDef } - -procedure TwbUnionDef.BuildRef(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement); -var - ValueDef : IwbValueDef; -begin - inherited; - ValueDef := Decide(aBasePtr, aEndPtr, aElement); - if Assigned(ValueDef) then - ValueDef.BuildRef(aBasePtr, aEndPtr, aElement); -end; - -function TwbUnionDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef): Boolean; -var - UnionDef : IwbUnionDef; - i : Integer; -begin - if Supports(aDef, IwbUnionDef, UnionDef) then begin - Result := Equals(aDef); - if not Result then - for i := 0 to Pred(UnionDef.MemberCount) do begin - Result := CanAssign(aElement, aIndex, UnionDef.Members[i]); - if Result then - Exit; - end; - - end else begin - Result := False; - for i := 0 to Pred(GetMemberCount) do begin - Result := udMembers[i].CanAssign(aElement, aIndex, aDef); - if Result then - Exit; - end; - end; -end; - -function TwbUnionDef.CanContainFormIDs: Boolean; -begin - Result := ubCanContainFormIDs; -end; - -function TwbUnionDef.Check(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -begin - Result := Decide(aBasePtr, aEndPtr, aElement).Check(aBasePtr, aEndPtr, aElement); -end; - -constructor TwbUnionDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbUnionDef do - Self.Create(defPriority, defRequired, noName, udDecider, udMembers, noDontShow, noAfterSet, defGetCP).defSource := aSource; -end; - -constructor TwbUnionDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aDecider : TwbUnionDecider; - const aMembers : array of IwbValueDef; - aDontShow : TwbDontShowCallback; - aAfterSet : TwbAfterSetCallback; - aGetCP : TwbGetConflictPriority); -var - i: Integer; -begin - inherited Create(aPriority, aRequired, aName, nil, aAfterSet, aDontShow, aGetCP, False); - udDecider := aDecider; - SetLength(udMembers, Length(aMembers)); - for I := Low(udMembers) to High(udMembers) do begin - udMembers[i] := (aMembers[i] as IwbDefInternal).SetParent(Self, False) as IwbValueDef; - ubCanContainFormIDs := ubCanContainFormIDs or aMembers[i].CanContainFormIDs; - end; -end; - -function TwbUnionDef.Decide(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): IwbValueDef; -var - aMemberIndex : Integer; -begin - aMemberIndex := udDecider(aBasePtr, aEndPtr, aElement); - if (aMemberIndex>=0) and (aMemberIndex j then begin - j := -1; - break; - end; - Result := j = -1; - end; -end; - -function TwbUnionDef.GetLinksTo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): IwbElement; -var - ValueDef: IwbValueDef; -begin - ValueDef := Decide(aBasePtr, aEndPtr, aElement); - if Assigned(ValueDef) then - Result := ValueDef.LinksTo[aBasePtr, aEndPtr, aElement] - else - Result := nil; -end; - -function TwbUnionDef.GetMember(aIndex: Integer): IwbValueDef; -begin - Result := udMembers[aIndex]; -end; - -function TwbUnionDef.GetMemberCount: Integer; -begin - Result := Length(udMembers); -end; - -function TwbUnionDef.GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - i : Integer; - Size : Integer; - aMember : IwbValueDef; - Container : IwbContainerElementRef; - Element : IwbElement; -begin -// if Assigned(aBasePtr) and Assigned(aEndPtr) and (Cardinal(aEndPtr) '+IntToHex64(Cardinal(aEndPtr), 8)+' for '+noName); -// end; - if GetIsVariableSize then - aMember := Decide(aBasePtr, aEndPtr, aElement) - else - aMember := nil;; - if not Assigned(aMember) then begin - if Length(udMembers)>0 then - Result := udMembers[0].Size[aBasePtr, aEndPtr, aElement] - else - Result := Low(Integer); - if (Result > 0) and GetIsVariableSize then - for i := 1 to High(udMembers) do - if Result <> High(Integer) then begin - Size := udMembers[i].Size[aBasePtr, aEndPtr, aElement]; - if Size = 0 then begin // No valid value can be found - Result := 0; - Break; - end else if Result < Size then - Result := Size; - end else - break; - end else begin - if GetIsVariableSize and Supports(aElement, IwbContainerElementRef, Container) and Equals(Container.ValueDef) and (Container.ElementCount = 1) then begin - Element := Container.Elements[0]; - if not aMember.Equals(Element.ValueDef) then - Element := nil; - end; - if not Assigned(Element) then - Element := aElement; - Result := aMember.Size[aBasePtr, aEndPtr, Element]; - if Result = High(Integer) then Exit; - if Assigned(aBasePtr) and Assigned(aEndPtr) and (Cardinal(aEndPtr)aBasePtr) then -// wbProgressCallback('Found a union with a negative size! (2) '+IntToHex64(Cardinal(aBasePtr)+Result, 8)+ -// ' > '+IntToHex64(Cardinal(aEndPtr), 8)+' for '+noName); - Result := Cardinal(aEndPtr)-Cardinal(aBasePtr); - end; - end; -end; - -function TwbUnionDef.GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - aMember : IwbValueDef; -begin - aMember := Decide(aBasePtr, aEndPtr, aElement); - if Assigned(aMember) then - Result := aMember.DefaultSize[aBasePtr, aEndPtr, aElement] - else - Result := 0; -end; - -procedure TwbUnionDef.Report(const aParents: TwbDefPath); -var - Parents : TwbDefPath; - i : Integer; -begin - if defReported then - Exit; - - inherited; - Parents := aParents; - SetLength(Parents, Succ(Length(Parents))); - Parents[High(Parents)].Def := Self; - for i := Low(udMembers) to High(udMembers) do - if Assigned(udMembers[i]) then begin - Parents[High(Parents)].Index := i; - udMembers[i].Report(Parents); - end; - - defReported := True; -end; - -function TwbUnionDef.SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -var - ValueDef: IwbValueDef; -begin - ValueDef := Decide(aBasePtr, aEndPtr, aElement); - if Assigned(ValueDef) then - Result := ValueDef.SetToDefault(aBasePtr, aEndPtr, aElement) - else - Result := False; -end; - -function TwbUnionDef.ToEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -var - ValueDef: IwbValueDef; -begin - ValueDef := Decide(aBasePtr, aEndPtr, aElement); - if Assigned(ValueDef) then - Result := ValueDef.EditValue[aBasePtr, aEndPtr, aElement] - else - Result := ''; -end; - -function TwbUnionDef.ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; -var - ValueDef: IwbValueDef; -begin - ValueDef := Decide(aBasePtr, aEndPtr, aElement); - if Assigned(ValueDef) then - Result := ValueDef.NativeValue[aBasePtr, aEndPtr, aElement] - else - Result := ''; -end; - -function TwbUnionDef.ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; -var - ValueDef: IwbValueDef; -begin - ValueDef := Decide(aBasePtr, aEndPtr, aElement); - if Assigned(ValueDef) then - Result := ValueDef.ToSortKey(aBasePtr, aEndPtr, aElement, aExtended) - else - Result := ''; -end; - -function TwbUnionDef.ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -var - ValueDef: IwbValueDef; -begin - ValueDef := Decide(aBasePtr, aEndPtr, aElement); - if Assigned(ValueDef) then - Result := ValueDef.ToString(aBasePtr, aEndPtr, aElement) - else - Result := ''; - Used(aElement, Result); -end; - -{ TwbEmptyDef } - -function TwbEmptyDef.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -constructor TwbEmptyDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbEmptyDef do - Self.Create(defPriority, defRequired, noName, noAfterLoad, noAfterSet, noDontShow, edSorted, defGetCP).defSource := aSource; -end; - -constructor TwbEmptyDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aAfterLoad : TwbAfterLoadCallback; aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aSorted : Boolean; - aGetCP : TwbGetConflictPriority); -begin - edSorted := aSorted; - inherited Create(aPriority, aRequired, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP, False); -end; - -procedure TwbEmptyDef.FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); -begin -end; - -function TwbEmptyDef.GetCanBeZeroSize: Boolean; -begin - Result := True; -end; - -function TwbEmptyDef.GetDefType: TwbDefType; -begin - Result := dtEmpty; -end; - -function TwbEmptyDef.GetDefTypeName: string; -begin - Result := 'Place holder for optional elements'; -end; - -function TwbEmptyDef.GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -function TwbEmptyDef.GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - Result := 0; -end; - -function TwbEmptyDef.GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - Result := 0; -end; - -function TwbEmptyDef.GetSorted: Boolean; -begin - Result := edSorted; -end; - -function TwbEmptyDef.ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; -//var -// NamedDef: IwbNamedDef; -begin -// Result := GetName; -// if (Result = '') and Supports(defParent, IwbNamedDef, NamedDef) then -// Result := NamedDef.Name; -// if Result = '' then - Result := ''; -// Result := ''; -end; - -function TwbEmptyDef.ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -//var -// NamedDef: IwbNamedDef; -begin -// Result := GetName; -// if (Result = '') and Supports(defParent, IwbNamedDef, NamedDef) then -// Result := NamedDef.Name; - Result := ''; - - Used(aElement, Result); -end; - -{ TwbMainRecordStructFlags } - -function TwbMainRecordStructFlags.CantWait: Boolean; -begin - Result := (_Flags and $00080000) <> 0; -end; - -function TwbMainRecordStructFlags.CastsShadows: Boolean; -begin - Result := (_Flags and $00000200) <> 0; -end; - -function TwbMainRecordStructFlags.HasLODtree: Boolean; -begin - Result := (_Flags and $00000040) <> 0; -end; - -function TwbMainRecordStructFlags.IsCompressed: Boolean; -begin - Result := (_Flags and $00040000) <> 0; -end; - -function TwbMainRecordStructFlags.IsDangerous: Boolean; -begin - Result := (_Flags and $00020000) <> 0; -end; - -function TwbMainRecordStructFlags.IsDeleted: Boolean; -begin - Result := (_Flags and $00000020) <> 0; -end; - -function TwbMainRecordStructFlags.IsLocalized: Boolean; -begin - Result := (_Flags and $00000080) <> 0; -end; - -function TwbMainRecordStructFlags.IsESM: Boolean; -begin - Result := (_Flags and $00000001) <> 0; -end; - -function TwbMainRecordStructFlags.IsIgnored: Boolean; -begin - Result := (_Flags and $00001000) <> 0; -end; - -function TwbMainRecordStructFlags.IsInitiallyDisabled: Boolean; -begin - Result := (_Flags and $00000800) <> 0; -end; - -function TwbMainRecordStructFlags.IsPersistent: Boolean; -begin - Result := (_Flags and $00000400) <> 0; -end; - -function TwbMainRecordStructFlags.IsVisibleWhenDistant: Boolean; -begin - Result := (_Flags and $00008000) <> 0; -end; - -procedure TwbMainRecordStructFlags.SetCompressed(aValue: Boolean); -begin - if aValue then - _Flags := _Flags or $00040000 - else - _Flags := _Flags and not $00040000; -end; - -procedure TwbMainRecordStructFlags.SetDeleted(aValue: Boolean); -begin - if aValue then - _Flags := _Flags or $00000020 - else - _Flags := _Flags and not $00000020; -end; - -procedure TwbMainRecordStructFlags.SetESM(aValue: Boolean); -begin - if aValue then - _Flags := _Flags or $00000001 - else - _Flags := _Flags and not $00000001; -end; - -procedure TwbMainRecordStructFlags.SetLocalized(aValue: Boolean); -begin - if aValue then - _Flags := _Flags or $00000080 - else - _Flags := _Flags and not $00000080 -end; - -procedure TwbMainRecordStructFlags.SetInitiallyDisabled(aValue: Boolean); -begin - if aValue then - _Flags := _Flags or $00000800 - else - _Flags := _Flags and not $00000800; -end; - -procedure TwbMainRecordStructFlags.SetPersistent(aValue: Boolean); -begin - if aValue then - _Flags := _Flags or $00000400 - else - _Flags := _Flags and not $00000400; -end; - -procedure TwbMainRecordStructFlags.SetVisibleWhenDistant(aValue: Boolean); -begin - if aValue then - _Flags := _Flags or $00008000 - else - _Flags := _Flags and not $00008000; -end; - -{ TwbLenStringDef } - -function TwbLenStringDef.CanAssign(const aElement: IwbElement; aIndex: Integer; const aDef: IwbDef) : Boolean; -begin - Result := aDef.DefType in [dtString, dtLString, dtLenString]; -end; - -function TwbLenStringDef.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -function TwbLenStringDef.Check(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -var - Size : Cardinal; - Len : Cardinal; -begin - Result := ''; - Len := Cardinal(aEndPtr) - Cardinal(aBasePtr); - if Len < GetPrefixOffset then begin - if wbCheckExpectedBytes then - Result := Format('Expected at least %d bytes of data, found %d', [Abs(Prefix) , Len]); - Exit; - end; - Size := GetPrefixValue(aBasePtr, aEndPtr, aElement) + GetPrefixOffset; - if Len < Size then begin - if wbCheckExpectedBytes then - Result := Format('Expected %d bytes of data, found %d', [Size , Len]); - end; -end; - -constructor TwbLenStringDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbLenStringDef do - Self.Create(defPriority, defRequired, noName, Prefix, noAfterLoad, noAfterSet, noDontShow, defGetCP, noTerminator).defSource := aSource; -end; - -constructor TwbLenStringDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aPrefix : Integer; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority; - aTerminator : Boolean); -begin - Prefix := aPrefix; - if not (Abs(Prefix) in [1, 2, 3, 4, 5]) then - Prefix := 4; - - inherited Create(aPriority, aRequired, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP, aTerminator); -end; - -procedure TwbLenStringDef.FromEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: string); -var - Len : Cardinal; - NewSize : Cardinal; - p : Pointer; - s : AnsiString; -begin - s := AnsiString(aValue); - Len := Length(s); - NewSize := Len + GetPrefixOffset; - aElement.RequestStorageChange(aBasePtr, aEndPtr, NewSize + Ord(noTerminator)); - SetPrefixValue(aBasePtr, aEndPtr, aElement, Len); - p := Pointer(Cardinal(aBasePtr) + GetPrefixOffset); - if Len > 0 then - Move(s[1], p^, Len); - if noTerminator then begin - Inc(PByte(p), Len+1); - PByte(p)^ := wbTerminator; - end; -end; - -procedure TwbLenStringDef.FromNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: Variant); -begin - FromEditValue(aBasePtr, aEndPtr, aElement, aValue); -end; - -function TwbLenStringDef.GetDefType: TwbDefType; -begin - Result := dtLenString; -end; - -function TwbLenStringDef.GetDefTypeName: string; -begin - if Prefix > 0 then - Result := 'String with length of '+IntToStr(Prefix)+' bytes' - else - Result := 'Separated String with length of '+IntToStr(GetPrefixLen)+' bytes' -end; - -function TwbLenStringDef.GetIsEditable(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -begin - Result := True; -end; - -function TwbLenStringDef.GetIsVariableSizeInternal: Boolean; -begin - Result := True; -end; - -function TwbLenStringDef.GetPrefixLen: Integer; -begin - case Prefix of - 1, -2: Result := 1; - 2, -3: Result := 2; - 4, -5: Result := 4; - else - Result := 0; - end; -end; - -function TwbLenStringDef.GetPrefixOffset: Integer; -begin - Result := Abs(Prefix); -end; - -function TwbLenStringDef.GetPrefixValue(aBasePtr: Pointer; aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - case Prefix of - 1, -2: Result := PByte(aBasePtr)^; - 2, -3: Result := PWord(aBasePtr)^; - 4, -5: Result := PCardinal(aBasePtr)^; - else - Result := 0; - end; -end; - -function TwbLenStringDef.GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -var - Len : Integer; -begin - if Assigned(aBasePtr) and Assigned(aEndPtr) then - if (Cardinal(aBasePtr) >= Cardinal(aEndPtr)) then - Result := 0 - else begin - Result := Cardinal(aEndPtr) - Cardinal(aBasePtr); - Len := GetPrefixValue(aBasePtr, aEndPtr, aElement); - if Len>0 then - Len := Len+GetPrefixOffset+Ord(noTerminator) - else - Len := GetPrefixOffset; - if Len>Result then - Exit; - if Len < Result then - Result := Len; - end - else - Result := GetPrefixOffset; -end; - -function TwbLenStringDef.GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - Result := GetPrefixOffset+Ord(noTerminator); -end; - -procedure TwbLenStringDef.SetPrefixValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aValue: Cardinal); -begin - case Prefix of - 1, -2: PByte(aBasePtr)^ := aValue; - 2, -3: PWord(aBasePtr)^ := aValue; - 4, -5: PCardinal(aBasePtr)^ := aValue; - end; -end; - -function TwbLenStringDef.SetToDefault(aBasePtr, aEndPtr: Pointer; - const aElement: IwbElement): Boolean; -begin - Result := not Assigned(aBasePtr) or (ToString(aBasePtr, aEndPtr, aElement) <> ''); - if Result then - FromEditValue(aBasePtr, aEndPtr, aElement, ''); -end; - -function TwbLenStringDef.ToEditValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -begin - Result := ToString(aBasePtr, aEndPtr, aElement); -end; - -function TwbLenStringDef.ToNativeValue(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Variant; -begin - Result := ToString(aBasePtr, aEndPtr, aElement); -end; - -function TwbLenStringDef.ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -var - Size : Cardinal; - Len : Cardinal; - s : AnsiString; -begin - s := ''; - Len := Cardinal(aEndPtr) - Cardinal(aBasePtr); - if Len Size then - Len := Size; - - SetLength(s, Len); - if Len > 0 then - Move(aBasePtr^, s[1], Len); - Result := wbAnsiToString(s, aElement); - Used(aElement, Result); -end; - -{ TwbFastStringList } - -procedure TwbFastStringList.Clear(aFreeObjects: Boolean); -var - i: Integer; -begin - if aFreeObjects then - for i := 0 to Pred(Count) do - Objects[i].Free; - inherited Clear; -end; - -function TwbFastStringList.CompareStrings(const S1, S2: string): Integer; -begin - if CaseSensitive then - Result := CompareStr(S1, S2) - else - Result := CompareText(S1, S2); -end; - -constructor TwbFastStringList.CreateSorted(aDups: TDuplicates); -begin - Create; - Duplicates := aDups; - Sorted := True; -end; - -{ TwbFastStringListCS } - -procedure TwbFastStringListCS.AfterConstruction; -begin - inherited; - CaseSensitive := True; -end; - -{ TwbStringLCDef } - -function TwbStringLCDef.TransformString(const s: AnsiString; aTransformType: TwbStringTransformType; const aElement: IwbElement): AnsiString; -begin - Result := LowerCase(s); -end; - -{ TwbLString } - -function TwbLStringDef.GetDefType: TwbDefType; -begin - Result := dtLString; -end; - -function TwbLStringDef.GetDefTypeName: string; -begin - Result := 'Localized String'; -end; - -procedure TwbLStringDef.FromStringNative(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aValue: AnsiString); -var - ID: Cardinal; -begin - if Copy(aValue, 1, Length(sStringID)) = sStringID then begin - aElement.RequestStorageChange(aBasePtr, aEndPtr, SizeOf(Cardinal)); - PCardinal(aBasePtr)^ := StrToInt64Def('$' + Copy(aValue, Succ(Length(sStringID)), Length(aValue)), 0); - Exit; - end; - - if aElement._File.IsLocalized then - if wbLocalizationHandler.NoTranslate then - // assign a string when delocalizing and NoTranslate is true - inherited FromStringNative(aBasePtr, aEndPtr, aElement, aValue) - else begin - // set localized string's value - ID := wbLocalizationHandler.SetValue(PCardinal(aBasePtr)^, aElement, aValue); - aElement.RequestStorageChange(aBasePtr, aEndPtr, SizeOf(Cardinal)); - PCardinal(aBasePtr)^ := ID; - //raise Exception.Create('Can not assign to a localized string') - end - else - inherited FromStringNative(aBasePtr, aEndPtr, aElement, aValue); -end; - -function TwbLStringDef.GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if Assigned(aBasePtr) and Assigned(aEndPtr) and (Cardinal(aBasePtr) >= Cardinal(aEndPtr)) then - Result := 0 - else if Assigned(aBasePtr) and Assigned(aEndPtr) and Assigned(aElement._File) and aElement._File.IsLocalized then - Result := Min(4, Cardinal(aEndPtr) - Cardinal(aBasePtr)) - else - Result := inherited GetSize(aBasePtr, aEndPtr, aElement); -end; - -function TwbLStringDef.GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if Assigned(aElement._File) and aElement._File.IsLocalized then - Result := 4 - else - Result := inherited GetDefaultSize(aBasePtr, aEndPtr, aElement); -end; - -function TwbLStringDef.ToStringNative(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): AnsiString; -begin - if Assigned(aElement._File) and aElement._File.IsLocalized then begin - if (Cardinal(aEndPtr) - Cardinal(aBasePtr)) <> 4 then - Result := '< Error: lstring ID should be Int32 value >' - else - Result := wbStringToAnsi(wbLocalizationHandler.GetValue(PCardinal(aBasePtr)^, aElement), aElement) - end else - Result := inherited ToStringNative(aBasePtr, aEndPtr, aElement); -end; - -{ TwbStringScriptDef } - -function TwbStringScriptDef.TransformString(const s: AnsiString; aTransformType: TwbStringTransformType; const aElement: IwbElement): AnsiString; -var - i: Integer; -begin - if aTransformType = ttToSortKey then begin - with TStringList.Create do try - Text := s; - for i := Pred(Count) downto 0 do begin - Strings[i] := Trim(Strings[i]); - if Strings[i] = '' then - Delete(i); - end; - Result := AnsiString(Text); - finally - Free; - end; - end else - Result := s; -end; - -{ TwbStringMgefCodeDef } - -procedure TwbStringMgefCodeDef.BuildRef(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement); -var - _File : IwbFile; - Rec : IwbMainRecord; -begin - _File := aElement._File; - if Assigned(_File) then begin - Rec := _File.RecordByEditorID[ToStringTransform(aBasePtr, aEndPtr, aElement, ttToSortKey)]; - if Assigned(Rec) then - aElement.AddReferencedFromID(Rec.LoadOrderFormID); - end; -end; - -function TwbStringMgefCodeDef.CanContainFormIDs: Boolean; -begin - Result := True; -end; - -procedure TwbStringMgefCodeDef.FindUsedMasters(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aMasters: PwbUsedMasters); -var - s : AnsiString; - MgefCode : PCardinal; -begin - s := ToStringNative(aBasePtr, aEndPtr, aElement); - - if Length(s) <> 4 then - Exit; - - MgefCode := PCardinal(@s[1]); - - if (MgefCode^ and $80000000) <> 0 then - { yes, it's a dynamic code } - aMasters[(MgefCode^ and $000000FF)] := True; -end; - -function TwbStringMgefCodeDef.GetLinksTo(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): IwbElement; -var - _File : IwbFile; -begin - Result := nil; - _File := aElement._File; - if Assigned(_File) then - Result := _File.RecordByEditorID[ToStringTransform(aBasePtr, aEndPtr, aElement, ttToSortKey)]; -end; - -procedure TwbStringMgefCodeDef.MasterCountUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aOld, aNew: Byte); -var - s : AnsiString; - MgefCode : PCardinal; -begin - s := ToStringNative(aBasePtr, aEndPtr, aElement); - - if Length(s) <> 4 then - Exit; - - MgefCode := PCardinal(@s[1]); - - if (MgefCode^ and $80000000) <> 0 then - { yes, it's a dynamic code } - if (MgefCode^ and $000000FF) >= aOld then begin - { yes, it refers to this file } - MgefCode^ := (MgefCode^ and $FFFFFF00) or aNew; - FromStringNative(aBasePtr, aEndPtr, aElement, s); - aElement.NotifyChanged(Pointer(aElement.Container)); - end; -end; - -procedure TwbStringMgefCodeDef.MasterIndicesUpdated(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; const aOld, aNew: TBytes); -var - s : AnsiString; - MgefCode : PCardinal; - i : Integer; -begin - s := ToStringNative(aBasePtr, aEndPtr, aElement); - - if Length(s) <> 4 then - Exit; - - MgefCode := PCardinal(@s[1]); - - Assert(Length(aOld) = Length(aNew)); - if (MgefCode^ and $80000000) <> 0 then - { yes, it's a dynamic code } - for i := Low(aOld) to High(aOld) do - if (MgefCode^ and $000000FF) = aOld[i] then begin - { yes, it refers to this file } - MgefCode^ := (MgefCode^ and $FFFFFF00) or aNew[i]; - FromStringNative(aBasePtr, aEndPtr, aElement, s); - aElement.NotifyChanged(Pointer(aElement.Container)); - Exit; - end; -end; - -function TwbStringMgefCodeDef.SetToDefault(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Boolean; -begin - Result := not Assigned(aBasePtr) or (ToString(aBasePtr, aEndPtr, aElement) <> '____'); - if Result then - FromEditValue(aBasePtr, aEndPtr, aElement, '____'); -end; - -function TwbStringMgefCodeDef.TransformString(const s: AnsiString; aTransformType: TwbStringTransformType; const aElement: IwbElement): AnsiString; -var - IsAlpha : Boolean; - i, j : Integer; - MgefCode : Cardinal; - _File : IwbFile; - FileID : Byte; - t : AnsiString; -begin - case aTransformType of - ttToString, ttToSortKey, ttToEditValue, ttToNativeValue: begin - Result := s; - if Length(s) = 4 then begin - IsAlpha := True; - for i := 1 to 4 do - if not(s[i] in ['a'..'z', 'A'..'Z', '0'..'9', '_']) then begin - IsAlpha := False; - break; - end; - if not IsAlpha then begin - MgefCode := PCardinal(@s[1])^; - if (MgefCode and $80000000) <> 0 then begin - if Assigned(aElement) then begin - _File := aElement._File; - if Assigned(_File) then begin - FileID := MgefCode and $000000FF; - - if FileID >= _File.MasterCount then - Result := AnsiString(_File.Name) - else - Result := AnsiString(_File.Masters[FileID].Name); - - Result := Result + ':' + AnsiString(IntToStr((MgefCode and not $800000FF) shr 8)); - - Exit; - end; - end; - end; - Result := AnsiString(IntToHex64(MgefCode, 8)); - if aTransformType = ttToString then - Result := Result + ' '; - end; - end else if aTransformType = ttToString then - Result := Result + AnsiString(' '); - end; - ttFromEditValue, ttFromNativeValue: begin - Result := Trim(s); - if S = '' then - Exit; - i := Pos(':', Result); - if i > 0 then begin - - t := Copy(Result, 1, Pred(i)); - - FileID := $FF; - - if Assigned(aElement) then begin - _File := aElement._File; - if Assigned(_File) then begin - if SameText(t, _File.FileName) then - FileID := _File.MasterCount - else if SameText(t, _File.Name) then - FileID := _File.MasterCount - else begin - for j := 0 to Pred(_File.MasterCount) do - if SameText(t, _File.Masters[j].Name) then begin - FileID := j; - break; - end; - if FileID = $FF then - for j := 0 to Pred(_File.MasterCount) do - if SameText(t, _File.Masters[j].FileName) then begin - FileID := j; - break; - end; - end; - end; - end; - - if FileID = $FF then begin - if i > 1 then - FileID := StrToInt('$' + t); - - if Assigned(aElement) then begin - _File := aElement._File; - if Assigned(_File) then - if FileID = $FF then - FileID := _File.MasterCount - else - FileID := _File.LoadOrderFileIDtoFileFileID(FileID); - end; - end; - - t := Copy(Result, Succ(i), High(Integer)); - MgefCode := StrToInt(t); - if MgefCode > $7FFFFF then - raise Exception.Create('"'+t+'" exceeds the maximum value for a dynamic magic effect code'); - MgefCode := (MgefCode shl 8) or $80000000; - - MgefCode := MgefCode or FileID; - - end else if Length(Result) = 8 then begin - - MgefCode := StrToInt('$' + Result); - if (MgefCode and $80000000) <> 0 then - raise Exception.Create('"'+Result+'" is not a valid magic effect code'); - - end else if Length(s) = 4 then begin - - IsAlpha := True; - for i := 1 to 4 do - if not(s[i] in ['a'..'z', 'A'..'Z', '0'..'9', '_']) then begin - IsAlpha := False; - break; - end; - if not IsAlpha then - raise Exception.Create('"'+Result+'" is not a valid magic effect code'); - MgefCode := PCardinal(@Result[1])^; - - end else - raise Exception.Create('"'+Result+'" is not a valid magic effect code'); - - SetLength(Result, 4); - PCardinal(@Result[1])^ := MgefCode; - end; - end; -end; - -function GetContainerFromUnion(const aElement: IwbElement): IwbContainer; -begin // Should change the name to GetContainerFromUnionOrValue :) - if (aElement.ElementType = etUnion) or (aElement.ElementType = etValue) then begin - Result := aElement.Container; - while Result.ElementType = etUnion do - Result := Result.Container - end else - Result := aElement as IwbContainer; -end; - -function GetContainerRefFromUnionOrValue(const aElement: IwbElement): IwbContainerElementRef; -begin - if (aElement.ElementType = etUnion) or (aElement.ElementType = etValue) then begin - Supports(aElement.Container, IwbContainerElementRef, Result); - while Result.ElementType = etUnion do - Supports(Result.Container, IwbContainerElementRef, Result); - end else - Supports(aElement, IwbContainerElementRef, Result); -end; - -function GetElementFromUnion(const aElement: IwbElement): IwbElement; -begin - if (aElement.ElementType = etUnion) then begin - Result := aElement.Container; - while Result.ElementType = etUnion do - Result := Result.Container; - end else - Result := aElement; -end; - -{ TwbStringKCDef } - -function TwbStringKCDef.ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; -begin - Result := ToStringTransform(aBasePtr, aEndPtr, aElement, ttToSortKey); -end; - -{ TwbLStringKCDef } - -function TwbLStringKCDef.ToSortKey(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; aExtended: Boolean): string; -begin - Result := ToStringTransform(aBasePtr, aEndPtr, aElement, ttToSortKey); -end; - -{ TwbRefID } - -var - wbRefIDArray : TwbRefIDArray = nil; - -procedure InitializeRefIDArray(anArray: TwbRefIDArray); -begin - wbRefIDArray := anArray; -end; - -procedure TwbRefID.BuildRef(aInt: Int64; const aElement: IwbElement); -var - key : Integer; - val : Integer; -begin - // First two bits are the key: - key := aInt shr 22; - val := aInt and $003FFFFF; - case key of - 0: if (val > 0) and (val < Length(wbRefIDArray)) then - inherited BuildRef(wbRefIDArray[val - 1], aElement); - 1: inherited BuildRef(val, aElement); // '['+IntToHex64(val, 8)+'] Skyrim.esm FormID'; - end; -end; - -function TwbRefID.ToString(aInt: Int64; const aElement: IwbElement): string; -var - key : Integer; - val : Integer; -begin - // First two bits are the key: - key := aInt shr 22; - val := aInt and $003FFFFF; - case key of - 0: if val = 0 then - Result := '[00000000] NULL' - else if val < Length(wbRefIDArray) then begin - val := wbRefIDArray[val - 1]; - Result := inherited ToString(val, aElement); - Result := Copy(Result, 1, Pos('[', Result)) + IntToHex64(val, 8) + Copy(Result, Pos(']', Result), Length(Result)); - end else - Result := '['+IntToHex64(val-1, 8)+'] Index in FormID Array'; - 1: Result := inherited ToString(val, aElement); - 2: Result := '[FF'+IntToHex64(val, 6)+'] Created FormID'; - else - Result := '['+IntToHex64(aInt, 8)+'] '; - end; - Result := IntToStr(aInt)+' '+Result; - Used(aElement, Result); -end; - -{ TwbDumpIntegerDefFormater } - -function TwbDumpIntegerDefFormater.ToSortKey(aInt: Int64; const aElement: IwbElement): string; -begin - Result := IntToHex64(aInt, 8); -end; - -function TwbDumpIntegerDefFormater.ToString(aInt: Int64; const aElement: IwbElement): string; -begin - Result := IntToStr(aInt) + ' [' + IntToHex64(aInt, 8) + '] ['+IntToStr(aInt and $03)+':'+IntToStr(aInt shr 2)+']'; -end; - -{ TwbStructCDef } - -constructor TwbStructCDef.Clone(const aSource: TwbDef); -begin - with aSource as TwbStructCDef do - Self.Create(defPriority, defRequired, noName, stMembers, stSortKey, - stExSortKey, stOptionalFromElement, noDontShow, noAfterLoad, noAfterSet, - scSizeCallback, scGetChapterType, scGetChapterTypeName, scGetChapterName, defGetCP).defSource := aSource; -end; - -constructor TwbStructCDef.Create(aPriority: TwbConflictPriority; - aRequired : Boolean; - const aName : string; - const aMembers : array of IwbValueDef; - const aSortKey, aExSortKey : array of Integer; - aOptionalFromElement : Integer; - aDontShow : TwbDontShowCallback; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aSizeCallBack : TwbSizeCallback; - aGetChapterType : TwbGetChapterTypeCallback; - aGetChapterTypeName : TwbGetChapterTypeNameCallback; - aGetChapterName : TwbGetChapterNameCallback; - aGetCP : TwbGetConflictPriority); -begin - scSizeCallback := aSizeCallback; - scGetChapterType := aGetChapterType; - scGetChapterTypeName := aGetChapterTypeName; - scGetChapterName := aGetChapterName; - inherited Create(aPriority, aRequired, aName, aMembers, aSortKey, aExSortKey, [], aOptionalFromElement, aDontShow, aAfterLoad, aAfterSet, aGetCP); - noTreeBranch := False; -end; - -function TwbStructCDef.GetDefType: TwbDefType; -begin - Result := dtStructChapter; -end; - -function TwbStructCDef.GetDefTypeName: string; -begin - Result := 'Chapter'; -end; - -function TwbStructCDef.GetSizing(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement; var CompressedSize: Integer): Cardinal; -begin - if Assigned(scSizeCallback) then - Result := scSizeCallback(aBasePtr, aEndPtr, aElement, CompressedSize) - else begin - CompressedSize := -1; - Result := 0; - end; -end; - -function TwbStructCDef.GetChapterName(aBasePtr, aEndPtr: Pointer; - const aElement: IwbElement): String; -begin - if Assigned(scGetChapterName) then - Result := scGetChapterName(aBasePtr, aEndPtr, aElement) - else if Assigned(scGetChapterTypeName) then - Result := scGetChapterTypeName(aBasePtr, aEndPtr, aElement) - else - Result := GetName; -end; - -function TwbStructCDef.GetChapterType(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - if Assigned(scGetChapterType) then - Result := scGetChapterType(aBasePtr, aEndPtr, aElement) - else - Result := -1; -end; - -function TwbStructCDef.GetChapterTypeName(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): String; -begin - if Assigned(scGetChapterTypeName) then - Result := scGetChapterTypeName(aBasePtr, aEndPtr, aElement) - else - Result := IntToStr(GetChapterType(aBasePtr, aEndPtr, aElement)); -end; - -{ TwbKey2Data6EnumDef } - -function TwbKey2Data6EnumDef.ToSortKey(aInt: Int64; const aElement: IwbElement): string; -begin - Result := IntToHex64(aInt, 2); -end; - -function TwbKey2Data6EnumDef.ToString(aInt: Int64; const aElement: IwbElement): string; -var - key : Integer; - val : Integer; -begin - key := aInt shr 6; - val := aInt and $3f; - if val>=Length(enNames) then - Result := 'Bad enum index: ' + IntToStr(val) + ' [' + IntToHex64(val, 2) + ']' - else - Result := enNames[val]; - case key of - 0: Result := Result + ' Small size'; - 1: Result := Result + ' Medium size'; - 2: Result := Result + ' Large size'; - end; -end; - -{ TwbData6Key2EnumDef } - -function TwbData6Key2EnumDef.ToSortKey(aInt: Int64; const aElement: IwbElement): string; -begin - Result := IntToHex64(aInt, 2); -end; - -function TwbData6Key2EnumDef.ToString(aInt: Int64; const aElement: IwbElement): string; -var - key : Integer; -begin - if aInt < Power(2, 6) then - key := 0 - else if aInt < Power(2, 14) then - key := 1 - else if aInt < Power(2, 22) then - key := 2 - else - key := 3; - Result := IntToStr(aInt); - case key of - 0: Result := Result + ' Small size'; - 1: Result := Result + ' Medium size'; - 2: Result := Result + ' Large size'; - 3: Result := '0' + ' Null size'; - end; -end; - -{ TwbIntegerDefFormaterUnion } - -procedure TwbIntegerDefFormaterUnion.BuildRef(aInt : Int64; - const aElement : IwbElement); -var - IntegerDef: IwbIntegerDefFormater; -begin - IntegerDef := Decide(aElement); - if Assigned(IntegerDef) then - IntegerDef.BuildRef(aInt, aElement); -end; - -function TwbIntegerDefFormaterUnion.CanAssign(const aElement : IwbElement; - aIndex : Integer; - const aDef : IwbDef) - : Boolean; -var - IntegerDef: IwbIntegerDefFormater; -begin - IntegerDef := Decide(aElement); - if Assigned(IntegerDef) then - Result := IntegerDef.CanAssign(aElement, aIndex, aDef) - else - Result := False; -end; - -function TwbIntegerDefFormaterUnion.CanContainFormIDs: Boolean; -var - i: Integer; -begin - for i := Low(idfuMembers) to High(idfuMembers) do - if idfuMembers[i].CanContainFormIDs then - Exit(True); - Result := False; -end; - -function TwbIntegerDefFormaterUnion.Check(aInt : Int64; - const aElement : IwbElement) - : string; -begin - Result := Decide(aElement).Check(aInt, aElement); -end; - -constructor TwbIntegerDefFormaterUnion.Clone(const aSource: TwbDef); -begin - with aSource as TwbIntegerDefFormaterUnion do - Self.Create(defPriority, defRequired, defGetCP, idfuDecider, idfuMembers).defSource := aSource; -end; - -function TwbIntegerDefFormaterUnion.CompareExchangeFormID(var aInt : Int64; - aOldFormID : Cardinal; - aNewFormID : Cardinal; - const aElement : IwbElement) - : Boolean; -var - IntegerDef: IwbIntegerDefFormater; -begin - IntegerDef := Decide(aElement); - if Assigned(IntegerDef) then - Result := IntegerDef.CompareExchangeFormID(aInt, aOldFormID, aNewFormID, aElement) - else - Result := False; -end; - -constructor TwbIntegerDefFormaterUnion.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - aGetCP : TwbGetConflictPriority; - aDecider : TwbIntegerDefFormaterUnionDecider; - const aMembers : array of IwbIntegerDefFormater); -var - i: Integer; -begin - inherited Create(aPriority, aRequired, aGetCP); - idfuDecider := aDecider; - SetLength(idfuMembers, Length(aMembers)); - for i := Low(aMembers) to High(aMembers) do - idfuMembers[i] := (aMembers[i] as IwbDefInternal).SetParent(Self, False) as IwbIntegerDefFormater; -end; - -function TwbIntegerDefFormaterUnion.Decide(const aElement : IwbElement) - : IwbIntegerDefFormater; -var - i: Integer; -begin - i := idfuDecider(aElement); - if (i>=0) and (i=0) and (aIndex= 0 then begin - RDE := @wbRecordDefs[Index]; - while Assigned(RDE) do begin - if Cardinal(RDE.rdeSignature) = Cardinal(aSignature) then begin - aRecordDef := @RDE.rdeDef; - Exit(True); - end; - if RDE.rdeNext >= 0 then - RDE := @wbRecordDefs[RDE.rdeNext] - else - RDE := nil; - end; - end; - aRecordDef := nil; - Result := False; -end; - -function wbFindRecordDef(const aSignature : AnsiString; - out aRecordDef : PwbRecordDef) - : Boolean; -begin - Result := (Length(aSignature) = 4) and - wbFindRecordDef(PwbSignature(@aSignature[1])^, aRecordDef); -end; - -var - wbRecordDefMap: TStringList; - -function _wbRecordDefMap: TStringList; -var - i: Integer; -begin - if not Assigned(wbRecordDefMap) then begin - wbRecordDefMap := TwbFastStringList.Create; - for i := Low(wbRecordDefs) to High(wbRecordDefs) do - with wbRecordDefs[i] do - wbRecordDefMap.AddObject(rdeSignature, Pointer(rdeDef)); - wbRecordDefMap.Sorted := True; - end; - Result := wbRecordDefMap; -end; - -{$IFDEF USE_CODESITE} -threadvar - wbCodeSiteLoggingCount: Integer; - -function wbCodeSiteLoggingEnabled: Boolean; -begin - Result := wbCodeSiteLoggingCount > 0; -end; - -function wbBeginCodeSiteLogging: Integer; -begin - Result := Succ(wbCodeSiteLoggingCount); - wbCodeSiteLoggingCount := Result; -end; - -function wbEndCodeSiteLogging: Integer; -begin - Result := Pred(wbCodeSiteLoggingCount); - wbCodeSiteLoggingCount := Result; -end; -{$ENDIF} - -{ TwbFlagDef } - -function TwbFlagDef.CanContainFormIDs: Boolean; -begin - Result := False; -end; - -constructor TwbFlagDef.Clone(const aSource: TwbDef); -begin - with (aSource as TwbFlagDef) do - Self.Create(defPriority, defRequired, noName, noAfterLoad, noAfterSet, - noDontShow, defGetCP, noTerminator, fdFlagIndex).defSource := aSource; -end; - -constructor TwbFlagDef.Create(aPriority : TwbConflictPriority; - aRequired : Boolean; - const aName : string; - aAfterLoad : TwbAfterLoadCallback; - aAfterSet : TwbAfterSetCallback; - aDontShow : TwbDontShowCallback; - aGetCP : TwbGetConflictPriority; - aTerminator : Boolean; - aFlagIndex : Integer); -begin - fdFlagIndex := aFlagIndex; - inherited Create(aPriority, aRequired, aName, aAfterLoad, aAfterSet, aDontShow, aGetCP, aTerminator); -end; - -function TwbFlagDef.GetCanBeZeroSize: Boolean; -begin - Result := True; -end; - -function TwbFlagDef.GetConflictPriority(const aElement: IwbElement): TwbConflictPriority; -begin - with GetFlagsDef do begin - if FlagIgnoreConflict[GetFlagIndex] then - Result := cpIgnore - else - Result := cpNormal; - FlagGetCP(aElement, GetFlagIndex, Result); - end; -end; - -function TwbFlagDef.GetConflictPriorityCanChange: Boolean; -begin - Result := GetFlagsDef.FlagHasGetCP[GetFlagIndex]; -end; - -function TwbFlagDef.GetDefaultSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - Result := 0; -end; - -function TwbFlagDef.GetDefType: TwbDefType; -begin - Result := dtFlag; -end; - -function TwbFlagDef.GetDefTypeName: string; -begin - Result := 'FlagDef'; -end; - -function TwbFlagDef.GetDontShow(const aElement: IwbElement): Boolean; -begin - Result := GetFlagsDef.FlagDontShow[aElement, GetFlagIndex]; -end; - -function TwbFlagDef.GetFlagIndex: Integer; -begin - Result := fdFlagIndex; -end; - -function TwbFlagDef.GetFlagsDef: IwbFlagsDef; -begin - Result := defParent as IwbFlagsDef; -end; - -function TwbFlagDef.GetHasDontShow: Boolean; -begin - Result := GetFlagsDef.FlagHasDontShow[GetFlagIndex]; -end; - -function TwbFlagDef.GetSize(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): Integer; -begin - Result := 0; -end; - -function TwbFlagDef.ToString(aBasePtr, aEndPtr: Pointer; const aElement: IwbElement): string; -begin - Assert(False); - Result := ''; -end; - -function wbIsPlugin(aFileName: string): Boolean; -var - i: Integer; -begin - Result := Pos(UpperCase(wbHardcodedDat), UpperCase(aFileName))<>0; - if not Result then - for i := 0 to Pred(Length(wbPluginExtensions)) do - if Pos(UpperCase(wbPluginExtensions[i]), UpperCase(ExtractFileExt(aFileName)))=1 then begin - Result := True; - Exit; - end; -end; - -function wbStr4ToString(aInt: Int64): string; -var - U32 : Cardinal; - Temp : String; - i : Integer; -begin - if aInt=0 then - Result := ' ' - else begin - U32 := aInt; - Result := PwbSignature(@U32)^; - if Length(Result)=4 then begin - Temp := Result; - for i := 1 to 4 do Result[i] := Temp[5-i]; - end else begin - Result := ' '; - // wbProgressCallback('Found a str4 that does not have 4 characters! (1) '+IntToHex64(aInt, 8)); - end; - end; -end; - -initialization - TwoPi := 2 * OnePi; - - if (DebugHook = 0) then - wbReportMode := False; - - wbIgnoreRecords := TStringList.Create; - wbIgnoreRecords.Sorted := True; - wbIgnoreRecords.Duplicates := dupIgnore; - wbDoNotBuildRefsFor := TStringList.Create; - wbDoNotBuildRefsFor.Sorted := True; - wbDoNotBuildRefsFor.Duplicates := dupIgnore; - - wbProgramPath := IncludeTrailingPathDelimiter(ExtractFilePath(ParamStr(0))); - - SetLength(wbPluginExtensions, 3); - wbPluginExtensions[0] := '.ESP'; - wbPluginExtensions[1] := '.ESM'; - wbPluginExtensions[2] := '.GHOST'; - -finalization - FreeAndNil(wbIgnoreRecords); - FreeAndNil(wbDoNotBuildRefsFor); - FreeAndNil(wbGroupOrder); - FreeAndNil(wbRecordDefMap); - wbRecordDefs := nil; - wbContainerHandler := nil; -end. - diff --git a/lib/xedit/wbLocalization.pas b/lib/xedit/wbLocalization.pas deleted file mode 100644 index dc9ed9f..0000000 --- a/lib/xedit/wbLocalization.pas +++ /dev/null @@ -1,646 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} - -unit wbLocalization; - -{$I wbDefines.inc} - -interface - -uses - Classes, SysUtils, StrUtils, Math, - wbInterface, wbBSA; - -const - sStringID = 'STRINGID:'; - -type - TwbLStringType = ( - lsDLString, - lsILString, - lsString - ); - - TwbLocalizationFile = class - private - fName : string; - fFileName : string; - fFileType : TwbLStringType; - fStrings : TStrings; - fModified : boolean; - fNextID : Cardinal; - - procedure Init; - function FileStringType(aFileName: string): TwbLStringType; - function ReadZString(aStream: TMemoryStream): AnsiString; - function ReadLenZString(aStream: TMemoryStream): AnsiString; - procedure WriteZString(aStream: TMemoryStream; aString: AnsiString); - procedure WriteLenZString(aStream: TMemoryStream; aString: AnsiString); - procedure ReadDirectory(aStream: TMemoryStream); - protected - function Get(Index: Cardinal): string; - procedure Put(Index: Cardinal; const S: string); - public - property Strings[Index: Cardinal]: string read Get write Put; default; - property Items: TStrings read fStrings; - property Name: string read fName; - property FileName: string read fFileName; - property Modified: boolean read fModified write fModified; - property NextID: Cardinal read fNextID; - constructor Create(const aFileName: string); overload; - constructor Create(const aFileName: string; aData: TBytes); overload; - destructor Destroy; override; - function Count: Integer; - function IndexToID(Index: Integer): Cardinal; - function IDExists(ID: Cardinal): boolean; - function AddString(ID: Integer; const S: string): boolean; - procedure WriteToStream(const aStream: TStream); - procedure ExportToFile(const aFileName: string); - end; - - TwbLocalizationHandler = class - private - lFiles : TStrings; - fReuseDup : boolean; - protected - function Get(Index: Integer): TwbLocalizationFile; - function GetStringsPath: string; - public - NoTranslate: boolean; - property _Files[Index: Integer]: TwbLocalizationFile read Get; default; - property StringsPath: string read GetStringsPath; - property ReuseDup: Boolean read fReuseDup write fReuseDup; - constructor Create; - destructor Destroy; override; - procedure Clear; - function Count: Integer; - function LocalizedValueDecider(aElement: IwbElement): TwbLStringType; - function AvailableLanguages: TStringList; - function AvailableLocalizationFiles: TStringList; - procedure LoadForFile(aFileName: string); - function AddLocalization(const aFileName: string): TwbLocalizationFile; overload; - function AddLocalization(const aFileName: string; aData: TBytes): TwbLocalizationFile; overload; - function GetValue(ID: Cardinal; aElement: IwbElement): string; - function SetValue(ID: Cardinal; aElement: IwbElement; aValue: string): Cardinal; - function AddValue(aValue: string; aElement: IwbElement): Cardinal; - function GetLocalizationFileNameByElement(aElement: IwbElement): string; - function GetLocalizationFileNameByType(aPluginFile: string; ls: TwbLStringType): string; - procedure GetStringsFromFile(aFileName: string; const aList: TStrings); - end; - -const - wbLocalizationExtension: array [TwbLStringType] of string = ( - '.DLSTRINGS', - '.ILSTRINGS', - '.STRINGS' - ); - -var - wbLocalizationHandler: TwbLocalizationHandler; - -implementation - -uses - WideStrUtils; - -constructor TwbLocalizationFile.Create(const aFileName: string); -var - fs: TFileStream; - fStream: TMemoryStream; - Buffer: PByte; -begin - fFileName := aFileName; - Init; - // cache file in mem - fStream := TMemoryStream.Create; - try - fs := TFileStream.Create(aFileName, fmOpenRead or fmShareDenyNone); - GetMem(Buffer, fs.Size); - try - fs.ReadBuffer(Buffer^, fs.Size); - fStream.WriteBuffer(Buffer^, fs.Size); - fStream.Position := 0; - ReadDirectory(fStream); - finally - if Assigned(Buffer) then FreeMem(Buffer); - end; - finally - FreeAndNil(fs); - FreeAndNil(fStream); - end; -end; - -constructor TwbLocalizationFile.Create(const aFileName: string; aData: TBytes); -var - fStream: TMemoryStream; -begin - fFileName := aFileName; - Init; - fStream := TMemoryStream.Create; - try - fStream.WriteBuffer(aData[0], length(aData)); - fStream.Position := 0; - ReadDirectory(fStream); - finally - FreeAndNil(fStream); - end; -end; - -destructor TwbLocalizationFile.Destroy; -begin - FreeAndNil(fStrings); - inherited; -end; - -procedure TwbLocalizationFile.Init; -begin - fModified := false; - fName := ExtractFileName(fFileName); - fFileType := FileStringType(fFileName); - fStrings := TwbFastStringList.Create; - fNextID := 1; -end; - -function TwbLocalizationFile.FileStringType(aFileName: string): TwbLStringType; -var - ext: string; - i: TwbLStringType; -begin - Result := lsString; - ext := ExtractFileExt(aFileName); - for i := Low(TwbLStringType) to High(TwbLStringType) do - if SameText(ext, wbLocalizationExtension[i]) then - Result := i; -end; - -function TwbLocalizationFile.ReadZString(aStream: TMemoryStream): AnsiString; -var - Position : Integer; -begin - Position := aStream.Position; - Result := PAnsiChar(@PByte(aStream.Memory)[Position]); - aStream.Position := aStream.Position + Succ(Length(Result)); -end; - -function TwbLocalizationFile.ReadLenZString(aStream: TMemoryStream): AnsiString; -var - Len: Cardinal; -begin - aStream.ReadBuffer(Len, 4); - Dec(Len); // trailing null - SetLength(Result, Len); - if Len > 0 then - aStream.ReadBuffer(Result[1], Len); -end; - -procedure TwbLocalizationFile.WriteZString(aStream: TMemoryStream; aString: AnsiString); -const - z: Byte = 0; -begin - aStream.WriteBuffer(aString[1], Length(aString)); - aStream.WriteBuffer(z, SizeOf(z)); -end; - -procedure TwbLocalizationFile.WriteLenZString(aStream: TMemoryStream; aString: AnsiString); -const - z: Byte = 0; -var - l: Cardinal; -begin - l := Length(aString) + SizeOf(z); - aStream.WriteBuffer(l, SizeOf(Cardinal)); - aStream.WriteBuffer(aString[1], Length(aString)); - aStream.WriteBuffer(z, SizeOf(z)); -end; - -procedure TwbLocalizationFile.ReadDirectory(aStream: TMemoryStream); -var - i: integer; - scount, id, offset: Cardinal; - oldPos: int64; - s: AnsiString; -begin - if aStream.Size < 8 then - Exit; - - aStream.Read(scount, 4); // number of strings - aStream.Position := aStream.Position + 4; // skip dataSize - if scount > 0 then - for i := 0 to scount - 1 do begin - aStream.Read(id, 4); // string ID - aStream.Read(offset, 4); // offset of string relative to data (header + dirsize) - oldPos := aStream.Position; - aStream.Position := 8 + scount*8 + offset; // header + dirsize + offset - if fFileType = lsString then - s := ReadZString(aStream) - else - s := ReadLenZString(aStream); - fStrings.AddObject(wbAnsiToString(s, nil), pointer(id)); - if Succ(id) > fNextID then - fNextID := Succ(id); - aStream.Position := oldPos; - end; -end; - -procedure TwbLocalizationFile.WriteToStream(const aStream: TStream); -var - dir, data: TMemoryStream; - i: integer; - c: Cardinal; -begin - dir := TMemoryStream.Create; - data := TMemoryStream.Create; - c := fStrings.Count; - dir.WriteBuffer(c, SizeOf(c)); // number of strings - dir.WriteBuffer(c, SizeOf(c)); // dataSize, will overwrite later - try - for i := 0 to Pred(fStrings.Count) do begin - c := Cardinal(fStrings.Objects[i]); - dir.WriteBuffer(c, SizeOf(c)); // ID - c := data.Position; - dir.WriteBuffer(c, SizeOf(c)); // relative position - if fFileType = lsString then - WriteZString(data, wbStringToAnsi(fStrings[i], nil)) - else - WriteLenZString(data, wbStringToAnsi(fStrings[i], nil)); - end; - c := data.Size; - dir.Position := 4; - dir.WriteBuffer(c, SizeOf(c)); // dataSize - - aStream.CopyFrom(dir, 0); - aStream.CopyFrom(data, 0); - finally - FreeAndNil(dir); - FreeAndNil(data); - end; -end; - -function TwbLocalizationFile.Count: Integer; -begin - Result := fStrings.Count; -end; - -function TwbLocalizationFile.IndexToID(Index: Integer): Cardinal; -begin - if Index < Count then - Result := Cardinal(fStrings.Objects[Index]) - else - Result := 0; -end; - -function TwbLocalizationFile.IDExists(ID: Cardinal): boolean; -begin - Result := fStrings.IndexOfObject(Pointer(ID)) <> -1; -end; - -function TwbLocalizationFile.Get(Index: Cardinal): string; -var - idx: integer; -begin - Result := ''; - idx := fStrings.IndexOfObject(Pointer(Index)); - if idx <> -1 then - Result := fStrings[idx] - else - Result := ''; -end; - -procedure TwbLocalizationFile.Put(Index: Cardinal; const S: string); -var - idx: integer; -begin - idx := fStrings.IndexOfObject(Pointer(Index)); - if idx <> -1 then - if fStrings[idx] <> S then begin - fStrings[idx] := S; - fModified := true; - end; -end; - -function TwbLocalizationFile.AddString(ID: Integer; const S: string): boolean; -begin - Result := false; - if ID < NextID then - Exit; - - fStrings.AddObject(S, Pointer(ID)); - fNextID := Succ(ID); - fModified := true; - - Result := true; -end; - -procedure TwbLocalizationFile.ExportToFile(const aFileName: string); -var - i: integer; - sl: TStringList; -begin - sl := TStringList.Create; - try - for i := 0 to Pred(fStrings.Count) do begin - sl.Add('[' + IntToHex(Integer(fStrings.Objects[i]), 8) + ']'); - sl.Add(fStrings[i]); - end; - sl.SaveToFile(aFileName); - finally - FreeAndNil(sl); - end; -end; - -constructor TwbLocalizationHandler.Create; -begin - lFiles := TwbFastStringListCS.CreateSorted; - fReuseDup := false; - NoTranslate := false; -end; - -destructor TwbLocalizationHandler.Destroy; -begin - Clear; - FreeAndNil(lFiles); -end; - -function TwbLocalizationHandler.Count: Integer; -begin - Result := lFiles.Count; -end; - -procedure TwbLocalizationHandler.Clear; -var - i: integer; -begin - for i := 0 to Pred(Count) do - _Files[i].Destroy; - lFiles.Clear; -end; - -function TwbLocalizationHandler.Get(Index: Integer): TwbLocalizationFile; -begin - if Index < Count then - Result := TwbLocalizationFile(lFiles.Objects[Index]) - else - Result := nil; -end; - -function TwbLocalizationHandler.AddLocalization(const aFileName: string): TwbLocalizationFile; -begin - Result := TwbLocalizationFile.Create(aFileName); - lFiles.AddObject(ExtractFileName(aFileName), Result); -end; - -function TwbLocalizationHandler.AddLocalization(const aFileName: string; aData: TBytes): TwbLocalizationFile; -begin - Result := TwbLocalizationFile.Create(aFileName, aData); - lFiles.AddObject(ExtractFileName(aFileName), Result); -end; - -function TwbLocalizationHandler.LocalizedValueDecider(aElement: IwbElement): TwbLStringType; -var - sigElement, sigRecord: TwbSignature; - aRecord: IwbSubRecord; -begin - if Supports(aElement, IwbSubRecord, aRecord) then - sigElement := aRecord.Signature - else - sigElement := ''; - - sigRecord := aElement.ContainingMainRecord.Signature; - - if (sigRecord <> 'LSCR') and (sigElement = 'DESC') then Result := lsDLString else // DESC always from dlstrings except LSCR - if (sigRecord = 'QUST') and (sigElement = 'CNAM') then Result := lsDLString else // quest log entry - if (sigRecord = 'BOOK') and (sigElement = 'CNAM') then Result := lsDLString else // Book CNAM description - if (sigRecord = 'INFO') and (sigElement <> 'RNAM') then Result := lsILString else // dialog, RNAM are lsString, others lsILString - Result := lsString; // others -end; - -function TwbLocalizationHandler.GetStringsPath: string; -begin - Result := wbDataPath + 'Strings\'; -end; - -function TwbLocalizationHandler.AvailableLanguages: TStringList; -var - F: TSearchRec; - p: integer; - s: string; -begin - Result := TStringList.Create; - if FindFirst(StringsPath + '*.*STRINGS', faAnyFile, F) = 0 then try - repeat - s := LowerCase(ChangeFileExt(F.Name, '')); - p := LastDelimiter('_', s); - if p > 0 then begin - s := Copy(s, p + 1, length(s)); - if s = '' then Continue; - s := AnsiUpperCase(s[1]) + Copy(s, 2, Length(s)); - if Result.IndexOf(s) = -1 then - Result.Add(s); - end; - until FindNext(F) <> 0; - finally - FindClose(F); - end; -end; - -function TwbLocalizationHandler.AvailableLocalizationFiles: TStringList; -var - F: TSearchRec; -begin - Result := TStringList.Create; - if FindFirst(StringsPath + '*.*STRINGS', faAnyFile, F) = 0 then try - repeat - Result.Add(F.Name); - until FindNext(F) <> 0; - finally - FindClose(F); - end; -end; - -procedure TwbLocalizationHandler.LoadForFile(aFileName: string); -var - ls: TwbLStringType; - s: string; - res: TDynResources; -begin - if not Assigned(wbContainerHandler) then - Exit; - - for ls := Low(TwbLStringType) to High(TwbLStringType) do begin - s := wbLocalizationHandler.GetLocalizationFileNameByType(aFileName, ls); - if lFiles.IndexOf(ExtractFileName(s)) = -1 then begin - res := wbContainerHandler.OpenResource(s); - if length(res) > 0 then begin - //wbProgressCallback('[' + s + '] Loading Localization.'); - wbLocalizationHandler.AddLocalization(wbDataPath + s, res[High(res)].GetData); - end; - end; - end; -end; - -function TwbLocalizationHandler.GetLocalizationFileNameByType(aPluginFile: string; ls: TwbLStringType): string; -begin - Result := Format('%s_%s%s', [ - ChangeFileExt(aPluginFile, ''), - wbLanguage, - wbLocalizationExtension[ls] - ]); - // relative path to Data folder - Result := 'Strings\' + Result; -end; - -function TwbLocalizationHandler.GetLocalizationFileNameByElement(aElement: IwbElement): string; -begin - Result := ''; - - if not Assigned(aElement) then - Exit; - - Result := GetLocalizationFileNameByType(aElement._File.FileName, LocalizedValueDecider(aElement)); -end; - -// create a new lstring from aValue for aElement -function TwbLocalizationHandler.AddValue(aValue: string; aElement: IwbElement): Cardinal; -var - ls: TwbLStringType; - FileName: string; - wblf: array [TwbLStringType] of TwbLocalizationFile; - idx: integer; - data: TBytes; - ID: Cardinal; -begin - Result := 0; - - if not Assigned(aElement) then - Exit; - - if aValue = '' then - Exit; - - // create localization files if absent - try - ID := 1; - for ls := Low(TwbLStringType) to High(TwbLStringType) do begin - FileName := GetLocalizationFileNameByType(aElement._File.FileName, ls); - idx := lFiles.IndexOf(ExtractFileName(FileName)); - if idx = -1 then begin - wblf[ls] := AddLocalization(wbDataPath + FileName, data); - wblf[ls].Modified := true; - end else - wblf[ls] := _Files[idx]; - - if wblf[ls].NextID > ID then - ID := wblf[ls].NextID; - end; - - ls := LocalizedValueDecider(aElement); - - // detect a duplicate string - if ReuseDup then begin - idx := wblf[ls].fStrings.IndexOf(aValue); - if idx <> -1 then ID := Cardinal(wblf[ls].fStrings.Objects[idx]) else - wblf[ls].AddString(ID, aValue); - end else - wblf[ls].AddString(ID, aValue); - - Result := ID; - finally - - end; -end; - -function TwbLocalizationHandler.SetValue(ID: Cardinal; aElement: IwbElement; aValue: string): Cardinal; -var - idx: integer; - FileName: string; -begin - Result := ID; - - if not Assigned(aElement) then - Exit; - - FileName := GetLocalizationFileNameByElement(aElement); - idx := lFiles.IndexOf(ExtractFileName(FileName)); - - if (idx = -1) or (ID = 0) then begin - // new string - Result := AddValue(aValue, aElement); - Exit; - end; - - if not _Files[idx].IDExists(ID) then - // string doesn't exist, create new - Result := AddValue(aValue, aElement) - else - // modify existing - _Files[idx][ID] := aValue; -end; - - -function TwbLocalizationHandler.GetValue(ID: Cardinal; aElement: IwbElement): string; -var - lFileName: string; - idx: integer; -begin - Result := ''; - - if NoTranslate then begin - Result := IntToHex(ID, 8); - Exit; - end; - - if ID = 0 then - Exit; - - lFileName := ExtractFileName(GetLocalizationFileNameByElement(aElement)); - - if lFileName = '' then - Exit; - - idx := lFiles.IndexOf(lFileName); - - // load strings files if absent - if idx = - 1 then - LoadForFile(aElement._File.FileName); - - // get file again - idx := lFiles.IndexOf(lFileName); - if idx = - 1 then begin - Result := ''; - Exit; - end; - - Result := _Files[idx][ID]; -end; - -procedure TwbLocalizationHandler.GetStringsFromFile(aFileName: string; const aList: TStrings); -var - i: integer; -begin - if not Assigned(aList) then - Exit; - - for i := 0 to Pred(lFiles.Count) do - if SameText(lFiles[i], aFileName) then begin - aList.Assign(_Files[i].fStrings); - Break; - end; -end; - - -initialization - wbLocalizationHandler := TwbLocalizationHandler.Create; -finalization - FreeAndNil(wbLocalizationHandler); -end. diff --git a/lib/xedit/wbSort.pas b/lib/xedit/wbSort.pas deleted file mode 100644 index eb3e9c7..0000000 --- a/lib/xedit/wbSort.pas +++ /dev/null @@ -1,1060 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} -unit wbSort; - -{$I wbDefines.inc} - -interface - -uses - Classes, wbInterface; - -procedure wbMergeSort(aList: Pointer; aCount: Integer; aCompare: TListSortCompare); - -implementation - -type - TwbMove = procedure(const Source; var Dest; Count : Integer); - -var - wbMove : TwbMove = nil; - -const - // x64 - use InsertionSort instead MergeSort for small arrays - MIN_SIZE = 32; - -{$IFDEF WIN32} -function wbMergeSortInternal(_A, _B: PwbPointerArray; _Count : Integer; _Compare: TListSortCompare): PwbPointerArray; register; -const - SizeOfPointer = SizeOf(Pointer); - SizeOf2Pointer = 2 * SizeOf(Pointer); - - EspOffset = $38; - - A = EspOffset - SizeOfPointer * 1; - B = EspOffset - SizeOfPointer * 2; - Compare = EspOffset+$08; //sometimes ebp - - Temp = EspOffset - SizeOfPointer * 3; - - Count = EspOffset - SizeOfPointer * 4; - SegmentSize = EspOffset - SizeOfPointer * 5; - - Temp2 = EspOffset - SizeOfPointer * 6; - - pRightEnd = EspOffset - SizeOfPointer * 7; - pLeftEnd = EspOffset - SizeOfPointer * 8; - - pListEnd = EspOffset - SizeOfPointer * 9; - - pNextLeft = EspOffset - SizeOfPointer * 10; - SavedCompares = EspOffset - SizeOfPointer * 11; -asm - { begin } - sub esp, EspOffset - mov [esp + 00], edi - mov [esp + 08], esi - mov [esp + 04], ebx - - mov [esp+Count], ecx - mov [esp+B], edx - mov [esp+A], eax - - {======== first run =========================================================} - xor ebp, ebp - - { pBuffer := @b; } - mov edi, [esp+B] - { pLeft := @a; } - mov esi, [esp+A] - { pListEnd := @a[Pred(Count)]; } - mov ebx, [esp+Count] - dec ebx - lea ebx, [esi+ebx*SizeOfPointer] - - mov dword ptr [esp+Temp], 0 - - jmp @@FirstRun_CompareLoop - - nop - nop - nop - nop - nop - nop - nop - - @@FirstRun_CompareLoop: - { if Compare(pLeft^, pRight^) <= 0 then begin } - mov eax, [esi] - mov edx, [esi + SizeOfPointer] - call [esp+Compare] - test eax, eax - jg @@FirstRun_MergeFromRight - jl @@FirstRun_MergeFromLeft - add dword ptr [esp+Temp], 1 - jmp @@FirstRun_MergeFromLeft - - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - - @@FirstRun_MergeFromLeft: - { pBuffer^ := pLeft^; } - mov eax, [esi] - mov [edi], eax - { pBuffer+1^ := pLeft+1^; } - mov eax, [esi + SizeOfPointer] - mov [edi + SizeOfPointer], eax - { Inc(pBuffer, 2); } - add edi, SizeOf2Pointer - { Inc(pLeft, 2); } - add esi, SizeOf2Pointer - - { until pLeft+1 >= pListEnd } - cmp esi, ebx - jb @@FirstRun_CompareLoop - ja @@FirstRun_NoRemaining - jmp @@FirstRun_CopyRemaining - - nop - nop - nop - nop - nop - nop - nop - nop - - @@FirstRun_MergeFromRight: - lea ebp, [ebp +1] - { pBuffer+1^ := pLeft^; } - mov eax, [esi] - mov [edi + SizeOfPointer], eax - { pBuffer^ := pLeft+1^; } - mov eax, [esi + SizeOfPointer] - mov [edi], eax - { Inc(pBuffer, 2); } - add edi, SizeOf2Pointer - { Inc(pLeft, 2); } - add esi, SizeOf2Pointer - - { until pLeft+1 >= pListEnd } - cmp esi, ebx - jb @@FirstRun_CompareLoop - ja @@FirstRun_NoRemaining - - @@FirstRun_CopyRemaining: - { pBuffer^ := pLeft^; } - mov eax, [esi] - mov [edi], eax - - nop - nop - nop - - @@FirstRun_NoRemaining: - mov edx, ebp - mov ebp, [esp+Compare] - - { if never merged from left... } - test edx, edx - jz @@ShortCutFwd_Entry - - { if always merged from right... } - mov eax, [esp+Count] - shr eax, 1 - add edx, [esp+Temp] - cmp edx, eax - je @@ShortCutBwd_Entry - - { T := A; } - mov eax, [esp+A] - { A := B; } - mov edx, [esp+B] - mov [esp+A], edx - { B := T; } - mov [esp+B], eax - - jmp @@SmallRuns_Entry - - {======== shortcut forward run ==============================================} - nop - nop - nop - - @@ShortCutFwd_Entry: - { pLeft := @a; } - mov esi, [esp+A] - { pListEnd := @a[Pred(Count)]; - still valid} - - { skip first element } - add esi, SizeOfPointer - - cmp esi, ebx - jae @@Exit - - nop - - @@ShortCutFwd_CompareLoop: - { if Compare(pLeft^, pRight^) <= 0 then begin } - mov eax, [esi] - mov edx, [esi + SizeOfPointer] - call ebp - test eax, eax - { if any element didn't fit, do a full merge } - jg @@SmallRuns_Entry - - { Inc(pLeft, 2); } - add esi, SizeOf2Pointer - - { until pLeft+1 >= pListEnd } - cmp esi, ebx - jb @@ShortCutFwd_CompareLoop - jmp @@Exit - - {======== shortcut forward run ==============================================} - - nop - nop - nop - nop - nop - - @@ShortCutBwd_Entry: - mov esi, [esp+A] - mov ebx, [esp + Count] - cmp ebx, 2 - je @@ShortCutBwd_ExchangeLoop_Entry - - sub ebx, 3 - or ebx, 1 - lea ebx, [esi + ebx * 4] - - cmp esi, ebx - jae @@Exit - - nop - nop - - @@ShortCutBwd_CompareLoop: - { if Compare(pLeft^, pRight^) <= 0 then begin } - mov eax, [ebx] - mov edx, [ebx + SizeOfPointer] - call ebp - test eax, eax - { if any element didn't fit, do a full merge } - jl @@ShortCutBwd_Error - - { Inc(pLeft, 2); } - sub ebx, SizeOf2Pointer - - { until pLeft+1 >= pListEnd } - cmp esi, ebx - jb @@ShortCutBwd_CompareLoop - - @@ShortCutBwd_ExchangeLoop_Entry: - mov esi, [esp+A] - mov ebx, [esp + Count] - sub ebx, 1 - lea ebx, [esi + ebx * 4] - - @@ShortCutBwd_ExchangeLoop: - mov eax, [esi] - mov edx, [ebx] - mov [ebx], eax - mov [esi], edx - - add esi, SizeOfPointer - sub ebx, SizeOfPointer - - cmp esi, ebx - jb @@ShortCutBwd_ExchangeLoop - - jmp @@Exit - - nop - nop - nop - nop - nop - nop - nop - nop - nop - - @@ShortCutBwd_Error: - - { T := A; } - mov eax, [esp+A] - { A := B; } - mov edx, [esp+B] - mov [esp+A], edx - { B := T; } - mov [esp+B], eax - - jmp @@SmallRuns_Entry - - {======== small runs ====================================================} - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - - @@SmallRuns_Entry: - { SegmentSize := 2; } - mov eax, 2 - mov dword ptr [esp+SegmentSize], eax - - nop - nop - nop - nop - nop - nop - nop - @@SmallRuns_OuterLoop_Entry: - mov ebp, [esp + Compare] - @@SmallRuns_OuterLoop: // requires SegmentSize in eax - { pBuffer := @b; } - mov edi, [esp+B] - { pLeft := @a; } - mov esi, [esp+A] - { pRight := @a[SegmentSize]; } - lea ebx, [esi+eax*SizeOfPointer] - { pLeftEnd := pRight; } - mov [esp+pLeftEnd], ebx - { pListEnd := @a[Count]; } - mov edx, [esp+Count] - lea edx, [esi+ edx*SizeOfPointer] - mov [esp+pListEnd], edx - { pRightEnd := @a[SegmentSize + SegmentSize]; } - lea eax, [ebx+eax*SizeOfPointer] - mov [esp+pRightEnd], eax - - jmp @@SmallRuns_InnerLoopEntry //requires pRightEnd in eax and pListEnd in edx - - nop - nop - nop - nop - nop - nop - nop - nop - nop - - @@SmallRuns_InnerLoopSetRightEnd: - { pRightEnd := pListEnd; } - mov [esp+pRightEnd], edx - - @@SmallRuns_InnerLoop: - @@SmallRuns_CompareLoop: - { if Compare(pLeft^, pRight^) <= 0 then begin } - mov edx, [ebx] - mov eax, [esi] - call ebp - test eax, eax - jg @@SmallRuns_MergeFromRight - - @@SmallRuns_MergeFromLeft: - { pBuffer^ := pLeft^; } - mov eax, [esi] - mov [edi], eax - { Inc(pBuffer); } - add edi, SizeOfPointer - { Inc(pLeft); } - add esi, SizeOfPointer - { if Cardinal(pLeft) >= Cardinal(pLeftEnd) then begin } - cmp esi, [esp+pLeftEnd] - jb @@SmallRuns_CompareLoop - - nop - nop - - @@SmallRuns_CopyRemainingFromRight_Entry: - mov edx, [esp+pRightEnd] //used in CopyRemainingFromRight - @@SmallRuns_CopyRemainingFromRight: - { pBuffer^ := pRight^; } - mov eax, [ebx] - mov [edi], eax - { Inc(pBuffer); } - add edi, SizeOfPointer - { Inc(pRight); } - add ebx, SizeOfPointer - { while Cardinal(pRight) < Cardinal(pRightEnd) do begin } - cmp ebx, edx - jb @@SmallRuns_CopyRemainingFromRight - { Break; } - jmp @@SmallRuns_BreakOutOfCompareLoop - - @@SmallRuns_MergeBoth: - { pBuffer^ := pRight^; } - mov eax, [esi] - mov [edi], eax - mov eax, [ebx] - mov [edi + SizeOfPointer], eax - { Inc(pBuffer); } - add edi, SizeOf2Pointer - { Inc(pRight); } - add ebx, SizeOfPointer - add esi, SizeOfPointer - - cmp esi, [esp+pLeftEnd] - jae @@SmallRuns_LeftDone - - cmp ebx, [esp+pRightEnd] - jb @@SmallRuns_CompareLoop - jmp @@SmallRuns_CopyRemainingFromLeft_Entry - - @@SmallRuns_LeftDone: - cmp ebx, [esp+pRightEnd] - jb @@SmallRuns_CopyRemainingFromRight_Entry - jmp @@SmallRuns_BreakOutOfCompareLoop - - @@SmallRuns_MergeFromRight: - { pBuffer^ := pRight^; } - mov eax, [ebx] - mov [edi], eax - { Inc(pBuffer); } - add edi, SizeOfPointer - { Inc(pRight); } - add ebx, SizeOfPointer - { if Cardinal(pRight) >= Cardinal(pRightEnd) then begin } - cmp ebx, [esp+pRightEnd] - jb @@SmallRuns_CompareLoop - - @@SmallRuns_CopyRemainingFromLeft_Entry: - mov edx, [esp+pLeftEnd] // used in CopyRemainingFromLeft - @@SmallRuns_CopyRemainingFromLeft: - - { pBuffer^ := pLeft^; } - mov eax, [esi] - mov [edi], eax - { Inc(pBuffer); } - add edi, SizeOfPointer - { Inc(pLeft); } - add esi, SizeOfPointer - { while Cardinal(pLeft) < Cardinal(pLeftEnd) do begin } - cmp esi, edx - jb @@SmallRuns_CopyRemainingFromLeft - - @@SmallRuns_BreakOutOfCompareLoop: - { Inc(pLeft, SegmentSize); } - mov eax, [esp+SegmentSize] - shl eax, 02h - add esi, eax - { Inc(pRight, SegmentSize); } - add ebx, eax - { pLeftEnd := pRight; } - mov [esp+pLeftEnd], ebx - { Inc(pRightEnd, SegmentSize + SegmentSize); } - lea eax, [ebx + eax] - mov [esp+pRightEnd], eax - - mov edx, [esp+pListEnd] - @@SmallRuns_InnerLoopEntry: //requires pRightEnd in eax and pListEnd in edx - { while Cardinal(pRightEnd) <= Cardinal(pListEnd) do begin } - cmp eax, edx - jbe @@SmallRuns_InnerLoop - - { if Cardinal(pLeft) < Cardinal(pListEnd) then begin } - cmp edx, esi - jbe @@SmallRuns_NoRemaining - { if Cardinal(pRight) < Cardinal(pListEnd) then begin } - cmp edx, ebx - ja @@SmallRuns_InnerLoopSetRightEnd - - @@SmallRuns_CopyRemaining: - - { pBuffer^ := pLeft^; } - mov eax, [esi] - mov [edi], eax - { Inc(pBuffer); } - add edi, SizeOfPointer - { Inc(pLeft); } - add esi, SizeOfPointer - { while Cardinal(pLeft) < Cardinal(pListEnd) do begin } - cmp esi, edx - jb @@SmallRuns_CopyRemaining - - @@SmallRuns_NoRemaining: - { T := A; } - mov eax, [esp+A] - { A := B; } - mov edx, [esp+B] - mov [esp+A], edx - { B := T; } - mov [esp+B], eax - { SegmentSize := SegmentSize shl 1; } - mov eax, [esp+SegmentSize] - shl eax, 1 - mov [esp+SegmentSize], eax - { while SegmentSize < Count do begin } - cmp eax, [esp+Count] - jge @@Exit - - cmp eax, 128 - jne @@SmallRuns_OuterLoop // requires SegmentSize in eax - - {======== large runs ====================================================} - @@LargeRuns_OuterLoop: // requires SegmentSize in eax - { pBuffer := @b; } - mov edi, [esp+B] - { pLeft := @a; } - mov esi, [esp+A] - { pRight := @a[SegmentSize]; } - lea ebx, [esi+eax*SizeOfPointer] - { pLeftEnd := pRight; } - mov [esp+pLeftEnd], ebx - { pListEnd := @a[Count]; } - mov edx, [esp+Count] - lea edx, [esi+ edx*SizeOfPointer] - mov [esp+pListEnd], edx - { pRightEnd := @a[SegmentSize + SegmentSize]; } - lea eax, [ebx+eax*SizeOfPointer] - mov [esp+pRightEnd], eax - mov [esp+pNextLeft], eax - - mov [esp+SavedCompares], 0 - - jmp @@LargeRuns_InnerLoopEntry //requires pRightEnd in eax and pListEnd in edx - - nop - nop - nop - - @@LargeRuns_InnerLoopSetRightEnd: - { pRightEnd := pListEnd; } - mov [esp+pRightEnd], edx - mov [esp+pNextLeft], edx - - @@LargeRuns_InnerLoop: - - { Compare(pLeft^, pRight^) } - mov edx, [ebx] - mov eax, [esi] - call [esp+Compare] - test eax, eax - { if equal -> perfect overlap, copy both, no need to waste a comparison... } - je @@LargeRuns_CopyBoth - - mov edx, [esp+pLeftEnd] - jl @@LargeRuns_MoveFromLeft // requires LeftEnd in edx - - @@LargeRuns_SwitchLeftAndRight: - - { if greater -> right one is smaller } - - { move it over to the buffer, no need to waste a comparison} - mov ecx, [ebx] - mov [edi], ecx - add ebx, SizeOfPointer - add edi, SizeOfPointer - - { switch left and right } - xchg ebx, esi - - mov eax, [esp+pRightEnd] - mov [esp+pLeftEnd], eax - mov [esp+pRightEnd], edx - - { if we reached the end, copy the rest } - cmp esi, eax - jae @@LargeRuns_CopyRemainingFromRight_Entry - - mov edx, eax - jmp @@LargeRuns_CompareLeftEndAndRight - - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - - @@LargeRuns_MoveFromLeft: // requires LeftEnd in edx - - { if lesser -> left one is smaller} - - { move it over to the buffer, no need to waste a comparison} - mov ecx, [esi] - mov [edi], ecx - add esi, SizeOfPointer - add edi, SizeOfPointer - - { if we reached the end, copy the rest } - cmp esi, edx{LeftEnd} - jae @@LargeRuns_CopyRemainingFromRight_Entry - - @@LargeRuns_CompareLeftEndAndRight: // requires LeftEnd in edx - - sub edx, SizeOfPointer - mov eax, [edx] - mov edx, [ebx] - call [esp+Compare] - test eax, eax - jg @@LargeRuns_BinarySearchLeft_Entry - - { LeftEnd <= Right, no need to continue merging, just copy and get out of here } - - { first copy just left } - mov eax, esi - mov edx, edi - mov ecx, [esp+pLeftEnd] - sub ecx, eax - add edi, ecx - add [esp+SavedCompares], ecx - call [wbMove] - - { then copy just right } - mov eax, ebx - mov edx, edi - mov ecx, [esp+pRightEnd] - sub ecx, eax - add edi, ecx - add [esp+SavedCompares], ecx - call [wbMove] - - { we are done here } - jmp @@LargeRuns_BreakOutOfCompareLoop - - nop - nop - nop - nop - nop - nop - - @@LargeRuns_CopyBoth: - mov eax, [ebx] - mov [edi], eax - mov eax, [esi] - mov [edi + SizeOfPointer], eax - - add ebx, SizeOfPointer - add esi, SizeOfPointer - add edi, SizeOf2Pointer - - cmp esi, [esp+pLeftEnd] - jae @@LargeRuns_CopyRemainingFromRight_Entry - cmp ebx, [esp+pRightEnd] - jae @@LargeRuns_CopyRemainingFromLeft_Entry - - jmp @@LargeRuns_InnerLoop - - nop - nop - nop - nop - nop - - @@LargeRuns_BinarySearchLeft_Entry: - { save our old Left } - mov [esp+Temp], esi - { save our old Buffer } - mov [esp+Temp2], edi - - mov edi, [esp+pLeftEnd] - sub edi, SizeOfPointer - - { we start with esi = Low and edi = High} - - nop - - @@LargeRuns_BinarySearchLeft_Loop: - { calculate the middle into ebp } - mov ebp, edi - sub ebp, esi - shr ebp, 3 - - lea ebp, [esi + ebp *4]; - - { compare middle with Right} - mov eax, [ebp] - mov edx, [ebx] - sub [esp+SavedCompares], 4 - call [esp+Compare] - test eax, eax - jg @@LargeRuns_BinarySearchLeft_Greater - - @@LargeRuns_BinarySearchLeft_LesserOrEqual: - { move the lower bound } - lea esi, [ebp + SizeOfPointer] - - cmp esi, edi - jbe @@LargeRuns_BinarySearchLeft_Loop - jmp @@LargeRuns_BinarySearchLeft_Exit - - @@LargeRuns_BinarySearchLeft_Greater: - { mov the higher bound } - lea edi, [ebp - SizeOfPointer] - - cmp esi, edi - jbe @@LargeRuns_BinarySearchLeft_Loop - jmp @@LargeRuns_BinarySearchLeft_Exit - - nop - nop - nop - nop - nop - nop - nop - - @@LargeRuns_BinarySearchLeft_Exit: - { edi is pointing to the last entry that's <= Right } - - { get our old left } - mov esi, [esp+Temp] - mov edx, edi - { restore Buffer} - mov edi, [esp+Temp2] - jmp @@LargeRuns_BinarySearchLeft_CopyLeadingLeft_Entry - - nop - nop - nop - nop - - @@LargeRuns_BinarySearchLeft_CopyLeadingLeft_Loop: - { pBuffer^ := pLeft^; } - mov eax, [esi] - mov [edi], eax - { Inc(pBuffer); } - add edi, SizeOfPointer - { Inc(pLeft); } - add esi, SizeOfPointer - add [esp+SavedCompares], 4 - { while Cardinal(pLeft) <= FoundItem do begin } - @@LargeRuns_BinarySearchLeft_CopyLeadingLeft_Entry: - cmp esi, edx - jbe @@LargeRuns_BinarySearchLeft_CopyLeadingLeft_Loop - - { we've copied all entries from Left that where <= Right } - - { are we done with Left? } - cmp esi, [esp+pLeftEnd] - jae @@LargeRuns_CopyRemainingFromRight_Entry - - { pBuffer^ := pRight^; } - mov eax, [ebx] - mov [edi], eax - { Inc(pBuffer); } - add edi, SizeOfPointer - { Inc(pRight); } - add ebx, SizeOfPointer - - { are we done with Right? } - cmp ebx, [esp+pRightEnd] - jae @@LargeRuns_CopyRemainingFromLeft_Entry - - { now we can start with the normal compare loop} - mov ebp, [esp+Compare] - - jmp @@LargeRuns_CompareLoop - - nop - nop - nop - nop - nop - nop - - @@LargeRuns_CompareLoop: - { if Compare(pLeft^, pRight^) <= 0 then begin } - mov edx, [ebx] - mov eax, [esi] - call ebp - test eax, eax - jg @@LargeRuns_MergeFromRight - - @@LargeRuns_MergeFromLeft: - { pBuffer^ := pLeft^; } - mov eax, [esi] - mov [edi], eax - { Inc(pBuffer); } - add edi, SizeOfPointer - { Inc(pLeft); } - add esi, SizeOfPointer - { if Cardinal(pLeft) >= Cardinal(pLeftEnd) then begin } - cmp esi, [esp+pLeftEnd] - jb @@LargeRuns_CompareLoop - - nop - nop - - @@LargeRuns_CopyRemainingFromRight_Entry: - mov edx, [esp+pRightEnd] //used in CopyRemainingFromRight - @@LargeRuns_CopyRemainingFromRight: - { pBuffer^ := pRight^; } - mov eax, [ebx] - mov [edi], eax - { Inc(pBuffer); } - add edi, SizeOfPointer - { Inc(pRight); } - add ebx, SizeOfPointer - { while Cardinal(pRight) < Cardinal(pRightEnd) do begin } - cmp ebx, edx - jb @@LargeRuns_CopyRemainingFromRight - { Break; } - jmp @@LargeRuns_BreakOutOfCompareLoop - - @@LargeRuns_MergeFromRight: - { pBuffer^ := pRight^; } - mov eax, [ebx] - mov [edi], eax - { Inc(pBuffer); } - add edi, SizeOfPointer - { Inc(pRight); } - add ebx, SizeOfPointer - { if Cardinal(pRight) >= Cardinal(pRightEnd) then begin } - cmp ebx, [esp+pRightEnd] - jb @@LargeRuns_CompareLoop - - @@LargeRuns_CopyRemainingFromLeft_Entry: - mov edx, [esp+pLeftEnd] // used in CopyRemainingFromLeft - @@LargeRuns_CopyRemainingFromLeft: - - { pBuffer^ := pLeft^; } - mov eax, [esi] - mov [edi], eax - { Inc(pBuffer); } - add edi, SizeOfPointer - { Inc(pLeft); } - add esi, SizeOfPointer - { while Cardinal(pLeft) < Cardinal(pLeftEnd) do begin } - cmp esi, edx - jb @@LargeRuns_CopyRemainingFromLeft - - @@LargeRuns_BreakOutOfCompareLoop: - { Inc(pLeft, SegmentSize); } - mov eax, [esp+SegmentSize] - shl eax, 02h - - mov esi, [esp+pNextLeft] - { Inc(pRight, SegmentSize); } - lea ebx, [esi + eax] - { pLeftEnd := pRight; } - mov [esp+pLeftEnd], ebx - { Inc(pRightEnd, SegmentSize + SegmentSize); } - lea eax, [ebx + eax] - mov [esp+pRightEnd], eax - mov [esp+pNextLeft], eax - - mov edx, [esp+pListEnd] - @@LargeRuns_InnerLoopEntry: //requires pRightEnd in eax and pListEnd in edx - { while Cardinal(pRightEnd) <= Cardinal(pListEnd) do begin } - cmp eax, edx - jbe @@LargeRuns_InnerLoop - - { if Cardinal(pLeft) < Cardinal(pListEnd) then begin } - cmp edx, esi - jbe @@LargeRuns_NoRemaining - { if Cardinal(pRight) < Cardinal(pListEnd) then begin } - cmp edx, ebx - ja @@LargeRuns_InnerLoopSetRightEnd - - @@LargeRuns_CopyRemaining: - { pBuffer^ := pLeft^; } - mov eax, [esi] - mov [edi], eax - { Inc(pBuffer); } - add edi, SizeOfPointer - { Inc(pLeft); } - add esi, SizeOfPointer - { while Cardinal(pLeft) < Cardinal(pListEnd) do begin } - cmp esi, edx - jb @@LargeRuns_CopyRemaining - - @@LargeRuns_NoRemaining: - { T := A; } - mov eax, [esp+A] - { A := B; } - mov edx, [esp+B] - mov [esp+A], edx - { B := T; } - mov [esp+B], eax - { SegmentSize := SegmentSize shl 1; } - mov eax, [esp+SegmentSize] - shl eax, 1 - mov [esp+SegmentSize], eax - { while SegmentSize < Count do begin } - mov edx, [esp+Count] - cmp eax, edx - jge @@Exit - - cmp [esp+SavedCompares], edx - jl @@SmallRuns_OuterLoop_Entry - - jmp @@LargeRuns_OuterLoop // requires SegmentSize in eax - - @@Exit: - { Result := A; } - mov eax, [esp+A] - - { end; } - mov edi, [esp + 00] - mov esi, [esp + 08] - mov ebx, [esp + 04] - - add esp, EspOffset -end; - - -procedure wbMergeSort(aList: Pointer; aCount: Integer; aCompare: TListSortCompare); - - procedure UseStackBufferLarge; - var - Buffer: array[0..Pred(4 * 1024)] of Pointer; - begin - if wbMergeSortInternal(aList, @Buffer[0], aCount, aCompare) <> aList then - Move(Buffer, aList^, aCount * SizeOf(Pointer) ); - end; - - procedure UseStackBufferSmall; - var - Buffer: array[0..Pred(1024)] of Pointer; - begin - if wbMergeSortInternal(aList, @Buffer[0], aCount, aCompare) <> aList then - Move(Buffer, aList^, aCount * SizeOf(Pointer) ); - end; - -var - Buffer: Pointer; -begin - if (aCount < 2) or (not Assigned(aList)) then - Exit; - - if aCount > 4 * 1024 then begin - GetMem(Buffer, aCount * SizeOf(Pointer)); - if wbMergeSortInternal(aList, Buffer, aCount, aCompare) <> aList then - Move(Buffer^, aList^, aCount * SizeOf(Pointer)); - FreeMem(Buffer); - end else if aCount > 1024 then - UseStackBufferLarge - else - UseStackBufferSmall; - -end; -{$ENDIF WIN32} - -{$IFDEF WIN64} -procedure InsertionSort(aList: PwbPointerArray; left, right: integer; aCompare: TListSortCompare); -var - i: Integer; - j: integer; - temp: Pointer; -begin - for i := Succ(left) to right do begin - j := i; - temp := aList[j]; - while (j > left) AND (aCompare(temp, aList[Pred(j)]) < 0) do begin - aList[j] := aList[Pred(j)]; - dec(j); - end; - aList[j] := temp; - end; -end; - -procedure MergeSort(ptrList: PwbPointerArray; left: Integer; right: Integer; aCompare: TListSortCompare; Buffer: PwbPointerArray); -var - i, j, k, mid, aCount: Integer; -begin - mid := (left + right) div 2; - if (left < mid) then begin - if (mid - left) <= MIN_SIZE then begin - InsertionSort(ptrList, left, mid, aCompare) - end - else begin - MergeSort(ptrList, left, mid, aCompare, Buffer); - end; - end; - if (succ(mid) < right) then begin - if (right - succ(mid)) <= MIN_SIZE then begin - InsertionSort(ptrList, succ(mid), right, aCompare); - end - else begin - MergeSort(ptrList, succ(mid), right, aCompare, Buffer); - end; - end; - if aCompare(ptrList[mid], ptrList[Succ(mid)]) < 0 then - exit; - aCount := succ(mid - left); - Move(ptrList[left], Buffer[0], aCount * SizeOf(Pointer)); - i := 0; - j := succ(mid); - k := left; - while (i < aCount) and (j <= right) do begin - if (aCompare(Buffer[i], ptrList[j]) <= 0) then begin - ptrList[k] := Buffer[i]; - inc(i); - end else begin - ptrList[k] := ptrList[j]; - inc(j); - end; - inc(k); - end; - if (i < aCount) then begin - Move(Buffer[i], ptrList[k], (aCount - i) * SizeOf(Pointer)); - end; -end; - -procedure wbMergeSort(aList: Pointer; aCount: Integer; aCompare: TListSortCompare); -var - Buffer: Pointer; -begin - if (aCount < 2) or (not Assigned(aList)) then - Exit; - if aCount <= MIN_SIZE then begin - InsertionSort(aList, 0, Pred(aCount), aCompare); - end - else begin - GetMem(Buffer, aCount * SizeOf(Pointer)); - MergeSort(aList, 0, Pred(aCount), aCompare, Buffer); - FreeMem(Buffer, aCount * SizeOf(Pointer)); - end; -end; -{$ENDIF WIN64} - -initialization - wbMove := @Move; -finalization -end. - diff --git a/lib/xedit/wbStreams.pas b/lib/xedit/wbStreams.pas deleted file mode 100644 index 0245e36..0000000 --- a/lib/xedit/wbStreams.pas +++ /dev/null @@ -1,617 +0,0 @@ -{******************************************************************************* - - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. - -*******************************************************************************} - -unit wbStreams; - -{$I wbDefines.inc} - -interface - -uses - SysUtils, Math, Classes, Windows, - wbInterface; - -type - TwbBaseCachedFileStreamClass = class of TwbBaseCachedFileStream; - TwbBaseCachedFileStream = class(TStream) - private - function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall; - function _AddRef: Integer; stdcall; - function _Release: Integer; stdcall; - protected - FHandle: THandle; - FOwnsHandle: Boolean; - FCache: PByte; - FCacheSize: Integer; - FPosition: Int64;//the current position in the file (relative to the beginning of the file) - FCacheStart: Int64;//the postion in the file of the start of the cache (relative to the beginning of the file) - FCacheEnd: Int64;//the postion in the file of the end of the cache (relative to the beginning of the file) - FFileName: string; - FLastError: DWORD; - procedure HandleError(const Msg: string); - procedure RaiseSystemError(const Msg: string; LastError: DWORD); overload; - procedure RaiseSystemError(const Msg: string); overload; - procedure RaiseSystemErrorFmt(const Msg: string; const Args: array of const); - function CreateHandle(FlagsAndAttributes: DWORD): THandle; virtual; abstract; - function GetFileSize: Int64; virtual; - procedure SetSize(NewSize: Longint); override; - procedure SetSize(const NewSize: Int64); override; - function FileRead(var Buffer; Count: Longword): Integer; - function FileWrite(const Buffer; Count: Longword): Integer; - function FileSeek(const Offset: Int64; Origin: TSeekOrigin): Int64; - public - constructor Create(const FileName: string); overload; - constructor Create(const FileName: string; CacheSize: Integer); overload; - constructor Create(const FileName: string; CacheSize: Integer; Handle: THandle); overload; virtual; - destructor Destroy; override; - property CacheSize: Integer read FCacheSize; - function Read(var Buffer; Count: Longint): Longint; override; - function Write(const Buffer; Count: Longint): Longint; override; - function Seek(const Offset: Int64; Origin: TSeekOrigin): Int64; override; - - function ReadSignature: TwbSignature; inline; - function ReadByte: Byte; inline; - function ReadWord: Word; inline; - function ReadCardinal: Cardinal; inline; - function ReadInt64: Int64; inline; - function ReadStringLen(Term: Boolean = True): string; inline; - function ReadStringLen16: string; inline; - function ReadStringTerm: string; inline; - - procedure WriteCardinal(aCardinal: Cardinal); inline; - procedure WriteSmallInt(aSmallInt: SmallInt); inline; - end; - - IDisableStreamReadCache = interface - ['{0B6D0004-88D1-42D5-BC0F-447911C0FC21}'] - procedure DisableStreamReadCache; - procedure EnableStreamReadCache; - end; - - TwbReadOnlyCachedFileStream = class(TwbBaseCachedFileStream, IDisableStreamReadCache) - (* This class works by filling the cache each time a call to Read is made and - FPosition is outside the existing cache. By filling the cache we mean - reading from the file into the temporary cache. Calls to Read when - FPosition is in the existing cache are then dealt with by filling the - buffer with bytes from the cache. - *) - private - FUseAlignedCache: Boolean; - FViewStart: Int64; - FViewLength: Int64; - FDisableStreamReadCacheRefCount: Integer; - procedure DisableStreamReadCache; - procedure EnableStreamReadCache; - procedure FlushCache; - protected - function CreateHandle(FlagsAndAttributes: DWORD): THandle; override; - function GetFileSize: Int64; override; - public - constructor Create(const FileName: string; CacheSize: Integer; Handle: THandle); overload; override; - property UseAlignedCache: Boolean read FUseAlignedCache write FUseAlignedCache; - function Read(var Buffer; Count: Longint): Longint; override; - procedure SetViewWindow(const ViewStart, ViewLength: Int64); - end; - - TwbWriteCachedFileStream = class(TwbBaseCachedFileStream, IDisableStreamReadCache) - (* This class works by caching calls to Write. By this we mean temporarily - storing the bytes to be written in the cache. As each call to Write is - processed the cache grows. The cache is written to file when: - 1. A call to Write is made when the cache is full. - 2. A call to Write is made and FPosition is outside the cache (this - must be as a result of a call to Seek). - 3. The class is destroyed. - - Note that data can be read from these streams but the reading is not - cached and in fact a read operation will flush the cache before - attempting to read the data. - *) - private - FFileSize: Int64; - FReadStream: TwbReadOnlyCachedFileStream; - FReadStreamCacheSize: Integer; - FReadStreamUseAlignedCache: Boolean; - procedure DisableStreamReadCache; - procedure EnableStreamReadCache; - procedure CreateReadStream; - procedure FlushCache; - protected - function CreateHandle(FlagsAndAttributes: DWORD): THandle; override; - function GetFileSize: Int64; override; - public - constructor Create(const FileName: string; CacheSize, ReadStreamCacheSize: Integer; ReadStreamUseAlignedCache: Boolean); overload; - destructor Destroy; override; - function Read(var Buffer; Count: Longint): Longint; override; - function Write(const Buffer; Count: Longint): Longint; override; - end; - - { - TwbFileStream = class(TFileStream) - function Duplicate: TwbFileStream; - end; - } - -implementation - -function GetFileSizeEx(hFile: THandle; var FileSize: Int64): BOOL; stdcall; external kernel32; -function SetFilePointerEx(hFile: THandle; DistanceToMove: Int64; lpNewFilePointer: PInt64; dwMoveMethod: DWORD): BOOL; stdcall; external kernel32; - -{ TwbBaseCachedFileStream } - -constructor TwbBaseCachedFileStream.Create(const FileName: string); -begin - Create(FileName, 0); -end; - -constructor TwbBaseCachedFileStream.Create(const FileName: string; CacheSize: Integer); -begin - Create(FileName, CacheSize, 0); -end; - -constructor TwbBaseCachedFileStream.Create(const FileName: string; CacheSize: Integer; Handle: THandle); -const - DefaultCacheSize = 16*1024; - //16kb - this was chosen empirically - don't make it too large otherwise the progress report is 'jerky' -begin - inherited Create; - FFileName := FileName; - FOwnsHandle := Handle=0; - if FOwnsHandle then begin - FHandle := CreateHandle(FILE_ATTRIBUTE_NORMAL); - end else begin - FHandle := Handle; - end; - FCacheSize := CacheSize; - if FCacheSize<=0 then begin - FCacheSize := DefaultCacheSize; - end; - GetMem(FCache, FCacheSize); -end; - -destructor TwbBaseCachedFileStream.Destroy; -begin - FreeMem(FCache); - if FOwnsHandle and (FHandle<>0) then begin - CloseHandle(FHandle); - end; - inherited; -end; - -function TwbBaseCachedFileStream.QueryInterface(const IID: TGUID; out Obj): HResult; -begin - if GetInterface(IID, Obj) then begin - Result := S_OK; - end else begin - Result := E_NOINTERFACE; - end; -end; - -function TwbBaseCachedFileStream._AddRef: Integer; -begin - Result := -1; -end; - -function TwbBaseCachedFileStream._Release: Integer; -begin - Result := -1; -end; - -procedure TwbBaseCachedFileStream.HandleError(const Msg: string); -begin - if FLastError<>0 then begin - RaiseSystemError(Msg, FLastError); - end; -end; - -procedure TwbBaseCachedFileStream.RaiseSystemError(const Msg: string; LastError: DWORD); -begin - raise EStreamError.Create(Trim(Msg+' ')+SysErrorMessage(LastError)); -end; - -procedure TwbBaseCachedFileStream.RaiseSystemError(const Msg: string); -begin - RaiseSystemError(Msg, GetLastError); -end; - -procedure TwbBaseCachedFileStream.RaiseSystemErrorFmt(const Msg: string; const Args: array of const); -begin - RaiseSystemError(Format(Msg, Args)); -end; - -function TwbBaseCachedFileStream.GetFileSize: Int64; -begin - if not GetFileSizeEx(FHandle, Result) then begin - RaiseSystemErrorFmt('GetFileSizeEx failed for %s.', [FFileName]); - end; -end; - -procedure TwbBaseCachedFileStream.SetSize(NewSize: Longint); -begin - SetSize(Int64(NewSize)); -end; - -procedure TwbBaseCachedFileStream.SetSize(const NewSize: Int64); -begin - Seek(NewSize, soBeginning); - if not Windows.SetEndOfFile(FHandle) then begin - RaiseSystemErrorFmt('SetEndOfFile for %s.', [FFileName]); - end; -end; - -function TwbBaseCachedFileStream.FileRead(var Buffer; Count: Longword): Integer; -begin - if Windows.ReadFile(FHandle, Buffer, Count, LongWord(Result), nil) then begin - FLastError := 0; - end else begin - FLastError := GetLastError; - Result := -1; - end; -end; - -function TwbBaseCachedFileStream.FileWrite(const Buffer; Count: Longword): Integer; -begin - if Windows.WriteFile(FHandle, Buffer, Count, LongWord(Result), nil) then begin - FLastError := 0; - end else begin - FLastError := GetLastError; - Result := -1; - end; -end; - -function TwbBaseCachedFileStream.FileSeek(const Offset: Int64; Origin: TSeekOrigin): Int64; -begin - if not SetFilePointerEx(FHandle, Offset, @Result, ord(Origin)) then begin - RaiseSystemErrorFmt('SetFilePointerEx failed for %s.', [FFileName]); - end; -end; - -function TwbBaseCachedFileStream.Read(var Buffer; Count: Integer): Longint; -begin - raise EAssertionFailed.Create('Cannot read from this stream'); -end; - -function TwbBaseCachedFileStream.ReadCardinal: Cardinal; -begin - ReadBuffer(Result, SizeOf(Result)); -end; - -function TwbBaseCachedFileStream.ReadInt64: Int64; -begin - ReadBuffer(Result, SizeOf(Result)); -end; - -function TwbBaseCachedFileStream.ReadSignature: TwbSignature; -begin - ReadBuffer(Result, SizeOf(Result)); -end; - -function TwbBaseCachedFileStream.ReadByte: Byte; -begin - ReadBuffer(Result, SizeOf(Result)); -end; - -function TwbBaseCachedFileStream.ReadWord: Word; -begin - ReadBuffer(Result, SizeOf(Result)); -end; - -function TwbBaseCachedFileStream.ReadStringLen(Term: Boolean = True): string; -var - Len : Byte; - s : AnsiString; -begin - ReadBuffer(Len, 1); - SetLength(s, Len); - if Len > 0 then begin - ReadBuffer(s[1], Len); - if Term then - SetLength(s, Pred(Length(s))); - end; - Result := s; -end; - -function TwbBaseCachedFileStream.ReadStringLen16: string; -var - Len : Word; - s : AnsiString; -begin - ReadBuffer(Len, 2); - SetLength(s, Len); - if Len > 0 then - ReadBuffer(s[1], Len); - Result := s; -end; - -function TwbBaseCachedFileStream.ReadStringTerm: string; -var - i: Integer; - s: AnsiString; -begin - if (FCacheEnd - FPosition >= 256) and (FCacheStart >= FPosition) then begin - s := PAnsiChar(@FCache[FPosition - FCacheStart]); - Inc(FPosition, Succ(Length(s))); - end else begin - SetLength(s, 256); - i := 0; - repeat - Inc(i); - ReadBuffer(s[i], 1); - until s[i] = #0; - SetLength(s, Pred(i)); - end; - Result := s; -end; - -function TwbBaseCachedFileStream.Write(const Buffer; Count: Integer): Longint; -begin - raise EAssertionFailed.Create('Cannot write to this stream'); -end; - -procedure TwbBaseCachedFileStream.WriteCardinal(aCardinal: Cardinal); -begin - WriteBuffer(aCardinal, SizeOf(aCardinal)); -end; - -procedure TwbBaseCachedFileStream.WriteSmallInt(aSmallInt: SmallInt); -begin - WriteBuffer(aSmallInt, SizeOf(aSmallInt)); -end; - -function TwbBaseCachedFileStream.Seek(const Offset: Int64; Origin: TSeekOrigin): Int64; -//Set FPosition to the value specified - if this has implications for the -//cache then overriden Write and Read methods must deal with those. -begin - case Origin of - soBeginning: - FPosition := Offset; - soEnd: - FPosition := GetFileSize+Offset; - soCurrent: - inc(FPosition, Offset); - end; - Result := FPosition; -end; - -{ TwbReadOnlyCachedFileStream } - -constructor TwbReadOnlyCachedFileStream.Create(const FileName: string; CacheSize: Integer; Handle: THandle); -begin - inherited; - SetViewWindow(0, inherited GetFileSize); -end; - -function TwbReadOnlyCachedFileStream.CreateHandle(FlagsAndAttributes: DWORD): THandle; -begin - Result := Windows.CreateFile( - PChar(FFileName), - GENERIC_READ, - FILE_SHARE_READ, - nil, - OPEN_EXISTING, - FlagsAndAttributes, - 0 - ); - if Result=INVALID_HANDLE_VALUE then begin - RaiseSystemErrorFmt('Cannot open %s.', [FFileName]); - end; -end; - -procedure TwbReadOnlyCachedFileStream.DisableStreamReadCache; -begin - inc(FDisableStreamReadCacheRefCount); -end; - -procedure TwbReadOnlyCachedFileStream.EnableStreamReadCache; -begin - dec(FDisableStreamReadCacheRefCount); -end; - -procedure TwbReadOnlyCachedFileStream.FlushCache; -begin - FCacheStart := 0; - FCacheEnd := 0; -end; - -function TwbReadOnlyCachedFileStream.GetFileSize: Int64; -begin - Result := FViewLength; -end; - -procedure TwbReadOnlyCachedFileStream.SetViewWindow(const ViewStart, ViewLength: Int64); -begin - if ViewStart<0 then begin - raise EAssertionFailed.Create('Invalid view window'); - end; - if (ViewStart+ViewLength)>inherited GetFileSize then begin - raise EAssertionFailed.Create('Invalid view window'); - end; - FViewStart := ViewStart; - FViewLength := ViewLength; - FPosition := 0; - FCacheStart := 0; - FCacheEnd := 0; -end; - -function TwbReadOnlyCachedFileStream.Read(var Buffer; Count: Longint): Longint; -var - NumOfBytesToCopy, NumOfBytesLeft, NumOfBytesRead: Longint; - CachePtr, BufferPtr: PByte; -begin - if (FDisableStreamReadCacheRefCount>0) or (Count > FCacheSize) then begin - FileSeek(FPosition+FViewStart, soBeginning); - Result := FileRead(Buffer, Count); - if Result=-1 then begin - Result := 0;//contract is to return number of bytes that were read - end; - inc(FPosition, Result); - end else begin - Result := 0; - NumOfBytesLeft := Count; - BufferPtr := @Buffer; - while NumOfBytesLeft>0 do begin - if (FPosition=FCacheEnd) then begin - //the current position is not available in the cache so we need to re-fill the cache - FCacheStart := FPosition; - if UseAlignedCache then begin - FCacheStart := FCacheStart - (FCacheStart mod CacheSize); - end; - FileSeek(FCacheStart+FViewStart, soBeginning); - NumOfBytesRead := FileRead(FCache^, CacheSize); - if NumOfBytesRead=-1 then begin - exit; - end; - Assert(NumOfBytesRead>=0); - FCacheEnd := FCacheStart+NumOfBytesRead; - if NumOfBytesRead=0 then begin - FLastError := ERROR_HANDLE_EOF;//must be at the end of the file - break; - end; - end; - - //read from cache to Buffer - NumOfBytesToCopy := Min(FCacheEnd-FPosition, NumOfBytesLeft); - CachePtr := FCache; - inc(CachePtr, FPosition-FCacheStart); - Move(CachePtr^, BufferPtr^, NumOfBytesToCopy); - inc(Result, NumOfBytesToCopy); - inc(FPosition, NumOfBytesToCopy); - inc(BufferPtr, NumOfBytesToCopy); - dec(NumOfBytesLeft, NumOfBytesToCopy); - end; - end; -end; - -{ TwbWriteCachedFileStream } - -constructor TwbWriteCachedFileStream.Create(const FileName: string; CacheSize, ReadStreamCacheSize: Integer; ReadStreamUseAlignedCache: Boolean); -begin - inherited Create(FileName, CacheSize); - FReadStreamCacheSize := ReadStreamCacheSize; - FReadStreamUseAlignedCache := ReadStreamUseAlignedCache; -end; - -destructor TwbWriteCachedFileStream.Destroy; -begin - FlushCache;//make sure that the final calls to Write get recorded in the file - FreeAndNil(FReadStream); - inherited; -end; - -function TwbWriteCachedFileStream.CreateHandle(FlagsAndAttributes: DWORD): THandle; -begin - Result := Windows.CreateFile( - PChar(FFileName), - GENERIC_READ or GENERIC_WRITE, - 0, - nil, - CREATE_ALWAYS, - FlagsAndAttributes, - 0 - ); - if Result=INVALID_HANDLE_VALUE then begin - RaiseSystemErrorFmt('Cannot create %s.', [FFileName]); - end; -end; - -procedure TwbWriteCachedFileStream.DisableStreamReadCache; -begin - CreateReadStream; - FReadStream.DisableStreamReadCache; -end; - -procedure TwbWriteCachedFileStream.EnableStreamReadCache; -begin - Assert(Assigned(FReadStream)); - FReadStream.EnableStreamReadCache; -end; - -function TwbWriteCachedFileStream.GetFileSize: Int64; -begin - Result := FFileSize; -end; - -procedure TwbWriteCachedFileStream.CreateReadStream; -begin - if not Assigned(FReadStream) then begin - FReadStream := TwbReadOnlyCachedFileStream.Create(FFileName, FReadStreamCacheSize, FHandle); - FReadStream.UseAlignedCache := FReadStreamUseAlignedCache; - end; -end; - -procedure TwbWriteCachedFileStream.FlushCache; -var - NumOfBytesToWrite: Longint; -begin - if Assigned(FCache) then begin - NumOfBytesToWrite := FCacheEnd-FCacheStart; - if NumOfBytesToWrite>0 then begin - FileSeek(FCacheStart, soBeginning); - if FileWrite(FCache^, NumOfBytesToWrite)<>NumOfBytesToWrite then begin - RaiseSystemErrorFmt('FileWrite failed for %s.', [FFileName]); - end; - if Assigned(FReadStream) then begin - FReadStream.FlushCache; - end; - end; - FCacheStart := FPosition; - FCacheEnd := FPosition; - end; -end; - -function TwbWriteCachedFileStream.Read(var Buffer; Count: Integer): Longint; -begin - FlushCache; - CreateReadStream; - Assert(FReadStream.FViewStart=0); - if FReadStream.FViewLength<>FFileSize then begin - FReadStream.SetViewWindow(0, FFileSize); - end; - FReadStream.Position := FPosition; - Result := FReadStream.Read(Buffer, Count); - inc(FPosition, Result); -end; - -function TwbWriteCachedFileStream.Write(const Buffer; Count: Longint): Longint; -var - NumOfBytesToCopy, NumOfBytesLeft: Longint; - CachePtr, BufferPtr: PByte; -begin - Result := 0; - NumOfBytesLeft := Count; - BufferPtr := @Buffer; - while NumOfBytesLeft>0 do begin - if ((FPositionFCacheEnd))//the current position is outside the cache - or (FPosition-FCacheStart=FCacheSize)//the cache is full - then begin - FlushCache; - Assert(FCacheStart=FPosition); - end; - - //write from Buffer to the cache - NumOfBytesToCopy := Min(FCacheSize-(FPosition-FCacheStart), NumOfBytesLeft); - CachePtr := FCache; - inc(CachePtr, FPosition-FCacheStart); - Move(BufferPtr^, CachePtr^, NumOfBytesToCopy); - inc(Result, NumOfBytesToCopy); - inc(FPosition, NumOfBytesToCopy); - FCacheEnd := Max(FCacheEnd, FPosition); - inc(BufferPtr, NumOfBytesToCopy); - dec(NumOfBytesLeft, NumOfBytesToCopy); - end; - FFileSize := Max(FFileSize, FPosition); -end; - -initialization -finalization -end. diff --git a/lib/xedit/zlib/ZLibEx.inc b/lib/xedit/zlib/ZLibEx.inc deleted file mode 100644 index da56252..0000000 --- a/lib/xedit/zlib/ZLibEx.inc +++ /dev/null @@ -1,182 +0,0 @@ -{************************************************************************************************* -* ZLibEx.inc * -* copyright (c) 2006-2013 base2 technologies * -* * -* version information for delphi/c++ builder * -* * -* revision history * -* 2013.05.23 updated for delphi xe3 (2013) * -* 2012.05.01 updated for delphi xe2 (2012) * -* 2010.09.18 updated for delphi xe (2011) * -* 2010.01.27 updated for delphi 2010 * -* 2009.04.11 updated to use CONDITIONALEXPRESSIONS and CompilerVersion * -* 2009.01.28 updated for delphi 2009 * -* 2007.10.01 updated for delphi 2007 * -* 2005.11.29 created * -* * -* acknowledgments * -* iztok kacin * -* 2009.04.11 CONDITIONALEXPRESSIONS and CompilerVersion changes * -*************************************************************************************************} - -{$ifndef CONDITIONALEXPRESSIONS} - - {** delphi ************************************************************************************} - - {$ifdef VER80} // delphi 1 - {$define Delphi} - - {$define Version1} - {$endif} - - {$ifdef VER90} // delphi 2 - {$define Delphi} - - {$define Version2} - {$endif} - - {$ifdef VER100} // delphi 3 - {$define Delphi} - - {$define Version3} - {$endif} - - {$ifdef VER120} // delphi 4 - {$define Delphi} - - {$define Version4} - {$endif} - - {** c++ builder *******************************************************************************} - - {$ifdef VER93} // c++ builder 1 - {$define CBuilder} - - {$define Version1} - {$endif} - - {$ifdef VER110} // c++ builder 3 - {$define CBuilder} - - {$define Version3} - {$endif} - - {$ifdef VER125} // c++ builder 4 - {$define CBuilder} - - {$define Version4} - {$endif} - - {** delphi/c++ builder (common) ***************************************************************} - - {$ifdef VER130} // delphi/c++ builder 5 - {$ifdef BCB} - {$define CBuilder} - {$ELSE} - {$define Delphi} - {$endif} - - {$define Version5} - - {$define Version5Plus} - {$endif} - -{$ELSE} - - {$ifdef BCB} - {$define CBuilder} - {$ELSE} - {$define Delphi} - {$endif} - - {$define Version5Plus} - - {$if CompilerVersion >= 14.0} // delphi 6 - {$ifdef VER140} - {$define Version6} - {$endif} - - {$define Version6Plus} - {$ifend} - - {$if CompilerVersion >= 15.0} // delphi 7 - {$ifdef VER150} - {$define Version7} - {$endif} - - {$define Version7Plus} - {$ifend} - - {$if CompilerVersion >= 16.0} // delphi 8 (.net) - {$ifdef VER160} - {$define Version8} - {$endif} - - {$define Version8Plus} - {$ifend} - - {$if CompilerVersion >= 17.0} // delphi 2005 - {$ifdef VER170} - {$define Version2005} - {$endif} - - {$define Version2005Plus} - {$ifend} - - {$if CompilerVersion >= 18.0} // bds 2006 - {$ifdef VER180} - {$define Version2006} - {$endif} - - {$define Version2006Plus} - {$ifend} - - {$if CompilerVersion >= 18.5} // bds 2007 - {$ifdef VER185} - {$define Version2007} - {$endif} - - {$define Version2007Plus} - {$ifend} - - {$if CompilerVersion >= 20.0} // bds 2009 - {$ifdef VER200} - {$define Version2009} - {$endif} - - {$define Version2009Plus} - {$ifend} - - {$if CompilerVersion >= 21.0} // bds 2010 - {$ifdef VER210} - {$define Version2010} - {$endif} - - {$define Version2010Plus} - {$ifend} - - {$if CompilerVersion >= 22.0} // bds xe (2011) - {$ifdef VER220} - {$define Version2011} - {$endif} - - {$define Version2011Plus} - {$ifend} - - {$if CompilerVersion >= 23.0} // bds xe2 (2012) - {$ifdef VER230} - {$define Version2012} - {$endif} - - {$define Version2012Plus} - {$ifend} - - {$if CompilerVersion >= 24.0} // bds xe3 (2013) - {$ifdef VER240} - {$define Version2013} - {$endif} - - {$define Version2013Plus} - {$ifend} - -{$endif} diff --git a/lib/xedit/zlib/ZLibExApi.pas b/lib/xedit/zlib/ZLibExApi.pas deleted file mode 100644 index c4f5092..0000000 --- a/lib/xedit/zlib/ZLibExApi.pas +++ /dev/null @@ -1,338 +0,0 @@ -{************************************************************************************************* -* ZLibExApi.pas * -* * -* copyright (c) 2000-2013 base2 technologies * -* copyright (c) 1995-2002 Borland Software Corporation * -* * -* revision history * -* 2013.05.23 updated to zlib version 1.2.8 * -* 2012.05.21 updated for win64 (delphi xe2) * -* moved win32 obj files to win32 subfolder * -* changed win32 obj options to exclude the underscore * -* 2012.05.07 updated to zlib version 1.2.7 * -* 2012.03.05 udpated to zlib version 1.2.6 * -* 2010.04.20 updated to zlib version 1.2.5 * -* 2010.04.15 updated to zlib version 1.2.4 * -* 2005.07.25 updated to zlib version 1.2.3 * -* 2005.01.11 updated to zlib version 1.2.2 * -* 2004.01.06 updated to zlib version 1.2.1 * -* 2002.03.15 updated to zlib version 1.1.4 * -* * -* acknowledgments * -* burak kalayci * -* 2002.03.15 informing me about the zlib 1.1.4 update * -* 2004.01.06 informing me about the zlib 1.2.1 update * -* * -* vicente sanchez-alarcos * -* 2005.01.11 informing me about the zlib 1.2.2 update * -* * -* mathijs van veluw * -* 2005.07.25 informing me about the zlib 1.2.3 update * -* * -* tommi prami * -* 2012.03.05 informing me about the zlib 1.2.6 update * -* * -* marian pascalau * -* 2012.05.21 providing the win64 obj files and your win64 modifications * -* * -* roman ganz * -* 2013.05.23 informing me about the zlib 1.2.8 update * -*************************************************************************************************} - -unit ZLibExApi; - -interface - -{$I ZLibEx.inc} - -const - {** version ids *******************************************************************************} - - ZLIB_VERSION: PAnsiChar = '1.2.8'; - - ZLIB_VERNUM = $1280; - - ZLIB_VER_MAJOR = 1; - ZLIB_VER_MINOR = 2; - ZLIB_VER_REVISION = 8; - ZLIB_VER_SUBREVISION = 0; - - {** compression methods ***********************************************************************} - - Z_DEFLATED = 8; - - {** information flags *************************************************************************} - - Z_INFO_FLAG_SIZE = $1; - Z_INFO_FLAG_CRC = $2; - Z_INFO_FLAG_ADLER = $4; - - Z_INFO_NONE = 0; - Z_INFO_DEFAULT = Z_INFO_FLAG_SIZE or Z_INFO_FLAG_CRC; - - {** flush constants ***************************************************************************} - - Z_NO_FLUSH = 0; - Z_PARTIAL_FLUSH = 1; - Z_SYNC_FLUSH = 2; - Z_FULL_FLUSH = 3; - Z_FINISH = 4; - Z_BLOCK = 5; - Z_TREES = 6; - - {** return codes ******************************************************************************} - - Z_OK = 0; - Z_STREAM_END = 1; - Z_NEED_DICT = 2; - Z_ERRNO = (-1); - Z_STREAM_ERROR = (-2); - Z_DATA_ERROR = (-3); - Z_MEM_ERROR = (-4); - Z_BUF_ERROR = (-5); - Z_VERSION_ERROR = (-6); - - {** compression levels ************************************************************************} - - Z_NO_COMPRESSION = 0; - Z_BEST_SPEED = 1; - Z_BEST_COMPRESSION = 9; - Z_DEFAULT_COMPRESSION = (-1); - - {** compression strategies ********************************************************************} - - Z_FILTERED = 1; - Z_HUFFMAN_ONLY = 2; - Z_RLE = 3; - Z_FIXED = 4; - Z_DEFAULT_STRATEGY = 0; - - {** data types ********************************************************************************} - - Z_BINARY = 0; - Z_TEXT = 1; - Z_ASCII = Z_TEXT; - Z_UNKNOWN = 2; - - {** return code messages **********************************************************************} - - z_errmsg: Array [0..9] of String = ( - 'Need dictionary', // Z_NEED_DICT (2) - 'Stream end', // Z_STREAM_END (1) - 'OK', // Z_OK (0) - 'File error', // Z_ERRNO (-1) - 'Stream error', // Z_STREAM_ERROR (-2) - 'Data error', // Z_DATA_ERROR (-3) - 'Insufficient memory', // Z_MEM_ERROR (-4) - 'Buffer error', // Z_BUF_ERROR (-5) - 'Incompatible version', // Z_VERSION_ERROR (-6) - '' - ); - -type - TZAlloc = function (opaque: Pointer; items, size: Integer): Pointer; cdecl; - TZFree = procedure (opaque, block: Pointer); cdecl; - - {** TZStreamRec *******************************************************************************} - - TZStreamRec = packed record - next_in : PByte; // next input byte - avail_in : Cardinal; // number of bytes available at next_in - total_in : Longword; // total nb of input bytes read so far - - next_out : PByte; // next output byte should be put here - avail_out: Cardinal; // remaining free space at next_out - total_out: Longword; // total nb of bytes output so far - - msg : PAnsiChar; // last error message, NULL if no error - state : Pointer; // not visible by applications - - zalloc : TZAlloc; // used to allocate the internal state - zfree : TZFree; // used to free the internal state - opaque : Pointer; // private data object passed to zalloc and zfree - - data_type: Integer; // best guess about the data type: ascii or binary - adler : Longword; // adler32 value of the uncompressed data - reserved : Longword; // reserved for future use - end; - -{** macros **************************************************************************************} - -function deflateInit(var strm: TZStreamRec; level: Integer): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -function deflateInit2(var strm: TZStreamRec; level, method, windowBits, - memLevel, strategy: Integer): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -function inflateInit(var strm: TZStreamRec): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -function inflateInit2(var strm: TZStreamRec; windowBits: Integer): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -{** external routines ***************************************************************************} - -function deflateInit_(var strm: TZStreamRec; level: Integer; - version: PAnsiChar; recsize: Integer): Integer; - -function deflateInit2_(var strm: TZStreamRec; level, method, windowBits, - memLevel, strategy: Integer; version: PAnsiChar; recsize: Integer): Integer; - -function deflate(var strm: TZStreamRec; flush: Integer): Integer; - -function deflateEnd(var strm: TZStreamRec): Integer; - -function deflateReset(var strm: TZStreamRec): Integer; - -function inflateInit_(var strm: TZStreamRec; version: PAnsiChar; - recsize: Integer): Integer; - -function inflateInit2_(var strm: TZStreamRec; windowBits: Integer; - version: PAnsiChar; recsize: Integer): Integer; - -function inflate(var strm: TZStreamRec; flush: Integer): Integer; - -function inflateEnd(var strm: TZStreamRec): Integer; - -function inflateReset(var strm: TZStreamRec): Integer; - -function adler32(adler: Longint; const buf; len: Integer): Longint; - -function crc32(crc: Longint; const buf; len: Integer): Longint; - -implementation - -{************************************************************************************************* -* link zlib code * -* * -* bcc32 flags * -* -c -O2 -Ve -X -pr -a8 -b -d -k- -vi -tWM -u- * -* * -* note: do not reorder the following -- doing so will result in external * -* functions being undefined * -*************************************************************************************************} - -{$ifdef WIN64} -{$L win64\deflate.obj} -{$L win64\inflate.obj} -{$L win64\inftrees.obj} -{$L win64\infback.obj} -{$L win64\inffast.obj} -{$L win64\trees.obj} -{$L win64\compress.obj} -{$L win64\adler32.obj} -{$L win64\crc32.obj} -{$else} -{$L win32\deflate.obj} -{$L win32\inflate.obj} -{$L win32\inftrees.obj} -{$L win32\infback.obj} -{$L win32\inffast.obj} -{$L win32\trees.obj} -{$L win32\compress.obj} -{$L win32\adler32.obj} -{$L win32\crc32.obj} -{$endif} - -{** macros **************************************************************************************} - -function deflateInit(var strm: TZStreamRec; level: Integer): Integer; -begin - result := deflateInit_(strm, level, ZLIB_VERSION, SizeOf(TZStreamRec)); -end; - -function deflateInit2(var strm: TZStreamRec; level, method, windowBits, - memLevel, strategy: Integer): Integer; -begin - result := deflateInit2_(strm, level, method, windowBits, - memLevel, strategy, ZLIB_VERSION, SizeOf(TZStreamRec)); -end; - -function inflateInit(var strm: TZStreamRec): Integer; -begin - result := inflateInit_(strm, ZLIB_VERSION, SizeOf(TZStreamRec)); -end; - -function inflateInit2(var strm: TZStreamRec; windowBits: Integer): Integer; -begin - result := inflateInit2_(strm, windowBits, ZLIB_VERSION, - SizeOf(TZStreamRec)); -end; - -{** external routines ***************************************************************************} - -function deflateInit_(var strm: TZStreamRec; level: Integer; - version: PAnsiChar; recsize: Integer): Integer; - external; - -function deflateInit2_(var strm: TZStreamRec; level, method, windowBits, - memLevel, strategy: Integer; version: PAnsiChar; recsize: Integer): Integer; - external; - -function deflate(var strm: TZStreamRec; flush: Integer): Integer; - external; - -function deflateEnd(var strm: TZStreamRec): Integer; - external; - -function deflateReset(var strm: TZStreamRec): Integer; - external; - -function inflateInit_(var strm: TZStreamRec; version: PAnsiChar; - recsize: Integer): Integer; - external; - -function inflateInit2_(var strm: TZStreamRec; windowBits: Integer; - version: PAnsiChar; recsize: Integer): Integer; - external; - -function inflate(var strm: TZStreamRec; flush: Integer): Integer; - external; - -function inflateEnd(var strm: TZStreamRec): Integer; - external; - -function inflateReset(var strm: TZStreamRec): Integer; - external; - -function adler32(adler: Longint; const buf; len: Integer): Longint; - external; - -function crc32(crc: Longint; const buf; len: Integer): Longint; - external; - -{** zlib function implementations ***************************************************************} - -function zcalloc(opaque: Pointer; items, size: Integer): Pointer; -begin - GetMem(result,items * size); -end; - -procedure zcfree(opaque, block: Pointer); -begin - FreeMem(block); -end; - -{** c function implementations ******************************************************************} - -function memset(p: Pointer; b: Byte; count: Integer): Pointer; cdecl; -begin - FillChar(p^, count, b); - - result := p; -end; - -procedure memcpy(dest, source: Pointer; count: Integer); cdecl; -begin - Move(source^, dest^, count); -end; - -{$ifndef WIN64} -procedure _llmod; -asm - jmp System.@_llmod; -end; -{$endif} - -end. diff --git a/lib/xedit/zlib/win32/adler32.obj b/lib/xedit/zlib/win32/adler32.obj deleted file mode 100644 index c786a469f602e80bd82f50ccc918aa3b24c22e3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1131 zcmZ{jO-xfk5Xa|r+t&va`ZQ7Fjf;tqgcwV>Xrc%OJt%~JAVF;Ss0t~PK;FfK#K*G< z?Rw}%qb4SvOo#_Pq9;lf#KcPtSU4#jY(+pYk!qpq>}&Tx)kAk@f3q{4|IWNyDpcJJ z4fI~_=??`*TqkP#VB!D(>}wqE54Hq*MyeZYYO3pN>*`?Q5J0;0_AmX|X_z1Y8Mt>8 zYyq$PlGobU+T=#NslnS|<%`_Z(%$N8vj)z3JOqDm-wu;kiDUuO0Kl9btmFSjs+%+AQNlMRcA{vqPRlbv)&Wh&^zSFt*N3|l6 zQBX$sr&d0Nc_H%~S7TQlJ-J%uN=6ToH;UShny z`y6}V9Dj=m^)+r!bs;X~BRSW6^rA$T&`3u87P4F*L=dYWHbG=T?1CtQlnGKUNQEE{ zK`I5Q62!@gF{_?)hOaTk3PKX5koS936_ptEcq_c-yuE;m@O7NyliXNSQA(AWeLC7K zk<>pWq01^j{x`u~L% z+t(eq(v^tCVm|uKc$M||J0iYp#JyvTIY3j4F$G2)tClgvc*8PJ@dXCqx;X=Gh58(6 z1Q2m65ubx1=-#2(!c5X_SJL_H2c0$l9*1R-`m)r$Loa0GX;uHk=QjRTJz`Grin+#l zS~7FqX6{QhbL9Kp*(*8aSD3^HeVy-mo=5SMS=_8S<|wSQvwKE?7=AljG)3bN+S}+N iO{7(PEUp?gGtI#?C7sVR#;?L78$7w|mw@6Y0)GInHQf0C diff --git a/lib/xedit/zlib/win32/compress.obj b/lib/xedit/zlib/win32/compress.obj deleted file mode 100644 index 0b92062874a8739eee236a6d12dcd9b4cb1a70c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 520 zcmZn=WZI}RNDXD2Wi6yC?d6^~g3>+{n z12>H2nwP@BFhP)kfsxAr<_#mD7Z@f80L3`rVhcb*K)*5a!G)aiOY>5;0L2$vWME`q z2?_Cg1cCNB2eMx-;5>V zKrt}4^>!)LL{Xqp!S2u-K$%W4sM7Ak@o~}JPh$^pFiZftFSt9FBRK2-i$I_YqGJ!S zFmzw&K5_6B5A%hCFZm9>kYv8de4+UeZ}*|Y40A;po;ZduE%6CsT#_8dw4^AEc}ZUw WGs6NN24J`w>KW--fE@|sFaQAc`n6U7 diff --git a/lib/xedit/zlib/win32/crc32.obj b/lib/xedit/zlib/win32/crc32.obj deleted file mode 100644 index 0485c00b403e797c87c891286050380f864f7026..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10771 zcmeHt2T)T{w{Cy{2_2LsMFa!^X`%r^N{}uH2uP6{I)o-AfJh4<5NRSsREmIrN++?hA;&D_jnXJxH*zO&BW>s#l{Iy;;JKo<;m zg<0A^w3oRiVGoF91poldx4j%3H6869^4%5_IDjt zMnL#2L4Y3(@i$3a-69Rd!m~>yk|gBDDe?fs7}-pc8Edb}Y^X*opOWMbA_#T8T4n>) z^Z%+Axe7w{oW+h*J3T#(?(^gP6X|~rUlrA(?Y~00NDJ!+oksUf|IE)G_B;E3byeD^ z9uf@YFARnMJo12#F_Mn7vNGgI3=p-C+UQsZ{l$)0Ih!Ciw(Ce#&;K0%|MUDISNYD8jE@nyb9_o-3h<%Ue{VsNtH3irpl|)Z%-B7w z4Jl!h&p2&*mVAHmw&N$qKP4f6l!X*~sQri)z-wl}5}7gi5}h&m*Q>_lD@(@Ye@g@K z%<1wUKCgf}<~b<#C`gPZ<^Ki7T6xrlDhW|$uVWr`mds3~gx&Zj3d|zE0spYzDv1T8 zHT+lCeReD<=gc2OUC}e65T%u z^WOyh2UBWDSR}G=|4G^ZC1d|o_@zB83XA&Ku?p(=#u2e_mh};fXVXbBjQaTZ|6dj? z{9(Z`1r~+*Lok`X=n+4rUl=k!av9L@H)K1Ibo1Omb^L>RCa7;Rr>G6oEb1Jpn>a+e z&%{w_B71FJ#r~48#QWBcki*Tl$-|7KK&gXJCUg<=XNWQ*$U}fX1#%zY$9M(;$ZZ9X0YD_D2_pNM@5Wzm#t&Gs z;lns}P@D5GL(t{E{@_8y)Gr8(6L2bt$`Z&KCUZS|AIR?CQ98Evsj;1L*EJojeXI80B^fgVZ z95jFU0-wC*Z#kzvL_aZOt~mVugA`s!9zZY*H^hBpv%|KbcWN#PbXDJfk=8iGSlCjZ zT~B@m6iaDSg{SKgT&1mi65=Jvtm|U-p2x03QQWCE89Ea{np`X3wLuv31N-oUAMB5s}N7r{5?P6LT?ZpQkb85(0vKwSLAXsPi z;YIi}u@yDNxL$U}YV!#C8VLoJ+h8EHbKQ2%WX`#G zJ<(G-sMS^DX|-Md1*B7R?ugfA$fC==Gz8rMg(huN0~sfwZQ1{LmG9qQC%F{+^?Q>@kCBt{LI!G z@j$5I*8-x#3!z!Zv1|c~^>$-C{iHzUWJycLe46c;KCi+PF4 zw$j$*CDL_r%~4t;tdooXEd!)yY5)K#&BYlBgIw!05*Gt@!yVLj5RYSuEbjNFL-j%N z_>bC6nBjQh`e8qQ=L?-a`h#9*89GrMnLWgv`NWU~qr)VCHyZWc348`!w==<&Nt|Cs z%i_?P-04wBO7l#vNRAS~%jrY$imZM}iIo*%nHvs2ol}O6WiwcOej^x__JuX)DW67F zksYF>_3Z+2a|OFi6hsm_9jm&h-j!Kdeb3QQyE5SJ<$CNLQ06XubKOFe?<$y@)*;dt*WrLlB|lvfO&rt<#`w z-&QT6+heY7=q*u#8Kr*EhFU0W^@+GXria^jnk=66xk?j50+J~37K4{-qwmg@)7@#h zlvI>XGnk%m4h$Hu)RM-jqhN=gpNtj|##T*@tnl3Y3FU;?42JX+gG?NOxn!VsR3u^U!V>QBxXoUWDK{zh{3R0G= z(-MUEae;Ymh_V2;nvL#MCurUCCO8I3uZP;6Y%j00VUABiQn2HSx%~r&ka%PhbxKyC zadYKO$D-mpnMehil1%=-Lo_(Hzl=%WYTbqbzN7J38Sn9w0poX@#bTRW0Q#-N8{QEP zMNDeqAQ@E4;)&g8Kw(rASM!B}* zqh4HA`x2rW3kwi}Q!aIPn7uL4nBQ?*@9TCIc>$(`%Q+=VN+>r+q`s_s=^%%2EI+V4 z@#vU1)a+goer!?oLJ6Ex6($$;zCw`u>Lx4ojcXdByuJu&>Y4>_tzE3UAq1%rjHt4* zzl%HUXIx$w89)ylBt+rnby(8NX$2B$KYHiBj)OKuX;=wRP{ZXebSbk+M>8;7QO(qM zrYJEEZ9fb$iRg#vUhI~Ou-*~Kd|kv)J(JG*jtgM?)k0eT=miXhn=}d6xMhm&`TtCqh`{OQ^vDZpMNj zF-K+QrJ$npLapW`C$5wNVbS=O`R4wuyaeob7~!~GV0{_ive10~2wOz2jEolwtx8dD z5X5@#v-Z0xXe_G+BaR=S-5qCkEJC|w!A3s=^ix%ZBmkq?^eO8N&oLw^3^PtdXV5RKo6tENTmT!T zPJ(E}vuPAHEor^;g}62QmUws(Z!U`P*z$g$mE?M9w{`(D_nu=H?aKLa>jukd=H9ut zLY2%Zy1q>3EpD+2NS&MyPON9sTMA~M*U*#0T}`@~_^eN%VV_q1)=xEM+Nc<%d-CnK z91X}7&DgCWUXNeNLOQ2zkd<&;k7_fOt{zX5`sO}*ZI+B#Ci$zoU{O-ZS6En zUd+z0W7T#H_tx=Ci-SWW1;0~*>%22xKTeB1k5&8bMWZ`G{wX>~_5}TYF!$YObr!mX zvzdCCSzQ|C8&sOV?y9JF2u7-@UHc66HDgo}UDj6Rd5XGi;Ie7#OfF-h)a-8xo~XP3 zw0+;G>7D$&#q%Ksdv{Li7vMSP*}7t88f%kKD-m21xRUn%K>m*jMW)*1Phe%{Z1^TTe(c5P` zwi*w4|GmZ1_1i}Mx#QlE;iGJL#z_g4$>~+53x{06lfPBFvJd>rEcdlm0o!3n%$AU1 z)CRMu#^!SthjB;^V*q7*=L5ci7E)dDQBH;0V)+b+_>IS6!i^Q$5-$9K8eg zO)-Fb!Cy`dF@8c#jZJ!^t+Q4m(n9mnR+lRy($Ol!@%To|X z9?24_V$V3QtfszFdYk^<*db%<8-H4N`26$z-sYU4($MVmb8@fpf(~B`dZ9DVQ6gUG zG)cdFJiMJHbt5i;+UCwv>jnBmSJY6_kJsVx(|f9@NNr#oTA(L3)*%bo#$Xn?T)`VY zJT((xJdhe?|JE>Co`d}f{loE?T7$DZGee?0aUrJuuEh=cl)+{-n-+F{MQ++Z?L{y=oL6~%apZ6+uHTa*1u(d)O`a0 z9G#o%Q6ItYewL$IOfz6f*ER^UGdAv*8{}}W*RRxc$LoV0JIuFukv$>9)wfOP%uc#( z$sp$D?=#t(<(P6B97+`u&*v~5`s{yD{n-9!uC%Dv`8MdGzmV79XYa7mG*%8~@!xd? z%Gp?sC&I*`3#v)JZ$9w#RP<>EgOtjz~Ekx%VM*99lFq0 zv2@%QDyAdCaLzYV0!PGlE_$X?>+ZPjX|srTvTiuHIKhc@5- zn0s~-S1+OA%>L4t+*|lZlh%e0K~lF*D*RyDWJTTnRj#u8K`(NY-38L|kTE`}U)E}= z%wWM%<<$7@*22^ z6`=;2bi^D{N{VQ+>)hQf-wxovmd>0VAJ{6E$%D_}yVJK5C{d=>-cEKrQs@MA zY+x`Cdz~xt9pW$gZM;@frY^=1a}kZ_;zI zN%!rg><%XQf!S_ZEpJ<>Cp*a6Af7d)Mqm(Y*4>9Zry_%e%rTGZ{1$o{KjWF66}Ns6 z)nMk769^~__jl@5!FAqL=v1YUQQJh;_tl<*>Zf_?v@nJZPHI=(yjH`Px27S&Q8!*ZOE)-? zka*ExEObO5X0!NMJw>oBTpyHxl)TrDXI5WUrr?V}HU*^2e>wNd^1-qBs&=N5$>t@h zNVuAv(%8E}RL@X}Y^WSGY{E*Y)3Z7*AY|g_r!KDv9&?(?yoDv+^V<nk5= z)93R_RB~x4jocPD_x#=YYkKuWYO{hP15Ii&H1J z@ucw7F*&$Z@NI23_-IA7LJ1e9#vXgjE`8q_LmMJTqkGT6Gw(aN7q=h74uazy`+l4! zv(&ezg5wVv73~v1^t%e4d>?gPnXJccp-XR^eIDMTSQ@?q9Mc@3k3KG>LA&2T7ayut zWx}VM`X)X!AE;cLgnv<=v-F>tpdWfatY|KTm-=8x0LXvD8HTrE?bt5W?4a*gcL@wN zroE_dDP+7tUY~7484K#6!&g<(t_n(eg*-8H(Pi$i<9T1}B(4}R15GBI_Myrg;cH$W zXA-Z34S~(_%&|_1 zYd;+g+5SDI>!?>{XC{v}9L#S9_>DD5E$Yk_LKP>|a0SC%9-|XGzi+#)x?T6gAC)@C zYE0SIW7UA-zA_X%U*FN_+RW02^chh4+!7{-zH6mrV(O#gi!pUUU*_|Qu5NG|0}t9Q z=T|wB^=(}9 z=IaqeIdEEt)pv#s`Nf`=<++1G6upO=Qm~sv@e;!jZ7TTmH4UIl_%U^M%CAO{~u-CQT zwyj7UpP0xe<_)KY%1vUr^yjwj4L3P&zHK&jRz_3JYE?n*Owx-@mD6zPLMU{8L4m=x zbGGZ9#m;jk(w>Ry8m_HD{dUz)o1KssE_;pS-g8-m4A3FcnrJmC_{rHCOelpUyBif+ zt6FHUh}Bp;v#fRlVsNKLXzY;mReUz;0ilfNr30qohy9k2zgzw*a*tG+S754=?+g&- zht$r|lmOFnX>B@@i}k_hA61H#(baOvJsU}U`E|UNK4fOSj&^$PQq1Vc*yh-xs>^Kk z{>3SzXGAO8=U)v%54wl8 zJ(p%N5Jx}q^DYo+e3POYQ{*gUhqYzf({|O=Q}RSimkqn=;3q6*ROV=%WG59iN}9`z z2u<1DnpHz#Qs~pwmXLvEPhPG9aoP0guZy6xHdjJ49xul`jAh1X=aidNLcsKAdVn_YH zMNy1CG`;sDJ{~lTY0^GiC&qu-!S{ba>(imjLiMtd;)zc(xrcNxEQUsS0j9tm?@_yT z=rf5joQW)Y`8;^6xDZ;9L3l}-XuaH_k?(aNgqotj3@cQ5yWD*@iet~aIK%lJes z)@iB1S6R5_JmxeY+dWp)RcqeHK0EG?Qca@UdvByMwQ<}j{>jw2*V%KLe=|fSG+r(t z1l_7ym-F2YI&~vzwL-hO9-9$FZ*2tWQ?9~7)iC>l=~K7`>c-Gi2SRE*ICbN#3sHU<_mMpgk%K{@X!MFHqb$7A=R5K?o% zv>$x=E>_NgETt@;BR*$QrfA@jX!Egcso+9+jWYIU4hvE|23!U2(-M4-HDdktJ5)nt z(GlSysT}kRBB)iz1LpDrvWVWeW7NELPb;B1$dTY}8@evNvb=qAa*Syk$EJh~^yexf z;~|GxDb!7s&BlSnMUFQWkePS*GfQZ|=)*pyvi?|`bt`?19XNvrUiq^hhT-Y9158V97;F8==Zz$hwNY=a5BpYJUJDwc5>5ojLRdF-E~zzOuea^UPhPeCm8%3(AQhG3ERvHewA5Wz ze@w_ZnAjeWA0i$<3NLYQeodLJbhc9mPO;s!PACaLY0fhT8D1`&~(IsF}v4Rb*{jB?{%Nhy~juF8#j_&C0P>Y?PMqt@JExCYta9L#@OU_2T@_rW(;?i__3rYASLI<$Loi^=V#wgW%=08N0GwCW$q3>CuJnepivf9sE zN-KWL3GF^+D|^1Y=4B6OWL_XrFLMVN>WlfYZ$9)Nf2kfCHxn3kr&j+lJ%}x2 z2zDtb+^--|l{YmQnEUBb&!=N}vqXhQsM-@RxkG~IVe+awItK2B`0>C+`X0IKw%iR^ zc^JsvgH_p1?7friYKNiYTilp~L(3N@eu_rtdDjFjTtA;SYaaU@qlK zxxxLq7In|`GG_}ly0S7gsW!^hRqp;$ixljDe!ixr!f58Js=X|F8}*dOc+IUEf#MQAMhE?nLDk;m=!#!wECWM-BRQ?g|(Nu zg-xlX$HEP+@cBKTy2Z+&pI>|n@yoZWEmuzP?qBPjuPp`BQ?3i?$o*X6WBl=_V&ioYu$ICu_&Wt0J(l0^o4&pv>s9x7&!|1*>lB6Q-_L&xL!Y zL_>QyRJ1Xs_Xj%DZvE~UjeOJ2Oib(7D=+?()SdIO?@>=5E%WAp8nxf&7?0aS?V}e4 z$s5E|%F|VnJ&q91#8f3xSFdoUzg2pb;b8nejsM%$^ZD@ZoaWyB?9kGoS90glUmphL zWumggRD>O}el>!cx+Ykc_YA1Kwm={TTvWNeQB8kyw~ z8)?SS7S3C-95FLB9F;m?9Bug4{s}vWe9ZVm`jSO#ZZThD#ycnA;QIp4gR<{|A>|@0 zcS^lJuzV=(xm>gv!SPn+yJUgCNkCzpGBkHzq$^MU_I7^A@w+#z8L!b@zStTn&Xrn~ zqSm^|&v8|sr|GI0D-|lW8DSMDN0TNTze^*lmQB6UFRF%=SJKUd_?i~(d1RY~^;B!- z^|ilcfVA6yv@fdJ+3_9tBZ>uG{xb=dVJb`5xOUmyX67|cuA#f;%KBrFe!N%9yaSHZ z9MG9)tKV{)oSmOT$e7tP-8bMg%^?;_9Ud~}oLBv@?=$zP{iAblQK|n!(CyEIUP5W5 zVcz1*9IVO(b-$l*V6!g_5ryCQCaG5R@O=OUYxd<{D_7!3{P=)I!5Llk1b~$^kaNxW zVM7;fzOktIHRFk6%#-0+`T3fmBz+5n%oXKtOH48M%n)Bx)+Xuq4clBc#P;*FGIF{s z_@zV_vrYBGw7q`y?t)UsRf-;a9JO=Y$id!C5U3N&N$2Pm77fd7Jl5nShw_Cm?Ib-b z)*|k`Ja48bP^@ew&68Xkm$x^1K48f0!>3}#)-dV?s!rP|>s;@VWp4JmosxQUUDml< z!}Z+;ql;iH!uNq;gXeXzvY5K*r1N_1z(s1LQ(U$av95t zPiyA23MOBNtu+loD^7oKj>8l#!Ka>RfInVaUGYv#jJ&dzJ(g^EP#L*&-$vd{TD~X= zjJzo0xlA9^0Yb~a^=MI9D4;xw>0s9uku2Z6t8#pu=9Zp2C*>|K)OH0noM=O+{f+@A-U~*r%DMnF z@K{oFAa+jro0R?iB>ss5yDYbCAT_Bu&_>oVSz6->VFiJWcpl!(DjXC!t$P&1%-Fl& z_lybuS@c6|u^cC}MtEU>z+{h;ziluX)5D>%lTW^VFHH+J`PVtpHIGYgmZ&pZ4+QA_ zq#E3ev!78DN^sbR5)UMU456vK*NucKr@m)Rv{fJUtkSCIJ>}eBfaU4BQr~)M*cv4a znNEN9;)aC8iGh%D!;5Sp;pnNA56krhHbeB!BEwJ$+IL2?Ya4?^~G06E`&Cb+t4${iLFR!$_I1Ri*WV%XoEHw z7_m`Vznqp&ul0h0O&M9vPDoQT;(G3PWHP}5TP*QCIP-nXa F{td&}93B7w diff --git a/lib/xedit/zlib/win32/deflate.obj b/lib/xedit/zlib/win32/deflate.obj deleted file mode 100644 index bced32cea2274975776f5e34aa161cf86efcd30c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10702 zcmcIqeRx#WnLji4Cb>z5%)|~F>}b=6aSJBe;IKA0tOjlpLIyQ(!$2hx0wjEmAtrZ7 zaFPICrcZ88|3^ddp_%t7#m^Vn!z&aYb%!5%If{)6=;{wtDPs)PiFao zCHF6_k?ZGcnuLcvk;Q(n)$edJ(K^E946DUhmcrPRnJhCUrJU^Rdztb`ePe6uLv8Dr zt3J}$yiQ+VzXp`CocgsJ+H|X}ls&ShArjfVhGn7E)Y{m{l(L4kk;c}*9W3*q#)sM( zb(UGSrgaVa*=6;5YyF1i4LWm+W>X~Ew!VJ#2E9$pUDL9a<%ofX$cA;zEMK(S^v$h} zYwK5IlTFMsah-s${sQK3=G#03RV`avH>_K)cY~AtUd9|#%IvX)*ti~0)(2+&@QUWOKl5CPV@V?p6p;bO0>{+!T&+^pCu(`RRb?Ykd7DO>eetKA} z3N<#i{3mW}@(@;5H8!kmZ2dYRy&kLF=~Xq2&1*L_ulpGdOgczS>xPFKhY39CAT`Hw6>J_m>^4XKSbH&$g{iFW?xX!F|b1fDcm1xMHCGxj}Mb}+V- z|My1sMr9*g%sY0qAV${*DRe460J-QCu&$gy%Itdk-3JSj`RKd5bFni}GvlEGkJ06Ibe7;Zd)uu> z*Ci$D#}uXWW}3LI0JvD^b@$&LMh0k&SYaG-K_;~bEvpM8Oyg&CBDJ{alJt9iiC4;I zxnJgo`SoV4UopF7^Y-BlFeS-lT#XnPoIJFg$Er@h*;gg;O{MN<7fne8-kTn)HDgsg zRF0u0?%K*@v!`F;o64HZMO`34fK7R8S#>mFs*z)=E@a^Fum^~_rW==~wx@VV4-7d% z5gv+wFiQqh-6GG_bTiaphE{=Ibv-A-uIG#VvU#7(WxuHw1QIybgJAq&@LaI^I>Ble zX&&yKv`rCw#FW4g(1g8aSYf-Tv9tHoI?p~Fmd_gDjB}%5$1~4|GoQH_&azB|3;_uw zj#U;5ilGdumurftd2nU%L|4YUXRx~wD`0xo!CP@3$&7;!)3sm^}(|C6W{HU_4#$Udg)jH<6<+hk_z69im-%@AbGUdjKae2QLR9$(zkJ2g9-L+#9J1^yIa`&=>`_;2*?3yv1j{pNeK2A`2P+O=q6*e)hKP zc&anQNR1h{$7$kYq?f_xd+-aD<*q&jt*EQ7ctz0lFVxn*V00)!I(jXX?+i54J4($>U#!8 zGNsp~SHs5PjCf+1EeT4WnmMwE*5F2~3XBm)YnGn9P`@$R5IB)sZFEE+nZigWoq-du zp2_icsTautx1Z=mW@wk@WHfp5U1+PSOnhc8ynhYWOnO z5-|$p=Z75&T#ibQqux8S-ZOKhS6pW%4=ZNaBMgHju(C%BXYN@Y&VE`8=bRg;b)Nfmt@C^qo~d}ITswsgxZnzth+{7v)*$f|zbQ=~VrDwb8>A-40d=;!!UirR#7Az~O= zj{$gIZHDRfo3R<>58UzJLJY~SxZ`AxCYuu;@}^*%ROP6we1U7C6GA7SPaIKj7K14@{gS)w9Wwm0FUIrP}2Dm**Qq_x55ru z0L2Et##;an0mN3C(j(`LZ3{fTOJpHpj)_3NL>{1cSJ9|UeakeDv*t0IIJfnw|y(Qtyz3q6vjOaroA+Ck)c!JJn$+Uat zKU;^jk9zmD&~kM6%M*?o%{hh;j-uow4qZs+(|o+z=YH1ZFcCEYvvv4hbie?k(+@NC z_u!9^rjOyNHFGM3j&$G^v;`fQ8aVI@cl;0$Pl)`?y>l;hHo+!|OS{ICG$N703UO)T zB+6AM@!Ka!8x&2!N$4s;9|HVqJPBrcK>ND%A*g{vtcz|ER{_0R0Xit~QC(ZIAWpw} z50q(MW6&AYTr=CSG33;fMj8PAfiWrN+cY_faN;Be7 zP(eeE=p#nT5zV%P$mC);Z++25;R$V+k&>c!ajhJQ4^p7&k4k~W39tK*MCj=7*>~-m z$QviXK?J~iXW>@$(-^JL{l@4*1nHwI^c#)Qb^26e^kLnzW0X>MebSow3L6#!?Q`TN4(37*XlRl~?Y-DwJ2&Qw3(3mR?~7?DEH0J>(h+Bvutfls>FV z2p={#A=LZO`bR#ltPLdvtH>j~jaDoTE#dcEbek@+;-wuiBjaRn)CW<`&LeDQo=tCCkQ+aUUhgj%Ysr6-?H6 zh?FegV#FDBUonDIBGa)_Nhb~bjNpW+&iw?lVwpS~8#WJF;x{3%AbUF)>FrgGfU|r14ld>&<_vb-sB3&q+KZwN5MY@CpJ&{m0Zg zP!rKsp}IoOy$X3+c$snJEXjRMCn`ZQuPWstIhCp+yrTmkh1V4CxR41c4%S54JYzk+ zJW});^yfEbo!`Z4$}km!v+?rsn$q67IVq_o(o^Rz==IInG3dm4bf)p;9l8z;W14GAP6{EHJN{)@7+$0E z7lWr-Wj>H}@&n{mr<7bvG=5571Hn%9I7sVpU8&N0mP#hi25q?YNqsdGom5Ms< zhiKkLS0Eh?s*(1VFjq@q5Z{tsS~6Dco7vVfvn?`nQyo_q@sp@)YUQZox%cImE`M;g zzdaijJAYHr3lvi{nK@O_-}0l@ys}T2CynwVqf17l_j9nFYo+`}NsI7bNSZ$UJ;e16 zRY!G?3kj1@WRcvD?x2aGNYQbQtPbTvFAB9N94DnsRknii@(Qrc1l1fxTOikW!OH_wI=4 z#IrURmy8aOAAcNI%C))Npel3lc)2DWd30aY-%qjwjqZ4~V$nz? zj-mu82M62LqLWljRUUN9>t8mKw=xPW$Ho7K^e|am7(H*}P>wxtM zU>&)c+C!#wj|g_7^EW!K4dV~TFs75(YLUdE%CFWzU%Kv0(-u#B+*#L*;~5WY9uVPy zCN7GfNsH9qfKN4);;Q=J2^kx|pCrsJ-OoLE2j0O|O06o1xLS4kb<&+s#Qkh-jx#Vg zU9C0MDpAIVh|AD}$n+3WUdXsy?cR4WJrasEnXVedBR642+7J}I5Io-Q;x7{&$fQhl zl@VJ7#rqPZqX{K^&dK986{#)!r{6=XS6c&x3qpi{3vr0fDq!1!lz&<1YfHr)A zvn>N^jn56jiT@vzHNH~ zw0CPbZ||$&JS&Ru8Hb1`OfS9Gld0o7U#(8dM65kYpT10a_tpCJGU`#p)E7QmeS%El zTN77XOm*!sl|Fyti>|(eYaPK|+tF!TaHY20DYPvgX``iW8SQ>6BX;OsQoiU^+*Fa) z0*yiKcMI}bft9Nr#wBQ`25kwdtK5%PqhUE7<1J}iSF5;SFjRJJuhs!&-FlU>9PC7tA+c??QA7fRX@{V^rr>urA6I^u*c zzE(+kZ+Kiserf4Q0!$ovUg*er=HB^T+?Zutd&_fDpOHc%fh@jO62l-7CxZ>Jyrnz- zMT^iIh|sBMA5$rRWY(k+$tGP7f97NhX4|GC1k)iBO;ZF)R7ARVzxwE#X|@Z~fimYF ze>m^lH^a_zKMqUhejb*dX@-f&$8#=iCJJ%HWZJ@fYLoGm@f|0ajIn_EkHP^{@YU{z zL!-MJPScWHJ{?%py*}FY3^~Z-Fift=(S}85trwHBuEA>h+Yt=PAKc z(T;RubGp$4za)hsI|c}Unfuw&;49I&_ItMdF1Fu(`|Y#eUi)V=+m{b2cd2GBl&f7-0^qZ@qY#V5ZbwEVWm(g21d{M%o!c~6e0SLewXHpJFZ$Gx?uEI zM2PU5Fk1ADVE~kL~^cz7y{_ zs>yf4c4xCa3Zfp3XgSWv`P=`Vz#lEj_^;q8o<{8qcyq;WXR<>4x8O419<~U@cLi^P zr`y}vcDr4O7IP4sT2Ox3YC9chd#F9@_B(DbWrg-%`xT0AA^r85_}~)6 diff --git a/lib/xedit/zlib/win32/infback.obj b/lib/xedit/zlib/win32/infback.obj deleted file mode 100644 index 2107f53e43865a7ab9a8997f214ad0b9ed4b4ccb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6935 zcmbVR3w%@689#a4<`zqn^3Z|><3Lvo;3Lc-(Je`PXIdK@Xu^u1w6rOyq>nWzqhOSB z>FCWx*FAI(=f>vLxtDtiPB%;I7SKH^$W|cR0t?cbZp$`hRXVf(cXQi;w!-B1`*Y6! zobNm5JLmh(cg{_>n^^wVVB>~$jm-@kYU?&Ftz+G@8Dj+{E%p9e{k3i85{t!rQ(bEZ z%eTYkU~SmHK3uyY=x5U>ctdR{%vet$W152TMkf|m*4!9gkHxW`ndr(pw<}4lm!j2p zZmZB-Z#FWvN3Yi~=95Rn7e=cj_o(C>lLuuXud6p~in0~l<1o5CM~v{x!_)S?mC0m= zWenGKJUl~;jIwZ^7#ZX5LI0TXUcE+Fpw;ysX>nh>v3t# zVhG44$u}ZKMp&4a-DC16^eL_NjI~!164v7omp#iQ-w@>GvSP`dq!yFd_lEe^4CAiI zbjG5e?Z!4_7C!heiW~-O^_T}yr~K1uMq$t2foB0XR`w@!NrR)b3+$Osd;t8ENtZADTo>>-NP!_hN zZdNu3qp;NVSm97BB0(`?7B$URdQDWFi4BX{3%?83DE;%$xW6f(6;s;b6QtCSHOL2) zRfuQJ7dG9MHQ~>&yx}4STbU`E^D&nv|D@O zS|Ks~B$_25exc3#72-mSBw721X{XAUNp8j4j$%njDtnidoQq|69#J6h86O?3yz!lv zploZ8hjdbVT=vCnzU1Z{$V%?G?2fOLg%J=tW`Tqd*T69^J`==%IB&Ee3gPlaLm-1ZK9ubfvV0a@2K-WHOCk-K&c@HOC@~Vmj$YBR%{SHYOjJl87j)qoT=rHg!$t0O1 zwFmok%(!SfC@HoW$W+}m}1;391}-P#;%7U zms)9pK;+`7(uUlD9^|FA@9k;z4D$X9b^Y$%uW2!)A zkIZAq2vW!hQpf_Y_OTtS^`{<0nt0l)J^eSYHk&4RN|%9*lQtM$FKtMTb zO`_XXgBaDh>TTr#8A)pC z^z3+mX2tu&HzaxT=xHJ(C5H(cg=G#)~-XSswM7;0;79`5+J;<4;&&gI3j z51%ZTT@?!;G3zsU&-pGk$Gn6G(qsoHwP$-|kQsMAgms@02Gho_-O3IOO2R8q;fVF1 z^-%Oc)c1<+Ma2l3{s3k_{2CI??{x#@2v-Hp+JrSnkS=rwE+*|QpUR|NQTGvRFR~2` zu+Rcka?~Bgl3DK z)(P4~QDs@H3@W(t5vPkN8M;HULpWZ}QfyY#Jt&?qN-h`L#H|7)NdeyS*7lB#*B1m0^3NE@#DjyZ)gPI$z$5512?;MflAO%aUdRZ7)f7e?1 z6n*+u$%FVF&l9&5v2c#4d}S-2vTOV0sv_m{dZG0Y9>7&aYx~(Fx$M+6xRuk{TNnXX zL$6BS1DMz>KE!4iu0S2{QvN!|a(kJ{fcG$81DL`0pd|V2fE_%6eq3*SHGm%_a(mcJ zgAMg9z;f^bR$wSVJpdGg{{STh;JX1AcpCahp1c>B#b)z=fxZRxFt7~$2cVDdO1>Ug z2>vaUB)=0V1s{SwjkgZK7jNzt*(^g9>h}OQgAZao_;H610*k@-q09qz0~O$-&_~AN zR{=9H|D%|H0qSkQ4d{OX^CM;Q8-Ndhe-kA(jo$${!IRL(2J&|RbHP84`AbmW3akKs z1@q%&&fg7O1O5|~w4YI+9Q<|Yr9>@InsfBL_mV!TrG9P#VxE*{<_5Vun0<2$D z{r?H@>(Sqb@yXs=;7agsphQUXoqz-UB>KsoHNYJ3&#M0K0KWY zKpFTyp-=ww0kfHj*J`ri>=4 z9|ZqCN}6vMa4Y!Vpild`9>BTH{i^E!`@la6{wLM{E#TLJ{{kh&)2D$-@VAwp0JTj2 z-f3VzrlByX0nAYQI!Xp?2khV{&`)7d4HSZZMh$~4;LE{ZR>L3wUJU+2l;pNl?D!~VNeg5g^+&|CCTpuO2LPrPvflvion05hQU4HH-jHl!ypL082lNOdBAR< z0{l(rlUt`s1HV+mU;|`60QtvIYJnYq6Z{nP$t`yPbHN`}!(c1;3h*Op7~Bnh4fsz{ z(tbvPa_~2xPhl`s8u*PG1`Uw88uH&mN&EdN;A7x_g+7JBUBGm}sN%l%W8Th}TPyU=L4ZNiK-w&CqApaedv|n9-0G@(A`TtH}9{9tm|0CeHfFD== z-vqt{{8^OKf%^eB_*v+a|EEd=G1dQdkXZovCs2~S2$X=IhCca!EpR#b7gYam1GjQj_5Vi5d=TSL)l~wceMH^nnK~0Hvf1}(BHf<90;*+ON+UwwziwN`4b(KA|+epPiaR%J$s8Sn(FAB?$YW#ioZf!U15R&hn@0{QH zo!|NXec+>>_Y3*s$MTaC6WOA%Z;Z+h6VcAZ)OhYtE_+f^W4(e!2Z6|%=CvtR0A+3-#a-%{Yq|td2{RL{=&X+m z+E@qx)dqwCU^ZX?fPf7c1R!Vw(g1{PK;{x^5Kv(Yby%<890G8_a@*(;+cjvOVnL<2 zznz5kG^p@>_Q$HPzT!X)6Xfm(gpd*FPqP7Jg}A?rf>Gt7!D4*5USNT}2Bz zCaOsmFH4OcY+0-3gFNNTm)Hko7JhS8nYm>gh#;Y~Yongd+{(p=wkYAt--^EKE2(~n zldf!*vAYOwpSpeIP7i}vmN55Lv55cK!(Gi6pg@^DWofqb9@w7x|M$a}MMrlRjsKw; z%qRUBX({G98s;~&pZM=!>nlAeHq@M(-wn6%7?;^%v==4`_o8DDtj0VPq8XOLqNp^z z2cceVS-Kvnl}>22M7-Kn_PjXV;&tst^9_)yrRM|$2UZm@lvV+Kek)Y4MQ{>JA&%(Q zh#=XGbSo8U%6&oewzIS=o~U-k%btzVT$9QkMBZJUnODw;4&w>)wnGS0KKcz)h;-tt ztcb=?;lcTr@6G>uGye;ity&c0^i%hq9c4Dn;?i{p4|D%nac&!(f4AGsqP?PzBL%TL zE80BKJi1A9iO%hy)w8lHW&~OTE~B3P1=iF zx^Po`f}jiHLOg-v^YO3)^5JmDD&irkWV{y zq-0U7Cwc@_|x@mOv#wV40|2Ne!CUlB2I5y-Md?^h;E% zi%z)Q`N>kYkRMma^F<>&IhIq6sVQ{=Z~O7=*gOA@j^XLw@D}n$?qs&`Od&VY? zfQuVnPn@{RZrfy+Hr)W}bGO+?0!f?NkVZh#1WeL2rP~7GVMh%mbjve|_B&TsGGII1 z*N>yQXXc!l^O`d+ZL_lBo9b#;Ev>DuuB(v3Gb&l@D8^WZuc0bDCtT6!@MUE=zBnT{ zm$lx-SkIl*5E_VKyvuaT%D_pueyP^6OZ}zJWG}f*S|CXvP=v_?8 zQw%G1j6luMWX-Jls@yTCw4-uVvT{yXDyprNY8&b+8aGP)nuE7CzeCNpDGl!8a79(P zamiRTjYP-hWXHjc^_6c@?QINH8)&Glm!24RCxfqH-NyY?dmF=|di1`wwmy6fV&6W( zyo$y(uJMdL8yBE`OQ)13KWb-9Y5PBm$K!{1!0tYxl-QNxOr==FXR(c!h%HAzby}ws z=eRpjr+0TMg$AX>94*Xb+ZabxKJ#N6B<<5#$dnEhnW6`KGwpDBrYf)wrhf*|`{bG!HpFCnO7B;Nr)4 zSA4M(BhJs|W~VY=RF*q=v}Y*>e|W|6M<8m)BL0Um$e}Fyg#Q}Wu(s(QH15MRX-bo~ zhfR^_HTIMZM+eY7t;CNYuLo{%2$}*o$8)gD?0BJO5a2 z&Sgz5?suyCo;btjxDHU?@x>0sm#el8*-sU{Kg5sR>|#xKfm*FPaZ2&I$e=l-bT;(& zTxy&g;N?z3R?xMO`*X{Bz{KR&%m__i4iCDNU^W7z*_G9tk}=HpF?JeJKHZHrL8tFb`gGgE{!pliLoC5*zO0|x%_hdxtfsf+@_HJ{Flr1=jWB{ z_Z= zBtRRW2#Op990SZ5#+Y+BmKZBztr?6x3D^J$e+{^b#J>PWxOX&TWq?wwa?b-^0K5YD z1wd{VS<}#jZF(s$$e&pw6I$ReM%$k)Xr!J$5adJuHgIjsiyqJjFB&sgMxB4kRWlXNh< z6u&bz0fW0dKIi&TJkuF1wEeEHi>$;LuGDUT*#E6 zNbgrD)_N~|dW+THhyMn#I++0WQ7s@}BZX9HZc%7Adb;AvIE5y&Gg@G~+$ZP`8iXus zA(L>QqpMe>wMPWKUb?3Z>bJsYNA$z#x`Wg%}T|$;;c%PzWgjkr3{8 zAdZwWvt|aU{yz#`k`k;2sWBzTU4zR(BPv0!W)r_dwMjwdoi1RzpJr!Sx$dk1AOg$) zDA6EVXH-DSA-VKYAT=Yt2SO~RZ?!GLN^(YrNswAexZk$@bQ}}XgPE61 z(L<3ZwH#i59jk)2P^e)shWo7WdDpdc`IJs6%tn+%3vy@$87T2a1Wk|vL8*&t`8v`gK&wIF_k`r<1nxlGNWHCKV7G7!ZG1E_M}*Tlt4~W)~J9r z8;h%%HM!A(jzuM4Mpj0@W~IPN>%zT2m5mg&R>hyEMDq7jQtj;~`EFZKiMTK)p$h`T zV6^O9gr%Q8(=0nn=(8Eyo^kvw`LyXo9kLpIWPKbJaO7dV_g*9Ig+!{hgL)wCg@pF< z8J!X|97iAXNiO-cAouDThe+1BQqElI3o&0*fOss%c28n^Mk8%J9}@Pw8ZzuH16&Ll z&Le&7Lz;NLI%G_wilH8UsONzz@px3gh9V(!(>=88>g9|2-k0E@m@O(GX|foZ1?%g? zl>bv?U%!gA{B`-1i615fvo59FxgH%1q!77N+cR|aP|}CTzMw|hvE<4*Gc``{{nS4c zP6VUk_re2LFrARIFtd`T9)hu=0v!jq&x^UQC9LIr84QlLd&-^W^&)yR(|m-N?98(B zZNvkrC_h1}Ko9z$eRV1Yfo~f4h(uS4%_%yc=JWPGtr|`Z;wSMbe>Obf#%<_sAgzZd z-8gakK^xD=`IJTOG$_8MR7pFb?aeDEfOA8d+*~yw zx#d~VXR0*FLEH73sDNdk#fnq06$8;gLLs)Q)v4vHsg}=};=UToOXgYIkSVH_a{oFS zSdcFYJXqriE^YitY!vs`s6>W&Dp9n^w~k`GW@O{J_FZ%kZuiwG!MgTfIrrBo{?c}S z2~#KPE2pFwSXg#|BCS2RF1aTya%RH~*(~Y!NS`)&e@YU`c6tUBS@Cg*?uWqcX8qS++dFdDqe_JLay-wms6A46(+{+2&s+A)D zy521q&GHh+O>XpRWsm|ywfdZ4vu1>)hp|>VPMpGmqgyVCC5C#%LU4C2?-I%6wr$FVG^=F^Ku3~gZIQI+eDr|sBUO`pYLGmwJR*drghR3FidmZ3_#rMu|^ z?q4bRt33W1%j0R-`OBX1mYq}o6pvTSudJiwopi#!J}0E1xm{L+7P0E9YxkA&AfmUl zeU}!rpk-x&g@{*luLfQZYG`kfiduCy|3+V@FI+~tLSN{}7ijk{iTak%W@TYnyG)%1 z)Rlw>S8{)q&@G&h53cLirJ89k^mVx$UEY$SEjvrmV^qKqlF9Kj%Z_dMz=_YSM^H7c z=juu(Dg|cP5VkTag#)i?Fdr?A>hQ!=K*wp3m`Vmed*i%rY5C>H5J*m5ZS}qi6#E~w z0uxlb?kJf;n|NO-&+I^iJKRTb_?+bVI59!nkSY3yPpoU(W~T!w`AKMmlbPd^rA5Xk zBz2$iW`-NG>p>OPVjR?Q0uhUDPGXz+fUp4fMZ%H2ux z7PEM2)+IHXr|Nc*qG+3xYMZ3BO-i&`UMh7?#=@iuPbYTVf3n{1UBZbEIyj_JeYVne zJx^$D-sHaO(>`ynLz_CX1BYHESR57TW?XJAW>RTl?#;u|roZt#kz%Yc{^DEnqYj%~ zf3cd0BE?*Fkl-uUJcV8RuES6*D&PVFnRUsnoIDulmsx3NakdfZ0%>BeF_d<0EXpM) z*P?tcWV-N3GF6PEYwE2DJg%l? z#aDE@t8i^|o2!0_Dc|1)1G}ndP*+6-+;!7V$BenL30>0E&BC4plfusZMcAR+*H>|0 zQ5LcxrB$@sJ;Cht6XaLuDw@-VSWjg5EZ25L<_MaS{{bXlwc?ag=-U zBT8wM!Fqp)PffM&(5eW^Hov!3)L6_K*-j$EjhJO;jBJs-->3sie*>dg-EEntQI1m+ zqD@zj31MuyAnp5XOnN|W#u0Wj37ADxr2y?ZB}SC}YH@$Y)$Kk=Y5$13Zgh}Fo3~gV z{X%rQOam`2X>975Byk$qenvf?999X=i0U;_*D0HDR5VbV6wg55CZxs!zp(dc-pw@Ir=|-hD*y=hLmW>E&&Sif-X3 z7vyUrC8K<8c$4WBdKm)UN#PBQrxeppA`>qp2}u%)H(7vXvnG)|auXhb64~-=xy$Hr zCWr@_lag6(#)S+{0`$6~ItecwK06QO;>K0veixp2f=+}&^6dmGwBJroJM>C%onKBp zlxWXHMSKZpvr&B?9tg6sd^yRNgOIvKz>$dibJPa|A(EXH$w^fs6pi3iOzuuqKD-QI zfDh?y2Lf*Gd%vpS%M)fd%bp>4Lc%^R9xKIn6SfDbduskRe^(vR-a3 zg@nC_@Cq|3WZXA_?kDPXx|`$Z`47F&>tOGBn8=OQBbQ0j``*;l2Q{wt$9q~nY8t`c zQ!!_P=>;%-H7`WjJayw(Lr;*w#mSgX8~|{T^c>t!(9VB~M$hpLU&=bx(!EiT4+>p3 z^j&B4!h72fs?WTOOR+N=v@w7~Z`R?KBjD^3x~}WHPV0rYw|5a|%SXzBI$ZLl9{6Z> zEnJioLutr`yK|k&R{Q6;e>9p?uRvE9Sip82>iS_U{966nN-ea1>UwTl6Om1T+% zHo}BR6>;Jha~MnSWL6Uv7I7uO0sL8%M86H-1%3+cIH`zB0NB8!cd(Hr556A-$M#qEFs;AhZI@_Yq=BT@R_X#U>_`~l$In*VEoPXqoh zC`n!gFcjFRH19WW304e*oyDP~4O|3jMpBf#N@^w%~2lTD`p--nXu zWq=R(dGM3}9|6G5>EF=&-wfOX{8yU)*8oRcr@x4j;)w(Nz^{Ox^jQqJ>lXiS0RAPk zzoq$qHSl|Y{}W0Y?{UB!;1|J9_FMtLyiNbM=Ksfle;N4iH2*gMzYqAUC@G$v0xSUj z8U8avX~6LLX`l zV}S3vBMqF;{9lXqX=wjflq9bLm<#+*;3t0$mImI?{2vC*RM7trCE2S5FbjAL{N(>- zfbqcpUi1GJ;12;msri2`@ae!`K{*W24wwi0Ciuz!gQbC}=Ko62OacA#D2ZMM_<&yk zKl%R=z&POF)coHJ+yneQ&HrnFX90f+&qKj|}A8hBgt|7y_O1NwhPN#i{Z zm;?Ne;3s<~)4+E$|0mPH?=}B7faX5X{~VimyjG*YY(||v(>RIQjXK8&V>%ma)QO{w+nE;{SdDt{ZwLPv z;^RcthTUlSX2F)`i2elj>?9$>l(w6 z2>#FLSR0mV8mhptzM`(S%CVugzN%q^BT~C5oFdoyz<*U&M;!S7CQEkOSm{_>8(CW+ zRo0|BScU(Mu5m~k*M(D65viduT;)i#)P?I;OEnQDH8eQZR@85FBq|&YjgG3?h*VKu z8FoZAu3gno7fE$ciT}lFbO`~H(ypqNlKhR~b>Rx>c9!YWNxn#J{c1kH+ z6j5ER6mG1jyHArz)h*d|QkdHZyqyDvtm;!U$uUSRDO`>J_O7acC;A*zRUuVq?&+)4 OY?AOAe9kyhD*G=au2t6n diff --git a/lib/xedit/zlib/win32/inftrees.obj b/lib/xedit/zlib/win32/inftrees.obj deleted file mode 100644 index 97a11d66e4778e64c48102ba7f2947147b4384d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1639 zcmZux-%lJ>6h3!$SSZ~xyYi#d+OQ32qOOwCMQvSEcY&K)(tr$D+}(wqZy$0)VgU+}Y@f=uphx6$tpBZR_ZOR5L*F zKjDWy`MMKQE`W9T@^Ppd?5A(^%UwO)6vy3>{)jAI?(P$>_Ncw`U}s;S3m=%OhVMc$ zk-!-}MdYfj5kPefz%@6xZI>;<)n*`)54nvF#iN76=RUj;8+qs5_$Cs(iY!T8c;{by z=*(yo-Edu&34qGWn6Krsv9QV3|c0wOwuVWjd3=u7?xz{73KWhpvBdV z5WP3%Q>JT;8&X)ayV(>vVs|<9a4_lWB>g^3iwaKEjH8h7*sN$+_YJ*B#{S^yYDg`f zcXL)W*(&-Vadd%Z!V5G@v^32DaO&k=17yxJX6-|UCk;p#g4X&4R54AI1Y(Ao0g3QiK}I-6f1MK8e-)!H^v~hG_8m^KR6TVHCI-d_6BmvtX^Ye?Dba6 z`oLmuC$pCu41E*gZoxk8#GurmrIQy?FhRjdhZH6qkH)>4s|l-XX0L>riDW2S>~}{t z{-+SGP2){k@>cwSGM&@-7feX6*;kw|y0}`SnexkFOd?dh#p$L|Br!SOPpLU`0D<{U}5*XwIH<2*|N#XPf#2b_&|QCNZjG9 za&miSN&2Ojr1`{ONh`jaZ}c40^MvM0Rie}LqF-1=vrn-pjblG+Nh`4rJt0<9t}Nk_ zlxb|)4P{!6;JI*qtSXQVYX7x*JKjX88Pq|-$ z>n~#K$eHlJ`?qyCu{UU598J$>TwTGMbH7Q%D>}%7ePY%QzWpX&8@S=Y%jK}RvRoiT z6}X`qYG4=C!fx0D3izNN_QHN>fmR4W5JJ!eeJ~7TV8FNV6Wjqw^bvR;f)8g3JhF{? z%p=gSjYiml7hZx_Z~@YG{c5be2j}gBgU}8U7=m$_1470Lk%)`P#7%05hj>Xd@sq zk~%jhgM*pNI$WeQ|HZ|KS#{T z$jXWVge`HxFP5cPtO9?^wTm|6Nf6>BLD&{6#Og7+RR|0gELKNO?us>!dLPSK4t-X~ z3ql|Xx%Qk#R_1w)yg1|~3W6m*J;%E)XXToeUJ?2Sl983fv+}%a*R6OYXIbvr<*UP} z8MqZiGA~kc^Yb3dS+>%f_j(dKO1? z%3)*i?}~* zM--f+ToTU4z-!A_98h%58tOfV0d(UeQ7sLM* zz9mpho9Pl6VVo8s(E(JL2lt}wtd$__=MH&qAwMevQ6=% zRIeM~cYglJp84h5ld18$w@)B?$}$DTUF{5cYGPNr)rx0GzRZ@mr1D{A{U6=IQe0*Y zt#%7nom4h-lQ%BJFfpf#)Yd8jRIKiGjil3LP8J>p1SoV>g=}J{JWO|mk#Nu3* z=2G+x_mgh}e28&|S|D~Sq>DD6kyPt{tet6%Z_?II$qVfD@^iWFpED!=QdhB?cNdmft?zCMh>QJly{zi z3YMMJQ`l~!bw=6I{12zAXtblODgS5c-cd_w_zjwaO!0O9j*Wm`W_1MbVV8eu_PX!WGIibu&ocUhYk zBarEp6dgZuu#O!Gzst3m)G<{JiKti90yVf6qz2sZENgMMK@aNmDEdj47`dG2ucS%A zra9P$P*pFZ?h#Z@jj~% ziB%fY@x_!3wN9kZ3Vs*K!gx5Wg?0?P16FrLtnU5h*OwS?MXONhd!;e+J%p2e8$6_! zpfl5>M8PX#;6!*-mGzt4h1437ZY_8net;r}Hc@1|DeG{@GcoEBLG7>+du~B6s_O5Qg+ayfPM6pxT zjSFBtb+5Dg+-Pwh{eU{nZQ^wC&!dKcJ>}p!YgwCVj}OQm?k1=qp@?je?Q(Ut{=y0D zMc5JMb-5n!U8#1 z!L0;M5)}m8M8*r0=Hp7d5eB3;X(eaVoO-&GJtp~Q4iM%pE%#Ao$)9xJtX@TOkQdco zl9r;(kj9&ogJ`|^s-p4s)W)-xDpDabLSb)l6}n00RgCf(a@jN(u=Rb|tE@@hAX8w# zkjNW;{lDs!lX~Us-FE+U$N6=-6RdjwnqgQEtC1^W6cA@~UCIAH`X=|G?{I~^Nuqm8 zG_3yttli6Ho>W6ujmj*--GmQTe;D*=^JPWbLXOqx9j%Q}Kq(Df)uZ|yQ{s6QL%-HH zP_ACK%P(YMv6F*U4Sm{{W;JY^LbgqbwgeCFH`USXSJ;+B_m*hdmL_)3>3DN(yBa3@ zpKLqBFsTs+9Q*pTEX7DzHkB-!+Pk0q;S^~0D=bT*drLGeORGvx%dSyFUmBHfg4afd z!K`0?h0D5+B7i#(-i;N7hj*+f=gbwwcsEuQzDAfU3byjmwQu84TAn*MeXPY_xfva1 zEQJ=}Pv^6FULp z!c%@{y4sLrsieKo;?R6{8iy(D>$F)HwfR?A3oS1~HD5|T@>KGrWF4D-rL;lsz+Qo$ z`Pezup){XV;%oT&F~g}(aQ0mn1$~79go2nMVMLhGd4;OaC3&;OG+j{as^nj2^r>6J2qS!$XAFRS>;8Hjw zRB)HlW}R19;dxU?zxhMq`DR_wxNE8V&RTYJhqzsScY-O1)z*+hcR8R@B_o~sQZbcw zw6m`K(407-@Q*Pi*sP1lplb-sk$hxe$HtB?Z4d?S{ujI4KVPb$UK>N#>SKPY@41o-QL&b_T3A*_Dr2_Z*G~I$n68%?L%iRTX-*TjRw6FO8hP=GV)hh z&;d+{@ObnasxMkZst3X|&>>v#K>O;hq57@4|65Z-3%sfM7v_ZR7tR0BwU{@YwQv(f zhAI#j)xL8f=VjG*BckvbF9!#Wj;iu>L z;lJPoc~cP8(F9W|<}%~F*T302)mCfh)GT@>PlH^x3y=Iz)iczr@-MI&lf`t{|9hOKdxH}*v#lqV z1D{62g0qkC&HcDn_)amUA5m}>(K|Noq2OIT0ewNg@<6SPU)c@u2D|Y!^c8#S%O+n; zpM%4&vEWwHN<1+m{8w6b8HJS2Nb?4{M<|>g(RJLa#NqL~I7oKR*Q^C>7hPboEwAHO z(VTf~3%% z1>BY$L?B^4QV{2F+>eY~#C)U}e|tA=2(~O@S({u&eU*bts;$OSe!vVmUVKq)&gc$y zrhg9+7n(a1jfX`w8Zlc3LSKbNWh%`*183_Q#6b7a@>j`lShlvs!f@!XWN3{CLvPt% z!uwOPO*ASvXw&P6#+xdXC%|h65mnedJO^xwhKgj3 zuQi<`73o~tuy5o=#@cpYX@}{@uW&z3U|rnpZ3BKmiywvfe(vkva`MR(oe5dIjDaX6y3k1RT&s8v-M1|i>xr&|7m zidDa%CvRL8Vkk~Q)u|xA&q<3?J-?EUme94c5o!xgQpwHT#RxNLeZdJU-hjJ`i5N* zHk#}bjxH@M6fUEy&qDlZW+ltw=f4?}-GKx(ENl{QJ4<4RlnaOD;C?LVK8H0T zcNUZn#QPN1s5a_lb@^eewzM~^#!ffQgnumt!IAPuMm3VpjunCw890vX#_*dXb;J<))Km&dV><7LH`~p}Bv;sqbt-vDS_rUjoJ-{=-CBO!h z0h56bfxiX*5m*5n2W|m=0?Y?K2EGft1LOl=0s{a)Fbnt{@NM9qfyaTr0K zKr*lpm;gKth(IRb0v-XJKsGQA@B%StK?NoOA>eO-p99N*V*mx$MDENsv~5FsHnd?w zc(Ne`*$`%I2qiXz3mZa$4b$F+scpmbwPA|dFb!>(YBu!7hACs?|J{P$0l;t|1{e$^ z0KmWntID5c_fSEkPK=+6`*$0fro$+pbj8~OTI<}bPngAgXv%F$atXxI&EPo zjQ}W*(rJTWGx7}Rlr%_?;^JfNwgk};Gr&5~BI6%K#fYNK7K;>zB$+ARO!i(Wp;vNT zCk?nx8rWA7cHAPIOu^|S6&MSQ1E$e-3-GX$hnQk*v za<4R`R~mYqH0(MljXX|S2dZru~v juzQNyGs;oBM!A=HuX*id?rUDJWB#GnGe3?O6jc5jovW4R diff --git a/lib/xedit/zlib/win64/adler32.obj b/lib/xedit/zlib/win64/adler32.obj deleted file mode 100644 index 4a2dfc2d96d509f62c8b254af8b4813dff4e2c7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3778 zcmeHKL2nyH6n@*?q;BHWZd4Sbg0xsu$tc9xHdU#jNH~cLi*Q;X0VJ@LI<^~JXdD@* z6j}tS6I9Ep;L4>){R1ElQF}{DrSyPM;Q|MQ00}7;92)gdA%V>IW_P{o#Dy*=4jpM{ z-h1=Cnddit^WNk>>>y?D6wtOaUvor|e2ZwRSt}w-O`I&`TG3khw zKy)h(XN?I8kHyRRvt^I?;x3|(fa}Aa+;-s8>G>1!v$;$;BSo^)(f8XJN17lb5ub0x z8JK(yxN|l(2%d4et`8=UK0W$UYAW^Y*l-lx_{3DSRd_s=JT^LUbTX=IP}{_J2Hz1< z_F$m#;q-Vhm!HjNO6gQ#rj#kYlYSLMda}4s%I4E=7v>HhN@sF!=1W5d?j2QX&>w(G-ljdb75M)%3;l zLf?dPsfTq3m}D_CwV;qFO)QQGiRrFs!h&EcO|1PC=B2u^RDE<%AT)dyDdf$i{t z?eu}&=>r?^f!*Z;+vNk>?E@S1f$i~u-R%P#x(}=sI+fM16FZuWHVx6HQE2(mzZwlh z3c}kB6)@X^r~b{KjRuD=g_d4HtXPqJ;YZxYP&O(XVGbH60NURz?E~OJuvqu;gJ7}z z@c#*xdLM#=|K0d&2YGDfso;OfQ}+{QNLijNYF2JUzWmBl6oUHq~CU7ea z+)}dC;BrKB$`K8DyRCRc{L)aUB44x0pj<^Wdi+fN%3A5^#rJgr7V#}y%{g$uB?Aed`v1OPUbV^ zxM6%u^noSuJ^|QtRpCcKYx9=>NE*QK1E95eOMm1TV7T~a^mpf?-&A7x1&L^4>Y!}TPUFC53Um3b{Pb4A;X@=A=J2M;3FlCRd~3OE>vVJF YR+uYp51*#?c*xr;uwgBRI6GkCZ*DpHv;Y7A diff --git a/lib/xedit/zlib/win64/compress.obj b/lib/xedit/zlib/win64/compress.obj deleted file mode 100644 index 5d4123103a9606b9c137b2d4dc605f6011e82767..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1635 zcmZux%}X0m5TA9U4SrQy3lS+S@}Tvy#*a#rQlg3N3hPH}ENuzYB)g_tG?BQew)CJV zg%E@uJQNE3@Z_bXJ*kC)qF@Um{R8?3DB45MJ=mGIyK$oqyf?p@_nVoQ$=lIhl|f0} zySt?xfCjKc)-rm+e5TtbG$Zf`j%Dle8jv+To=vi0=VSpv+bLcUYIM~rb zXL$Y%+0=gXPHI1tigj!S(>WYTanx52SnW$>S zGqKF`=pzKt;dC~W(4*5vs-r!cNKZ^=^r9>HB*EF~kq#5PbViz@T;dt+K@{w0&Z zEW=+V9VWifpKJa7mX(KGNnG^LTbvn0c8_{fTA>xK1=N$yqTi{EnRIK^m%|7u!6VE_OC diff --git a/lib/xedit/zlib/win64/crc32.obj b/lib/xedit/zlib/win64/crc32.obj deleted file mode 100644 index ec6b08c09ccbb0dae2a70a2423d9a152c3a6d485..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17008 zcmeHvc|4Tg`}f$5oe)`?n5@}SLu46=QG}2s!Z7xIX^?D#EFsC#h8Cekwz2P75@k2W zGL|HgtQAV0drYSK^!>e_-}Ahle}1p$bH845pZB@Wb*^)rb6?keuDQ%%A59CQ;LJ2k zRRMt{L8MFC-UnspcMe7Cw0KebZVz>dm10ayHB8f;80Rb7e60+^4S25Cjq{kpS(OkoyZ4)Kx8yeYQar(jdgW2l!SoW2|Z(>KZ*LfnrGm8Cyj(4 z)Ihgo;6qdu2BKgG3eX89%M+gVC`Xj7kEO0N(#O^((9!|`mPVfbK6WTew6h27h^3v6 zo%~^GPoxV-33QwtqyYkTgNWVlw^5KwJ!d-~PhU?5KZw{_afrT`pR>Djkh6y)hKwx~YLxeT{G z4SBBiK^w@ekL{>9eM<^Xyc?~ZoeJybXJ-0@mk~A@KvWt0e)Lf!17<~+lbupf)6*|XQbS2nRhF#am?1_MFql%P6 z*){m+MOyC>iW*37h6LNdVr*2A_kL^{ZO(LkmVAH3?EQASfFm0q*2Fw;8cznxWHqx( zsFaF3eY%@{GKHnx%$lLAE7I1De@GS;bq0i7SxBXIyOcx0*SJO>VcN|4xfNfCGMFpp z_)t+79~@KpeOzD+sUtPawHn-a6{Xw%&CIq~?~Nf=$q!WXU`n>SAD%OQ3YR*h;@;fz z@Y~v8pUa%{iSKxiBU&+z&$=sYhJB@|HQxzP$y@6(JZ=wW9y{($WAGSGDayviSQiap zYCni|GA)Vngn;`UDzm0-->_^DE@ZUh#f37u3rq8GZF^Np%)^;WrIjsf%b&SbH9#;G z3uPtsx0t5NsBZNZ`5n_9`0yOvdzVXOgc`#=>dV1s_cl`5{)VcHJ9D0eOAuoh%kr(Fn`YTQ=6oNmRXq~N0kzYF;QDNRNH{SQOt{xZp`hQGF_QhHR z4YPHg8guj3vCwAr!Qfy>O3%IKrXj_%E93ghj@3PmrZtboXt8Ri zVa14HN#-G4K8ELCPEo;Zf~esy7H!5&#vSt(6FuYt>zuW&me_Xe!#LDr_j(?LO*x%S zMKg6$X){(=a#IS)h|rkSDOa_KG1eAewe%yk3r z$`?n24~&m6_V@NhYfSYoua}HDd0>Y3zviwBKQB`GWfEQJiPkRXnX#ac@p56^ex*$7 zV97|qzMY9maxOrw_iek{p6qht4wz!d{?yBiGsaM#X)2*QW-H>D`<2_KTTk0rX9Vq` zddj7zVANs|@4z^&zN9>)U{p|(-;!BP2<P9 zB<%1DBPmJh7B~BoYv{|-xfbWz(%|~^arl=y)lEHdvx}P@__eo8`q-y>AqCh(DNJS; zf5sI$@I~&Mv?2UY&(v2rp2@EyIrstgPm< zv^2#!T|J$*ye<~F${ky@kboQl(=oa$@^h@hw8o3+tXjQ|y%uCqu4`XcC92Ds6X;678mnhT>YJN!uyFGV zbFmJ4DMD|>5NEvzs6e^J z5St&XGw}$w^_#Pwdb?%n6G1Ilh<{P<9 zivwx+FLO0?1$hbl<*o#|I}(c$Q44{tubv{j`aJop)}Biv-Njr?a}97_3gU||~jeR;WH!TNIljOjc{7_UPu6ClP zW942#_dJrY)gZh$gRh;e;r!m6%dCcp6A39!R;z?|d#!VII4f(-Xau3R&SPCsqiYr+ zEec?xPZt#tUyBOB6-!wh_vAa(;(WHCDMbHQaA~6O=#Qi_uhXI&%>&cTH+9e!2PaTR zaqH7m817+7Qtn|Lj7n#oTr^>_-`EE>N*SVOkji9G(Y9ptdLY8D-99ZKh`zsHT);-~ zDWeSEZQF%?P2*2^K4YDEU#=YG*v|O6=aEPed$O)C8>hu_E@9apoI!~d+e`ug6?yTDw~_on=)5C6dww4}b_MW5xp zekX4a_y>%}hUk}_4&|n2zI*`L75vaIEHFh-Bj8mwb@oeU4P)a<_AMB57;bIA_z3dxUyhYj0mgCFGFcJmCoG zz#;bD75s}1W$)sL0VPH_es420Af&K{ex7&n5P zk6v&vFS_#3>`3yw71cL!ON*197u;o@S%>i*oh`_{7L_>3$5$NR&M z74K-6gQgWvi7c{0razs_y#LX5&1PYGN@lh%W??Q4_GG@+()q(u#h$IU-k$H7Zs|Yr zX-&2dvF+RB3mW>S(VV&AUtqb8m;qKN0ypnMJ+T>kXwWxLRmlq#mH||V{w0mS2rNp!M3bW5Z zbawYtetH!o?+vxX;|-68Pl5yH3r=&0Kj(Pr`Rripv!^`a%egZ1@{cZ>_&y7qONgS#^p`Q1OLMLbz&c z1XmU97o!TfJIR%$afBMo1b^-D1&jKHBN=r>|3^92RK&joKmPO_%VC<1Ogg+oP#Cp# zJy@xTySpe>+7hQvf7yPb)|2821+Jog@YL9l%ZfaDeBvCNomrMCufe8l&MapZ+ot#W zQ;nAmm&TvvwmF`l_wg6;eDm5X^jRtw54+U2@`q}f-8@%BXS?=kB>CQd3TZ8D*AAjr zeSSFm{L4fhtfMkRH|R>Sv!a0vll8~+sU`EME9vi4dagvHN+*=YEcBDQ)Wqb`(QMNn z-lEOUG7l}NJJlPm-&>blYR*bWNXQCV=$mFveeu)@O`-qXb~#slfT!WR`nqmt#q z2`xNnS=pfyqP*H$RlyKA<@KaBwy(2@JQXv}+h%Hc!e!S4ggn1 zXkDbu3))_<>A2*IK)<-p%G}ZBROBn(Ms2H` zU4j3c;i-9TyYG95fx{<0h2e90qLnOS>NI7oi-iv##4z#iD;x1u^O@D zO_0%Tmkrw(F?oN|?oPIv>qZ-B1Y z-0SKQ)OSTyYoPn*4!{FUZa&9N#J?)Elvge@U%1fo&ZIEJKzo4ql zna|HxFA5z_W6z8WsFTbPz^6k_x32|A7a$rMD7JcY9N;ee7t+249+S{dPs_4eSr&dr z!|SSN6N3Ak*n@mOUq-M#n+R@Fn8OC)wLnfa2Wq-M$c@J&owJj*-53<2&UCp|`>2*~ zsF9)`=28002u#m)>x_@Uw)mSI_UKFHev@siukmcx^Xi^TXtDDu3SZ0#^LJ<+VxtJM z`BBj2bGzO5mC*7-Q|&aK#r$K>wmL7cpQQbychN3(`Avd|=IAVZ-QF-zX5)xp3VgUo z#HfDo*8E)SM#y7%e~Zyz6liAEm1c|FbGhqUy~N@J1lgxO3EZ>y_l z?#Ux>q+$6_bmG`g&ZtpA!ZFnslPBKp`C@r~%Y05JL)B#Y0BwYurmbrK<2UiGUHJ+j zitx}uE0Gr-C9xNS2S2@P_8b&2XDGTiIW5S!8XlN;8t2@xrSwbl2(yk_F1y>|F{WE31{>h{!rP zVc&57W%se^`L%wmA*L^?ZI4^VIeXWFzxw{n!v8N}CBeE41&6O0@a80Q+6(z)6fy!x$Q7o}HhYo>%X zeDk0NrhWMgY*f<&7-VGlw)qe?0r`oV8(r?V~)Hdw^*?HPsL8A5Hi zyi)TLmA%rX%;Dv=mdXuPZqF7fFpyjIC1q4)Q%rtEy|+FLXdk=Vi+)Z$BEsc6%8hwz z$H;NRUOAH4-9VF7YFOGaL^1625VPd)a|S+L7}cpSaOxnNaht^#d5+^Iavq6` zTF!NW9kwM`YaB594tn-xpLLpobuyt-s~NSagebWyO=v`9TB?-mifb9gBug!>Tb8&` zH{rH(vE5yAhwz#4=LrP@x9yt>KiaK`_`5u~L+PHva0g7AKhFYF^PzK$q5+xiNv%H> zF;x-7d8tUUfT@g6@p^CK?RNup%)z6J<%}ca2cr9W`l%_Kb@h* z7$2i5Y07mJvF*0u{;K1wt*7dN9x3Q?IfWmz7*!uL z=W1(L_+M2u#Tk{P$U;jWJgVx3(Y(gdrWg}U#f9;X^(78L(#^J~Dy*FNC?z~4Z5=m_YP@UOqYaVHh$(Qp)Isy;}?QW%Sy~a~8SL`tY>2m-smPo~CM@ z&BfWcw`=&0r&xU^Y(a=#CPpgpN(O(|sU{9XBfKzMz?xT|?IQfTbOFvp0XxIVpMk~E zU?S5Z_%h6IgYtO_r8Ymko7HdK3^3k@- zvy+czSG(W8AYh=wEyXA+tAfXxT3Pd+uAO2Ry|$c>$+;FlBrFyg>A;6L_!Zs9wP35Q zR&>P+UdG;Qt|-}RiPf+7<(kT3`IG&x(Pbamn^p6TB{HGvU_K%6c=4j5?`q(-%PgV} z-okg;j39A*DNvtg4jH1^q%U=4#F)SJ23H(K0!y{}BjH(0y&}FzF}sENK=qm~Lt1Xq zo`keFmYpE*Nt_(QV-p#Vo-}$@Rc&SbAlr>ACP8g5IgKTqfXgsw>&$2WIJw#Td9x$M z2Z^(E4V)2BH^vgo^&_*mSvbsCxrBM4ieAGi!tmRuE!W&&AOT?70X}%9ThX2(x!?g$ zT-KC)Zs!4snk}1W(8=eeYTci*I51Mt;9|FS1oTO_5!Z)rAzI>7D72G|THqHL6j3e! z=JTWGkT`nUsAlCXBB3M@Mewo-S(JM}v-;!5R#W{zcXDuNN45$k4z_tKnXbC1#yB7^ z7j;Y-lW|%oBcB0`-E3zo=!mgiw9?mFb7OJGtG)JXV!66%!ExdPT$r-a&8u+;4G&9) z;j|N_W@vLj*p?c;$VhK^+&(9Z>hmYivl$j{cs!Ssz917U#9EY3>W(Uif2=YC#F34W zGm0-jUb~Jp>KR*W;ci}BGhJ-Tz3~N~Hc&uUGgr=^katIp;2H%a0A9HUF7$aJo~~Q* zc}{9cNIMWiyIyo-2W-%6)C`bJajS%B} zDwDv?23=%Fc(`KA{tV%@3neVMcOP@5jlMGm@qO2qv%n#dH{S#r4e3nk?={#AId=&s zm5S`-@0Uu5+jAtX`t1Jd*<{*meD{Tr)sNb!re|)5WDkF%Y#AjE*sL&^E}tH1?82^w zl1$4DoKC7ig*j^`YngMqzl+3S)YOuTL%h17 zmChYp>l!m!%ICMxL8B;FY)gp6+9xBh!dHai#R_mi(LIi=r8u=t`4s5Z&L03Mnp_m9 zBKtikwd&02z`!?+9hf<6fGNl+8 zEwxqnMILwwOt)+AzmFCav=I>JlVNcUT5rQj-x9t_k7LRW-k(X#OAA; z%yry?lkmy}T2TBh2xqgsmrx=5}zPolXKPgvqQSOI`)cJN{q@J!& zw&*3u%uS&K&{ZypfKoBZD#Cv8?>1Uustn#z-u!EaN-n;T{`~TmjKckAUbhk&yv^Q! z^%XQP@EMiAiB37lf6-81(r@pwkN?2!lOeIA0imbM^e;2ha|d@J4+Mt!Jq*wgObMdS zes!t!)s|b0bfJ5Q<`qxHO@hbfwK-R8w3`e1<9R2!vy{%Oibs*pL+S0@xzubWpE%ge zH5#HG;ri|EYu`EuQB^rkI42-*9S|L^dwWkC?LTuW**{R9VE6qDKe$8JqWrpE##oM4 z^Q{bR+NI|w)z5sVoG<3+rbx?vqFP!Y00Y zmroUSeR}JggP%EGV)_0D-t}FD(oXP#TIS+kv$nVOzki0PYu z0*m|LY+1Xtr()@QPjB0gbhpfH6WaXEeQbxm4F&OSWHxK8TNe1Qg60q_O_4gZU1N{fk3o15(A|-N=X3J=t&M`)0gcdZGKQS}y!xYrbV>ir^)nO z=ZnRPpK?5X z)_O2^Ih^N_{JhLVf0K(j<($6nm1VhQ=nw z(eh??Z08JkO|xcmWH&e2vN$!Ku6vJPYIy0`mix@#hyKLtH=ZJ?&qBSV*m=0r9+rQ* z!qc6(uWMHHzHgF7VJqY*eUNs0_TlHMJc%#QGblS^i?4vXWegOZ(?41>MVT*6sk}?S zf{MPuIa=_YAk*hF5)_UfJC-&?+xUtzAxHGaIO>3x)QNZ7=s z4jGmgXoPDAGwXfdBBwT6>NatFMYgV{XU6C6ecRVQIT(bT8&=?BsT9>Kqfr-oSh(2A z&lK|@e57#SF-KgeWN$!nipTynWs$E`m|NEzl4aCl#8b=`N;Peanbzs#1oiU9A1!xP z{kT5ULcj!pKILtli1?Ca!APclt1G8;vlhy@7G8KGRkT z9hQ>@1!s)6)xXSU94v^B@#R)n40pklBCDaHA+<`kb|rnVeE?5*V{z-eZP2 zx{)5M^vJzdeexmA_vpsGI^r_VKc6{uSm@$vTqb*3hGbm;Bpojhu-1OM0Z|~`yG7C9 z0(Z#yns$L-U*cGxRaRR1JK^OOJy%|u&$tkq_sE_^YeLz46FBi~5Oz+%38aPZ1`+@< z<8mKl?an0$4Q|-pa>=Bo0}=rB6pcgANq|CT=NM1kyUM%7g1o2eOn3aYVO^vsY$Waa z&7;!NKMX{SD{p4b624!x^5!@)$&Jp3Nxxx_(|JOrHgmEX6ApPhk$myI<(EA=bLLyi zCaM{35wr*TRc$p}$>RZhX_(|Lj6 zdpewPPtYvIl}-07DMDJ0-O2wE2Iac>4wemLOyoE8h<4!4RUP(jI^;<>bfd3Q2TUEl zR8%pO`hZ#I5?_(D;E7&U#5WIfskxCaFAN=%A9WVy@AqSR6XZ~7dxJnjyQ~?j3FSe= z8bjG)b)obK%tu88CK!qU`P0ca%qdd=zrkq0tW)@%Xw!s3h`+L6EdxMQgWo>QculAQ zBHkE^h}VUx&jL-LIYxkgp65TcEK`C&KnHcq(l#)lIxvI*J!^y)K&=1)KY>8FHh>Tb z%tRpws+WlPMxsyzYZ(}juP)yc|0;ZPo7iU8P9!vbppU1Hk#8bOLI6?`i0uXhP(l1F z>)-YIr%e#e6f;W?n1{h!)YkSk(eyxmR{t+eg*e3aOX3JS!u=oov~&cfS@A{ZpVyAR z{pN0B2s=Py-S`IJ$teOxFT3MOKu@uM_9V$cB+wAOgxvU-|MCEXLt?3+@zl_--9QPb zBn$FG68%IBftjE}0M2XtU(a5Q=yaUWUp^P#4phk=M-8|;Q4q=D!~iV2GjrMbbW#Jb z3iQMwA*>NgfTlzueLN_h2`c|GzA={69eB+&P!k=Nepe5wKb#-nCi#1Odll*J&`YUH znzt@hlTLiMCNMd8<19Tqe1iB|I2qrd5ziU1^G>KFb!ewRBybTI3PII_h<~*+1-9@h zB6obRJazIe8}QcoCmYWW!>+3T>b_%d|E~MLHuH0%{?}KDvB&NUX%%tC;7 zx$GRx=FaXaOU)Y5NqqDE4}SHNrbWFoE%EK`?VY(0cPuf|c51%6as3^&{@-q(JA(al zft_t<+XhM?2;d>_^Se>Rf8OsKXL%0p>}|SGNaGxR_#_CZQ8fbb1cZbeC+T;qM83vJ z9xCE)ygM3cR#v1f{AZA$zdJ|je{Rl=b3DYrADAhJ{3}v?Fhx&_$p7p3;0{SRu!i)c z)x^w_Vt{`}3*_KnhwbOQ0_#f&D|2bOt!>xad9mrq4|DWuuq_E-X?nVxjMR=hh}0bvz1RyR@>&>7k@0SpM8 zA4DV=LuC;OSD}S~0FtH&H+CwB1aemAZyrD&qGmv1hJu)w;fueqqu(EbVo5q9c6oc& z5dewQ?dQb&Dd(*ae~-7@S*fDbhY3EWwCPy%qL-$8gXItYwHqIr{1 zEg6A5;BbvFb7g=92q?!qfs)V0zw=TpB5Q8l2Ha3 z)sqn=?QRcYGBPHkOJr0>M&o3}Mz`BnfsBI4=r$R3lF=#|!2mT$nwpYP3>iHqqZKj& zj<@{mp-D!rWK=*#U1S7e*zF-oMp0z+h>UP#^n;8}Fp~Q+?V<`Y!jlmL@P`3FMZh-X z$jFb3Qpu>5j26g97BDJOUqdpAAftRT`bb91fbo%fsFD$ijPl5+os2fg=m6VpUwbl& zBBL@g8Y3eJaAcD-8k~%L$mk{+jgrw88A$^sOzLYwMkQp_PewF*cKHsGQ79QbN zVfPZ-1waW*8AJu>x{HXScz0-k(Sd+T0j)I(8^Cn5CHApp+SK= zU3%)85vmuNPLH;ZU>z8m3Fqj-}VNyO-u`b)E!W^e$ukC*Fc~!66N

I(53{Ms3^kzWB_WvAI>H|LMjRngv6AdC-#HdS_3s7tTO-Z9ebzA>tkL6YlVUem{&3Y!yH+8{kf~PV5Ls3MhVF z$v?{-o*kSC+=`vh3FH%cpd>1qBs5GsRJm+WS#+_ z2H23bpDof2MY1Mqz%h`{9w?9_%Fp_rZEntfeq=_Zvm?mS;jp#4t)Gu`fHiQ69_9Nx z!Pnd0*5@Bmt^XVZb_4|V_dq*)*h5LC4Bh#E0=t#po5*_o&hm@+2kTEY|KQxE{lQ3_ z!XI2agr6*b&Fv@W-}Jvb{G9vWJ$4)ZP~+#4TmPxcFY13{CNAA?i?zEF0Qr9bt?={p diff --git a/lib/xedit/zlib/win64/deflate.obj b/lib/xedit/zlib/win64/deflate.obj deleted file mode 100644 index 973d2b287a12d599d4510fb8c45e138bd8150f15..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30275 zcmeHw4|J5*b>}zI2nH+|VdO+D&w;9MUQETw3F7=<42++Z*4hb4CF)l+d|O%^e#CyE?KRnhH!jTc+3umNMfSvQ$9aFH(1@FRtJ&yv^L+J+TOBrbu5fxKfu33 z_}A!!R^Z{>dE4$g4|H|!?d}-d-P*Tjuw(G>?oR^Pz4JhBu(NyjLw)-{ylHn=cTayu zwtK^YJ-_DM=4@Hvpath0V(|3Yka=$J>l{3A@IX&Cmbmw(*gXT;zI}ZU_wC;syYs-l zfxiCkLC|m9aLa~9s#twuigk=LKsj)Duy1c~Hny>;>DKkPBsVt1KGxl_e|`Uf+(7KE zj=ui>!?BM2U9s&QgAc?~U0@p1tja#aPS}aypZ3@M}y!(QO4@h{{I;d>cFV+MM{K+gbL&bi|TI%lBQ z4Rp~!?-;1CD_-LjTH_IKF?)#w(68=;enJPPP^qR8iHjr3!M6E*<~r z%*@QxXI7$|CN8=Ouh1Ni8AN`l#>sB-lZ{SpxlZMWB2KQ(D}sJxDDpcMj+5J@xQDZA z$0MlEdtf5$outmAj>n}z#c;?g+!2%7tF7AeLv>Ehlv_MkxqqTofBRbE$Sr+T*cKw3 zF1oj(1G@x%lsjGUZsjD}yEb~_%pz4XKNPQsp4eCAI4unm4X-x5L=py5;a5ntDt-_~ zD@kNq^|!*I8#Hoeg3*N(a?p&T8z3uc4iG?* zH4gXLBRu!Uqu!V*KoJv)0YfpsrX!;p2ALnK7mAFb$j~$cf;5KaQ02MeWMy;Q!@mLi z%dljM+hSgE7meF{tH;7i=jb(cvgn3CI0JT|%PnaSy1w?S6us866X#hsNh0KeFs>HBQ=9z>?e_e|$mE4^egfYS z$TY!(S|wOxP>q@mj*J6hJF#-TeGpqW>_@YO7rA}MKG7dH82;e z!V|3vG zS4?-y4GLLUeIW&#Y1)yinEr%mIybqvEs1W{a9zcFW3AM$?M1gbdO93QjfIf`1h~zb z`I82doccbz9mDo#-#H~}X|G!cDJ$2g#16JW#?vq!&|~;eieYGVTlB=&v<8({V@`DR zH#APfRj>MB#1%d9S1$$N>P+PrL8<qrCR+4``24+;(X1{^*I{)0$G+tB3aT z8YkMrIOc(}FzqD++DmHffyvcsZ&o{4dt2t#UcJ(ungTAVy)AQTZ_E7JyZSCedt02G zv9P@XjZsQ#Y;W|$_jOWRPIUA?YZRoNpQzv=xj9vPXqny^1m-V`BKqmaxTrO&bDC9+ zp*_DZW=dV&Dm~vqp;jkpOvA*~-YTr!ziIUj z;~i=o1xD}p9-%e5bqO%+X`4qA$%M*1?i+OpS!{m!%^IW4h!G%ZTV?f!g zThUR%rDk?HG_iJJYU!e?@a)I45%O=W$S$TwrEd_lPbZWkITg7ZeTiZJtqn)({sDMT zL>`Ks`0uDpNg|Ys`rVuQqMuO}9sL(bwKTlML(?Zx1uJtomP66)o;gP@1Iz<6{(TLv z_7rMUfvi_9v=*^1XPj5`?qg9ZA&Oqsa_a0b`&y_~l5P&5f`{LD4<#rW@IJJv(c#j; z{xHc$q9x(%VvPPiAf(!%xN~gjI8BmMyDTK42ru#=5Uz0bF3Zt3r7q9(wbsP5ywVyk zZ!@8rdU-n;Q|d}PSPj?tiaLmbm(xKCN$AF2j=NqmxUj+_w&Xl=EsvU_8-M$C9_NKr zT#X}4zcgQRB$?++iuBMPCF_m6NP)aReVIQJ+snV%=)nYCC(Fj^VoR7nKtKX$ALEh7 zZWTHDG!eu=99x_HC3>`Ell0h@y@?+8XIIl>Z}$E4craT#f(K0qS;g&LHWkGU^;A3A z>#5ByyEH}G^>M-j0>Dg~H)N8VAG)uE`o4Loca%`?n3uYxgt}!e>NM{p(WKHgo^=!G z9ZhDj2ie_;{{+h$i$6{o=uq6tzu2f`PYP&;H0wM+%9?+(jWm%#K$WV`uqLt*!u1-B z+@vB%8I~D1u(Jj4Ee<#i(s)IdR1^>8I2e`0YPy!9s-Vovilf!>UuiC4${U)IJwRRr z2Ol#2uDdm!QL)P8S(iJ)oQiH!6G}vne_r|=cXE4GhM9TMFni`j6D7-5h@J_jdQydOdRDpU890Wt_EEW+32HQ;#LPKrEOeiMqvc_oNcSZ5)2atJounmR zszv|Kx`%yuc!bFCp@JD==d#8`mGw%MN#NrJFWxW#gKP5*E?{aNnN=H^8lGu2`N96I z$?rd)VydW3n_40@zKbj0MYz^@nukeh{2g@Vd75L18cLA4Aw84E5P-y~28zOtzY9rE z9Z+0BN8U-n16N`|D#rK$&J4a7SArg<#SkNzBvlQsH2pxF#O-wb5&$G5-!qkS&- zl7_2{R$eh&2q?iBtl{ADCF_^He0lIXVrZ*l+f+JWQ^%BYF^J?aFhOQGljDP!MJP&1 z=g4*RSaNJR9vSBdZ89?0>xoZ7aRkxz?2SyZITRtA;~|+S4nGBsSg10&RbD3m0Bu{-811N{qdHcWAY_4&rS(S7 zG>3TKpD2v{Ht{HF7v}O1)sO7oFPq&Q3ak7-m?M9Y%KseYlTm7M_F5(^&O@?9X;W#&Zj2kYgWMPbZDXGT77&lr{Zefg? z$m6rF%=olh(TJM7{KVqPiN5#nX_T`dZt#W@^$&~6KJ%!*b$l@*~g0z z4s}IPS0Nmq`Yw_vigRRE0fY#-MMqySX><7U9uguN!-4c-b^Ij82RIlkaOoKT^Fn!wJg*FF#lpRM;-zHSt7$aOpT-D)^Qvl6a1eSJ#bE z3;4K)Trv+cQS6ZjL8L-FW6xp4IWWmMTu7wjuU$Y)154!^$dxU;SRfX!U5K8U;B@p% z;rl?)2^6P$3L})}hDnEUejDSg!Uz>*&`j@AP5QNW(10{GfK)^tHqs;r55D3S4%yAp zlq@N>e>In?IHGupwW6E6|ajPU3Ai3f!}Gf?+>(L|obGbFtv=H~=t z=g>S&hM9UUO5c2E1YTAf^;>*5^u(VF%g=wjsF5n@`pYn$PIfa#X|R|;f{!vT`ps~N z_2oVAlH;Acj>w|ltX{f#5?ilMiKKb?cXnax^<#1Z{|D{jAk(zj*ZsBH*QLF)Zj6dk zzi91DI=K%BtZup#JYL<1(6tG1d4}hKw2A6@6r?LzTzj3PwR-&`$-VtLB-T6q3!v|WnMiIekw=cKp-1%CDm;RV_K+;vLuS!_7fiVf zuk^hXvAvYvoFoCE_sVa69vnmt&>lIOY;h0;bm__U9CG|)aQulZ3GwhC-~=*y3*PMl zySL9aEn<@_q}aEnz2nR|g`u6(02UsVX;5IZt1#Hsp*<*r zi2+U_6pfQ#mG_|UiYMoC?a^7=wV#*Ha_vD^-nA!w?Ehj{{XHQz~K2H83Z5oxHgzcwBvg;*3W*&X_Q9#)OJ9 zawf+aV{5^iouHUL14@7u3^BrW&_tiR);>$ZtP-EDDaCN}P!L=9R@Jy$r9WsFuTtzO z`VllOzh0sqkbqB&Vd~0&1R9F&cG;&5tQ#T64RzNyOq`g=egs0t&8J`F0?MhAW7z=} zC(A7bU%Km1KfQv8XBbh>!IOGjC-wB?Xz0fr7eTE}Tub!$uVcxe;*?KY`vF{IXwlag zI51^xVh4z-I9x#cRAUPxl#og|kJ@hXDBI15D4O(I717*c2xN04ay39L)y zFt9FG_^Id_5(~N5F}NX(gV(BtH>%aYm9@*KZd^KgrZwK$Q;1LnEDer3I=L@Vxzd_< zu#H_|%^uh6p}X8)mumLrsu^9aC#Ms2iFy$0qqD?Z)zo6OcnnDJPD`alMGZ+vGF-gM zNs6(d{CO6zSB&t`qh2vW!hLY0M6?AJ`=SBJ@iJyzIYQB`{5uF6{u;)C;>49uhBRUw zH8hFJc(NoVAsQ%~zX25kgeEzZI6y-^jX9Y(rFAGVIWsAdM3l87i32K?-{iO1fGkTJ)n!2Erm+_UC@nh1N!ib(OGZNBd^+6aLQ(95v;(bnU0)gC_asSpXTD* z@AHd!tFG)oSV*opb`vD8hEg9bh#9qT!Mt#`rduLMPHG8zoEv8^k5ZghNCA1N)%>w6 zDgJ!uCdKJ04E3?4=%$K~ksI zr1cSF9vcH3fv5uTiuFXH85g%1V}58A)?-ZDQlnCj?(t#GBtLW*GQJ04OpPhJhw~RJ z$9QHg=}LiIQe9<_%$lk#!>?lD(Up0{0v&MB!XB48!rm7Gv08i)=(KDkXbYjvoGeP?>P)axkC#@rsOxlU_S5a+G zVe~UZ%lvQ0+f>fc_b_a+M@Q?YuV?J!JBzD`2$lKOQ$9uU;WJ8;sR490g9dn=@Ja2; z@BbUNsRhcigQjrP zPKl*8zNO$DhV9bT)IZ`~qSii%uT-2<-?X$R64zp_Bvoi7+oH!2ISLu2221(d3RRSD z7nD`mfKnNG=cUuB>@*fOn@+8>2NPeG(CyZZ!Sr&YX+^oYLtog_qAHnQ^u%%Fr6&%| z6{t%3UNSQPADjjJCe3M>Nn@Do`oNb>+J-6CXqk`N9_oISQ#r;)Blc!rvsB2gBYaY= zCwPy_v;q#KC$52KYhP1ZexC0jlwYn*5#OJbihY+-r+u&TFCd7iH{K@COftoJt~iL$ zo@%zfC*$%a-jxuP%EN)PTme!30i3yifB6DPivZG>5J14UOY80iTo#SAF0AN2O8`Lk ziuaQ6td*;G9#xC0C&xQl7Bpa?RPp~5l6>k*E45Af)OLwJ`ATimZNIt>Sx(@{i({yL z)*kO??+>OBu+)O}{lTqRJN7gr=Mv)!2 zf_GGxPp^T26gJ5-z;U)e8vy0~cl|_M#(Y$Ww(FMAlRS)gdmCDuj5WO>?E#+`! z4uO+$-O&E$?M@A%Er=!vk+~+OIE<4ZFkGIrTwA|$l*!J}h?N~&Hzgd1n*~3?{NAdo zDGpOnagePQjHh+u$E`~p{aJd)3s~ezz2h4#_jG>m7?fA-9Vaj09Vf{X1i?FDYV%fS4I%s3lQ$*ajSGF0+xZucS(5>Ux z5Grp)U~5bC({e#nu?%{{L&~)pD&t!HGoG2WBA^^&&6qzn$ux!OXA^wl&sje4S?hwQ z2(rYkwJv;3k?DaGy$yE-9#pR^w!Jir^zhNV%X(0~I``@pTZ+pySHXk2n}c)G*ZlYh zwIez@jq$Bpqk7D5v-mzBZF}uKdhsfp=mqS)dBbhlZ(w_E*)QS!hR^9lHyZopcpOZq zk?dEg@wY4{3v`4tqQ(qLn)AQ6~ z8T}+1jk%I~rn>)^?Ubt_RkhF|wc4+{WYa}4odxd8RxfB@hN}D}!5UJ)`%A(Chm>oE zlneRMlHl4)!t9A?b1d1ec>jO9qO=t}#Q6E$t_04bhGadqi@#a<;36Mu1!9PkiLPCzCV4^9iseKmnf=)O*#|jWBvh_3qx9ob4pj@G%~{EJ zxbbslpPoNk=KVQJ=Z?%-Z?0qRtdGu}wQlaL8p`tcN@nzUwK`UYB5?Nr7b3mlT>Az}EpY$fP0{7rl=L;DH#Z>a`#iJT6k(PJyj7aS`DU~cIM|)I~_~0HQhHkukD(1U~l;Tr%>B0PK6cOvb zmURy~q()SMmBAFTY#ABjswnbsk;tS(mQlkykXr_#_T6*Ud? zuMo@*eG=i-b!*PhC$Y|tmxMkUX+ocrnp01uZafi}>60J&%;?;!>yQ=t%)dBf;+}rI zlitk5l3?zfVC@Lp576!ay+ESwsVswQKlKdH=qPAB1G@X7jzqx0vhx^MppBgKcwW~Q z&IQH1B~#nBY~M^aSq%u(L@paQq)Vo0)V3?0(etsYS{pOSElZB04{{V42SA>69CI}0 z1g`QVP&B74`hF!R4@k_zm5m8&uOxGUvnoLq7O^JAC4+X<|7+ZwB5wU z2(}_;oYlch@-HULbms4e(D54lS_TO_qJGH{3G+*i5xh7hwj03@kP@-^d5lYw`_UB`5I zNwtO-0LmrqF0Smuhv&D$Q#Bf!02T#MIo^Mel0|nFT>xa#LTZ)NiYp^%hg_+46=ed& zfW^lL}zo>~o+&~g7hl)I6CIe=z;PwF&3p+_gNsn%)!O(Jlh z-+04)ef~uVbaF0ws+Ps(Rfgn=SM7jAXR0lc((9M8^3o`|FG_{6G?J09m?TLn2eHpU zcP(BaEcY}et_-qTRf;SSNmgJ66Ulms#q&Z&EDj;0MC|PxIq9WM97@LdhUhj#$<7MbpJ*J4q8!Yfwe70BWD zYCsDiQ_GeBrQXoP1b`|qE#M3Jd^-{^w?WCZAfz|jvbb{1F$`#hUU@8tb|NZ1fucYV zn^|~asjEB}J<-a3(t^o9aCzkNJ8TQ)F82@?OnwU5S#Vc#cq40poO8D=oD|2Pw3ao6 ziFq>paxB?oD3F&$ntawuw!;)s5M|fVKJIuX>u>$&p44Rm0@mxg&M=GY< ziTIKO8$^x7W(`bBeuK-UA1DE@USuV}tM|}#fa>_w5qjCW4#z-AeaY91_u7XRQGL_= zGd9W$FqO3Z=`(2EKKu(i7YuX{h6KF{6?VoDkQ3+>0(R>eH*TPB8;HVr@8{evM0AON z3upu59>yI6;j#-qryx*2Aj!Q8KdT_PYjJ}?ptXP`w`!Tj|pS zB=!FEI^FYLg!HBCyMS)u645#ht$Cm0#29zjK>L2d;os>GJ6`}Kxi1*#?+vsBqLtkL z3Frpq5`m!V8Tvy&(xbmL&Fr_0157|4DR+Vy52iK zqU-(UR$cE!1AV~NwcT!@>+jV3?gAuz`yNj1rHVqD_+PiW`@AQ_!CxFsed zHdIsL)Pz<#p(P<_$sYV&h?OB{<`+^)a&7Jh>T^L08!*Aey$aGX*lk5u{ib5iJie4DI4awvw#~Buk{U?%WxL1a#w&2J9^GIaIl_Anm@MHgJBr>7O z5VeR5?yJA`?rxtptU#t=_(S-v!9T)OIQE}TBHGFj{qdyZfPUIHf@bRvjlCp<6?S4= z623cS!N`0Jji;I|HU<-ylfgf!UHz#cq=iPNs6$9yz>G$G1Tz9m<~kemo4}l}voTLo zDNN>msjmSOTV-SZ9WZaf>+xw`0%jNvkB|9t!o+OM_o!3=^AErzS8JLM`lCk;G`rA; z+T1zVY0`qB9B9NjWl9mI2AH=3nCpSbKq1neeck&y2M!Y@eTXwK2fMS97R0LI8ZMHGeV^>H3_DFpEM`4OJk_iXF+owL&h)lJHWWVqA`Qr9bN5vay@BGL_Q6j z3}o6gCf<7Y#*LeZ8(|#$Eh)l~Ze&Dh%!h%I5v4GVK&TO=Fw8|plrBYlWJD>IVAM#^G*rEe1dX9mG7<=5|Dm!f9#W#IEdhB1mB@lg| zCOPB7G>-je%dnY4sR;7#091Rp=3%0f&$m=5reV}~fQbMSK7_gmOf{Z9&5wbp3DCS3 z0}DoJ(KING&*v^+;sKgZ0uu}Hpv{ng3`2|N zJHU{veVR9b!7#LF$Ww9yG%GQPGXa_p0YjX9K3jn4574B6Ne5_pfEfzV{5mjg0h-5w z84b{U1(-~LW&)T~0h-r<=?&1l0nFzEG-MD10h;T8c_u(}6EM_5zh55#=Ia5Pdx04a z(DVQ^5uiB?%vgZtv%tI@pm`b?>V;p|9|QAxfMybyCjvBo0nFb8Xx;?o$pFnyfO#uG zvka9`PyM>q0DRZbJlx(rIJoa1E&2Sx5WuIA$kj(MEdfj#sjd4Cw;$>rJlJ<&zq@tg z)~#wy+lJ}(mUh=|a+@55YVXv4OV3~qW)BQ@cbQ~Q$HA;g9PB^vkkff!e^1}u++ar* z{M)k~d-}UILCbzqaA$Y6xv!H*@Ye!$KKBTTF`U{^joO0bYiB`f~?++xK9_dcaQi zWe;+)qrY$OeuhLein0fPX0RQ9`LGKj(b63BMbX}y>*;X@a@n1|2L`j-ci!PhH3O;( z{Rj5%?LL@o-`A1t>~-R~{lqG+7&&qN^{;Z2%Q)Lc6liAXkGeA!hq6Ar)K+A=`Edq2NjgX^@xDF{*@&$A1Z( z;1r?uxD<^^s_dY-D54UiBGq1)ZkC_cRRxVrj4Nn??fu>R_hx%BA$D~;?OlB^O$Prr D_%RCP diff --git a/lib/xedit/zlib/win64/infback.obj b/lib/xedit/zlib/win64/infback.obj deleted file mode 100644 index 8d77301a39cfb0124c23fa1d402c26ce5cdd064c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12792 zcmd6u4_w{Vb-?fA@#K*|KJq^?MxV)x5|iKyU5HLCCskAkJOYLQgGVHa zHt`XazQo#Tr|UZB)V6lh&aEyAH(cJ{PNqm94p8AwO$3R4g3J+!!mpv}D7&%NK?-QF|NM1{5jZG!nJ;f~vJG zb@9#dnzpJ~d4J($Q8Mue!dmd1YZ$V{`qcn%XUSEt{@W7pM!TsWnQy zprn8Y`h8xyp|Q5DrM;y-5zf7ANqA#xqH$~E4UNs4!)sf%wl+4!+mLT;-d5ApSQp;Z z)Ka@8oY>xKg6i_y6D@6VH@hj`ygAX(E_NnbTEbgvnzx4?Ubv+#T-Vs1sA;Z^hugPr z-PF>g#k}%sX_S#|54Xp4bXMf$=M_m|JZ^oP8WV1jZSmH4jT^=j&DZrTUmo7t*xoKp zjW^dVZ>e9do0ncsQ)43DR?~EzX_9M_XNTJu*I2jyv3g;tZjAk|o}1(9d3r|8rBgZMmHNd5r&Q^D&1 zx_tJ-q$1x9ltLdyU&^ZjPKUl%&CFt~2fKg^pH~(0@%T_Vxf} z(Eo$J#Pf5&ER_??@Hz4CfIgr6gC_p;@Ze(TKPMG`?E=<8zk$BQ|7u_X^jA&%Z-TxE z`d>}_w?Z$6eu7l`(;i?0^smsD_)DLeLHnOE@o$GF4%vTa;x9g31pN(Ckxv3^p_{+prC zf&MnB)OQ;Nq2|0G}HUkS{G{<4XGCv*|?izfaJ(7DimMJn;S9k8L_MqlDT-uQpc z#J>)i2=d<|75Q$U6nY4KDX$7R9r}+<{JWqpg#H&3|0d{V(BCDU0_+B2(7!}q;yK>< z|GtU;CS(>O|8>#~;1*yF^lRu#Jgx*zgZ_$%{|(R=K)-C_e;xF>(0@ZJ{`?}a9{PXL zm-vr2{{O+mzaE*hk$;p_{Cz8MG4#*Sm-t@;oB{nOCjK`=e;WGVP5hgo^Ps;+dMa=S za4GbM#~J_6P`=n(1Du8YgQPxSCr|?YQ}V^0&ja(I?>cJyA2RW8B!3C{-ys!ydw??N zchHx3jyL}Q-o!tS%wpvKf>ivq3s?s|jK0MGYG48MADj5!1bq?oznS=Ng{n zJ-`O&_tBU5k2n7NP5f(-S%myINku*htcCtB^d_-{t$9OVC!RO-78xCHvY(HDQZ8d>JzXXQ|Tz zzVP%wwmL1~3(gMgR2HV^1TxUyiT*s%pF1s(CHkk#3e<>xbxt5t^!+mfD?~p!Jup@D zr_2uYIr{7sr^}S0ve?9)q9&<;nyfO_6y;Y_RfalM`BX^7dSa1qtfw?G*Y2r^UE7ztJ%VYFgVbQfyF#D<4 zMJ;-zhqDt(FGEQY<#w_wQmzs+-J()fu%|n+1IgjZ{SE@IFlh$~8b$r35%x4nk(v^< zC03D?*Pu;ESeNBGIJ-sXkcIg5F)d9f!1DzhVkiL%(JqQ&rR-N-|6Y zEm9rl+j}Z#b82_wEqEh$M-G#qU*u%ZwrNy3ENNWz`{MT}DMlB5fLe=221Hn@DG%*c zV!)w6ehdAM8HGB>9_iJt)n@hvUGqY_I;Fq{ex$(Au4}-MDNGLfYznb@N-~9f(QBiw z&1u@}j-a2y64;thi8+$^5(^~BNGzAcpC}mKXnY_(9bTi$l{UIvW2Uf|8krm+&Tu1d z;$ZjKVUy2Pq@>=y!x_};xLu=;O|K4pmBkW)6AutpM#Co;kfqf52?u2H$O!EstbIc{ zJKq*!RbOJ!$NOpMjyaCAw6ck(bf+<6MH~Kxc5kxNR-ta&XF`**q|a30p#N7loki`A zS16%Ub8^-Wb?F+Z6sF;zh-nxh*J| z7%T;NoJzx~DoyoDsaO$?tl@QN+VP0$~271nE53} zVV1qL&-L@rx0obNua((vNMW*cwo^~8vmKb_x)obKsnLHX>z4EaJq5^2$$$&sNi*OC zH3Lral7nY5zc|8);|qt9y_rV3$&t<+Em}}hw07Rk&ek(9<@(8*N_HmB*mk^be-AT? z<9MqR$2+*LFjdx6Y7I=v8dI!={|*~CjwcY=J=?Uu>T&Kd11wWH8BQ*CHpW=X+wru^M&KDzwjr?i$G zC}o?X&9i$-x*VSL0y|aK#hhJXf>6i4$^;>h>321feRaATJNa~142!L@oxM_BjJ5tT zQNU)l6tX)>9W2>DLziK)QZE!dr-v{y)daFy9d|Cgg{_dWXS7qKtX6Hlza*j4;u1QC z(#3gIkvmCbz3+F7`WC01q?r^ywm%$?X{hxV36%2wg<>jOh4 zv&_FdZGwB(IV|p>eWj80$@g+@x>B1tW)Gt|G-m7$=7-vA(nF-3p?wvR_4Pe>mwa^3 z7|O_$9_rK)+7-iny3}NE1~YQ>ElLWf{*-3+>7t^{oHoJ$oG|m)`}?vb^iT zDUM*~8{?L7rnAgZM`WG6BWgIp|L!^B3&~zNrkMVb1#0GXLDLsYMycOyVysjda~sQq ze|=(A-?s3_Zxx3x!{t@Xybm$a399$`RU80?p%Qs+FZL#Z&haOK;qMIH_bapaNfs^W z2n=yDRr~3`%5LnH9i1tq+b6RKr=;VJqwjOGq%An%C5NNCt8rpW&VEtAo!*k8>nqhO zM0Z5zre4s?!Ed04}J|$-}*4Ls_LbpsJZadk?XUKrNMRrhLm%_3J8kOTRpxMdK zbxDbKx!n_VX~?1;8&cL-meC&Da`9-7U8=|5gPNoJNvdpFu^nxn?aEYgl=rsTQHNW; zOb!c!Zd=`&?3BfghQ0!D?k`f-Tu6==<~k##V_xpka?@ZA)2#j$c%f6iRSNEmvqQ~aEO^Wv`$u{ z`q183Bp%vZ5vlVZe1c4M=qIUzBhS%w3m3hZI>^51UhS3&kvf>VTa$<0NFDT#vu#2w z7Af=hO~CHyp5O#KXOh_>VB-K@F!w&PX^7K_kJ>Yx@Loc%=(?Ntl<1wK_#^8iE{PgwU8SD?87DGJ=~-Z?1Z8QKog55v6lbvOJbkoX zJep^bcf9HR=gfMhsE}zpLy+Q85 z027R0=@Wr&slUW_qwQ*r=}#{6m@f6A$!Tyadc>CHGN zGs%2Sd%~M!ggknZNq58qPBQtNb|%yxpU@=Z4BHbKnpbf?PoI-wzqN7tIy;pK_2tKp z(}%s`BUt+IG2=95#wn@nQ!H-R2f)m{?=r_3r&`x+TqdCmayI0g3#XVqZTpQ(ur+) zQS)kc&oy0U(5bXQ#@Gj=iCl z5bL)z!}A3DkWIsINHEGD84e6}y(R}EclY^``(heeZSQ>c73_GXUM`*{?0Nnp9_NK$ z@<^_{b&IORTxo4ozvoNns0hyef0lmdH@w8jPL<~x#M!$?N5mPT*l*>Ey#>8?^4Z*H zj;(O?edFls#^jMAsl8GqR_xdA-_lD6=un{pnLfSV*;}4d?)~S1DU(+9b!4GXU6Giy zpOfau&}`JC2umeqo7ab@LfXMDk+VZLn^%@^Vw%`#VP{zEbckeURCO$HaOc$@#~J5n zfuNNxh%20}&*;0UqLTfCyb9GjV5f|fInj)iN1ZbzM)2M=YySt*3!02jOb(m2c4Th9 zHB;?y%*mzY!pBV8S?sw3bta$ip+WIWZcoWFDFapAgKX`4$|!U#1&<1@!%&nS1}EMq z2S*#AFKUDRR-JolPRrAyk-P?$e)Y^;{LI%EyhT0}Y%!Q$UC+cF(Y*V?f*KoO8Ii&= z)h}2g&(zpcY{WP@!F!bLBJVK4CL``(Pk=4dyqCaaSDC5GNH{%%y~70pe_&tchK4_| z0xqo_jSXP@!F$c)jev1q2=7IbMH;J~sr2`gnd*JsP073QOm#2S%iVIOx}O-H4dz!5 zfi2V6!(iuV>=BRmn1?+MmaB93d%Pz-tk=Vy1zV!!20Y&L9`=HVz2sr9c-W6TO!}B( z)vI9V>hcbQE!Ehgrz^cr&r~ybM;eBgsV)RNOJg5`(PVh@_?Ts`#(dl;&iBn%KJF5; z*C^$i!}kiC$l^Idx$bj~i;#8@b@y2g;-^HV9E`B3e9e=XT^8IRFW8DM&KTz_T)32<0z7)-iM(z#L|F{-`=q?FPx|M{8D#nO zUDMGrqn{?zVUdxKljXVmg}eBmNS?^$mlQ^e#Wt};KsYP%&(~f|;}k_r3tXA}75S=q zj8^{2sJeX&ryxIHJv^3E5LE+5aSGL2M{$Z&4wjDAUVw$UV>pE?3zWRc9hE68jw)H* zMmf=Fv6B6W!%6=DTcYas$tT$IJpXRA%)#VW^5oGn8aqpVksal%hOxurq<^w4(}>?E zA8kv&_}P|sA0aW%RVEFnFyE)hvsr%VCZn8fFj_s%*7(-i*6kuBk7(UcThqkn&JM$H z>f7RR!|+PJ&1HC;uN=d90M1*C9I2hS$1W`>0h@w!CKrlxqiWffb+ zYPEcmJ$`OWTV1?OYx1>yQ%xeihA*}q%`^rdjC+~un(NZZvgXFbwJzgYU9(5k*R&^8 ynnfzo(afj)b&<5JZZeFzwgbP=`I*7q~c3<-#6d? z_r33Z?|r#*>zMT5M=vgHV(cO2k3_EQWZg+ee6k$?6e;);^M)u(9sW1Zk$AX9W zXc#PMB*r`WHUj?%_&#gXM|_&5?Jy5Ld*J2tQ2P0Ud$-`PuYYJuC-O+zJba-4(BKwL zftug(o5U~0q|KOE-`-4LDd&tjb~%&I50~xoo0($(GJ~awa@NVbkuUDqmB|-JM(m24 zC=H)rd)dCt>>y*`Gg5GAP73G#e70Pwltx@F{?az>$hez7m47Q=9M$?tr^fRIrwsml zandg2b6O$qI%T`Cqu>-r-7zf-AIP1Mp37HUyO?z}w^Y(b?6Nj&XHWhUolDk-^r%%& z>k;ehuUElkc{RPkXCrRaO+B@OU{-6MQ1Jle8IkHzx7V<|G?4PV<;@cPXh63-BPwK~ z0nRgG-UWRg7PilOv%YN9+V0EN^vi87fc0q!ITJ921_mq-j(NsYFlGrj2{i(9RRh#>;0&M<^dSy;q>L`FQwH)vL>jY#0yok>7=oRn=9 z!M(s&{}b*pgtY?$g=CoE~LGJLzG-P@fggdXCET;Qp6cRRtu$)jBCUWu|1MmdP>sk@5p8f?pPKj_DA z+7?4>3we6GZK2}epZqj(jTZytj=w5HJy*spfDc5|;5iBqhrL(PCwJ0zR8q+b)qgB$BSD^waab!Pqf2;@*L#HqRtDT8QX>4TQ$dsOWBF)`I@7k!|PkxLZD z?O1h#tLya2^fu}%Q6V4I>MRzxHh$h5E_f6}zL*u8e5>wQ!!}6@Il3 z5FAzCe<+3nXRM&p8S`Ri1e8PJ;m9W*22(!*>Ho1o!lqU+%}+F9f77e|YiBANOGc zURrgDoZv+>L>=JH2*>yXBu?g!3iH)QH@(cx(;^XH{@@IqyM`Li0zZAGAPUe=GIfi4 z;jguV7?F9X9}rUA^yVZ3ABF}7h%QR?HBJs6ti;r2fIjOMzZFuDiPSBeA$oTrPIb$) z&VEgg?5}=8L$Mx!!cJn^z@a5T5e`YwE*6y@28@n__EL-oFw2l(%!i1ZItiH>S@a2s zeD2cRcdXUom=VWz6UijruV;Krdy7XIEKAhnb&mG-t_vhtq6V*Xw6}KDp2-q5cQp3D zKJcXv>4VShO7`~h56;6lX7?VZ0oR7SH;m9j*uC+^vA`+3g=5QAtm6lm*W zdiwC59v{Ie>sWiUNa-L;6e$``?Uzq|i2ehWoQJiyj_W{`C2AhY`fuN)#xRNTgqS%G edOGU7Mhdp;yhe>4($qO+Rj-$_Y*7v;+tcv|^B^N!o0K=-E={mcx^-dHFa07zu|&(l43t2 z?ILAO$s8VL-KEXzy4%{fwYT&(H*{|4ZRx$e`6hto8@l^@Tics&>+D*!qPeqc>yDOO z`?BsWx0*}M+BxP5W1clq!6!#c!speUt-alS-CJ|%s_WmFzP2aVxwG?*&aQ3gb=^CA zI(M}9!e0URSv*sw%uF|Dm>H(j%rr?e%OuR1W}2C8N=!NV!Dn+BP>O!1D$Kl8pE;{+ zA#e|=+L-CXrlJgcq&Ab%;Gf_r{Ch|q_!#+T0B<5yfL68t zKgN>^Qu|0g_)jU1)>2KRdFJfY_b9&v7-Oeakbj8sX9Bm8GT@K$6#hX{J@`wMm-?DX z3&0;T^UCnf)NayR@E7RMeBd3VrQip7&LZt6HGscD`2;XyA$1n*e~R`O1Ea~*a`K;| z{h7d9NEd)V!gCtwF47g?-={nZOx;8}7yLomUk7{#=~D3LX@4&8t)w@Bf1ao4^Zlfa z;QyEMrND0^z0P=aWo}t5Fdme`38z0p`&cW5gQqS6{|ryj_dTSyg8zu}(}CYbIv@OD z+HVDZFNrZS{oAzvdf+b7GVmvO&L(|;bPf2w8EgORz~|8aytDti!E4C>D)o!JjOElK z@K5q&9H;h@>cIb*e39oJq;tSO}J-a=yBPXA+P|M!7k4*p$d|8DS0z`x8>{ONwuwcx*X_CMbEAEAD+|7KDe z{y*VqNP9>g_>1I={Wp;+!9VEiKLDNuf6m#z1H20SuX&2S_K|$>pHW`yf4uSkw6lL3 zJQ?^u%~SXXN%i34l$ZLNNejR~>g>N8d@cC@boSo?z7+fmJZF*ilN!MPALYfK#~c5D z=j^`)o(tgruRN!b?jl_Q{x6gld)!1i7yJ*L{qF$36#O5Y{ci<-6Zqfo6n(y*v=RK5 zlo$ISZ~Xtgv;S6jE`t9rd5XU8A-xs+$CMZQzl(G}_{W|7-wXa0@b5VLcY!Yh{}RvH zqz{m;0sqZO#{ZMlFY>mK7Qz21o+YHcq&o2LkuUPRgLDq~hbN8yBhLPve|Pq8hv!20|AMFJ>u%C|@CnL`{ck3n2mUc<|2x6o4F12I{da<2 z4F0z~&m`SPx*GgnDKGXv-uNGN_HTt}G5mkVQ~2|wb>RP-@?!sYl3ow~htB@*0ly6V zTh9L5!IywP&T}TIK)MS2Wy(u`jyL|l;q1Q+o;Se%-*`%U_mZvz{|V(qpTYS5FV6nK z`2Qzo|896Lf&VK!%Src>t_448DoRVt{L+$=xutW=>q|>2=9HG2b4p8+XP4HQ^GZv+ ziqeFsEG?NfuXK@FP+F2ct8}_Kx3nbny3)PIL-dN$X_Vhf`E#Uv<($$oDSyV7jg^plkf@?C2zySDYE z``TG>7*n%s`7)xGegbKFThlu``*ybET04{;w7X?TckA|a?)DzrY$#7(uDiFrEp4-R zw0CXGbugJ2lk4tI?`-M1J#A^}?%s4;XJ4+RtF=Adcl*vQ-8+;mtf!SlqvH+blX}AT zJ99x*z3n~iE!u%sk+1b%e6e({PnMAFU2PY4Z@pOMj<&O-GuPhRvf~ohl|WUY96=`n zAp`m1%-&kt0Y+>!`dVR8$KXx8*s23UR|WpXnP{`Tn6qvIt^Bmvzo zcvb#TeWuzk@RiTb?4PO7s9~0gav@B8rY9&?@G3z!1*l&zlI;h0!ApU9T2sOEfU^#+ z2VPq{eD`qwr)W@ecJtiCvuU(GqaJEG&Cpia2^6*T5>G)bm()iIsG^;}TM9S4CH?Kgru+a6?rTW4QGa&irPLQ}#?vMH>Swjp9b~FD{(ViE zHrt9{8LLGF_&j>kG0&3~gE30|q0@m>H~v;4uf@Fz;ZPXwNt>M26<&}Y_15AXM{PqM z-6^?yIF}KzE<8$^k+GEMW@J2-7^(f{7ZyT#`DcZ%!m~KAx-*JD>qXPBQGVz2lt=_*c5=m8Ri)L*|#zFsVD|thvdC0GtsB!(MT2r5C z-gPn&FSKnotM-TXXP!mw@&kt$X967=^R3zDMNNr+K1!x-XTQQjemLF=0i{7T$iCH} zsxwCiGmlY-8P812bjZv|Es{BuI<`f}-*@2@SAI7n8aS=4jFpFc>lX#DLXCeac6%`s zD1$;~O#6E>z5iuU#yaEKqALagzNZ@Z3meiyfJ7#d#3`}icQ$xr^hxYU7h{J(;?u0~ z$pcY_*^r-{-0j?{b=#`2B8Vf?B#u~GWk5^V*pd{#J8^8;e{4@w(MCCsnc|NxUhw}( zJyp^N^~IuR)TM04QW4Uu$!h!Ed5h{3iL9@J$#n4RsXF@7qSLM;>oQEgGLcV;>o$+T z6i8-6(eFSn6X!()nqy%m8h4M^*y%MYNm zee+V9NncoVNg4WrJk2II8xhq0<#%-#*C^qPa5_|J8!8=N$SK6}9XBodP$}d3EDOl0 z&x)z~Jj7DyHRyAx$xYGcisR~Y>F<#~zrm^2@%710B+#dx%Q*)KEL%SKY4R~mboqWK zHHtr+*5!NUg-2QC5@NC^U7)_gImrp;MeF@<3VJf~%JkTBrq1q!+=`nK7uz2YQ$7)B zge9cF@kOPjG*}ljvUD8pKps(1WR-Fgq|>J&YGPG}hG>mpDSLpuFB-7Kh@ci8d6A8Q zMTKwV#ma<)%YDFB75f#A_eOGu{Du=~bCmZ#u7>=;EYrU&+-%TR4_gi5tlbTRZ;I3| z0mS!*2q|Hosdqi!2_oqs!NJ^&xPXYu(MMAKyvb92_zptpaGMcFOQPkdGeT++a!-f z?p+giIPqoEKCx3{`%8c>lA5`Ip`I2=r6Vs*3)P{Z+x(61siX#uJeW&Ic~uBOBr4n@b=&*z_RwQCr{{0y>+y+4zfblJ#BBhpqY2J2(^gPHS$gNh^c zqQ*_$4(*%NSjDdxm zK!>{T5!%R0r9~GOFm`^iFkIr~PR`6>2irki5bdzs$zs(4x~jF`dk1>XN0i&_IbMDs zcm7F_KQ1~u(3v-Yodf;N2|#VTuwlmGIuJKe*8xab-k@b5!9j$3iRF(c>uR5N z_3yvp*!53*MN9dm_3T+xJb$Qex21`7IIh^ujMSu*QLimr6#At}_R6+IexyyC@$+BZ zEoVd38}<%Ma}7+EW6~{T=0vt3lWr&+t~)59Q39N16`pm+i12h^gAQ}j&~OzMIC-L` zJxirQ*(;w58Y#subjj&!68? z9pEi0YWd?$nd`R>Jy>^aJCE05t)PwayJcIXwdRMX5$x6$1IaHKA+Nnl6Q9(@$HT9# zFSxPkKiTcfiaP zjVtB5%*y`>N@2QdMkZ;R9+kyiTk}r;yGb>jybUc^XmrmD?5LS}j*kDDRb_-mw=Ei( zDi1-kQ>8%vfvNIiwDH*8ZQ(Nf^s+aCZv@{oO-ha_AT-*vPF)L zHYW~$kxX;sp9_bNK8@zHi=QhT=DpYx+OsC%I$U^A(IY=B9A@J`tb>~sP;?CdTSMl$ z#K`2Oz~8c`KMno6QkDYrk7f>0o!dey1rMCG08p|Dnb<4FRB%YaQ=WL0@i=wJ%xLSZ z<887kJ$w<(=G=^r5S%n4KbGcI;KGO#iDOyRp6Gm}$m*TK3)XE#cHEVCF;v&+s*|O& zg86|)c5xE{TJRdX9kv2Rg)Dk^^NCit z-)F)9+I3hQwy$NRKBJupN2;KcM{2Y$#~Z10PEVJ9uSTj2&ivS^46NDA)4Jq!-r3;B z@8nU&>B*^$vahmneC-}`yixXo+FVANKv4&FV}lb)9cA{UlJR-^M%k#Tq)nCvo8*Sg zKPI)Gn`o}do#EJ5MG)%O_zmUv90^n=l!Diw@8TSfS50iH-(|0G5ni>XvAj>+Qc^|h5*0mdv^Kk){KsiJ%Q zC5QAyovk^_h!0FUH-jRlV&RFGtKQMh?O89!*9VK#HQ*vj?f>N(r z)yqL%|Ch94c{vzf^pZ8*_+qxaf%O&u+j^0xy8OTfe^NUlzE-+PYa2CM#aOV}luKCU zgU_>qpvLHN>636!_B9>>1Q)MF3Iq%sjMbq#>Gu|}9SRqVLv>t<(@DjVbqFj#v?in+ z4E#`D73VI7k%F>(Rolsq82njVfqOxVW~J1`l2^fOE7-3EA>{Ieg!bG;e@c+tSSm^0{ zAZ%krZ2!c<@@%be)bPsN*xvpCB^2vPQO|A{IyvW@Qav#*GU{eA>fo|lw4pj8V^H8! z#-r=E_|nG_#|_U90lFN9=L-BM9M|kMDo#8~_fU9Z`KvFZ4bl%OA0MoiVy91ii64iQ)wTEw3VK5)EMW3ELVEsfC9y z6jd&_C3c(sGF4vq>M_}04xz*J%e}%5j%bdek`90GQ*y2NN!Q$e%Hx^H$KG|$|0pY+ z@JvoGEP1?4=ZdpVvI29Xxl9M+#Lc2KkGJT0dpRwbT=&VE+_@GmH0q0XSbUPiosiI2 zS|wD!iVEk>J- zCRZ-SRYf#XJ(QZ-&Cuw9Kl&mrMb*lU>W_hy54({`g^^42jd};&hSvN*eX4K9K^b%7 z4+rBopIul!_?*)ad(njfSn%qD_g>O^mesk)o8<<5cm>%L3O5Wx&cX&=+=@Qf_t!JT z)6{2_O`7jr7pPfQavoRBGeXeoTWS?5^SE>CDk#<;lIkZutF?_rUJm;C;Q?{4v|J#? zH4lZx;r`*UzGZ2wFVtzRsAo>V5x8!nn$JtwOKXiodX*D#8n8}+8^7|jH-8%oo=hw@ zPiGbS&&!Ww;PqFEaKc61I?R9<058>ALb;^Hsv+N+5qRm4Z`XyRdgh{@;77)MY^ZM% zC)jLqOXbO1H+n1~RD+WSDuMBBtzBROl?w%DuxhZ}fs@o79AojM2W&3G#-Wa*jn#4% ztr1Ww&;`ifiQiyWFEp#xpW7^jFPSuW6oqY8Ra)VtC_@h)4fR_cJ)~b#*VOx7mCrAIR!?2Il5T!l5jarm$0-xklCGk!Gv#7T?@CF9<9M;lKO>dhjO}3Ow>k z(#8_utG-ii#`^qwhA?Q!+}ZL-?UqG}U;bX#wN~j&m38Em3Zo}~jbD}1Ei~geoUP-N zbQQOUvq7(`D3o@Wx&#(ItNN{1#x$VwcT@?LB465#Sy?+2r|(ZYC7^N}*i*1pnL9OL zq((h25CFJd;M(B{xd2sF@jfD5eI`YGCT3OTUrFzB9e#)O*N)U#>P|_#N#CJYFSZwa z@g-Z*I$O03`Kd%59>BkW4au`uwWD!wjkQW;(XFP;U&rcZ*+F@kF>$L@SnQ)#pU;-t z|D>T05{!})%N@P4UsqNsZCNf*?~(IV&TW#JiL%jTM)XifW~7W2R8M6`#wyT6a;lKA z_|n!282P&0UB z5taR-y#+yO|;XiALV2$NpPL`=( zxNJlh>zkTb3;tRb2|qz>@k?$@xcTEdLO~`E$4^VAEF#lQzuvF+ikn__Az}2Qj7%jJ zwvfH+BC%=G9OMO)1gm77gBY6P@u*nlpow?d@=nK$F&VsWAj;BIIvK7o(-dV~@piY# zPRP;PH7bgTRU#twF!H9XwZ%q3d^~|`=p~+XI7UUPR6cuVzpk)TEPhP?bR3hZ%tSr( z*gg@p;tAT+)kd*RtEDNes3?V5nW24hc&XUv9sxxbU93+L;za#*t|0$QB6Ydu?PwVF z7?5 zR1SMhiV;G{umd!O>+Oyr%+kdirg`cL)nu{Yz3Y@XXZ0l}FZ#bO6jI#0;$@a|QTbPpa~`T@bz@e??SU*80^Go18vY1iJ~g zOL49>{)+xt%5^L?tnsV+=D9kmBXv|y**fSHGu59erEt1nhVXKxL>V#=xV_y_aiVTO%)J7yum;BeG^C)nEd$(<2E`LY1|7+toxf6wS$r6qm| zWN99aTIc~9wa`5@TA_SD2ePz#Y066QB3YMd?n-Xy$yHYR!4*XQfc}ApZDSMfF65FW zKQP6#EP79xTSMp^UKFoUS}hQ)|V`3gM%v_YWrXgF;ULH7PU`K>gK^;d@baL|1RNtd#u@ken1H&Ba+`K!Dx`#2?V-cwlVFz08=jLK}bp=!jmw33QxrlMq#DVbhkrf*@5!n>cj(WlVwfE?LfbYx_bEfc}RbtM% zz|rL?eDaifuHeblqxoAR`BF~urJjKAF2@fppYLOX;PasX;Q7l4{Ot(*D`Hjfk>B78 zKJ5X(^W_Nq-3a{Q2)sQ4W47>fO{D%?LaH&j2z*h5r!FGHUqyJ{1)RW2##l(=O^?!M z@hvqcG^SZd;*GSx57_X%S)m0Xlm^!;Ygn5APTNQdRgdPHVztSG&TdbTgp9rBx zfTVoFJj%C7mN1_Qp~rweptR5Py;GrsA@l^0w3sl%e6LmLsSr8@B>tN)&+sjgA;Hfg z2GH|BB4fgM@+(2hI@>-u`gL~ZO4-U!;w-DKrtUqK68()!akWH=#P;|n`umpRf(gBA zJBcUq+m;FCkzcoz&wGCRmAr-IJLy2>;g>UuKZq$giIQNPeKh@xA6eGS4OgzHSuHc2 zEuAn*$=14gQ2M2mHMK5o1(fAAwHo!cX60F4vr0!sky5*Ir4c(8DJzyQH)5R#WyMM( zI*(AYS@Tkiva)71@h-}iKr^2NsZN!J{O#0KM{5xYv*#h-}i=&j=gu>id zhxUnM#ZG{0hn^Vw5Dd5=9ny&W6$xqe$fcX-L`GzO%LGc1r0- zTEC;UWe2~u6{BqJZI^(lpFq#6rL7oc{S?aeP}0ooB9GXWnFLBtjItfdFu}(1WE!qn zS(7E6ss+Uxpsc{fObvYE31=vUL15O`#yU&VIXlr+j!k{z_bE7<>jeF-sDWZ)nuZvJ>R^U7LFNjf)@Q-2?LY>)| zj_|CZDYIo!ghJHdH-{HTD55a)H<<`!1>%^#i=q@Mbs$Qqm3Z(-RfMO8uA44)4WV^v z=(-t*Q4rAF6{V~s_~|DsB~2L{6P*7jhm8r2f-ZuX;3zdBkBtd23U&=^76DyM2zbbL zF~L!!>n@K0kPkMfx4FE}%NDD?v0Qgvcl=~X=3=N?x|d6f1CP#9jW9w9vn zg`s1LJo0w2BF6JAD3vjuUpR`Dhb+TJKz`pSQqNK-X(&Y=4~kf^*wzhDaIpx_HYl`L)jio8Z^K~d*jOTk$Hph5gh9Wf=>zPTQ+!5nBA4+44 zXEl_87|*p(HpO__pbW-%2B2(?@q7S^*uU8KPeJL3@jLnIa@wmCJp7mXA!Mfvy_FR2uYmT4F!zW#J)K-kdLnY$&5 zEDtehx3RmkD{SM&F4VHKvn#AwCAg}+y(g&P7S%|IZEfkxnTV!Lzx0@i??p78En19oC?(Dm*KeGCQeM1Z+y?Q2lk(yP)lPAKONz6p z3FB;*6lb&6jq^F$F&LLmQiyUwjI&y|h}Y?8aYl8SIG-iO*^1s2=Z(wQ;2caqMOFKBlLKIq8rBxMCkDXMK_NZh|pbun14IwIL$HkMSS1-dW3SzEgN>W MY-_)wrLW!mJHJwS=l}o! diff --git a/lib/xedit/zlib/win64/inftrees.obj b/lib/xedit/zlib/win64/inftrees.obj deleted file mode 100644 index bb4a3ccf1cecfc5ddfcac0ea12bc166509db894a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3479 zcmb7HQEXFX6h61Tu&$J}g8~C;yuyvljFpZJvH`l56>~Km44BEHOIWvdqcXPH-fqJH zS~m=}5PjgmnCJt(`NV@^Xng2I-89C4_+Zo+5{h6nU? zGMNdE^u0)XXkQKOC%Qqb;qt7s(08Qz(<7OY0bQv(@`Q3|R8O5uy_^~zRN6;Qj;4l^ zX@mi)hT?isX$j?DxDfUt}BhLt-Bg_h8mlcj(GZn5=j8A5IISv6||D7$VJuU zrd70>yfC;HN#9J5(pIXcCfZBwbd>rjLzDDAU8i5jVW!DPm8}MIxveqVT4>_tH`_Wg znvXO(h~-J-Fny?k{nePckshN)icp+#G((b#}L`y&qmE?Z%SOY=IyffC>VAW9k{ppjn9ouqFq^>fbIh6Z6+ zgMlzp-B`!IwY;J}?IOZt$h%qItu;6hG=Z|o%()A)Fl*rAC@D5nw~ZDEP8N`UHetmM zMgnjb+Ny#konsOUpHo%tVexnM6RyjSNiPTb-usRLCfwo%Ni04eLvomT6* zaNdvmO`ap`XI>}PH0Hj>dgiY~j=3tb%f)pby9q;)HX|K!WG_~CCcvAGkrg7b>q^I# zvU$eYCzoXw>7Yqf7aqhjm3|O#cu~du_V2Qq*q8< zAZbB(cx!Hl`4)2nF<&)+{#$pQ02PYtUT2{T$A&+Ll4+srR|TAobC%*E13$E2k`?;5 zB50^<4;#377pAtCe#PwVq^ry-&siXd{H7Ovr?HLwB^MGa>H!k#j5W9WKzWWs(F`B3 z0o7)4EaMOa#pzRct$|PL%S&FtctX90DuC(Ld1_7fjKS$!+}ttU*R=Ezc2HYol__-f0n)C zD6MCm;vi-1=HXYm!dxo_x?xGbbsHAy%qZ6Vzk>f3RS%sDF~Dj<7>77!#nFWle6gU`3MFs1 z#Ul6HOAx3!n@=JUmW#&cOMFdZNSLdssO3K6@A~y-Z0BkaGIfIDE2Kji5=~I0bEe|57G3$+@6Y@}a!ON`0F3N+XSfUu-=6td_uYwY2F1VPf`XngtP8hXydk_| z7Bi?B?0Q=d-mID*c6E||Sc3aqQKgS&Sva0nk| z`;DEyD^7`{$xuJ3j1~#TjGow>7kXXhPBP3iuHi`W%#bJ3iKL z-HWMhs4t#LhT9t3+AN_S?;A>n!>!>~Nb%3(fx^T?rzRdUwZass*(oR-vNeW0A_b(m1Z5tbnp>_J6*|eN57JTKw_r zkDK3_bME=h_d4f%=X>0n+xo$=PFdBRSDe@2I8BbeX0&#-wPdevGq=u6i0L7FXK;C? zGo!U_Y0vWHLYvYHaZQn2%Bh?`qpNjEc8Qg8oc40Z`PB%yhSZFpn6sEH=T|t+U4UFs zAmyY6XJp$}XB9{P>^aYI_9An~CHnp>P{L_wp0PSu;O+2l%4iw;n{sMXGdhEEza{aM z1&$NGOiRrMiCiL)m|1_ph4Ze=G-fWIf9`4goWG#)v>@~HO#Nl^7F@9Kv_yn#e*&bb z=QyE>Am{vZ7oWeXwQYIZlCH&>j-_2ox^7(jE{MeoSM_wYv@O1&W92!s7H7NK+PY_~ zTKZn+Txae?XTIY+?nw4~c7N9`X7l#$8e41ikWMixyp;K@kN*D>tL7Y@?e+f`PE!vqgQh|PUXZ& zlO|6VGm7b~xvZIr%~NcSL#Y46gR6hal&P=sI_XtjGTsh$Nd)pk8TWn&bMFTk&wh|_ zc9ky&+rY&m>r3j2Q5CaR0GeGoo1jZYX=qPZE0nk6>l6FcPr5$qNO-^j= zxH09?@sWz~F=Z1%ah+g(D`@2wAOq|HrUPFFRseqhrUIV^76bnQ%mp3<)&TztlmQ!n z`M^WKX}~?eQs5bY+MN#r?*M)byao6g&;|S%Cmoxpp5UjzRH{5!A?_&X2+`ha=BPT*AFGr$tyH^4;TR^SR?FK`y{ufY3& zKLO)_9B?tP8#n{_BG3U00Ve>T0Imjp0n7#-0B!{S3Pgd8zy-kffYX700os870*(bf z3S0^N6nHD}O`r$(3vdju6<7fL5I7UK54aBaZ{Q^04&dFuQ^0w^zX5B3{{tq|gUO+B z&PTu>0WSnE1U~_O0(>_3Z1C5?Uk7)CyTLDjUjUB>j|b<$dGMv+OTj+?{{TDz^{N`0gnZb1>Xd| z349UwBJeKoF7TVcZvuZF{CV(l@N)38;Ag?dgO3M)9Q<+cRp6_@PlBHWzYY90@OJQa z@D1P_z%PMc0>{B|@Gan5z?XwB2R{aW3_KG&6MR4Te();rD)4jQ=fJ0cPXXTrz6;z0 zZUR3Iej5CC@Y})P0e=U)9=skr3?2qcq(}h?pc$wH8h~1$6Nmw6pay6Ms)0p79k3dR z0QEo;Xa%Z(Mqn0@1;Uij51bEt7kC5k&p-?CpMXT;O6A2-%8pWAlro~k#wf8TN_>eD zL!!iqD6t^Qc#krsqm0`qV>8P5i!#Qd^d`z!iK@S2`8@_W2?zs|f$_i;U@UMv;J+ls z+qfxlT~ci<+7q}Z31oi==UB&fF z-BPdADfLNR2|(&d0nI=!FbJRkr}sz-ki5PtL>VUo!P&tl0C_TSu=L5K+j&QH6;izr z?S-5Kzmhkkv?a4(2*1*Ogvw=-v2_0*YWBl&()s#iZ900NA~TS=zO%@o*;{4CB*Uij zTvqfm_;EU~B`HOU&M=gmq%G$j$=KF}w6S~fhW`k!x1CYI#}HVbcP4?m`$-;viX zNNy;hX7~}BU8Bm<8i;R;gredJ>DxsIBTCM z_6p5Kl7*?l+qr+Nj9Di?7)(vKM3QcmVoo}gZmEE0I;2gkbowLd%Ogs9wo*z@`L6n8 zgi@VCOekq2l||D14_CV;vZhkF9)C+Hqow^;OOsm$vC>*Y|BgF^j^BKj<)rgY|LSyE z&#_W@gYi|UbbefJURqS$kdA6secUgi_}Vc8d|L=+s8hM~y}uSC50>xTABKt7kTu`? zjGvi=mzZ6jOx_TKN{U!vGE{T_V3Zq4R!q%`%pv`TH>Po%MNanQdK%tdFG-@=MP4I^ z=Cf*4)%EZA4E>E{Cm^NjiEq3f-R{DAh&VeWB25$XiVkM?$;gP`{Ck+lxAza0(T3Xi zb{WAUkk5(06Z_One0xsD)c8m8JJr2!j5Wl!_e$F7!<3|RUYw9NqTF{>Y>Jd?RiqNy ziyLzDNJTj&+s>C`rDgJ3_AS+sTcvsVN1u3kM1%5b(9?&St@WYjRdP=Cwy?nTG`@XM zS6XTxb&+AKJY8I7tD23{dT^-%m1hloRcn2^U+dFV`be!u(E2Rt+pNQD(QBx6-LjIk zKK%e%j~uzyweqyqF=3r?rF?DyVSgBx#M|;8o-H>I)#o3nH(u(_Nepf~(=?>}c1n!R z5Xka-J)?OP1Fqf4;?nt_~i)ke#A$} zO3*DlHJa??5wfztFFfUURn;Tu3=88eWm2!ilEf~xs*=WOUKpX`+P(Wwi>fo<+s9UNb|e|UrU!ZYBa0y zbc-%XY*G{79_e!z$my0Xo23frB`Fn~=j>dw?ufJYTza6aiTJjGP>wc_S~ICz$|ZHq z&h@VSMGcYCTHIW^Y|lBaZ0T((E07D-x5!3O{2?O>pO+u#RpuE`Dx~W%Cz!o85WRBj4VTUJhI$JoHi{dLeJE(`U;*z=1Qk0I&>Raq;Un*?r`#Fma4EHdM9PnVPN^=dbkpbN?2-O2*DC3_L1 zm6wEf?%k(yOP5%g(9LDJOnqJ9+Y~n)Azj>bRory+vKqZiU;iEvCx&E_ok}azRYP5z z2bC2bmo!3ueSID5TJKJc75tL=GIgk_hU{j;f#xW!G1<8+7uj66nZCE%z6avj>U4e} zxrtVps6|Y&_iiL>_Veohomm%gZDibDLzEmHe=`Bzq}L6k+4I zE?4uvuctSsFi};f<6|wx*-$pr;_FKP4k@xMzO_JMVuP}^>c~q~UPHrbXxLnJ8Z{RQ zx5K_BrhH9Ic};}vHgT?LBIV7cJOTwj?sA4^Rcuf!o5i-?Em@r=$x)du(u-itPIjir zs=|N@*rwi`L@PD4+-xd-Ii~;O37DZKmu3iSJL+zIV%kG{Ulzj|BR(QD%1MOQoFFSo ztjFP|ZH!t}7Jdd_=Dnm|v0XdJ$){<@KuAr?Dxa=~DNNMx88#Z5)D(-EV7q2aSWg?7yTO;c!OIQX z&0S}6YdVVPZUiM%~L`R?ch7@YZZ9iwQ&SQfwfcbGIp@Q@V+z2eOjYn>!F6{68er| zHT$EH`-7TY%qS8atsZbi>_Y@s2M{rm)j2k}LY}FBD}}*$;^A$jus0jFoDZR~lq>)q z80P#`{Gd(+EyQqC6IQEKbdorgl6f|M%O~|JB$iX_F_QHHLK@L0^L`A`h{_}zmkKgP z)>cBrSjqK_Eqr-Mo&j)QsZyrd`5%`Y=#za|m<)EMLbMv#EKK!OLKY3#CbCvjRQB`{ zIejZUH=|WlrI`c`#6@Q=-{zir#;8{3oQ)Fi-D0BPnGz@ipYPe zLy>{!44uAH9nylQI-TZJr_*<;)9Ie-bmrzI(lp#=Gp9O-&g8XhlvABRgWOXc_r$H! zoa$UTveSpxSNDjAsR147V)0Y8vrr57jafWx=t9&fqlJZf7hXbt7m4NK0~-!xsf0Zs zMLU#yNK0iz9|Ys0)Ka=-C0oipfBVNbN zrd}*jf7Dt+x2$AK)NVD;=By>I9=+p-*I#$sXuWD{5F^!t7OQhL3+x@9HnxTaXg8QoFyAg=V#>#9|&POEijca-2WH(4IP3TvpY&0y zeciH>weLRj9}&%i9Y4JOx*o3e>U#JrSr}WL&kE?=_3-hmG8@Fh8xF6|*U-at%SzVq ztkFGu{EHr1Ou9z08wKEn{EZ5SaxBkkPLM`ts7c#3bCL_(&_f zhE1y+O?mIQsS538hV#j?0teYt&1vSfgJG4L&&jd$*8124b*ssHoK!{ z-|nc{-5oWX-I2{^c1MTKBqK_>P4g&z8)%RoymZrD={0LlD_rjO)wpiyy>ugjR-hXZ zru&tvqJ^tm6%p76szX0-T~T_Suc2nux}tQ=x>46^HiKsA=#i^ctIkzxjhsB#K&#e% zu3CSueRg&Keu)>}e*UP`t2${YU9axC+3Ho^8<4x6vgiKV$5=9Rt)$_=}Lpqro)QbT! zBR2Q%Q17e62TqNtIiXUQZQntU%)?pa9M9$JchA*pY;x*rp3Unsp^aH{3KWx4+HnbW z;#X})v|8c1ZYBRbD{8gE>XEzmYTQxjM><}WJQcZ{1nWmv1Ur0$j-&Nx9A_bGB3-Jt z!pL#D8cC`b^u>XEwg_&HU0b|}Ek@)}26=rAYgsR1R9!9H9^wJICcs+7Ojwe@p)BpFdP zgkE3E>ngh~v_t6fJkG8)!<&W>M_@IrLmkniI33CkJ$BSPTi8%Nb_6G^Q4#^8n6V=( z$Jf`2+xm8PwrRtNgu(pV=}#y33ul6?eiUWCWeGR3Q>&^1=?dfjOU z!^;c?eNG$5qgD^z-N-$!T|tyN=~e*c?i_I#t7Rb6EL z;P4CfbYe9r6!gv2`nDWWZlp!SG&msck$xd9&jE0xGGfKe^N^P;XMabsT!g|EfovVNRan ziWi$OMMhd z_xwSqV^nG{l^TjlHT4SA8&&E_Gc9%USys>Yy+wc3AmZ$Xl5>NIlb&TYzTBmT-m1S? z!&e#3anx6=BF>$>(W>gn_J%%q>_@{v@LQaKXQxDy7cF2#pJ{7W*K+1 zzuqe>6P)q20mJfr3+a%iVo+~WJl@t)UyBGU+twY>h8yfnWFMP*#70qO$9YvlJ- zMJ;lv#ZVV1UNgU#n37vvsvYWL#aqFzjG3_d=7y%S++V7AtNE2)h52fcrFx+jDBb|S zGRnfvCYRa*b-Chwh+i2;VdplNx*bYv66VWDI_89(yItzDQ1W%Xu=53eYZUcmm-;Hy zm5TQbe$PfOcKwJ~xwN|*8AY$>HvxDY5l^`s|7Q}Vyl_Z9lqh5Lo4YO)#MPATYU)_okrg^hX+ z`5bqhBziL2;53b?kVqs~>Z(6Jqbd3Q7%h}b$vFNGWnyS@ z{gz*8;xC^2?6n|sect3!GK#ky4#UEfBdpzUFtYl}kM@LL!l?|%{22}g^vR6F2Zf{C z1K}j#Bm*+%z)8UIWYTbI12R{`!R$VnE;yLNSJ!5f%PZ#&IO%}Q{c!362WL@0W+9w`fJ`f#=77xgaEREx zzTX6=Js@)j9El5_O}_@GGa$1Y&KCkQPs5QGdi{D4&Nl)w@-}&IK<0Efg8`ZI;A{%W zNFNK@>bZ0fm2W7jKG_6?Lk?nRg z-Rh&4>V)p>l59sy(+c@Kt7C3j)y>i+-EF35N6}KU6BUD;3q9UDegrY9vW9jZzU^eoRW|`&w7su(G{v zNvE^CZDkWZLk)@)J#;%udpcIMQnGZbWywlIwXHNfolH};gz#yqy6bji3DDKn-EFFB zZOiiQ;3oN?Zd3Ng&Nhe0*VT4?TUWOt`MzyyPbZl=Z!{T_Ju8Koq&PhjCDqq>efK^A zts 0) in ZInternalCompress * -* and ZInternalDecompress * -* 2010.04.20 prototyping and assisting with the TZ*Buffer classes * -* * -* edward koo * -* 2010.07.01 pointing out the delphi 5 incompatibility with the overloaded Z*String* * -* routines * -* * -* egron elbra * -* 2011.07.20 pointing out the range exception when moving empty strings * -* * -* marian pascalau * -* 2012.05.21 providing their win64 modifications * -* * -* donations * -* 2011.05.06 farshad mohajeri * -* 2012.06.07 marat safin * -* 2012.12.14 moacir schmidt * -* 2013.05.23 roman ganz * -*************************************************************************************************} - -unit ZLibEx; - -interface - -{$I ZLibEx.inc} - -uses - SysUtils, Classes, ZLibExApi; - -type - -{$ifndef UNICODE} - - RawByteString = AnsiString; - - UnicodeString = WideString; - UnicodeChar = WideChar; - -{$else ifdef Version2010Plus} - - UnicodeChar = WideChar; - -{$endif} - -{$ifndef Version2009Plus} - - NativeInt = Integer; - NativeUInt = Cardinal; - -{$endif} - - TStreamPos = {$ifdef Version6Plus} Int64 {$else} Longint {$endif}; - - TZCompressionLevel = ( - zcNone, - zcFastest, - zcDefault, - zcMax, - zcLevel1, - zcLevel2, - zcLevel3, - zcLevel4, - zcLevel5, - zcLevel6, - zcLevel7, - zcLevel8, - zcLevel9 - ); - - TZStrategy = ( - zsDefault, - zsFiltered, - zsHuffman, - zsRLE, - zsFixed - ); - - TZError = ( - zeError, - zeStreamError, - zeDataError, - zeMemoryError, - zeBufferError, - zeVersionError - ); - - TZFlush = ( - zfNoFlush, - zfPartialFlush, - zfSyncFlush, - zfFullFlush, - zfFinish, - zfBlock, - zfTrees - ); - -const - ZLevels: Array [TZCompressionLevel] of Integer = ( - Z_NO_COMPRESSION, // zcNone - Z_BEST_SPEED, // zcFastest - Z_DEFAULT_COMPRESSION, // zcDefault - Z_BEST_COMPRESSION, // zcMax - 1, // zcLevel1 - 2, // zcLevel2 - 3, // zcLevel3 - 4, // zcLevel4 - 5, // zcLevel5 - 6, // zcLevel6 - 7, // zcLevel7 - 8, // zcLevel8 - 9 // zcLevel9 - ); - - ZStrategies: Array [TZStrategy] of Integer = ( - Z_DEFAULT_STRATEGY, // zsDefault - Z_FILTERED, // zsFiltered - Z_HUFFMAN_ONLY, // zsHuffman - Z_RLE, // zsRLE - Z_FIXED // zsFixed - ); - - ZErrors: Array [TZError] of Integer = ( - Z_ERRNO, // zeError - Z_STREAM_ERROR, // zeStreamError - Z_DATA_ERROR, // zeDataError - Z_MEM_ERROR, // zeMemoryError - Z_BUF_ERROR, // zeBufferError - Z_VERSION_ERROR // zeVersionError - ); - - ZFlushes: Array [TZFlush] of Integer = ( - Z_NO_FLUSH, // zfNoFlush - Z_PARTIAL_FLUSH, // zfPartialFlush - Z_SYNC_FLUSH, // zfSyncFlush - Z_FULL_FLUSH, // zfFullFlush - Z_FINISH, // zfFinish - Z_BLOCK, // zfBlock - Z_TREES // zfTrees - ); - -type - {** TZ*Function *******************************************************************************} - - TZReadFunction = function (param: Pointer; var buffer; - size: Integer): Integer; - - TZWriteFunction = function (param: Pointer; const buffer; - size: Integer): Integer; - - {** TZInformation *****************************************************************************} - - TZInformation = packed record - CompressedFlags : Longint; - CompressedSize : TStreamPos; - CompressedCrc : Longint; - CompressedAdler : Longint; - - UncompressedFlags: Longint; - UncompressedSize : TStreamPos; - UncompressedCrc : Longint; - UncompressedAdler: Longint; - end; - - {** TCustomZStream ****************************************************************************} - - TCustomZStream = class(TStream) - private - FStream : TStream; - FStreamPos : TStreamPos; - FOnProgress: TNotifyEvent; - - FZStream : TZStreamRec; - FBuffer : Array [Word] of Byte; - - function GetStreamPosition: TStreamPos; - procedure SetStreamPosition(value: TStreamPos); - protected - constructor Create(stream: TStream); - - function StreamRead(var buffer; count: Longint): Longint; - function StreamWrite(const buffer; count: Longint): Longint; - function StreamSeek(offset: Longint; origin: Word): Longint; - - procedure StreamReadBuffer(var buffer; count: Longint); - procedure StreamWriteBuffer(const buffer; count: Longint); - - procedure DoProgress; dynamic; - - property StreamPosition: TStreamPos read GetStreamPosition write SetStreamPosition; - - property OnProgress: TNotifyEvent read FOnProgress write FOnProgress; - end; - - {** TZCompressionStream ***********************************************************************} - - TZCompressionStream = class(TCustomZStream) - private - function GetCompressionRate: Single; - public - constructor Create(dest: TStream; - compressionLevel: TZCompressionLevel = zcDefault); overload; - - constructor Create(dest: TStream; compressionLevel: TZCompressionLevel; - windowBits, memLevel: Integer; strategy: TZStrategy); overload; - - destructor Destroy; override; - - function Read(var buffer; count: Longint): Longint; override; - function Write(const buffer; count: Longint): Longint; override; - function Seek(offset: Longint; origin: Word): Longint; override; - - property CompressionRate: Single read GetCompressionRate; - property OnProgress; - end; - - {** TZDecompressionStream *********************************************************************} - - TZDecompressionStream = class(TCustomZStream) - public - constructor Create(source: TStream); overload; - constructor Create(source: TStream; windowBits: Integer); overload; - - destructor Destroy; override; - - function Read(var buffer; count: Longint): Longint; override; - function Write(const buffer; count: Longint): Longint; override; - function Seek(offset: Longint; origin: Word): Longint; override; - - property OnProgress; - end; - - {** TZCustomBuffer ****************************************************************************} - - TZCustomBuffer = class(TObject) - private - FBuffer : Pointer; - FBufferCapacity: Integer; - FBufferSize : Integer; - protected - FZStream: TZStreamRec; - - procedure BufferWrite(const buffer: Pointer; size: Integer); - procedure BufferRead(var buffer: Pointer; size: Integer); - - procedure BufferCapacity(capacity: Integer); - - property BufferSize: Integer read FBufferSize; - public - constructor Create; - destructor Destroy; override; - - procedure Clear; virtual; - - procedure Flush(flush: TZFlush); virtual; - - function Write(const buffer: Pointer; size: Integer): Integer; overload; - virtual; abstract; - - function Write(const s: AnsiString): Integer; overload; - - function Read(var buffer: Pointer; size: Integer): Integer; overload; - function Read(var s: AnsiString): Integer; overload; - end; - - {** TZCompressionBuffer ***********************************************************************} - - TZCompressionBuffer = class(TZCustomBuffer) - public - constructor Create(level: TZCompressionLevel = zcDefault); overload; - constructor Create(level: TZCompressionLevel; - windowBits, memLevel: Integer; strategy: TZStrategy); overload; - - destructor Destroy; override; - - procedure Clear; override; - - procedure Flush(flush: TZFlush); override; - - function Write(const buffer: Pointer; size: Integer): Integer; - override; - end; - - {** TZDecompressionBuffer *********************************************************************} - - TZDecompressionBuffer = class(TZCustomBuffer) - public - constructor Create; overload; - constructor Create(windowBits: Integer); overload; - - destructor Destroy; override; - - procedure Clear; override; - - function Write(const buffer: Pointer; size: Integer): Integer; override; - end; - -{** zlib deflate routines ***********************************************************************} - -function ZDeflateInit(var stream: TZStreamRec; - level: TZCompressionLevel): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -function ZDeflateInit2(var stream: TZStreamRec; - level: TZCompressionLevel; windowBits, memLevel: Integer; - strategy: TZStrategy): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -function ZDeflate(var stream: TZStreamRec; flush: TZFlush): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -function ZDeflateEnd(var stream: TZStreamRec): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -function ZDeflateReset(var stream: TZStreamRec): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -{** zlib inflate routines ***********************************************************************} - -function ZInflateInit(var stream: TZStreamRec): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -function ZInflateInit2(var stream: TZStreamRec; - windowBits: Integer): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -function ZInflate(var stream: TZStreamRec; flush: TZFlush): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -function ZInflateEnd(var stream: TZStreamRec): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -function ZInflateReset(var stream: TZStreamRec): Integer; - {$ifdef Version2005Plus} inline; {$endif} - -{** zlib checksum routines **********************************************************************} - -function ZAdler32(adler: Longint; const buffer; size: Integer): Longint; - {$ifdef Version2005Plus} inline; {$endif} - -function ZCrc32(crc: Longint; const buffer; size: Integer): Longint; - {$ifdef Version2005Plus} inline; {$endif} - -{** zlib custom routines ************************************************************************} - -procedure ZDeflateEx(var stream: TZStreamRec; param: Pointer; - read: TZReadFunction; write: TZWriteFunction; flush: TZFlush); - -procedure ZInflateEx(var stream: TZStreamRec; param: Pointer; - read: TZReadFunction; write: TZWriteFunction; flush: TZFlush); - -{************************************************************************************************* -* ZCompress * -* * -* pre-conditions * -* inBuffer = pointer to uncompressed data * -* inSize = size of inBuffer (bytes) * -* outBuffer = pointer (unallocated) * -* level = compression level * -* * -* post-conditions * -* outBuffer = pointer to compressed data (allocated) * -* outSize = size of outBuffer (bytes) * -*************************************************************************************************} - -procedure ZCompress(const inBuffer: Pointer; inSize: Integer; - out outBuffer: Pointer; out outSize: Integer; - level: TZCompressionLevel = zcDefault); - -{************************************************************************************************* -* ZCompress2 * -* * -* pre-conditions * -* inBuffer = pointer to uncompressed data * -* inSize = size of inBuffer (bytes) * -* outBuffer = pointer (unallocated) * -* level = compression level * -* method = compression method * -* windowBits = window bits * -* memLevel = memory level * -* strategy = compression strategy * -* * -* post-conditions * -* outBuffer = pointer to compressed data (allocated) * -* outSize = size of outBuffer (bytes) * -*************************************************************************************************} - -procedure ZCompress2(const inBuffer: Pointer; inSize: Integer; - out outBuffer: Pointer; out outSize: Integer; level: TZCompressionLevel; - windowBits, memLevel: Integer; strategy: TZStrategy); - -{************************************************************************************************* -* ZDecompress * -* * -* pre-conditions * -* inBuffer = pointer to compressed data * -* inSize = size of inBuffer (bytes) * -* outBuffer = pointer (unallocated) * -* outEstimate = estimated size of uncompressed data (bytes) * -* * -* post-conditions * -* outBuffer = pointer to decompressed data (allocated) * -* outSize = size of outBuffer (bytes) * -*************************************************************************************************} - -procedure ZDecompress(const inBuffer: Pointer; inSize: Integer; - out outBuffer: Pointer; out outSize: Integer; outEstimate: Integer = 0); - -{************************************************************************************************* -* ZDecompress2 * -* * -* pre-conditions * -* inBuffer = pointer to compressed data * -* inSize = size of inBuffer (bytes) * -* outBuffer = pointer (unallocated) * -* windowBits = window bits * -* outEstimate = estimated size of uncompressed data (bytes) * -* * -* post-conditions * -* outBuffer = pointer to decompressed data (allocated) * -* outSize = size of outBuffer (bytes) * -*************************************************************************************************} - -procedure ZDecompress2(const inBuffer: Pointer; inSize: Integer; - out outBuffer: Pointer; out outSize: Integer; windowBits: Integer; - outEstimate: Integer = 0); - -{** string routines *****************************************************************************} - -{************************************************************************************************* -* ZCompressStr * -* * -* pre-conditions * -* s = uncompressed data string * -* level = compression level * -* * -* return * -* compressed data string * -*************************************************************************************************} - -function ZCompressStr(const s: AnsiString; - level: TZCompressionLevel = zcDefault): RawByteString; - -procedure ZCompressString(var result: RawByteString; const s: AnsiString; - level: TZCompressionLevel = zcDefault); overload; - -{$ifdef Version6Plus} -procedure ZCompressString(var result: RawByteString; const s: UnicodeString; - level: TZCompressionLevel = zcDefault); overload; -{$endif} - -{************************************************************************************************* -* ZCompressStrEx * -* * -* pre-conditions * -* s = uncompressed data string * -* level = compression level * -* * -* return * -* compressed data string with 4 byte (integer) header indicating * -* original uncompressed data length * -*************************************************************************************************} - -function ZCompressStrEx(const s: AnsiString; - level: TZCompressionLevel = zcDefault): RawByteString; - -procedure ZCompressStringEx(var result: RawByteString; const s: AnsiString; - level: TZCompressionLevel = zcDefault); overload; - -{$ifdef Version6Plus} -procedure ZCompressStringEx(var result: RawByteString; const s: UnicodeString; - level: TZCompressionLevel = zcDefault); overload; -{$endif} - -{************************************************************************************************* -* ZCompressStr2 * -* * -* pre-conditions * -* s = uncompressed data string * -* level = compression level * -* windowBits = window bits * -* memLevel = memory level * -* strategy = compression strategy * -* * -* return * -* compressed data string * -*************************************************************************************************} - -function ZCompressStr2(const s: AnsiString; level: TZCompressionLevel; - windowBits, memLevel: Integer; strategy: TZStrategy): RawByteString; - -procedure ZCompressString2(var result: RawByteString; const s: AnsiString; - level: TZCompressionLevel; windowBits, memLevel: Integer; - strategy: TZStrategy); overload; - -{$ifdef Version6Plus} -procedure ZCompressString2(var result: RawByteString; const s: UnicodeString; - level: TZCompressionLevel; windowBits, memLevel: Integer; - strategy: TZStrategy); overload; -{$endif} - -{************************************************************************************************* -* ZCompressStrWeb * -* * -* pre-conditions * -* s = uncompressed data string * -* * -* return * -* compressed data string * -*************************************************************************************************} - -function ZCompressStrWeb(const s: AnsiString): RawByteString; - -procedure ZCompressStringWeb(var result: RawByteString; const s: AnsiString); - overload; - -{$ifdef Version6Plus} -procedure ZCompressStringWeb(var result: RawByteString; - const s: UnicodeString); overload; -{$endif} - -{************************************************************************************************* -* ZDecompressStr * -* * -* pre-conditions * -* s = compressed data string * -* * -* return * -* uncompressed data string * -*************************************************************************************************} - -function ZDecompressStr(const s: RawByteString): AnsiString; - -procedure ZDecompressString(var result: AnsiString; const s: RawByteString); - overload; - -{$ifdef Version6Plus} -procedure ZDecompressString(var result: UnicodeString; - const s: RawByteString); overload; -{$endif} - -{************************************************************************************************* -* ZDecompressStrEx * -* * -* pre-conditions * -* s = compressed data string with 4 byte (integer) header indicating * -* original uncompressed data length * -* * -* return * -* uncompressed data string * -*************************************************************************************************} - -function ZDecompressStrEx(const s: RawByteString): AnsiString; - -procedure ZDecompressStringEx(var result: AnsiString; const s: RawByteString); - overload; - -{$ifdef Version6Plus} -procedure ZDecompressStringEx(var result: UnicodeString; - const s: RawByteString); overload; -{$endif} - -{************************************************************************************************* -* ZDecompressStr2 * -* * -* pre-conditions * -* s = compressed data string * -* windowBits = window bits * -* * -* return * -* uncompressed data string * -*************************************************************************************************} - -function ZDecompressStr2(const s: RawByteString; - windowBits: Integer): AnsiString; - -procedure ZDecompressString2(var result: AnsiString; const s: RawByteString; - windowBits: Integer); overload; - -{$ifdef Version6Plus} -procedure ZDecompressString2(var result: UnicodeString; - const s: RawByteString; windowBits: Integer); overload; -{$endif} - -{** stream routines *****************************************************************************} - -procedure ZCompressStream(inStream, outStream: TStream; - level: TZCompressionLevel = zcDefault); - -procedure ZCompressStream2(inStream, outStream: TStream; - level: TZCompressionLevel; windowBits, memLevel: Integer; - strategy: TZStrategy); - -procedure ZCompressStreamWeb(inStream, outStream: TStream); - -procedure ZDecompressStream(inStream, outStream: TStream); - -procedure ZDecompressStream2(inStream, outStream: TStream; - windowBits: Integer); - -{************************************************************************************************} - -type - EZLibErrorClass = class of EZlibError; - - EZLibError = class(Exception) - private - FErrorCode: Integer; - public - constructor Create(code: Integer; const dummy: String = ''); overload; - constructor Create(error: TZError; const dummy: String = ''); overload; - - property ErrorCode: Integer read FErrorCode write FErrorCode; - end; - - EZCompressionError = class(EZLibError); - EZDecompressionError = class(EZLibError); - - { DecompressToUserBuf decompresses data, buffer to buffer, in one call. - In: InBuf = ptr to compressed data - InBytes = number of bytes in InBuf - Out: OutBuf = ptr to user-allocated buffer to contain decompressed data - BufSize = number of bytes in OutBuf } -procedure DecompressToUserBuf(const InBuf: Pointer; InBytes: Integer; - const OutBuf: Pointer; BufSize: Integer); - -implementation - -function DCheck(code: Integer): Integer; -begin - Result := code; - if code < 0 then - raise EZDecompressionError.Create(64673); //!! -end; - -const - SZInvalid = 'Invalid ZStream operation!'; - -{************************************************************************************************} - -function ZCompressCheck(code: Integer): Integer; -begin - result := code; - - if code < 0 then - begin - raise EZCompressionError.Create(code); - end; -end; - -function ZDecompressCheck(code: Integer; raiseBufferError: Boolean = True): Integer; -begin - Result := code; - - if code < 0 then - begin - if (code <> Z_BUF_ERROR) or raiseBufferError then - begin - raise EZDecompressionError.Create(code); - end; - end; -end; - -{** zlib deflate routines ***********************************************************************} - -function ZDeflateInit(var stream: TZStreamRec; - level: TZCompressionLevel): Integer; -begin - result := deflateInit_(stream, ZLevels[level], ZLIB_VERSION, - SizeOf(TZStreamRec)); -end; - -function ZDeflateInit2(var stream: TZStreamRec; - level: TZCompressionLevel; windowBits, memLevel: Integer; - strategy: TZStrategy): Integer; -begin - result := deflateInit2_(stream, ZLevels[level], Z_DEFLATED, windowBits, - memLevel, ZStrategies[strategy], ZLIB_VERSION, SizeOf(TZStreamRec)); -end; - -function ZDeflate(var stream: TZStreamRec; flush: TZFlush): Integer; -begin - result := deflate(stream, ZFlushes[flush]); -end; - -function ZDeflateEnd(var stream: TZStreamRec): Integer; -begin - result := deflateEnd(stream); -end; - -function ZDeflateReset(var stream: TZStreamRec): Integer; -begin - result := deflateReset(stream); -end; - -{** zlib inflate routines ***********************************************************************} - -function ZInflateInit(var stream: TZStreamRec): Integer; -begin - result := inflateInit_(stream, ZLIB_VERSION, SizeOf(TZStreamRec)); -end; - -function ZInflateInit2(var stream: TZStreamRec; - windowBits: Integer): Integer; -begin - result := inflateInit2_(stream, windowBits, ZLIB_VERSION, - SizeOf(TZStreamRec)); -end; - -function ZInflate(var stream: TZStreamRec; flush: TZFlush): Integer; -begin - result := inflate(stream, ZFlushes[flush]); -end; - -function ZInflateEnd(var stream: TZStreamRec): Integer; -begin - result := inflateEnd(stream); -end; - -function ZInflateReset(var stream: TZStreamRec): Integer; -begin - result := inflateReset(stream); -end; - -{** zlib checksum routines **********************************************************************} - -function ZAdler32(adler: Longint; const buffer; size: Integer): Longint; -begin - result := adler32(adler,buffer,size); -end; - -function ZCrc32(crc: Longint; const buffer; size: Integer): Longint; -begin - result := crc32(crc,buffer,size); -end; - -{** zlib extended routines **********************************************************************} - -procedure ZDeflateEx(var stream: TZStreamRec; param: Pointer; - read: TZReadFunction; write: TZWriteFunction; flush: TZFlush); -const - bufferSize = 8192; -var - zresult : Integer; - readBuffer : Array [0..bufferSize - 1] of Byte; - writeBuffer: Array [0..bufferSize - 1] of Byte; - writeSize : Integer; - flushEx : TZFlush; -begin - if Assigned(read) then - begin - stream.avail_in := read(param, readBuffer, bufferSize); - end - else stream.avail_in := 0; - - repeat - stream.next_in := @readBuffer; - - repeat - stream.avail_out := bufferSize; - stream.next_out := @writeBuffer; - - flushEx := flush; - - if (flushEx = zfFinish) and (stream.avail_in = bufferSize) then - begin - flushEx := zfNoFlush; - end; - - zresult := ZCompressCheck(ZDeflate(stream, flushEx)); - - writeSize := bufferSize - stream.avail_out; - - write(param, writeBuffer, writeSize); - until stream.avail_out > 0; - - //assert: stream.avail_in = 0 - - if (zresult <> Z_STREAM_END) and Assigned(read) then - begin - stream.avail_in := read(param, readBuffer, bufferSize); - end; - until (stream.avail_in = 0) and (flush = flushEx); -end; - -procedure ZInflateEx(var stream: TZStreamRec; param: Pointer; - read: TZReadFunction; write: TZWriteFunction; flush: TZFlush); -const - bufferSize = 8192; -var - zresult : Integer; - readBuffer : Array [0..bufferSize - 1] of Byte; - writeBuffer: Array [0..bufferSize - 1] of Byte; - writeSize : Integer; -begin - if Assigned(read) then - begin - stream.avail_in := read(param, readBuffer, bufferSize); - end - else stream.avail_in := 0; - - zresult := Z_OK; - - while (zresult <> Z_STREAM_END) and (stream.avail_in > 0) do - begin - stream.next_in := @readBuffer; - - repeat - stream.avail_out := bufferSize; - stream.next_out := @writeBuffer; - - zresult := ZDecompressCheck(ZInflate(stream, flush), False); - - writeSize := bufferSize - stream.avail_out; - - write(param, writeBuffer, writeSize); - until stream.avail_out > 0; - - if (zresult <> Z_STREAM_END) and Assigned(read) then - begin - stream.avail_in := read(param, readBuffer, bufferSize); - end; - end; -end; - -{** private buffer routines *********************************************************************} - -type - PZBufferParam = ^TZBufferParam; - TZBufferParam = packed record - InBuffer : Pointer; - InPosition : Integer; - InSize : Integer; - OutBuffer : Pointer; - OutPosition: Integer; - OutSize : Integer; - end; - -function ZBufferRead(p: Pointer; var buffer; size: Integer): Integer; -var - param: PZBufferParam; -begin - param := PZBufferParam(p); - - result := param^.InSize - param^.InPosition; - if result > size then result := size; - - Move(Pointer(Integer(param^.InBuffer) + param^.InPosition)^, buffer, result); - - Inc(param^.InPosition, result); -end; - -function ZBufferWrite(p: Pointer; const buffer; size: Integer): Integer; -var - param: PZBufferParam; -begin - param := PZBufferParam(p); - - if param^.OutPosition + size > param^.OutSize then - begin - param^.OutSize := param^.OutPosition + size; - - ReallocMem(Pointer(param^.OutBuffer), param^.OutSize); - end; - - Move(buffer, Pointer(Integer(param^.OutBuffer) + param^.OutPosition)^, size); - - Inc(param^.OutPosition, size); - - result := size; -end; - -procedure ZInternalCompressEx(var zstream: TZStreamRec; const inBuffer: Pointer; - inSize: Integer; out outBuffer: Pointer; out outSize: Integer); -var - param: TZBufferParam; -begin - FillChar(param, SizeOf(TZBufferParam), 0); - - outBuffer := Nil; - outSize := 0; - - param.InBuffer := inBuffer; - param.InSize := inSize; - - try - ZDeflateEx(zstream, @param, @ZBufferRead, @ZBufferWrite, zfFinish); - - ZCompressCheck(ZDeflateEnd(zstream)); - - outBuffer := param.OutBuffer; - outSize := param.OutSize; - except - FreeMem(param.OutBuffer); - - raise; - end; -end; - -procedure ZInternalDecompressEx(zstream: TZStreamRec; const inBuffer: Pointer; - inSize: Integer; out outBuffer: Pointer; out outSize: Integer; - outEstimate: Integer); -var - param: TZBufferParam; -begin - FillChar(param, SizeOf(TZBufferParam), 0); - - outBuffer := Nil; - outSize := 0; - - param.InBuffer := inBuffer; - param.InSize := inSize; - - if outEstimate > 0 then - begin - GetMem(param.OutBuffer, outEstimate); - - param.OutSize := outEstimate; - end; - - try - ZInflateEx(zstream, @param, @ZBufferRead, @ZBufferWrite, zfNoFlush); - - ZDecompressCheck(ZInflateEnd(zstream)); - - outBuffer := param.OutBuffer; - outSize := param.OutSize; - except - FreeMem(param.OutBuffer); - - raise; - end; -end; - -procedure ZInternalCompress(var zstream: TZStreamRec; const inBuffer: Pointer; - inSize: Integer; out outBuffer: Pointer; out outSize: Integer); -const - delta = 256; -var - zresult: Integer; -begin - outSize := ((inSize + (inSize div 10) + 12) + 255) and not 255; - - outBuffer := Nil; - - try - try - zstream.next_in := inBuffer; - zstream.avail_in := inSize; - - repeat - ReallocMem(outBuffer, outSize); - - zstream.next_out := PByte(NativeUInt(outBuffer) + zstream.total_out); - zstream.avail_out := NativeUInt(outSize) - zstream.total_out; - - zresult := ZCompressCheck(ZDeflate(zstream, zfNoFlush)); - - Inc(outSize, delta); - until (zresult = Z_STREAM_END) or (zstream.avail_in = 0); - - while zresult <> Z_STREAM_END do - begin - ReallocMem(outBuffer, outSize); - - zstream.next_out := PByte(NativeUInt(outBuffer) + zstream.total_out); - zstream.avail_out := NativeUInt(outSize) - zstream.total_out; - - zresult := ZCompressCheck(ZDeflate(zstream, zfFinish)); - - Inc(outSize, delta); - end; - finally - ZCompressCheck(ZDeflateEnd(zstream)); - end; - - ReallocMem(outBuffer, zstream.total_out); - - outSize := zstream.total_out; - except - FreeMem(outBuffer); - raise; - end; -end; - -procedure ZInternalDecompress(zstream: TZStreamRec; const inBuffer: Pointer; - inSize: Integer; out outBuffer: Pointer; out outSize: Integer; - outEstimate: Integer); -var - zresult: Integer; - delta : Integer; -begin - delta := (inSize + 255) and not 255; - - if outEstimate = 0 then outSize := delta - else outSize := outEstimate; - - outBuffer := Nil; - - try - try - zresult := Z_OK; - - zstream.avail_in := inSize; - zstream.next_in := inBuffer; - - while (zresult <> Z_STREAM_END) and (zstream.avail_in > 0) do - begin - repeat - ReallocMem(outBuffer, outSize); - - zstream.next_out := PByte(NativeUInt(outBuffer) + zstream.total_out); - zstream.avail_out := NativeUInt(outSize) - zstream.total_out; - - zresult := ZDecompressCheck(ZInflate(zstream, zfNoFlush), False); - - Inc(outSize, delta); - until (zresult = Z_STREAM_END) or (zstream.avail_out > 0); - end; - finally - ZDecompressCheck(ZInflateEnd(zstream)); - end; - - ReallocMem(outBuffer, zstream.total_out); - - outSize := zstream.total_out; - except - if Assigned(outBuffer) then FreeMem(outBuffer); - - raise; - end; -end; - -{** buffer routines *****************************************************************************} - -procedure ZCompress(const inBuffer: Pointer; inSize: Integer; - out outBuffer: Pointer; out outSize: Integer; - level: TZCompressionLevel); -var - zstream: TZStreamRec; -begin - FillChar(zstream, SizeOf(TZStreamRec), 0); - - ZCompressCheck(ZDeflateInit(zstream, level)); - - ZInternalCompress(zstream, inBuffer, inSize, outBuffer, outSize); -end; - -procedure ZCompress2(const inBuffer: Pointer; inSize: Integer; - out outBuffer: Pointer; out outSize: Integer; level: TZCompressionLevel; - windowBits, memLevel: Integer; strategy: TZStrategy); -var - zstream: TZStreamRec; -begin - FillChar(zstream, SizeOf(TZStreamRec), 0); - - ZCompressCheck(ZDeflateInit2(zstream, level, windowBits, memLevel, - strategy)); - - ZInternalCompress(zstream, inBuffer, inSize, outBuffer, outSize); -end; - -procedure ZDecompress(const inBuffer: Pointer; inSize: Integer; - out outBuffer: Pointer; out outSize: Integer; outEstimate: Integer); -var - zstream: TZStreamRec; -begin - FillChar(zstream, SizeOf(TZStreamRec), 0); - - ZDecompressCheck(ZInflateInit(zstream)); - - ZInternalDecompress(zstream, inBuffer, inSize, outBuffer, outSize, - outEstimate); -end; - -procedure ZDecompress2(const inBuffer: Pointer; inSize: Integer; - out outBuffer: Pointer; out outSize: Integer; windowBits: Integer; - outEstimate: Integer); -var - zstream: TZStreamRec; -begin - FillChar(zstream, SizeOf(TZStreamRec), 0); - - ZDecompressCheck(ZInflateInit2(zstream, windowBits)); - - ZInternalDecompress(zstream, inBuffer, inSize, outBuffer, outSize, - outEstimate); -end; - -{** string routines *****************************************************************************} - -function ZCompressStr(const s: AnsiString; - level: TZCompressionLevel): RawByteString; -begin - ZCompressString(result, s, level); -end; - -procedure ZCompressString(var result: RawByteString; const s: AnsiString; - level: TZCompressionLevel); -var - buffer: Pointer; - size : Integer; -begin - ZCompress(Pointer(s), Length(s), buffer, size, level); - - SetLength(result, size); - - if size > 0 then - begin - Move(buffer^, result[1], size); - end; - - FreeMem(buffer); -end; - -{$ifdef Version6Plus} -procedure ZCompressString(var result: RawByteString; const s: UnicodeString; - level: TZCompressionLevel); -var - buffer: Pointer; - size : Integer; -begin - ZCompress(Pointer(s), Length(s) * SizeOf(UnicodeChar), buffer, size, level); - - SetLength(result, size); - - if size > 0 then - begin - Move(buffer^, result[1], size); - end; - - FreeMem(buffer); -end; -{$endif} - -function ZCompressStrEx(const s: AnsiString; - level: TZCompressionLevel): RawByteString; -begin - ZCompressStringEx(result, s, level); -end; - -procedure ZCompressStringEx(var result: RawByteString; const s: AnsiString; - level: TZCompressionLevel); -var - buffer: Pointer; - size : Integer; -begin - ZCompress(Pointer(s), Length(s), buffer, size, level); - - SetLength(result, size + SizeOf(Integer)); - - if size > 0 then - begin - Move(buffer^, result[1 + SizeOf(Integer)], size); - end; - - size := Length(s); - - Move(size, result[1], SizeOf(Integer)); - - FreeMem(buffer); -end; - -{$ifdef Version6Plus} -procedure ZCompressStringEx(var result: RawByteString; const s: UnicodeString; - level: TZCompressionLevel); -var - buffer: Pointer; - size : Integer; -begin - ZCompress(Pointer(s), Length(s) * SizeOf(UnicodeChar), buffer, size, level); - - SetLength(result, size + SizeOf(Integer)); - - if size > 0 then - begin - Move(buffer^, result[1 + SizeOf(Integer)], size); - end; - - size := Length(s) * SizeOf(UnicodeChar); - - Move(size, result[1], SizeOf(Integer)); - - FreeMem(buffer); -end; -{$endif} - -function ZCompressStr2(const s: AnsiString; level: TZCompressionLevel; - windowBits, memLevel: Integer; strategy: TZStrategy): RawByteString; -begin - ZCompressString2(result, s, level, windowBits, memLevel, strategy); -end; - -procedure ZCompressString2(var result: RawByteString; const s: AnsiString; - level: TZCompressionLevel; windowBits, memLevel: Integer; - strategy: TZStrategy); -var - buffer: Pointer; - size : Integer; -begin - ZCompress2(Pointer(s), Length(s), buffer, size, level, windowBits, - memLevel, strategy); - - SetLength(result, size); - - if size > 0 then - begin - Move(buffer^, result[1], size); - end; - - FreeMem(buffer); -end; - -{$ifdef Version6Plus} -procedure ZCompressString2(var result: RawByteString; const s: UnicodeString; - level: TZCompressionLevel; windowBits, memLevel: Integer; - strategy: TZStrategy); -var - buffer: Pointer; - size : Integer; -begin - ZCompress2(Pointer(s), Length(s) * SizeOf(UnicodeChar), buffer, size, - level, windowBits, memLevel, strategy); - - SetLength(result, size); - - if size > 0 then - begin - Move(buffer^, result[1], size); - end; - - FreeMem(buffer); -end; -{$endif} - -function ZCompressStrWeb(const s: AnsiString): RawByteString; -begin - ZCompressStringWeb(result, s); -end; - -procedure ZCompressStringWeb(var result: RawByteString; const s: AnsiString); -begin - ZCompressString2(result, s, zcFastest, -15, 9, zsDefault); -end; - -{$ifdef Version6Plus} -procedure ZCompressStringWeb(var result: RawBytestring; - const s: UnicodeString); -begin - ZCompressString2(result, s, zcFastest, -15, 9, zsDefault); -end; -{$endif} - -function ZDecompressStr(const s: RawByteString): AnsiString; -begin - ZDecompressString(result, s); -end; - -procedure ZDecompressString(var result: AnsiString; - const s: RawByteString); -var - buffer: Pointer; - size : Integer; -begin - ZDecompress(Pointer(s), Length(s), buffer, size); - - SetLength(result, size); - - if size > 0 then - begin - Move(buffer^, result[1], size); - end; - - FreeMem(buffer); -end; - -{$ifdef Version6Plus} -procedure ZDecompressString(var result: UnicodeString; - const s: RawByteString); -var - buffer: Pointer; - size : Integer; -begin - ZDecompress(Pointer(s), Length(s), buffer, size); - - SetLength(result, size div SizeOf(UnicodeChar)); - - if size > 0 then - begin - Move(buffer^, result[1], size); - end; - - FreeMem(buffer); -end; -{$endif} - -function ZDecompressStrEx(const s: RawByteString): AnsiString; -begin - ZDecompressStringEx(result, s); -end; - -procedure ZDecompressStringEx(var result: AnsiString; const s: RawByteString); -var - buffer : Pointer; - size : Integer; - data : AnsiString; - dataSize: Integer; -begin - Move(s[1], size, SizeOf(Integer)); - - dataSize := Length(s) - SizeOf(Integer); - - SetLength(data, dataSize); - - if dataSize > 0 then - begin - Move(s[1 + SizeOf(Integer)], data[1], dataSize); - - ZDecompress(Pointer(data), dataSize, buffer, size, size); - - SetLength(result, size); - - if size > 0 then - begin - Move(buffer^, result[1], size); - end; - - FreeMem(buffer); - end - else - begin - SetLength(result, 0); - end; -end; - -{$ifdef Version6Plus} -procedure ZDecompressStringEx(var result: UnicodeString; - const s: RawByteString); -var - buffer : Pointer; - size : Integer; - data : AnsiString; - dataSize: Integer; -begin - Move(s[1], size, SizeOf(Integer)); - - dataSize := Length(s) - SizeOf(Integer); - - if dataSize > 0 then - begin - SetLength(data, dataSize); - - Move(s[1 + SizeOf(Integer)], data[1], dataSize); - - ZDecompress(Pointer(data), dataSize, buffer, size, size); - - SetLength(result, size div SizeOf(UnicodeChar)); - - if size > 0 then - begin - Move(buffer^, result[1], size); - end; - - FreeMem(buffer); - end - else - begin - SetLength(result, 0); - end; -end; -{$endif} - -function ZDecompressStr2(const s: RawByteString; - windowBits: Integer): AnsiString; -begin - ZDecompressString2(result, s, windowBits); -end; - -procedure ZDecompressString2(var result: AnsiString; const s: RawByteString; - windowBits: Integer); -var - buffer: Pointer; - size : Integer; -begin - ZDecompress2(Pointer(s), Length(s), buffer, size, windowBits); - - SetLength(result, size); - - if size > 0 then - begin - Move(buffer^, result[1], size); - end; - - FreeMem(buffer); -end; - -{$ifdef Version6Plus} -procedure ZDecompressString2(var result: UnicodeString; - const s: RawByteString; windowBits: Integer); -var - buffer: Pointer; - size : Integer; -begin - ZDecompress2(Pointer(s), Length(s), buffer, size, windowBits); - - SetLength(result, size div SizeOf(UnicodeChar)); - - if size > 0 then - begin - Move(buffer^, result[1], size); - end; - - FreeMem(buffer); -end; -{$endif} - -{** private stream routines *********************************************************************} - -type - PZStreamParam = ^TZStreamParam; - TZStreamParam = packed record - InStream : TStream; - OutStream : TStream; - end; - -function ZStreamRead(p: Pointer; var buffer; size: Integer): Integer; -var - param: PZStreamParam; -begin - param := PZStreamParam(p); - - result := param^.InStream.Read(buffer, size); -end; - -function ZStreamWrite(p: Pointer; const buffer; size: Integer): Integer; -var - param: PZStreamParam; -begin - param := PZStreamParam(p); - - result := param^.OutStream.Write(buffer, size); -end; - -procedure ZInternalCompressStreamEx(zstream: TZStreamRec; inStream, - outStream: TStream); -var - param: TZStreamParam; -begin - FillChar(param, SizeOf(TZStreamParam), 0); - - param.InStream := inStream; - param.OutStream := outStream; - - ZDeflateEx(zstream, @param, @ZBufferRead, @ZBufferWrite, zfFinish); - - ZCompressCheck(ZDeflateEnd(zstream)); -end; - -procedure ZInternalDecompressStreamEx(zstream: TZStreamRec; inStream, - outStream: TStream); -var - param: TZStreamParam; -begin - FillChar(param, SizeOf(TZStreamParam), 0); - - param.InStream := inStream; - param.OutStream := outStream; - - ZInflateEx(zstream, @param, @ZBufferRead, @ZBufferWrite, zfNoFlush); - - ZDecompressCheck(ZInflateEnd(zstream)); -end; - -procedure ZInternalCompressStream(zstream: TZStreamRec; inStream, - outStream: TStream); -const - bufferSize = 32768; -var - zresult : Integer; - inBuffer : Array [0..bufferSize - 1] of Byte; - outBuffer: Array [0..bufferSize - 1] of Byte; - outSize : Integer; -begin - zresult := Z_STREAM_END; - - zstream.avail_in := inStream.Read(inBuffer, bufferSize); - - while zstream.avail_in > 0 do - begin - zstream.next_in := @inBuffer; - - repeat - zstream.next_out := @outBuffer; - zstream.avail_out := bufferSize; - - zresult := ZCompressCheck(ZDeflate(zstream, zfNoFlush)); - - outSize := bufferSize - zstream.avail_out; - - outStream.Write(outBuffer, outSize); - until (zresult = Z_STREAM_END) or (zstream.avail_in = 0); - - zstream.avail_in := inStream.Read(inBuffer, bufferSize); - end; - - while zresult <> Z_STREAM_END do - begin - zstream.next_out := @outBuffer; - zstream.avail_out := bufferSize; - - zresult := ZCompressCheck(ZDeflate(zstream, zfFinish)); - - outSize := bufferSize - zstream.avail_out; - - outStream.Write(outBuffer, outSize); - end; - - ZCompressCheck(ZDeflateEnd(zstream)); -end; - -procedure ZInternalDecompressStream(zstream: TZStreamRec; inStream, - outStream: TStream); -const - bufferSize = 32768; -var - zresult : Integer; - inBuffer : Array [0..bufferSize-1] of Byte; - outBuffer: Array [0..bufferSize-1] of Byte; - outSize : Integer; -begin - try - zresult := Z_OK; - - zstream.avail_in := inStream.Read(inBuffer, bufferSize); - - while (zresult <> Z_STREAM_END) and (zstream.avail_in > 0) do - begin - zstream.next_in := @inBuffer; - - repeat - zstream.next_out := @outBuffer; - zstream.avail_out := bufferSize; - - zresult := ZDecompressCheck(ZInflate(zstream, zfNoFlush), False); - - outSize := bufferSize - zstream.avail_out; - - outStream.Write(outBuffer, outSize); - until (zresult = Z_STREAM_END) or (zstream.avail_out > 0); - - if zstream.avail_in > 0 then - begin - inStream.Position := inStream.Position - zstream.avail_in; - end; - - if zresult <> Z_STREAM_END then - begin - zstream.avail_in := inStream.Read(inBuffer, bufferSize); - end; - end; - finally - ZDecompressCheck(ZInflateEnd(zstream)); - end; -end; - -{** stream routines *****************************************************************************} - -{procedure ZCompressStream(inStream, outStream: TStream; - level: TZCompressionLevel); -var - zstream: TZStreamRec; -begin - FillChar(zstream, SizeOf(TZStreamRec), 0); - - ZCompressCheck(ZDeflateInit(zstream, level)); - - ZInternalCompressStream(zstream, inStream, outStream); -end;} - -procedure ZCompressStream(inStream, outStream: TStream; - level: TZCompressionLevel); -const - bufferSize = 32768; -var - zstream: TZStreamRec; - zresult: Integer; - inBuffer: array[0..bufferSize - 1] of Char; - outBuffer: array[0..bufferSize - 1] of Char; - inSize: Integer; - outSize: Integer; -begin - FillChar(zstream, SizeOf(TZStreamRec), 0); - - ZCompressCheck(DeflateInit(zstream, ZLevels[level])); - - inSize := inStream.Read(inBuffer, bufferSize); - - while inSize > 0 do - begin - zstream.next_in := @inBuffer[0]; - zstream.avail_in := inSize; - - repeat - zstream.next_out := @outBuffer[0]; - zstream.avail_out := bufferSize; - - ZCompressCheck(deflate(zstream, Z_NO_FLUSH)); - - // outSize := zstream.next_out - outBuffer; - outSize := bufferSize - zstream.avail_out; - - outStream.Write(outBuffer, outSize); - until (zstream.avail_in = 0) and (zstream.avail_out > 0); - - inSize := inStream.Read(inBuffer, bufferSize); - end; - - repeat - zstream.next_out := @outBuffer[0]; - zstream.avail_out := bufferSize; - - zresult := ZCompressCheck(deflate(zstream, Z_FINISH)); - - // outSize := zstream.next_out - outBuffer; - outSize := bufferSize - zstream.avail_out; - - outStream.Write(outBuffer, outSize); - until (zresult = Z_STREAM_END) and (zstream.avail_out > 0); - - ZCompressCheck(deflateEnd(zstream)); -end; - - -procedure ZCompressStream2(inStream, outStream: TStream; - level: TZCompressionLevel; windowBits, memLevel: Integer; - strategy: TZStrategy); -var - zstream: TZStreamRec; -begin - FillChar(zstream, SizeOf(TZStreamRec), 0); - - ZCompressCheck(ZDeflateInit2(zstream, level, windowBits, memLevel, - strategy)); - - ZInternalCompressStream(zstream,inStream,outStream); -end; - -procedure ZCompressStreamWeb(inStream, outStream: TStream); -begin - ZCompressStream2(inStream, outStream, zcFastest, -15, 9, zsDefault); -end; - -procedure ZDecompressStream(inStream, outStream: TStream); -var - zstream: TZStreamRec; -begin - FillChar(zstream, SizeOf(TZStreamRec), 0); - - ZDecompressCheck(ZInflateInit(zstream)); - - ZInternalDecompressStream(zstream, inStream, outStream); -end; - -procedure ZDecompressStream2(inStream, outStream: TStream; - windowBits: Integer); -var - zstream: TZStreamRec; -begin - FillChar(zstream, SizeOf(TZStreamRec), 0); - - ZDecompressCheck(ZInflateInit2(zstream, windowBits)); - - ZInternalDecompressStream(zstream, inStream, outStream); -end; - -{** TCustomZStream ******************************************************************************} - -constructor TCustomZStream.Create(stream: TStream); -begin - inherited Create; - - FStream := stream; - FStreamPos := stream.Position; -end; - -function TCustomZStream.StreamRead(var buffer; count: Longint): Longint; -begin - if FStream.Position <> FStreamPos then FStream.Position := FStreamPos; - - result := FStream.Read(buffer,count); - - FStreamPos := FStreamPos + result; -end; - -function TCustomZStream.StreamWrite(const buffer; count: Longint): Longint; -begin - if FStream.Position <> FStreamPos then FStream.Position := FStreamPos; - - result := FStream.Write(buffer,count); - - FStreamPos := FStreamPos + result; -end; - -function TCustomZStream.StreamSeek(offset: Longint; origin: Word): Longint; -begin - if FStream.Position <> FStreamPos then FStream.Position := FStreamPos; - - result := FStream.Seek(offset,origin); - - FStreamPos := FStream.Position; -end; - -procedure TCustomZStream.StreamReadBuffer(var buffer; count: Longint); -begin - if FStream.Position <> FStreamPos then FStream.Position := FStreamPos; - - FStream.ReadBuffer(buffer,count); - - FStreamPos := FStreamPos + count; -end; - -procedure TCustomZStream.StreamWriteBuffer(const buffer; count: Longint); -begin - if FStream.Position <> FStreamPos then FStream.Position := FStreamPos; - - FStream.WriteBuffer(buffer,count); - - FStreamPos := FStreamPos + count; -end; - -procedure TCustomZStream.DoProgress; -begin - if Assigned(FOnProgress) then FOnProgress(Self); -end; - -function TCustomZStream.GetStreamPosition: TStreamPos; -begin - result := FStream.Position; -end; - -procedure TCustomZStream.SetStreamPosition(value: TStreamPos); -begin - FStream.Position := value; - FStreamPos := FStream.Position; -end; - -{** TZCompressionStream *************************************************************************} - -constructor TZCompressionStream.Create(dest: TStream; - compressionLevel: TZCompressionLevel); -begin - inherited Create(dest); - - FZStream.next_out := @FBuffer; - FZStream.avail_out := SizeOf(FBuffer); - - ZCompressCheck(ZDeflateInit(FZStream, compressionLevel)); -end; - -constructor TZCompressionStream.Create(dest: TStream; - compressionLevel: TZCompressionLevel; windowBits, memLevel: Integer; - strategy: TZStrategy); -begin - inherited Create(dest); - - FZStream.next_out := @FBuffer; - FZStream.avail_out := SizeOf(FBuffer); - - ZCompressCheck(ZDeflateInit2(FZStream, compressionLevel, windowBits, - memLevel, strategy)); -end; - -destructor TZCompressionStream.Destroy; -begin - FZStream.next_in := Nil; - FZStream.avail_in := 0; - - try - while ZCompressCheck(ZDeflate(FZStream, zfFinish)) <> Z_STREAM_END do - begin - StreamWriteBuffer(FBuffer, SizeOf(FBuffer) - FZStream.avail_out); - - FZStream.next_out := @FBuffer; - FZStream.avail_out := SizeOf(FBuffer); - end; - - if FZStream.avail_out < SizeOf(FBuffer) then - begin - StreamWriteBuffer(FBuffer, SizeOf(FBuffer) - FZStream.avail_out); - end; - finally - ZDeflateEnd(FZStream); - end; - - inherited Destroy; -end; - -function TZCompressionStream.Read(var buffer; count: Longint): Longint; -begin - raise EZCompressionError.Create(SZInvalid); -end; - -function TZCompressionStream.Write(const buffer; count: Longint): Longint; -var - writeCount: Longint; -begin - result := count; - - FZStream.next_in := @buffer; - FZStream.avail_in := count; - - while FZStream.avail_in > 0 do - begin - ZCompressCheck(ZDeflate(FZStream, zfNoFlush)); - - if FZStream.avail_out = 0 then - begin - writeCount := StreamWrite(FBuffer,SizeOf(FBuffer)); - - if writeCount = SizeOf(FBuffer) then - begin - FZStream.next_out := @FBuffer; - FZStream.avail_out := SizeOf(FBuffer); - - DoProgress; - end - else - begin - StreamPosition := StreamPosition - writeCount; - - result := Cardinal(count) - FZStream.avail_in; - - FZStream.avail_in := 0; - end; - end; - end; -end; - -function TZCompressionStream.Seek(offset: Longint; origin: Word): Longint; -begin - if (offset = 0) and (origin = soFromCurrent) then - begin - result := FZStream.total_in; - end - else raise EZCompressionError.Create(SZInvalid); -end; - -function TZCompressionStream.GetCompressionRate: Single; -begin - if FZStream.total_in = 0 then result := 0 - else result := (1.0 - (FZStream.total_out / FZStream.total_in)) * 100.0; -end; - -{** TZDecompressionStream ***********************************************************************} - -constructor TZDecompressionStream.Create(source: TStream); -begin - inherited Create(source); - - FZStream.next_in := @FBuffer; - FZStream.avail_in := 0; - - ZDecompressCheck(ZInflateInit(FZStream)); -end; - -constructor TZDecompressionStream.Create(source: TStream; - windowBits: Integer); -begin - inherited Create(source); - - FZStream.next_in := @FBuffer; - FZStream.avail_in := 0; - - ZDecompressCheck(ZInflateInit2(FZStream, windowBits)); -end; - -destructor TZDecompressionStream.Destroy; -begin - ZInflateEnd(FZStream); - - inherited Destroy; -end; - -function TZDecompressionStream.Read(var buffer; count: Longint): Longint; -var - zresult: Integer; -begin - FZStream.next_out := @buffer; - FZStream.avail_out := count; - - zresult := Z_OK; - - while (FZStream.avail_out > 0) and (zresult <> Z_STREAM_END) do - begin - if FZStream.avail_in = 0 then - begin - FZStream.avail_in := StreamRead(FBuffer,SizeOf(FBuffer)); - - if FZStream.avail_in = 0 then - begin - result := Cardinal(count) - FZStream.avail_out; - - Exit; - end; - - FZStream.next_in := @FBuffer; - - DoProgress; - end; - - zresult := ZDecompressCheck(ZInflate(FZStream, zfNoFlush)); - end; - - if (zresult = Z_STREAM_END) and (FZStream.avail_in > 0) then - begin - StreamPosition := StreamPosition - FZStream.avail_in; - - FZStream.avail_in := 0; - end; - - result := Cardinal(count) - FZStream.avail_out; -end; - -function TZDecompressionStream.Write(const Buffer; Count: Longint): Longint; -begin - raise EZDecompressionError.Create(SZInvalid); -end; - -function TZDecompressionStream.Seek(Offset: Longint; Origin: Word): Longint; -var - buf: Array [0..8191] of Byte; - i : Integer; -begin - if (offset = 0) and (origin = soFromBeginning) then - begin - ZDecompressCheck(ZInflateReset(FZStream)); - - FZStream.next_in := @FBuffer; - FZStream.avail_in := 0; - - StreamPosition := 0; - end - else if ((offset >= 0) and (origin = soFromCurrent)) or - (((Cardinal(offset) - FZStream.total_out) > 0) and (origin = soFromBeginning)) then - begin - if origin = soFromBeginning then Dec(offset, FZStream.total_out); - - if offset > 0 then - begin - for i := 1 to offset div SizeOf(buf) do ReadBuffer(buf, SizeOf(buf)); - ReadBuffer(buf, offset mod SizeOf(buf)); - end; - end - else if (offset = 0) and (origin = soFromEnd) then - begin - while Read(buf, SizeOf(buf)) > 0 do ; - end - else raise EZDecompressionError.Create(SZInvalid); - - result := FZStream.total_out; -end; - -{** TZCustomBuffer ******************************************************************************} - -constructor TZCustomBuffer.Create; -begin - inherited Create; - - FillChar(FZStream, SizeOf(TZStreamRec), 0); - - FBuffer := Nil; - FBufferCapacity := 0; - - FBufferSize := 0; -end; - -destructor TZCustomBuffer.Destroy; -begin - BufferCapacity(0); - - inherited Destroy; -end; - -procedure TZCustomBuffer.Clear; -begin - BufferCapacity(0); - - FBufferSize := 0; -end; - -procedure TZCustomBuffer.Flush(flush: TZFlush); -begin - // to be implemented by descendents as needed -end; - -function TZCustomBuffer.Write(const s: AnsiString): Integer; -begin - result := Write(Pointer(s), Length(s)); -end; - -function TZCustomBuffer.Read(var buffer: Pointer; size: Integer): Integer; -begin - result := BufferSize; - if size < result then result := size; - - BufferRead(buffer, result); -end; - -function TZCustomBuffer.Read(var s: AnsiString): Integer; -begin - SetLength(s, BufferSize); - - result := Read(Pointer(s), Length(s)); -end; - -procedure TZCustomBuffer.BufferWrite(const buffer: Pointer; size: Integer); -begin - if size > 0 then - begin - BufferCapacity(FBufferSize + size); - - Move(buffer^, Pointer(Integer(FBuffer) + FBufferSize)^, size); - - Inc(FBufferSize, size); - end; -end; - -procedure TZCustomBuffer.BufferRead(var buffer: Pointer; size: Integer); -begin - if size > 0 then - begin - Move(FBuffer^, buffer^, size); - - Move(Pointer(Integer(FBuffer) + size)^, FBuffer^, FBufferSize - size); - - Dec(FBufferSize, size); - end; -end; - -procedure TZCustomBuffer.BufferCapacity(capacity: Integer); -const - delta = 8192; // must be a power of 2 -begin - if capacity > 0 then - begin - capacity := (capacity + (delta - 1)) and not (delta - 1); - end; - - if FBufferCapacity <> capacity then - begin - if capacity = 0 then FreeMem(FBuffer) - else if FBufferCapacity = 0 then GetMem(FBuffer, capacity) - else ReallocMem(FBuffer, capacity); - - FBufferCapacity := capacity; - end; -end; - -{** TZCompressionBuffer *************************************************************************} - -constructor TZCompressionBuffer.Create(level: TZCompressionLevel); -begin - inherited Create; - - ZCompressCheck(ZDeflateInit(FZStream, level)); -end; - -constructor TZCompressionBuffer.Create(level: TZCompressionLevel; - windowBits, memLevel: Integer; strategy: TZStrategy); -begin - inherited Create; - - ZCompressCheck(ZDeflateInit2(FZStream, level, windowBits, memLevel, - strategy)); -end; - -destructor TZCompressionBuffer.Destroy; -begin - ZCompressCheck(ZDeflateEnd(FZStream)); - - inherited Destroy; -end; - -procedure TZCompressionBuffer.Clear; -begin - inherited Clear; - - ZCompressCheck(ZDeflateReset(FZStream)); -end; - -procedure TZCompressionBuffer.Flush(flush: TZFlush); -const - outSize = 32768; -var - zresult : Integer; - outBuffer: Array [0..outSize - 1] of Byte; - outCount : Integer; -begin - FZStream.next_in := Nil; - FZStream.avail_in := 0; - - repeat - FZStream.next_out := @outBuffer; - FZStream.avail_out := outSize; - - zresult := ZCompressCheck(ZDeflate(FZStream, flush)); - - outCount := outSize - FZStream.avail_out; - - BufferWrite(@outBuffer, outCount); - until (zresult = Z_STREAM_END) or (FZStream.avail_out > 0); -end; - -function TZCompressionBuffer.Write(const buffer: Pointer; - size: Integer): Integer; -const - outSize = 32768; -var - zresult : Integer; - outBuffer: Array [0..outSize - 1] of Byte; - outCount : Integer; -begin - zresult := Z_OK; - - FZStream.next_in := buffer; - FZStream.avail_in := size; - - while (zresult <> Z_STREAM_END) and (FZStream.avail_in > 0) do - begin - repeat - FZStream.next_out := @outBuffer; - FZStream.avail_out := outSize; - - zresult := ZCompressCheck(ZDeflate(FZStream, zfNoFlush)); - - outCount := outSize - FZStream.avail_out; - - BufferWrite(@outBuffer, outCount); - until (zresult = Z_STREAM_END) or (FZStream.avail_out > 0); - end; - - result := Cardinal(size) - FZStream.avail_in; -end; - -{** TZDecompressionBuffer ***********************************************************************} - -constructor TZDecompressionBuffer.Create; -begin - inherited Create; - - ZDecompressCheck(ZInflateInit(FZStream)); -end; - -constructor TZDecompressionBuffer.Create(windowBits: Integer); -begin - inherited Create; - - ZDecompressCheck(ZInflateInit2(FZStream, windowBits)); -end; - -destructor TZDecompressionBuffer.Destroy; -begin - ZDecompressCheck(ZInflateEnd(FZStream)); - - inherited Destroy; -end; - -procedure TZDecompressionBuffer.Clear; -begin - inherited Clear; - - ZDecompressCheck(ZInflateReset(FZStream)); -end; - -function TZDecompressionBuffer.Write(const buffer: Pointer; - size: Integer): Integer; -const - outSize = 32768; -var - zresult : Integer; - outBuffer: Array [0..outSize - 1] of Byte; - outCount : Integer; -begin - zresult := Z_OK; - - FZStream.next_in := buffer; - FZStream.avail_in := size; - - while (zresult <> Z_STREAM_END) and (FZStream.avail_in > 0) do - begin - repeat - FZStream.next_out := @outBuffer; - FZStream.avail_out := outSize; - - zresult := ZDecompressCheck(ZInflate(FZStream, zfNoFlush), False); - - outCount := outSize - FZStream.avail_out; - - BufferWrite(@outBuffer, outCount); - until (zresult = Z_STREAM_END) or (FZStream.avail_out > 0); - end; - - result := Cardinal(size) - FZStream.avail_in; -end; - -{** EZLibError **********************************************************************************} - -constructor EZLibError.Create(code: Integer; const dummy: String); -begin - inherited Create(z_errmsg[2 - code]); - - FErrorCode := code; -end; - -constructor EZLibError.Create(error: TZError; const dummy: String); -begin - Create(ZErrors[error], dummy); -end; - -procedure DecompressToUserBuf(const InBuf: Pointer; InBytes: Integer; - const OutBuf: Pointer; BufSize: Integer); -var - strm: TZStreamRec; -begin - FillChar(strm, sizeof(strm), 0); -// strm.zalloc := zlibAllocMem; -// strm.zfree := zlibFreeMem; - strm.next_in := InBuf; - strm.avail_in := InBytes; - strm.next_out := OutBuf; - strm.avail_out := BufSize; - DCheck(inflateInit_(strm, zlib_version, sizeof(strm))); - try - if DCheck(inflate(strm, Z_FINISH)) <> Z_STREAM_END then - raise EZlibError.CreateRes(64672); - finally - DCheck(inflateEnd(strm)); - end; -end; - -end. From c3d439df4476aec3823c470a5bda7a50a6bbf59c Mon Sep 17 00:00:00 2001 From: chuck <> Date: Fri, 14 Aug 2020 11:19:43 -0400 Subject: [PATCH 03/76] Fix handling of integers which hold flags --- lib/mte/mteBase.pas | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index 730ee0f..06490c8 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -1398,10 +1398,20 @@ procedure BuildChildDefs(obj: ISuperObject; def: IwbNamedDef); intDef: IwbIntegerDefFormaterUnion; sraDef: IwbSubRecordArrayDef; aDef: IwbArrayDef; + iDef: IwbIntegerDef; + fDef: IwbFlagsDef; begin // try SubRecordDef ValueDef if Supports(def, IwbSubRecordDef, subDef) then BuildChildDefs(obj, subDef.GetValue as IwbNamedDef) + // try IwbFlagsDef + // TODO: Is this nil bad?? It seems to work... + else if Supports(def, IwbIntegerDef, iDef) and Supports(iDef.Formater[nil], IwbFlagsDef, fDef) then begin + if fDef.FlagCount = 0 then exit; + obj.O['c'] := SA([]); + for i := 0 to Pred(fDef.FlagCount) do + BuildChildDef(fDef.FlagDef[i] as IwbNamedDef, obj); + end // try IwbRecordDef else if Supports(def, IwbRecordDef, recDef) then begin if recDef.MemberCount = 0 then exit; From 86b5587d40bf99483a353dab484b9e1f68548245 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Fri, 14 Aug 2020 11:19:49 -0400 Subject: [PATCH 04/76] Fix handling of arrays --- lib/mte/mteBase.pas | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index 06490c8..30099c6 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -1447,8 +1447,10 @@ procedure BuildChildDefs(obj: ISuperObject; def: IwbNamedDef); end // try IwbArrayDef else if Supports(def, IwbArrayDef, aDef) then begin + if aDef.ElementCount = 0 then exit; obj.O['c'] := SA([]); - BuildChildDef(aDef.Element as IwbNamedDef, obj); + for i := 0 to Pred(aDef.ElementCount) do + AddDefIfMissing(obj, aDef.Element as IwbNamedDef, aDef.ElementLabel[i]); end; end; From 46158cedc229e0529d2caf6019c5997164dde1b5 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Fri, 14 Aug 2020 11:20:02 -0400 Subject: [PATCH 05/76] Fix up bash tag settings now that flags work --- frontend/settings/Skyrim/Bash.Actors.ACBS.json | 2 +- frontend/settings/Skyrim/Bash.Actors.AIData.json | 2 +- frontend/settings/Skyrim/Bash.Actors.Stats.json | 2 +- frontend/settings/Skyrim/Bash.C.Climate.json | 2 +- frontend/settings/Skyrim/Bash.C.ImageSpace.json | 2 +- frontend/settings/Skyrim/Bash.C.Light.json | 2 +- frontend/settings/Skyrim/Bash.C.Owner.json | 2 +- frontend/settings/Skyrim/Bash.C.SkyLighting.json | 1 + frontend/settings/Skyrim/Bash.C.Water.json | 2 +- frontend/settings/Skyrim/Bash.SpellStats.json | 2 +- frontend/settings/Skyrim/Bash.Stats.json | 2 +- 11 files changed, 11 insertions(+), 10 deletions(-) create mode 100755 frontend/settings/Skyrim/Bash.C.SkyLighting.json diff --git a/frontend/settings/Skyrim/Bash.Actors.ACBS.json b/frontend/settings/Skyrim/Bash.Actors.ACBS.json index dcc0b30..25f3fb5 100755 --- a/frontend/settings/Skyrim/Bash.Actors.ACBS.json +++ b/frontend/settings/Skyrim/Bash.Actors.ACBS.json @@ -1 +1 @@ -{"records":"NPC_","description":"Actors.ACBS tag from Wrye Bash.\r\n\r\nUsed when the mod modifies NPC ACBS configuration.","tree":{"records":[{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":12,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags"},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":10,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":9,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":10,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":7,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"Skill #0 (OneHanded)"},{"t":3,"n":"Skill #1 (TwoHanded)"},{"t":3,"n":"Skill #2 (Marksman)"},{"t":3,"n":"Skill #3 (Block)"},{"t":3,"n":"Skill #4 (Smithing)"},{"t":3,"n":"Skill #5 (HeavyArmor)"},{"t":3,"n":"Skill #6 (LightArmor)"},{"t":3,"n":"Skill #7 (Pickpocket)"},{"t":3,"n":"Skill #8 (Lockpicking)"},{"t":3,"n":"Skill #9 (Sneak)"},{"t":3,"n":"Skill #10 (Alchemy)"},{"t":3,"n":"Skill #11 (Speechcraft)"},{"t":3,"n":"Skill #12 (Alteration)"},{"t":3,"n":"Skill #13 (Conjuration)"},{"t":3,"n":"Skill #14 (Destruction)"},{"t":3,"n":"Skill #15 (Illusion)"},{"t":3,"n":"Skill #16 (Restoration)"},{"t":3,"n":"Skill #17 (Enchanting)"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"Skill #0 (OneHanded)"},{"t":3,"n":"Skill #1 (TwoHanded)"},{"t":3,"n":"Skill #2 (Marksman)"},{"t":3,"n":"Skill #3 (Block)"},{"t":3,"n":"Skill #4 (Smithing)"},{"t":3,"n":"Skill #5 (HeavyArmor)"},{"t":3,"n":"Skill #6 (LightArmor)"},{"t":3,"n":"Skill #7 (Pickpocket)"},{"t":3,"n":"Skill #8 (Lockpicking)"},{"t":3,"n":"Skill #9 (Sneak)"},{"t":3,"n":"Skill #10 (Alchemy)"},{"t":3,"n":"Skill #11 (Speechcraft)"},{"t":3,"n":"Skill #12 (Alteration)"},{"t":3,"n":"Skill #13 (Conjuration)"},{"t":3,"n":"Skill #14 (Destruction)"},{"t":3,"n":"Skill #15 (Illusion)"},{"t":3,"n":"Skill #16 (Restoration)"},{"t":3,"n":"Skill #17 (Enchanting)"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"},{"t":11,"n":"Unused"}]},{"t":9,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"}]}]}]}]},"name":"Bash.Actors.ACBS","hash":"$75515CF0","color":255} \ No newline at end of file +{"records":"NPC_","description":"Actors.ACBS tag from Wrye Bash.\r\n\r\nUsed when the mod modifies NPC ACBS configuration.","tree":{"records":[{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"ScriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"n":"SNAM - Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"SPLO - Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"ATKD - Attacks","c":[{"t":6,"n":"ATKD - Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"n":"PRKR - Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"CNTO - Items","c":[{"t":6,"n":"CNTO - Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":8,"n":"PKID - Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"Skill"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"Skill"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"}]},{"t":8,"n":"PNAM - Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"CSDT - Sound Types","c":[{"t":6,"n":"CSDT - Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"CSDI - Sounds","c":[{"t":6,"n":"CSDI - Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"TINI - Tint Layers","c":[{"t":6,"n":"TINI - Layer","c":[{"t":3,"n":"TINI - Tint Index"},{"t":6,"n":"TINC - Tint Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Alpha"}]},{"t":3,"n":"TINV - Interpolation Value"},{"t":3,"n":"TIAS - Preset"}]}]}]}]},"name":"Bash.Actors.ACBS","hash":"0A9F1581","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Actors.AIData.json b/frontend/settings/Skyrim/Bash.Actors.AIData.json index a64b53a..5f13c29 100755 --- a/frontend/settings/Skyrim/Bash.Actors.AIData.json +++ b/frontend/settings/Skyrim/Bash.Actors.AIData.json @@ -1 +1 @@ -{"records":"NPC_","description":"Actors.AIData tag from Wrye Bash.\r\n\r\nUsed when the mod modifies NPC AI data.","tree":{"records":[{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":12,"n":"Level"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags"},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":10,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":9,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":10,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"p":1,"n":"Unknown"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":7,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"Skill #0 (OneHanded)"},{"t":3,"n":"Skill #1 (TwoHanded)"},{"t":3,"n":"Skill #2 (Marksman)"},{"t":3,"n":"Skill #3 (Block)"},{"t":3,"n":"Skill #4 (Smithing)"},{"t":3,"n":"Skill #5 (HeavyArmor)"},{"t":3,"n":"Skill #6 (LightArmor)"},{"t":3,"n":"Skill #7 (Pickpocket)"},{"t":3,"n":"Skill #8 (Lockpicking)"},{"t":3,"n":"Skill #9 (Sneak)"},{"t":3,"n":"Skill #10 (Alchemy)"},{"t":3,"n":"Skill #11 (Speechcraft)"},{"t":3,"n":"Skill #12 (Alteration)"},{"t":3,"n":"Skill #13 (Conjuration)"},{"t":3,"n":"Skill #14 (Destruction)"},{"t":3,"n":"Skill #15 (Illusion)"},{"t":3,"n":"Skill #16 (Restoration)"},{"t":3,"n":"Skill #17 (Enchanting)"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"Skill #0 (OneHanded)"},{"t":3,"n":"Skill #1 (TwoHanded)"},{"t":3,"n":"Skill #2 (Marksman)"},{"t":3,"n":"Skill #3 (Block)"},{"t":3,"n":"Skill #4 (Smithing)"},{"t":3,"n":"Skill #5 (HeavyArmor)"},{"t":3,"n":"Skill #6 (LightArmor)"},{"t":3,"n":"Skill #7 (Pickpocket)"},{"t":3,"n":"Skill #8 (Lockpicking)"},{"t":3,"n":"Skill #9 (Sneak)"},{"t":3,"n":"Skill #10 (Alchemy)"},{"t":3,"n":"Skill #11 (Speechcraft)"},{"t":3,"n":"Skill #12 (Alteration)"},{"t":3,"n":"Skill #13 (Conjuration)"},{"t":3,"n":"Skill #14 (Destruction)"},{"t":3,"n":"Skill #15 (Illusion)"},{"t":3,"n":"Skill #16 (Restoration)"},{"t":3,"n":"Skill #17 (Enchanting)"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"},{"t":11,"n":"Unused"}]},{"t":9,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"}]}]}]}]},"name":"Bash.Actors.AIData","hash":"$E4A27332","color":255} \ No newline at end of file +{"records":"NPC_","description":"Actors.AIData tag from Wrye Bash.\r\n\r\nUsed when the mod modifies NPC AI data.","tree":{"records":[{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"ScriptName"},{"t":3,"n":"Flags"},{"t":7,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"n":"String"},{"t":3,"n":"Int32"},{"t":5,"n":"Float"},{"t":3,"n":"Bool"},{"t":7,"n":"Array of Object","c":[{"t":6,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"n":"Alias"},{"t":3,"n":"FormID"}]},{"t":6,"n":"Object v1","c":[{"t":3,"n":"FormID"},{"t":3,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"n":"Array of String","c":[{"t":2,"n":"Element"}]},{"t":7,"n":"Array of Int32","c":[{"t":3,"n":"Element"}]},{"t":7,"n":"Array of Float","c":[{"t":5,"n":"Element"}]},{"t":7,"n":"Array of Bool","c":[{"t":3,"n":"Element"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Female"},{"t":4,"n":"Essential"},{"t":4,"n":"Is CharGen Face Preset"},{"t":4,"n":"Respawn"},{"t":4,"n":"Auto-calc stats"},{"t":4,"n":"Unique"},{"t":4,"n":"Doesn't affect stealth meter"},{"t":4,"n":"PC Level Mult"},{"t":4,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Bleedout Override"},{"t":4,"n":"Opposite Gender Anims"},{"t":4,"n":"Simple Actor"},{"t":4,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"looped audio?"},{"t":4,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Invulnerable"}]},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":3,"n":"Level"},{"t":3,"n":"Level Mult"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags","c":[{"t":4,"n":"Use Traits"},{"t":4,"n":"Use Stats"},{"t":4,"n":"Use Factions"},{"t":4,"n":"Use Spell List"},{"t":4,"n":"Use AI Data"},{"t":4,"n":"Use AI Packages"},{"t":4,"n":"Use Model\/Animation?"},{"t":4,"n":"Use Base Data"},{"t":4,"n":"Use Inventory"},{"t":4,"n":"Use Script"},{"t":4,"n":"Use Def Pack List"},{"t":4,"n":"Use Attack Data"},{"t":4,"n":"Use Keywords"}]},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":8,"n":"SNAM - Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"SPLO - Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures","c":[{"t":6,"n":"Alternate Texture","c":[{"t":2,"n":"3D Name"},{"t":3,"n":"New Texture"},{"t":3,"n":"3D Index"}]}]}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"ATKD - Attacks","c":[{"t":6,"n":"ATKD - Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"n":"PRKR - Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"CNTO - Items","c":[{"t":6,"n":"CNTO - Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"n":"PKID - Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"Skill"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"Skill"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"}]},{"t":8,"n":"PNAM - Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"CSDT - Sound Types","c":[{"t":6,"n":"CSDT - Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"CSDI - Sounds","c":[{"t":6,"n":"CSDI - Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"TINI - Tint Layers","c":[{"t":6,"n":"TINI - Layer","c":[{"t":3,"n":"TINI - Tint Index"},{"t":6,"n":"TINC - Tint Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Alpha"}]},{"t":3,"n":"TINV - Interpolation Value"},{"t":3,"n":"TIAS - Preset"}]}]}]}]},"name":"Bash.Actors.AIData","hash":"308F0F34","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Actors.Stats.json b/frontend/settings/Skyrim/Bash.Actors.Stats.json index c04d088..b00361e 100755 --- a/frontend/settings/Skyrim/Bash.Actors.Stats.json +++ b/frontend/settings/Skyrim/Bash.Actors.Stats.json @@ -1 +1 @@ -{"records":"NPC_","description":"Actors.Stats tag from Wrye Bash.\r\n\r\nUsed when the mod modifies NPC stats.","tree":{"records":[{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":12,"n":"Level"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags"},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":10,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":9,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":10,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":7,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"},{"t":11,"p":1,"n":"Unused"}]},{"t":9,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"}]}]}]}]},"name":"Bash.Actors.Stats","hash":"$5853D7A6","color":255} \ No newline at end of file +{"records":"NPC_","description":"Actors.Stats tag from Wrye Bash.\r\n\r\nUsed when the mod modifies NPC stats.","tree":{"records":[{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Female"},{"t":4,"n":"Essential"},{"t":4,"n":"Is CharGen Face Preset"},{"t":4,"n":"Respawn"},{"t":4,"n":"Auto-calc stats"},{"t":4,"n":"Unique"},{"t":4,"n":"Doesn't affect stealth meter"},{"t":4,"n":"PC Level Mult"},{"t":4,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Bleedout Override"},{"t":4,"n":"Opposite Gender Anims"},{"t":4,"n":"Simple Actor"},{"t":4,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"looped audio?"},{"t":4,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Invulnerable"}]},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":3,"n":"Level"},{"t":3,"n":"Level Mult"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags","c":[{"t":4,"n":"Use Traits"},{"t":4,"n":"Use Stats"},{"t":4,"n":"Use Factions"},{"t":4,"n":"Use Spell List"},{"t":4,"n":"Use AI Data"},{"t":4,"n":"Use AI Packages"},{"t":4,"n":"Use Model\/Animation?"},{"t":4,"n":"Use Base Data"},{"t":4,"n":"Use Inventory"},{"t":4,"n":"Use Script"},{"t":4,"n":"Use Def Pack List"},{"t":4,"n":"Use Attack Data"},{"t":4,"n":"Use Keywords"}]},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":8,"n":"SNAM - Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"SPLO - Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"ATKD - Attacks","c":[{"t":6,"n":"ATKD - Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"n":"PRKR - Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"CNTO - Items","c":[{"t":6,"n":"CNTO - Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":8,"n":"PKID - Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"}]},{"t":8,"n":"PNAM - Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"CSDT - Sound Types","c":[{"t":6,"n":"CSDT - Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"CSDI - Sounds","c":[{"t":6,"n":"CSDI - Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"TINI - Tint Layers","c":[{"t":6,"n":"TINI - Layer","c":[{"t":3,"n":"TINI - Tint Index"},{"t":6,"n":"TINC - Tint Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Alpha"}]},{"t":3,"n":"TINV - Interpolation Value"},{"t":3,"n":"TIAS - Preset"}]}]}]}]},"name":"Bash.Actors.Stats","hash":"3E8B2129","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.C.Climate.json b/frontend/settings/Skyrim/Bash.C.Climate.json index 93c6d3b..5f1e704 100755 --- a/frontend/settings/Skyrim/Bash.C.Climate.json +++ b/frontend/settings/Skyrim/Bash.C.Climate.json @@ -1 +1 @@ -{"records":"CELL","description":"C.Climate tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell climates.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Climate","hash":"865E01E8","color":255} \ No newline at end of file +{"records":"CELL","description":"C.Climate tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell climates.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"},{"t":4,"n":"Has Water"},{"t":4,"n":"Can't Travel From Here"},{"t":4,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Public Area"},{"t":4,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"n":"Use Sky Lighting"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land","c":[{"t":4,"n":"Quad 1"},{"t":4,"n":"Quad 2"},{"t":4,"n":"Quad 3"},{"t":4,"n":"Quad 4"}]}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":6,"n":"Directional","c":[{"t":6,"n":"X+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"X-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Specular","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Scale"}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits","c":[{"t":4,"n":"Ambient Color"},{"t":4,"n":"Directional Color"},{"t":4,"n":"Fog Color"},{"t":4,"n":"Fog Near"},{"t":4,"n":"Fog Far"},{"t":4,"n":"Directional Rotation"},{"t":4,"n":"Directional Fade"},{"t":4,"n":"Clip Distance"},{"t":4,"n":"Fog Power"},{"t":4,"n":"Fog Max"},{"t":4,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":7,"n":"XCLR - Regions"},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"XOWN - Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Climate","hash":"500FBC09","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.C.ImageSpace.json b/frontend/settings/Skyrim/Bash.C.ImageSpace.json index e3b619a..f49b2d8 100755 --- a/frontend/settings/Skyrim/Bash.C.ImageSpace.json +++ b/frontend/settings/Skyrim/Bash.C.ImageSpace.json @@ -1 +1 @@ -{"records":"CELL","description":"","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","d":1,"c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.ImageSpace","hash":"B06BA239","color":255} \ No newline at end of file +{"records":"CELL","description":"","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.ImageSpace","hash":"625A0C61","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.C.Light.json b/frontend/settings/Skyrim/Bash.C.Light.json index b4e2a93..5c96bfe 100755 --- a/frontend/settings/Skyrim/Bash.C.Light.json +++ b/frontend/settings/Skyrim/Bash.C.Light.json @@ -1 +1 @@ -{"records":"CELL","description":"C.Light tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell lighting or fog.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"s":1,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"s":1,"p":1,"n":"Ambient Colors","c":[{"t":8,"p":1,"n":"Colors","c":[{"t":6,"p":1,"n":"Color #0 (X+)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #1 (X-)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #2 (Y+)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #3 (Y-)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #4 (Z+)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"Color #5 (Z-)","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Fresnel Power"}]}]},{"t":6,"s":1,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unknown"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Light","hash":"F7AC4C60","color":255} \ No newline at end of file +{"records":"CELL","description":"C.Light tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell lighting or fog.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"},{"t":4,"n":"Has Water"},{"t":4,"n":"Can't Travel From Here"},{"t":4,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Public Area"},{"t":4,"n":"Hand Changed"},{"t":4,"n":"Show Sky"},{"t":4,"n":"Use Sky Lighting"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land","c":[{"t":4,"n":"Quad 1"},{"t":4,"n":"Quad 2"},{"t":4,"n":"Quad 3"},{"t":4,"n":"Quad 4"}]}]},{"t":6,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"s":1,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"s":1,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"p":1,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"s":1,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":7,"n":"XCLR - Regions"},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"XOWN - Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Light","hash":"94154BF2","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.C.Owner.json b/frontend/settings/Skyrim/Bash.C.Owner.json index 93e40dd..a89c251 100755 --- a/frontend/settings/Skyrim/Bash.C.Owner.json +++ b/frontend/settings/Skyrim/Bash.C.Owner.json @@ -1 +1 @@ -{"records":"CELL","description":"C.Owner tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell ownership.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Owner","hash":"B47B0FA0","color":255} \ No newline at end of file +{"records":"CELL","description":"C.Owner tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell ownership.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"},{"t":4,"n":"Has Water"},{"t":4,"n":"Can't Travel From Here"},{"t":4,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"n":"Hand Changed"},{"t":4,"n":"Show Sky"},{"t":4,"n":"Use Sky Lighting"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land","c":[{"t":4,"n":"Quad 1"},{"t":4,"n":"Quad 2"},{"t":4,"n":"Quad 3"},{"t":4,"n":"Quad 4"}]}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":6,"n":"Directional","c":[{"t":6,"n":"X+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"X-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Specular","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Scale"}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits","c":[{"t":4,"n":"Ambient Color"},{"t":4,"n":"Directional Color"},{"t":4,"n":"Fog Color"},{"t":4,"n":"Fog Near"},{"t":4,"n":"Fog Far"},{"t":4,"n":"Directional Rotation"},{"t":4,"n":"Directional Fade"},{"t":4,"n":"Clip Distance"},{"t":4,"n":"Fog Power"},{"t":4,"n":"Fog Max"},{"t":4,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":7,"n":"XCLR - Regions"},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Owner","hash":"6E20980F","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.C.SkyLighting.json b/frontend/settings/Skyrim/Bash.C.SkyLighting.json new file mode 100755 index 0000000..e1ce9ee --- /dev/null +++ b/frontend/settings/Skyrim/Bash.C.SkyLighting.json @@ -0,0 +1 @@ +{"records":"CELL","description":"Modifies Use Sky Lighting cell flag.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"},{"t":4,"n":"Has Water"},{"t":4,"n":"Can't Travel From Here"},{"t":4,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Public Area"},{"t":4,"n":"Hand Changed"},{"t":4,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land","c":[{"t":4,"n":"Quad 1"},{"t":4,"n":"Quad 2"},{"t":4,"n":"Quad 3"},{"t":4,"n":"Quad 4"}]}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":6,"n":"Directional","c":[{"t":6,"n":"X+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"X-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Specular","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Scale"}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits","c":[{"t":4,"n":"Ambient Color"},{"t":4,"n":"Directional Color"},{"t":4,"n":"Fog Color"},{"t":4,"n":"Fog Near"},{"t":4,"n":"Fog Far"},{"t":4,"n":"Directional Rotation"},{"t":4,"n":"Directional Fade"},{"t":4,"n":"Clip Distance"},{"t":4,"n":"Fog Power"},{"t":4,"n":"Fog Max"},{"t":4,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":7,"n":"XCLR - Regions"},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"}]},{"t":3,"n":"XCWT - Water"},{"t":6,"n":"XOWN - Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.SkyLighting","hash":"3CB3D09F","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.C.Water.json b/frontend/settings/Skyrim/Bash.C.Water.json index e1b4490..6a62eb7 100755 --- a/frontend/settings/Skyrim/Bash.C.Water.json +++ b/frontend/settings/Skyrim/Bash.C.Water.json @@ -1 +1 @@ -{"records":"CELL","description":"C.Water tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell water type or level.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land"}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":8,"n":"Colors","c":[{"t":6,"n":"Color #0 (X+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #1 (X-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #2 (Y+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #3 (Y-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #4 (Z+)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"Color #5 (Z-)","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Specular","c":[{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fresnel Power"}]}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits"}]},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"n":"XNAM - Water Noise Texture"},{"t":9,"n":"XCLR - Regions","c":[{"t":3,"n":"Region"}]},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"n":"Ownership","c":[{"t":3,"n":"XOWN - Owner"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Water","hash":"53C4F93D","color":255} \ No newline at end of file +{"records":"CELL","description":"C.Water tag from Wrye Bash.\r\n\r\nUsed when the mod modifies cell water type or level.","tree":{"records":[{"t":1,"p":1,"n":"CELL - Cell","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"n":"Can't Travel From Here"},{"t":4,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Public Area"},{"t":4,"n":"Hand Changed"},{"t":4,"n":"Show Sky"},{"t":4,"n":"Use Sky Lighting"}]},{"t":6,"n":"XCLC - Grid","c":[{"t":3,"n":"X"},{"t":3,"n":"Y"},{"t":3,"n":"Force Hide Land","c":[{"t":4,"n":"Quad 1"},{"t":4,"n":"Quad 2"},{"t":4,"n":"Quad 3"},{"t":4,"n":"Quad 4"}]}]},{"t":6,"n":"XCLL - Lighting","c":[{"t":6,"n":"Ambient Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Directional Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Fog Color Near","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fog Near"},{"t":5,"n":"Fog Far"},{"t":3,"n":"Directional Rotation XY"},{"t":3,"n":"Directional Rotation Z"},{"t":5,"n":"Directional Fade"},{"t":5,"n":"Fog Clip Distance"},{"t":5,"n":"Fog Power"},{"t":6,"n":"Ambient Colors","c":[{"t":6,"n":"Directional","c":[{"t":6,"n":"X+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"X-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Y-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z+","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Z-","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Specular","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Scale"}]},{"t":6,"n":"Fog Color Far","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"n":"Fog Max"},{"t":5,"n":"Light Fade Begin"},{"t":5,"n":"Light Fade End"},{"t":3,"n":"Inherits","c":[{"t":4,"n":"Ambient Color"},{"t":4,"n":"Directional Color"},{"t":4,"n":"Fog Color"},{"t":4,"n":"Fog Near"},{"t":4,"n":"Fog Far"},{"t":4,"n":"Directional Rotation"},{"t":4,"n":"Directional Fade"},{"t":4,"n":"Clip Distance"},{"t":4,"n":"Fog Power"},{"t":4,"n":"Fog Max"},{"t":4,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"n":"XCLR - Regions"},{"t":3,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"n":"XWCU - Water Velocity","c":[{"t":5,"n":"X Offset"},{"t":5,"n":"Y Offset"},{"t":5,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"},{"t":5,"n":"Y Angle"},{"t":5,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"n":"XOWN - Ownership","c":[{"t":3,"n":"XOWN - Owner"},{"t":3,"n":"XRNK - Faction rank"}]},{"t":3,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"n":"XCAS - Acoustic Space"},{"t":3,"n":"XEZN - Encounter Zone"},{"t":3,"n":"XCMO - Music Type"},{"t":3,"n":"XCIM - Image Space"}]}]},"name":"Bash.C.Water","hash":"09EC9E77","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.SpellStats.json b/frontend/settings/Skyrim/Bash.SpellStats.json index 9204796..aac13c6 100755 --- a/frontend/settings/Skyrim/Bash.SpellStats.json +++ b/frontend/settings/Skyrim/Bash.SpellStats.json @@ -1 +1 @@ -{"records":"SPEL","description":"SpellStats tag from Wrye Bash.\r\n\r\nUsed when the mod modifies spell stats.","tree":{"records":[{"t":1,"p":1,"n":"SPEL - Spell","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]}]},"name":"Bash.SpellStats","hash":"9FE95589","color":255} \ No newline at end of file +{"records":"SPEL","description":"SpellStats tag from Wrye Bash.\r\n\r\nUsed when the mod modifies spell stats.","tree":{"records":[{"t":1,"p":1,"n":"SPEL - Spell","c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"ETYP - Equipment Type"},{"t":2,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Area Effect Ignores LOS"},{"t":4,"n":"Ignore Resistance"},{"t":4,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"n":"EFID - Effects","c":[{"t":6,"n":"EFID - Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - EFIT","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":10,"n":"CTDA - Conditions","c":[{"t":6,"n":"CTDA - Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},"name":"Bash.SpellStats","hash":"A34FB204","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Stats.json b/frontend/settings/Skyrim/Bash.Stats.json index 960d209..f3af033 100755 --- a/frontend/settings/Skyrim/Bash.Stats.json +++ b/frontend/settings/Skyrim/Bash.Stats.json @@ -1 +1 @@ -{"records":"ALCH,APPA,ARMO,BOOK,INGR,KEYM,MISC,PROJ,WEAP,AMMO","description":"Stats tag from Wrye Bash.\r\n\r\nUsed when the mod modifies item stats.","tree":{"records":[{"t":1,"p":1,"n":"ALCH - Ingestible","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"n":"Flags"},{"t":3,"n":"Addiction"},{"t":5,"n":"Addiction Chance"},{"t":3,"n":"Sound - Consume"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"QUAL - Quality"},{"t":2,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMO - Armor","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Male world model","c":[{"t":2,"n":"MOD2 - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Female world model","c":[{"t":2,"n":"MOD4 - Model Filename"}]},{"t":6,"n":"Icon 2 (female)","c":[{"t":2,"n":"ICO2 - Large Icon filename"}]},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"},{"t":3,"n":"General Flags"},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":7,"n":"Armature","c":[{"t":3,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"BOOK - Book","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":2,"n":"DESC - Book Text"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":12,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"n":"INAM - Inventory Art"},{"t":2,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"INGR - Ingredient","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Ingredient Value"},{"t":3,"n":"Flags"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - ","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Type"},{"t":5,"p":1,"n":"Gravity","lt":"Range","lf":"Speed"},{"t":5,"p":1,"n":"Speed","lt":"Gravity","lf":"Range"},{"t":5,"p":1,"n":"Range","lt":"Speed","lf":"Gravity"},{"t":3,"n":"Light"},{"t":3,"n":"Muzzle Flash - Light"},{"t":5,"n":"Tracer Chance"},{"t":5,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"n":"Explosion"},{"t":3,"n":"Sound"},{"t":5,"n":"Muzzle Flash - Duration"},{"t":5,"n":"Fade Duration"},{"t":5,"n":"Impact Force"},{"t":3,"n":"Sound - Countdown"},{"t":3,"n":"Sound - Disable"},{"t":3,"n":"Default Weapon Source"},{"t":5,"n":"Cone Spread"},{"t":5,"n":"Collision Radius"},{"t":5,"n":"Lifetime"},{"t":5,"n":"Relaunch Interval"},{"t":3,"n":"Decal Data"},{"t":3,"n":"Collision Layer"}]},{"t":6,"n":"Muzzle Flash Model","c":[{"t":2,"n":"NAM1 - Model Filename"}]},{"t":3,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"WEAP - Weapon","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":2,"n":"DESC - Description"},{"t":6,"n":"Has Scope","c":[{"t":2,"n":"MOD3 - Model Filename"}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"n":"INAM - Impact Data Set"},{"t":3,"n":"WNAM - 1st Person Model Object"},{"t":3,"n":"SNAM - Attack Sound"},{"t":3,"n":"XNAM - Attack Sound 2D"},{"t":3,"n":"NAM7 - Attack Loop Sound"},{"t":3,"n":"TNAM - Attack Fail Sound"},{"t":3,"n":"UNAM - Idle Sound"},{"t":3,"n":"NAM9 - Equip Sound"},{"t":3,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"p":1,"n":"DNAM - Data","c":[{"t":3,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed","lt":"Reach","lf":"Stagger"},{"t":5,"p":1,"n":"Reach","lt":"Resist","lf":"Speed"},{"t":3,"n":"Flags"},{"t":11,"n":"Unused"},{"t":5,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"n":"Base VATS To-Hit Chance"},{"t":3,"n":"Attack Animation"},{"t":3,"n":"# Projectiles"},{"t":3,"n":"Embedded Weapon AV (unused)"},{"t":5,"n":"Range Min"},{"t":5,"n":"Range Max"},{"t":3,"n":"On Hit"},{"t":3,"n":"Flags2"},{"t":5,"n":"Animation Attack Mult"},{"t":5,"n":"Unknown"},{"t":5,"n":"Rumble - Left Motor Strength"},{"t":5,"n":"Rumble - Right Motor Strength"},{"t":5,"n":"Rumble - Duration"},{"t":11,"n":"Unknown"},{"t":3,"n":"Skill"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Resist","lt":"Stagger","lf":"Reach"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Stagger","lt":"Speed","lf":"Resist"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"n":"VNAM - Detection Sound Level"},{"t":3,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"AMMO - Ammunition","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":6,"n":"Icon","c":[{"t":2,"n":"ICON - Large Icon filename"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Drop"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"}]},{"t":2,"n":"ONAM - Short Name"}]}]},"name":"Bash.Stats","hash":"C6AE5502","color":255} \ No newline at end of file +{"records":"ALCH,APPA,ARMO,BOOK,INGR,KEYM,LIGH,MISC,SLGM,WEAP,AMMO","description":"Stats tag from Wrye Bash.\r\n\r\nUsed when the mod modifies item stats.","tree":{"records":[{"t":1,"p":1,"n":"ALCH - Ingestible","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"ICON - Icon","c":[{"t":2,"n":"ICON - Large Icon FileName"},{"t":2,"n":"MICO - Small Icon FileName"}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Unknown 4"},{"t":4,"p":1,"n":"Unknown 5"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unknown 7"},{"t":4,"p":1,"n":"Unknown 8"},{"t":4,"p":1,"n":"Unknown 9"},{"t":4,"p":1,"n":"Unknown 10"},{"t":4,"p":1,"n":"Unknown 11"},{"t":4,"p":1,"n":"Unknown 12"},{"t":4,"p":1,"n":"Unknown 13"},{"t":4,"p":1,"n":"Unknown 14"},{"t":4,"p":1,"n":"Unknown 15"},{"t":4,"p":1,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"n":"EFID - Effects","c":[{"t":6,"n":"EFID - Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - EFIT","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":10,"n":"CTDA - Conditions","c":[{"t":6,"n":"CTDA - Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":6,"n":"ICON - Icon","c":[{"t":2,"n":"ICON - Large Icon FileName"},{"t":2,"n":"MICO - Small Icon FileName"}]},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"QUAL - Quality"},{"t":2,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMO - Armor","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"EITM - Object Effect"},{"t":3,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"MOD2 - Male world model","c":[{"t":2,"n":"MOD2 - Model FileName"},{"t":11,"n":"MO2T - Texture Files Hashes"},{"t":7,"n":"MO2S - Alternate Textures"}]},{"t":6,"n":"ICON - Icon","c":[{"t":2,"n":"ICON - Large Icon FileName"},{"t":2,"n":"MICO - Small Icon FileName"}]},{"t":6,"n":"MOD4 - Female world model","c":[{"t":2,"n":"MOD4 - Model FileName"},{"t":11,"n":"MO4T - Texture Files Hashes"},{"t":7,"n":"MO4S - Alternate Textures"}]},{"t":6,"n":"ICO2 - Icon 2 (female)","c":[{"t":2,"n":"ICO2 - Large Icon FileName"},{"t":2,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"BODT - Body Template","c":[{"t":3,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":2,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":2,"n":"DESC - Description"},{"t":8,"n":"MODL - Armature","c":[{"t":3,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"BOOK - Book","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":6,"n":"ICON - Icon","c":[{"t":2,"n":"ICON - Large Icon FileName"},{"t":2,"n":"MICO - Small Icon FileName"}]},{"t":2,"n":"DESC - Book Text"},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Teaches Skill"},{"t":4,"n":"Can't be Taken"},{"t":4,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"n":"Skill"},{"t":3,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"n":"INAM - Inventory Art"},{"t":2,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"INGR - Ingredient","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":6,"n":"ICON - Icon","c":[{"t":2,"n":"ICON - Large Icon FileName"},{"t":2,"n":"MICO - Small Icon FileName"}]},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"n":"ENIT - Effect Data","c":[{"t":3,"n":"Ingredient Value"},{"t":3,"n":"Flags","c":[{"t":4,"n":"No auto-calculation"},{"t":4,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"References Persist"}]}]},{"t":8,"n":"EFID - Effects","c":[{"t":6,"n":"EFID - Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - EFIT","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":10,"n":"CTDA - Conditions","c":[{"t":6,"n":"CTDA - Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":6,"n":"ICON - Icon","c":[{"t":2,"n":"ICON - Large Icon FileName"},{"t":2,"n":"MICO - Small Icon FileName"}]},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"LIGH - Light","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"ICON - Icon","c":[{"t":2,"n":"ICON - Large Icon FileName"},{"t":2,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"n":"Radius"},{"t":6,"n":"Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Dynamic"},{"t":4,"n":"Can be Carried"},{"t":4,"n":"Negative"},{"t":4,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"n":"Off By Default"},{"t":4,"n":"Flicker Slow"},{"t":4,"n":"Pulse"},{"t":4,"n":"Pulse Slow"},{"t":4,"n":"Spot Light"},{"t":4,"n":"Shadow Spotlight"},{"t":4,"n":"Shadow Hemisphere"},{"t":4,"n":"Shadow Omnidirectional"},{"t":4,"n":"Portal-strict"}]},{"t":5,"n":"Falloff Exponent"},{"t":5,"n":"FOV"},{"t":5,"n":"Near Clip"},{"t":6,"n":"Flicker Effect","c":[{"t":5,"n":"Period"},{"t":5,"n":"Intensity Amplitude"},{"t":5,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"n":"FNAM - Fade value"},{"t":3,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"MISC - Misc. Item","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":6,"n":"ICON - Icon","c":[{"t":2,"n":"ICON - Large Icon FileName"},{"t":2,"n":"MICO - Small Icon FileName"}]},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":6,"n":"ICON - Icon","c":[{"t":2,"n":"ICON - Large Icon FileName"},{"t":2,"n":"MICO - Small Icon FileName"}]},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"n":"SOUL - Contained Soul"},{"t":3,"n":"SLCP - Maximum Capacity"},{"t":3,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"WEAP - Weapon","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":6,"n":"ICON - Icon","c":[{"t":2,"n":"ICON - Large Icon FileName"},{"t":2,"n":"MICO - Small Icon FileName"}]},{"t":3,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"ETYP - Equipment Type"},{"t":3,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"n":"BAMT - Alternate Block Material"},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":2,"n":"DESC - Description"},{"t":6,"n":"MOD3 - Has Scope","c":[{"t":2,"n":"MOD3 - Model FileName"},{"t":11,"n":"MO3T - Texture Files Hashes"},{"t":7,"n":"MO3S - Alternate Textures"}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"n":"INAM - Impact Data Set"},{"t":3,"n":"WNAM - 1st Person Model Object"},{"t":3,"n":"SNAM - Attack Sound"},{"t":3,"n":"XNAM - Attack Sound 2D"},{"t":3,"n":"NAM7 - Attack Loop Sound"},{"t":3,"n":"TNAM - Attack Fail Sound"},{"t":3,"n":"UNAM - Idle Sound"},{"t":3,"n":"NAM9 - Equip Sound"},{"t":3,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Ignores Normal Weapon Resistance"},{"t":4,"n":"Automatic (unused)"},{"t":4,"n":"Has Scope (unused)"},{"t":4,"n":"Can't Drop"},{"t":4,"n":"Hide Backpack (unused)"},{"t":4,"n":"Embedded Weapon (unused)"},{"t":4,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"n":"Non-playable"}]},{"t":5,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"n":"Base VATS To-Hit Chance"},{"t":3,"n":"Attack Animation"},{"t":3,"n":"# Projectiles"},{"t":3,"n":"Embedded Weapon AV (unused)"},{"t":5,"n":"Range Min"},{"t":5,"n":"Range Max"},{"t":3,"n":"On Hit"},{"t":3,"n":"Flags2","c":[{"t":4,"n":"Player Only"},{"t":4,"n":"NPCs Use Ammo"},{"t":4,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Minor Crime"},{"t":4,"n":"Range Fixed"},{"t":4,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"n":"Burst Shot"},{"t":4,"n":"Rumble - Alternate"},{"t":4,"n":"Long Bursts"},{"t":4,"n":"Non-hostile"},{"t":4,"n":"Bound Weapon"}]},{"t":5,"n":"Animation Attack Mult"},{"t":5,"n":"Rumble - Left Motor Strength"},{"t":5,"n":"Rumble - Right Motor Strength"},{"t":5,"n":"Rumble - Duration"},{"t":3,"n":"Skill"},{"t":3,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"n":"Flags","c":[{"t":4,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"n":"VNAM - Detection Sound Level"},{"t":3,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"AMMO - Ammunition","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":6,"n":"ICON - Icon","c":[{"t":2,"n":"ICON - Large Icon FileName"},{"t":2,"n":"MICO - Small Icon FileName"}]},{"t":6,"n":"DEST - Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"DSTD - Stages","c":[{"t":6,"n":"DSTD - Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"DMDL - Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"YNAM - Sound - Pick Up"},{"t":3,"n":"ZNAM - Sound - Put Down"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"n":"Projectile"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Ignores Normal Weapon Resistance"},{"t":4,"n":"Non-Playable"},{"t":4,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"n":"ONAM - Short Name"}]}]},"name":"Bash.Stats","hash":"BB16C7CA","color":255} \ No newline at end of file From 4b3440a52dadef498cb735ede900ddbce5bdd40c Mon Sep 17 00:00:00 2001 From: chuck <> Date: Fri, 14 Aug 2020 11:20:11 -0400 Subject: [PATCH 06/76] Delete hardcoded dat files No longer needed with newer xEdit --- ...and.otherwise.ignore.it.I.really.mean.it.dat | Bin 3414 -> 0 bytes ...and.otherwise.ignore.it.I.really.mean.it.dat | Bin 11403 -> 0 bytes ...and.otherwise.ignore.it.I.really.mean.it.dat | Bin 3520 -> 0 bytes ...and.otherwise.ignore.it.I.really.mean.it.dat | Bin 2205 -> 0 bytes ...and.otherwise.ignore.it.I.really.mean.it.dat | Bin 3730 -> 0 bytes 5 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 frontend/Fallout3.Hardcoded.keep.this.with.the.exe.and.otherwise.ignore.it.I.really.mean.it.dat delete mode 100644 frontend/Fallout4.Hardcoded.keep.this.with.the.exe.and.otherwise.ignore.it.I.really.mean.it.dat delete mode 100644 frontend/FalloutNV.Hardcoded.keep.this.with.the.exe.and.otherwise.ignore.it.I.really.mean.it.dat delete mode 100644 frontend/Oblivion.Hardcoded.keep.this.with.the.exe.and.otherwise.ignore.it.I.really.mean.it.dat delete mode 100644 frontend/Skyrim.Hardcoded.keep.this.with.the.exe.and.otherwise.ignore.it.I.really.mean.it.dat diff --git a/frontend/Fallout3.Hardcoded.keep.this.with.the.exe.and.otherwise.ignore.it.I.really.mean.it.dat b/frontend/Fallout3.Hardcoded.keep.this.with.the.exe.and.otherwise.ignore.it.I.really.mean.it.dat deleted file mode 100644 index eadd153f88b1e31668423d581581ad4148283892..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3414 zcmbW4eNWRs7{Ct$iHSoEi4rw|s$e1{MgiacB3svP({&?s14VS!_FxTNZ(h5Y`HJsv z|M(sJME>Om@dM~xxz?^-c?eCG_MSfX``yd4Th>tYr7}uiWu>^9L%)A^m*@G*qX@~h zyp}_X)3II8$28wWI*Ux9vOz7ASlE(OLOY(cMX012jzfCBw1`Tp&6OWx2x%3$7Ps(r zMFj30K`6%tae}p#Vx@QnY1r*mOyVj}dv>?c@8W{JUFx|Ws>t=)4B`>~+S_aszqNz= zUdv|9mdLtdSzaJ)3c>w^U^*>OTuit7>)7ZrY@nIT)C}ZCGEK-f60&n?nciXR6V2yR zrYOpbB)X71NJysA5)C^T$0u|-(-TjPRO>>unNUe-Rns+S2U~I3e5PzLInsqQdzjD- znOUPv$+NgDduH*}NF|GzJxZufr)Q?wE)J^UeCB+3N`$^E(5(deY#Lo47OyuN;Ab=O zVOmP@7*>?A!8Zj`glQ>-aR7zk9!Me5B84Ir>PbQ|nO-QljXQf^$qSjQ6y!wka2L!3 ze8?{7zTN2><_@q6VOpdJYsg9{hSZQshy~OTPl?dsv4|7sA;)6gF-e;^0X_Rz6j_0Q zpU3>GR;tzuVhe&BZ(kGvlilOzaSp9GMqj4bvV9M!?9?AYo?30JjqY`2$X_Guh%YIs zAOttweklTX*!wtg9O)*tyS}oug-su+&1&_y2uUJVRCJm3D&`ycGU~FY@cJvRu#M2} z^8e@L6Mwh6%)9e$d`!=$;}B25Skza3^s;Ue)G`NQ^BZ{!;>WYC@w zfk}3cZ)i{>F4hdXgDI*PYQI_s&(8v}n+ eczc?~`8CBp@pI!Cs*w%iV*Uw!rr4h(as2}(yZb8u diff --git a/frontend/Fallout4.Hardcoded.keep.this.with.the.exe.and.otherwise.ignore.it.I.really.mean.it.dat b/frontend/Fallout4.Hardcoded.keep.this.with.the.exe.and.otherwise.ignore.it.I.really.mean.it.dat deleted file mode 100644 index 8e937e2186f7503e0fdfcf98318878116967e300..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11403 zcmb7~*>4oB>oc?@d^?MkPrxg5Kla?3xwD?wVZC(?{;;S^D^To_w(8BIp@~; zV)e?5i2r$qe!R6#cGi_g^i_^A#q-a2gIEl5)aeAJ;?Z$#wgm>wozAB zO~n~GjqybI>&3T$aZD^)%4u}s=jk7V3{OSpzXRt-MA>$vX?Q?L*5bQBAWM)HTu*9R z=!~n86yF2Jlqh(ftnHFL>V`)qEtuXMsPr}Qc4*e41o6$vu5HI38K+`AESZ z17kuIETb7{SZFcz)XovC0i9`+Oi&4st+ttrk?_ALfp05uBul(*)%K} zmx=yu6x+T=ejr?qRQnlVPKrX!_uQIoSe{#v9%Nbm0g~8AKL^r;=sG?NhLi0VfEf`L zSZrn5a z>8GR9zk$=EV#79SDvK>yi{Ao*w2%#>R#ATKiOVrNB;E?Mafp8Z!3z94fQ*T1+ie*& z!)~K4TClQ9ey=eWOxvz^%5)jTrf!X#mZ~;=fwOgAV$O;qp{;Hb}%0_!d#@--++)8CFQA_w_Vc)5pZJwJn>_ z67+sMpJyHZ1?R`b>+NQX#9y$fjwk8B6!z=Cfig;#aOy!w#}PfhGJ?JGA3)?q#rNy7 zrzV zx$is?7^S4PO$s)x_tY)J3O(dEqX#%+VnaHH+%nZHHd=yjMKsEhWCr$EiHwJn8S`M+ zM8;4u<4RV>(PYNetc>Ag#EL2{C;pRwJdU38wbdE2yrQaOER@M&W8ynCV(;-qpTZE z<$!UzcLgUP7lRXkIwAZ!G<$Vp#qz)z7lkd?cDDNUm3m3xdVLZoqhi4{thzOz4`PM5 zUQYrdA50O^td(VgU?V>Qph>E=cH66{n!Tr-j*b$?#k=v+&oWH`Dj!6kCmRjr^ohX> znzuLxPXQ<=)~WBNTitJ2(_GFo&1ry~45KF;Y5IsGG;yv+ad-wur^SkNy#>eEQuSra zGnz)78jpIKV4SGafSU+#OQ!Uwdr8Nz<7NOeN&ARB)l`;u$2MG*#c|vYp9R#kSm?B9 zNZC+U-FB*;Z7Qp{qiVZpDsnq~4uCT;;BD2}x1D+>B75^Z5Kq!=PWuk4u|&OvDLd(< zfK&JbKpGd-UBfhKCMs-bH@X%RO!?p-3f}37ln)J};H{oWxiE-=_j)4b(Lofv*%K)j z2T|~DPo#W!5Cw1dM9N17QSg3Gq&zl=f;W63_8MLh>EU2H-~RDjXgaw`7aP^8t+-BCctOg5%MB zL%mg+3cNAC4hY&9^YWU;^HploOxa3;@dAzaN;d#@E(R-_ve_z;bNh_Qy*Obe3-}^1 z;{x7W-QIQ;Y#Mdgwa8&F0qj&)K$<~pXVY$5^<)pCXfFe;CtBDwtnORsFm4220oduT zXtZyy?fN?bf22rr1-D%v1>AHGXUSI3sQM|Jya!@sx$SxtfHPfS!RmNB)GaN$Hyz)A zX(GN9IpZ}To)yat%XU;~yv-fMR7;Ms-ZavU$iY$o&0nR<5Xqvh;2`KlC7aOySXtTh&Ft(cod5roUe<^?mH4 zfeJ`m$CrR~qD!K9(;f|bDa8^MBQM?r&PCu9eDOk^{c7US!)j81Fq%W|7NC0}S8O{J z8QwbW%B+T|z#BbbIfyy`mx0*Je_HS#n)Z4kEs~GoWj|FmcI|DT(G(I@Vv;QrsTjGW z45W))QkY;>quHWrV$n$GhQ&Bl$b|@f2hfjp(Se`uT5h}5vK^XOgQ}HbSI$GvT_6XK zFTtx^pZv&URP#c011Mur&Q@sJjE9|`vh0XWV98*`8}Xb#-BeAgZj9J>b+4d1iJ!gAgF3Yuiu=cuS5~?2|%4c@Rk&;`497$#Erx! z0g4Y)E2@$Cfr=Z>PXTj6RKk6I-zQhC6X#D6J`I>N^!6*a{cS;E%kaP02s>&s9&Npn z#P;J`Py+8P@)qy6OxvXeX=0Kxl5fE+Ku#g@X4^`IaS^ToYzARvRilS*qn1kK)}#)^ zX`NW7$6qV;p5Qc706e7w>1935A?)C7plJ@S)(rjIAl<>NZUcCly4AL`XY9$;h~ebe z0pK~mrJx3fF2uVoeLUb70@{Byjhe>PDit%049v3fq-h#8Fr>!h$bJKu6xo`bt4_m@ zoirpDn_WPj?}J>YcqC-H?wl?zKHAzpfO$i^}>C#+^ zH0uCim|iJt+yU#yS%5d;_=u=BjbI3gN0Lt9=Kixl$O-Dm_c|AX2j#4g&uNeq|6w~D zgj<%+17u9B8MWOtvIfqz$=ZAY7&);*=jjs~{c8ms!an&TK!!!tQWEy^`tc_tmp*{w z$3?-cQ5k|xLIQagNa?ZJxy&cZJ}wWHDxfimC$-yv^FVeB2+*y zF5@b`2j7EFz=z>^_#}2{lV-MNsf{nkzyGn%iQVc-WhssN%W2ZgEAnaz{r>xF`34M* zA|#bE+9;A0HB&9>D7RW&nH@n$D@Y|UIJ*VkLAwxC(c=?A1$c^FkS`z&TVA1VTgnU1 zZ0p@N&YC+p&+4FpR4&aR=z-zR#;)zw_HegTGfA^Xt>zkyjxSiH0#70W({TaC!p=^2 z4I6EO^<}On%JkWWVihX(G$J+?7t?SP<6f<6iCVp;q0}0c+K5P{<5E@2a9X(0D>j=b z)^8ljv6XE`opCfB)YP#h}8M`$~4o$exNQTt_Ms)^h1iSMbH=H z=&apA6B zoVZKAO$cXEs7K%fqEKh#Hu$`o2@8ePf34b$x)l^nf8sG}D3 zN5j4$ApZ=J(>AB5(7}++97C15W42vodmGnXq*jZ?Q?x5h`(&jeky&y^ z&*V{?&IiUJEl>~2{xYk@pD?z+4AWs6`1Fbz6(c^Skm}eSS2kM44)$Fd3wqMDtIs2E z7^RuoaXf;#%4F~e1M269g*C(3!wxEEOLB@@1dr@$wK9Yb0pZ`_q&H0s{^!Js z?YKr$gyAO|nLiU@jH8U#Fzu{ocM~yMSuUPI!EnttpDPtq)Z^hirLwp%4=0f7Ib{Dm zhc0ws>FA|05PJ=hLAS*~ZzJoCdvsR}^o|Rc%>KaxEgg~Ba2S^f zK#|t_{@Xx%nu4by0w+<)Ubig_AO8X+|Cne2+$O1ON+kzf>}-ejO=@!xxrS0GkDKj+ Xi(4A`B|~q)0{Iyb-2bv)gE{{IZ6O3G diff --git a/frontend/Oblivion.Hardcoded.keep.this.with.the.exe.and.otherwise.ignore.it.I.really.mean.it.dat b/frontend/Oblivion.Hardcoded.keep.this.with.the.exe.and.otherwise.ignore.it.I.really.mean.it.dat deleted file mode 100644 index fc7c5e2daa2776ffe191e967da0d9cc924a1306d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2205 zcma)+U2oGc6o!r90#Gl|B%}#x5U$2&Y0I{@e2vhgYf;lyO)7C~5^wdECdf`YinxG3 z!aaY4-^Fngix@S|ELA;mp1eNiJty&O_uxBH*TA-BHQ4%byf1FtM5s45of`U>@`Of{ zWI-5mVP}R0m<4_ukia;N*^(PkoIsRDfk7i<@;Rg{8b@{8bqw;=57U4~XU2)+dfdR= z0G;*zifkV0!{bAX*U`yrKK*qaA$Kw#i^K2U%Hoc=fYrH{?b+7QGLVDMsBcI90!N9( z@TDuxHp7H4oWRMDrS(Zv@^1;LkA6PEg#%#QNRUKhmf zZ_jKPhAA(vv7IZuDJVVIuH>wttv=<;3cKDGq)P0XL4~o_E}7T6f|#1ufF@UKqa2Cj zf|NQEQmVR(QtN%CR&^5(bL-85)}CU$%&Ve@avDAqgw$z}LRBr4<@E|m+pW@fP`sVL zp*(kLk3^N5w-e%@dCBd9{vNW(DNe)0!R&%BaWusYhwE>|{X)VJ_2;9}J#dA?%W6o( z$QVvJ95M9n6ylwnd6e&o z&qxjRL%bwo_>MIjnPrUqsB`E6F;!E9q2pk*|A zWjKxJ(b(@tS6&Dfk{WcJ&>aS@=T_T6IGtBVL0GlEEW+`$>IV^~vF}#Le#Q-oBfQEY%}Z0d+65z?Olfe@OtxFb$BGFM~O87Ol{8$I%?xSg8c_c9&*MgGx5=ZhEhw zD9=k${%4B_fJ;lmk(WFGed>JnteG?PT7f@|=ksyk1I_YRvJC(?b(-&8ekCggsAF7O z3-R0QYU0W(*##7C=qk7`|85To???~!>g>)7DZ-;w7wPdT z{ZLrpvXFi(qzG%PbwO{aobqnG6Exo|fRdo>HUwpNLr`{`g0g#0PzLD@YOl-(Uc**z1K-LjzU zb_Hekv7qes1ZDS$pzIogvb!rNyL~~~tq97lDJZ*pg0lNwP?dauFKhOizPK&Q)2x{}=F|=n>w4{*YpzHJxE`-Bfhk;zJSU&$F9;r9%LYd`$ Date: Fri, 14 Aug 2020 11:20:17 -0400 Subject: [PATCH 07/76] Increment to v1.1.0 --- frontend/MatorSmash.dproj | 12 +++++++----- frontend/MatorSmash.res | Bin 5120 -> 4812 bytes 2 files changed, 7 insertions(+), 5 deletions(-) mode change 100644 => 100755 frontend/MatorSmash.res diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index b5091e5..fb7e5e3 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -65,7 +65,7 @@ false None 3081 - CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= + CompanyName=;FileDescription=;FileVersion=1.1.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;FMX;System.Win;$(DCC_Namespace) false 00400000 @@ -74,6 +74,8 @@ false false MatorSmash + true + 1 Resources\smash.png @@ -252,9 +254,9 @@ True - + - MatorSmash.exe + .\ true @@ -265,9 +267,9 @@ true - + - .\ + MatorSmash.exe true diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res old mode 100644 new mode 100755 index 9bafe393722a355bac6a0da8fba58ac5f8b8cccc..9d76d2da322ce5ca518fe2313a77b1183243789d GIT binary patch delta 226 zcmZqBIHNj2LCJxUfkAmBD1Pp^!SiA%h-}55f#UQI5&Z!s`485f`ut z2Ze2zd7iLrRCpu6XfT;qP~L$FC~gD9|NnC_1Tgq8I5LDVxH0%M1TpvmS&l&39cV)c OLoiSc2p~HfG delta 595 zcmZ8e%SyvQ6g|^sp`Z|oJHdv6A|fS)E))b&t04FSrLL=n8f==9rVCf;Cm8YteuMoC zKf|TyC)9Ii8l%18PG)k?J?G5L`}%nE#d#a6Pg~hpP^s1?CBOkNo!U&r9bnswmfmog zl+wd`1CUCQ`#hDI0y90_%%Va@q_5TFOIKVp;bNEB#4!`7u|?qsAp#80K_Ab!;5&eq zb6`tjPT-@*uPx>f_lS5NAm$pfD-Rb7MCaHxu@TXJ`n{aEsH4Gje`QbE7;8wMlD#?M z4J~`ddRJG)xQj=2nlSbX+zk;OJg_g|JHitUFcOV6;L90_PXi*H`;}91^BpYF z!WFS0=|;SB{LkV!(J^Zg99(O$A#DNM{1x+kZDea| Date: Sat, 15 Aug 2020 19:01:11 -0400 Subject: [PATCH 08/76] Support for loading more than 255 plugins w/ESL --- frontend/MatorSmash.dproj | 16 +++++++++++++--- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msSmash.pas | 20 +++++++++----------- frontend/msThreads.pas | 6 ++++-- lib/mte/mteBase.pas | 11 +---------- 5 files changed, 27 insertions(+), 26 deletions(-) diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index fb7e5e3..a754b11 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -3,7 +3,7 @@ {12317C9C-736E-45A4-8CB7-E43FF92DD93C} MatorSmash.dpr True - Debug + Release Application VCL DCC32 @@ -65,7 +65,7 @@ false None 3081 - CompanyName=;FileDescription=;FileVersion=1.1.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= + CompanyName=;FileDescription=;FileVersion=1.2.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;FMX;System.Win;$(DCC_Namespace) false 00400000 @@ -75,7 +75,9 @@ false MatorSmash true - 1 + 2 + true + true Resources\smash.png @@ -91,6 +93,9 @@ DEBUG;NX_EXCEPTION_LOG_IN_APP_FOLDER;$(DCC_Define) 3 DetailedSegments + false + 2 + CompanyName=;FileDescription=;FileVersion=1.2.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= MatorSmash_Icon.ico @@ -114,6 +119,11 @@ Debug MatorSmash_Icon.ico + 2 + 0 + true + CompanyName=;FileDescription=;FileVersion=1.2.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= + true diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 9d76d2da322ce5ca518fe2313a77b1183243789d..a7bda60cda12ec17de91bf006c2f4284a0f57f09 100755 GIT binary patch delta 37 ncmX@3dPa3ZfhZFLBf~?^99ae+4FdK+%rvpJoY83G-}8b1q!I}J delta 37 hcmX@3dPa3ZfhZ#bBLf6LXnPQ6Vrx00;l{t`1p$9$2ZsOv diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index ab6052d..734d680 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -90,20 +90,16 @@ function GetPatchFile(var patch: TPatch; var lst: TList): IwbFile; Tracker.Write('Patch is using plugin: '+patch.plugin.filename); end; -procedure AddRequiredMasters(var patch: TPatch; var lst: TList); +procedure AddRequiredMaster(var patch: TPatch; const aFile: IwbFile); var slMasters: TStringList; - i: Integer; - plugin: TPlugin; begin slMasters := TStringList.Create; try - Tracker.Write('Adding masters...'); - for i := 0 to Pred(lst.Count) do begin - plugin := TPlugin(lst[i]); - GetMasters(plugin._File, slMasters); - slMasters.AddObject(plugin.filename, patch.plugins.Objects[i]); - end; + Tracker.Write('Adding master...'); + GetMasters(aFile, slMasters); + // TODO: IDK what this line is for... + slMasters.AddObject(aFile.FileName, TObject(aFile)); try slMasters.CustomSort(LoadOrderCompare); AddMasters(patch.plugin._File, slMasters); @@ -306,6 +302,7 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); else e := WinningOverrideInFiles(rec, patch.plugins); Tracker.Write(Format(' [%d] Copying record %s', [i + 1, e.Name])); + AddRequiredMaster(patch, e._File); eCopy := wbCopyElementToFile(e, patchFile, false, true, '', '' ,'', '', false); patchRec := eCopy as IwbMainRecord; if bForce then continue; @@ -334,6 +331,7 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); mst := WinningOverrideInFiles(rec, plugin.masters); Tracker.Write(Format(' Smashing override from: %s, master: %s', [f.FileName, mst._File.FileName])); + AddRequiredMaster(patch, rec._File); rcore(IwbElement(ovr), IwbElement(mst), IwbElement(patchRec), patchRec, recObj, false, bDeletions, bOverride); except @@ -518,8 +516,8 @@ procedure BuildPatch(var patch: TPatch); SetPatchAttributes(patch); // add masters to patch file - AddRequiredMasters(patch, pluginsToPatch); - HandleCanceled(msg); + //AddRequiredMasters(patch, pluginsToPatch); + //HandleCanceled(msg); // build list of overrides recordsList := TInterfaceList.Create; diff --git a/frontend/msThreads.pas b/frontend/msThreads.pas index ff371fb..393fbf6 100755 --- a/frontend/msThreads.pas +++ b/frontend/msThreads.pas @@ -12,7 +12,7 @@ interface // ms units msCore, msConfiguration, msLoader, msSmash, // xedit units - wbBSA, wbHardcoded, wbInterface, wbImplementation; + wbBSA, wbHardcoded, wbInterface, wbImplementation, wbLoadOrder; type @@ -66,6 +66,7 @@ procedure TInitThread.Execute; plugin: TPlugin; b: TBytes; aFile: IwbFile; + aModule: PwbModuleInfo; begin try // PRINT LOAD ORDER TO LOG @@ -83,7 +84,8 @@ procedure TInitThread.Execute; try plugin := TPlugin.Create; plugin.filename := slPlugins[i]; - plugin._File := wbFile(wbDataPath + slPlugins[i], i, ''); + //aModule := wbModuleByName(slPlugins[i]); + plugin._File := wbFile(slPlugins[i], i); plugin._File._AddRef; plugin.GetMsData; PluginsList.Add(Pointer(plugin)); diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index 30099c6..0e17770 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -200,12 +200,6 @@ class function TPluginHelpers.CreateNewBasePlugin(var list: TList; filename: str plugin: TBasePlugin; begin Result := nil; - LoadOrder := PluginsList.Count + 1; - // fail if maximum load order reached - if LoadOrder > 254 then begin - Tracker.Write('Maximum load order reached! Can''t create file '+filename); - exit; - end; // create new plugin file SysUtils.FormatSettings.DecimalSeparator := '.'; @@ -262,10 +256,7 @@ class procedure THeaderHelpers.LoadPluginHeaders(var sl: TStringList); // load plugin headers for each plugin in @sl for i := 0 to Pred(sl.Count) do try - wbModuleByName(sl[i]); // Hack to fix crash - // TODO: Figure out why above is needed (probably using API wrong) - //aFile := wbFile(wbDataPath + sl[i], -1, '', []); - aFile := wbFile(sl[i], i, '', []); + aFile := wbFile(sl[i], -1, '', [fsOnlyHeader]); plugin := TBasePlugin.Create; plugin._File := aFile; HeaderList.Add(plugin); From 31d4793d6be950c34709feb8d6675d808b5df79f Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 16 Aug 2020 17:53:09 -0400 Subject: [PATCH 09/76] Fix for Skyrim VR Still treats it the same as SSE, but should detect it properly now. --- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msConfiguration.pas | 7 +++++-- frontend/msLoader.pas | 12 ++++++------ frontend/msProfilePanel.pas | 3 ++- 4 files changed, 13 insertions(+), 9 deletions(-) mode change 100644 => 100755 frontend/msConfiguration.pas mode change 100644 => 100755 frontend/msProfilePanel.pas diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index a7bda60cda12ec17de91bf006c2f4284a0f57f09..1ac7600f885b1512bc0a9c8693bc80ea6fd0cdd8 100755 GIT binary patch delta 14 VcmX@3dPa3Z3A4wi+>Pa-LI5zd1|R?c delta 14 VcmX@3dPa3Z3G+kFoQ>t7LI5vl1 gmSSE) and (wbGameMode <> gmFO4) + if (wbGameMode <> gmSSE) and (wbGameMode <> gmTES5VR) and (wbGameMode <> gmFO4) and FileExists(sPath) then begin slLoadOrder.LoadFromFile(sPath); diff --git a/frontend/msProfilePanel.pas b/frontend/msProfilePanel.pas old mode 100644 new mode 100755 index 420ec37..83e306d --- a/frontend/msProfilePanel.pas +++ b/frontend/msProfilePanel.pas @@ -69,7 +69,8 @@ constructor TProfilePanel.ICreate(AOwner: TComponent; GameIcons: TImageList; 'Fallout: New Vegas'#13#10 + 'Fallout 3'#13#10 + 'Fallout 4'#13#10 + - 'Skyrim: Special Edition'; + 'Skyrim: Special Edition'#13#10 + + 'Skyrim: VR'; begin // set up panel inherited Create(AOwner); From 620db2c5b8eb234730dae88a1c31bbf607faa183 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 16 Aug 2020 18:51:43 -0400 Subject: [PATCH 10/76] Load Creation Club mods before plugins.txt mods --- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msLoader.pas | 23 ++++++++++++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 1ac7600f885b1512bc0a9c8693bc80ea6fd0cdd8..52e2aaddcbbdb4be118e692c3d872aaf231e1914 100755 GIT binary patch delta 13 UcmX@3dPa3Z36l-$# gmSSE) and (wbGameMode <> gmFO4) then exit; + if FileExists(sPath) then begin + slCC.LoadFromFile(sPath); + index := 0; + for i := 0 to Pred(slCC.Count) do + FixLoadOrder(slLoadOrder, slCC[i], index); + end; +end; + function GetPluginDate(const aFileName: string): Cardinal; const DateOmitYears = 60; @@ -521,6 +540,7 @@ procedure LoadPluginsList(const sLoadPath: String; var sl: TStringList; noDelete var sPath: String; begin + sPath := sLoadPath + 'plugins.txt'; if FileExists(sPath) then begin sl.LoadFromFile(sPath); @@ -530,8 +550,9 @@ procedure LoadPluginsList(const sLoadPath: String; var sl: TStringList; noDelete else AddMissingFiles(sl); - // remove comments and missing files + AddCCPlugins(sl); AddBaseMasters(sl); + // remove comments and missing files RemoveCommentsAndEmpty(sl); RemoveMissingFiles(sl); if noDelete then AddMissingFiles(sl); From 842e478d7d5817b3c9cd37106810569c738ebcab Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 16 Aug 2020 18:54:51 -0400 Subject: [PATCH 11/76] Attempt to fix bug in smashing algo I introduced --- frontend/msAlgorithm.pas | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas index 58a4e00..14f57f0 100755 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -397,7 +397,7 @@ procedure CopyLinkedElement(srcCont, dstCont: IwbContainerElementRef; if Assigned(de) then de.Assign(Low(Integer), le, false) else - dstCont.AddIfMissing(le, true, true, '', '', '', '', false); + dstCont.AddIfMissing(le, true, true, '', '', '', '', true); // follow chain cLink := cObj.S['lf']; if cLink <> '' then From 26ed1e51ef7cc70c63505536a3c79236b74b1910 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 16 Aug 2020 22:42:15 -0400 Subject: [PATCH 12/76] Improve limiting of masters Should help to smash more plugins without reaching 253 master limit. --- frontend/MatorSmash.dproj | 8 ++++---- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msProfileForm.dfm | 4 ++-- frontend/msProfileForm.pas | 2 +- frontend/msSmash.pas | 5 ++++- 5 files changed, 11 insertions(+), 8 deletions(-) mode change 100644 => 100755 frontend/msProfileForm.dfm mode change 100644 => 100755 frontend/msProfileForm.pas diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index a754b11..e0f06a3 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -264,9 +264,9 @@ True - + - .\ + MatorSmash.exe true @@ -277,9 +277,9 @@ true - + - MatorSmash.exe + .\ true diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 52e2aaddcbbdb4be118e692c3d872aaf231e1914..4d238d5fd53186a50ea075f39de320b10a404807 100755 GIT binary patch delta 13 UcmX@3dPa3Z2~)i8#= 253 then patch.plugin._File.CleanMasters; slMasters.CustomSort(LoadOrderCompare); AddMasters(patch.plugin._File, slMasters); if settings.debugMasters then begin @@ -459,10 +460,12 @@ procedure CleanPatch(var patch: TPatch); begin patchFile := patch.plugin._File; - // remove ITPOs + try + // remove ITPOs if not settings.preserveITPOs then RemoveITPOs(patchFile); + patchFIle.CleanMasters; except on x: Exception do Tracker.Write(' Exception removing ITPOs: '+x.Message); From 34eb8c65c2e4a1a90b43610bfd889ec1ebcffade Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 23 Aug 2020 19:17:59 -0400 Subject: [PATCH 13/76] Make changes suggested by mator --- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msSmash.pas | 82 +++++++++++++++++++++++++--------------- lib/mte/mteBase.pas | 2 +- 3 files changed, 53 insertions(+), 31 deletions(-) diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 4d238d5fd53186a50ea075f39de320b10a404807..411227fd3679a53eccd24fed8ebe7bded57f56eb 100755 GIT binary patch delta 14 VcmX@3dPa3Z33D({$;R?fApk4D1xx?{ delta 14 VcmX@3dPa3Z33I$|?#A*^Apk751#$oY diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index b92d675..629f958 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -90,41 +90,62 @@ function GetPatchFile(var patch: TPatch; var lst: TList): IwbFile; Tracker.Write('Patch is using plugin: '+patch.plugin.filename); end; -procedure AddRequiredMaster(var patch: TPatch; const aFile: IwbFile); +function CompareLoadOrder(List: TStringList; Index1, Index2: Integer): Integer; +begin + if Index1 = Index2 then begin + Result := 0; + Exit; + end; + + Result := CmpI32( + IwbFile(Pointer(List.Objects[Index1])).LoadOrder, + IwbFile(Pointer(List.Objects[Index2])).LoadOrder); +end; + +procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); var slMasters: TStringList; + i, j: Integer; begin slMasters := TStringList.Create; + slMasters.Sorted := True; + slMasters.Duplicates := dupIgnore; try + // TODO: Investigate other params to this function + el.ReportRequiredMasters(slMasters, true, true, true); + Tracker.Write('Adding master...'); - GetMasters(aFile, slMasters); - // TODO: IDK what this line is for... - slMasters.AddObject(aFile.FileName, TObject(aFile)); - try - if patch.plugin._File.MasterCount[true] >= 253 then patch.plugin._File.CleanMasters; - slMasters.CustomSort(LoadOrderCompare); - AddMasters(patch.plugin._File, slMasters); - if settings.debugMasters then begin - Tracker.Write('Masters added:'); - Tracker.Write(slMasters.Text); - slMasters.Clear; - GetMasters(patch.plugin._File, slMasters); - Tracker.Write('Actual masters:'); - Tracker.Write(slMasters.Text); - end; - except - on x: Exception do begin - Tracker.Write('Critical exception adding masters!'); - Tracker.Write(x.Message); - raise x; - end; + for i := 0 to Pred(aFile.MasterCount[true]) do + if slMasters.Find(aFile.Masters[i, true].FileName, j) then + slMasters.Delete(j); + if slMasters.Find(aFile.FileName, j) then + slMasters.Delete(j); + + if slMasters.Count > 0 then begin + for i := 0 to Pred(slMasters.Count) do + if IwbFile(Pointer(slMasters.Objects[i])).LoadOrder >= aFile.LoadOrder then + raise Exception.Create('The required master "' + slMasters[i] + '" can not be added to "' + aFile.FileName + '" as it has a higher load order'); + + slMasters.Sorted := False; + slMasters.CustomSort(CompareLoadOrder); + + if aFile.MasterCount[true] + slMasters.Count >= 253 then + aFile.CleanMasters; + + aFile.AddMasters(slMasters); + end; + + except + on x: Exception do begin + Tracker.Write('Critical exception adding masters!'); + Tracker.Write(x.Message); + raise x; end; - finally - slMasters.Free; - if Tracker.Cancel then - raise Exception.Create('User cancelled smashing.'); - Tracker.Write('Done adding masters'); end; + slMasters.Free; + if Tracker.Cancel then + raise Exception.Create('User cancelled smashing.'); + Tracker.Write('Done adding masters'); end; procedure BuildOverridesList(var patch: TPatch; var lst: TList; @@ -303,7 +324,7 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); else e := WinningOverrideInFiles(rec, patch.plugins); Tracker.Write(Format(' [%d] Copying record %s', [i + 1, e.Name])); - AddRequiredMaster(patch, e._File); + AddRequiredMasters(patch.plugin._File, e); eCopy := wbCopyElementToFile(e, patchFile, false, true, '', '' ,'', '', false); patchRec := eCopy as IwbMainRecord; if bForce then continue; @@ -332,7 +353,7 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); mst := WinningOverrideInFiles(rec, plugin.masters); Tracker.Write(Format(' Smashing override from: %s, master: %s', [f.FileName, mst._File.FileName])); - AddRequiredMaster(patch, rec._File); + AddRequiredMasters(patch.plugin._File, e); rcore(IwbElement(ovr), IwbElement(mst), IwbElement(patchRec), patchRec, recObj, false, bDeletions, bOverride); except @@ -465,7 +486,8 @@ procedure CleanPatch(var patch: TPatch); // remove ITPOs if not settings.preserveITPOs then RemoveITPOs(patchFile); - patchFIle.CleanMasters; + // Mator didn't like cleaning the masters unnecessarily + // patchFIle.CleanMasters; except on x: Exception do Tracker.Write(' Exception removing ITPOs: '+x.Message); diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index 0e17770..c023386 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -200,6 +200,7 @@ class function TPluginHelpers.CreateNewBasePlugin(var list: TList; filename: str plugin: TBasePlugin; begin Result := nil; + LoadOrder := PluginsList.Count + 1; // create new plugin file SysUtils.FormatSettings.DecimalSeparator := '.'; @@ -1396,7 +1397,6 @@ procedure BuildChildDefs(obj: ISuperObject; def: IwbNamedDef); if Supports(def, IwbSubRecordDef, subDef) then BuildChildDefs(obj, subDef.GetValue as IwbNamedDef) // try IwbFlagsDef - // TODO: Is this nil bad?? It seems to work... else if Supports(def, IwbIntegerDef, iDef) and Supports(iDef.Formater[nil], IwbFlagsDef, fDef) then begin if fDef.FlagCount = 0 then exit; obj.O['c'] := SA([]); From 5d0cc89996fe3e30b8f32865fb31f0ea94ac4d1f Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 23 Aug 2020 19:27:21 -0400 Subject: [PATCH 14/76] Try to fix loadorder for VR --- frontend/msConfiguration.pas | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/msConfiguration.pas b/frontend/msConfiguration.pas index cd272a0..a9e15dc 100755 --- a/frontend/msConfiguration.pas +++ b/frontend/msConfiguration.pas @@ -127,7 +127,7 @@ TProgramStatus = class(TObject) regName: 'Skyrim Special Edition'; appName: 'SSE'; exeName: 'SkyrimSE.exe'; appIDs: '489830'; bsaOptMode: ''; ), ( longName: 'Skyrim VR'; gameName: 'Skyrim'; gameMode: gmTES5VR; - regName: 'SkyrimVR'; appName: 'TES5VR'; + regName: 'Skyrim VR'; appName: 'TES5VR'; exeName: 'SkyrimVR.exe'; appIDs: '611670'; bsaOptMode: ''; ) ); From 90a833fccac5fb613f59817e3b58320d971f3c5c Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 23 Aug 2020 21:04:18 -0400 Subject: [PATCH 15/76] Fix try/except/finally block --- frontend/msSmash.pas | 59 +++++++++++++++++++++++--------------------- 1 file changed, 31 insertions(+), 28 deletions(-) diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 629f958..afc5412 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -111,41 +111,44 @@ procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); slMasters.Sorted := True; slMasters.Duplicates := dupIgnore; try - // TODO: Investigate other params to this function - el.ReportRequiredMasters(slMasters, true, true, true); - - Tracker.Write('Adding master...'); - for i := 0 to Pred(aFile.MasterCount[true]) do - if slMasters.Find(aFile.Masters[i, true].FileName, j) then + try + // TODO: Investigate other params to this function + el.ReportRequiredMasters(slMasters, true, true, true); + + Tracker.Write('Adding master...'); + for i := 0 to Pred(aFile.MasterCount[true]) do + if slMasters.Find(aFile.Masters[i, true].FileName, j) then + slMasters.Delete(j); + if slMasters.Find(aFile.FileName, j) then slMasters.Delete(j); - if slMasters.Find(aFile.FileName, j) then - slMasters.Delete(j); - if slMasters.Count > 0 then begin - for i := 0 to Pred(slMasters.Count) do - if IwbFile(Pointer(slMasters.Objects[i])).LoadOrder >= aFile.LoadOrder then - raise Exception.Create('The required master "' + slMasters[i] + '" can not be added to "' + aFile.FileName + '" as it has a higher load order'); + if slMasters.Count > 0 then begin + for i := 0 to Pred(slMasters.Count) do + if IwbFile(Pointer(slMasters.Objects[i])).LoadOrder >= aFile.LoadOrder then + raise Exception.Create('The required master "' + slMasters[i] + '" can not be added to "' + aFile.FileName + '" as it has a higher load order'); - slMasters.Sorted := False; - slMasters.CustomSort(CompareLoadOrder); + slMasters.Sorted := False; + slMasters.CustomSort(CompareLoadOrder); - if aFile.MasterCount[true] + slMasters.Count >= 253 then - aFile.CleanMasters; + if aFile.MasterCount[true] + slMasters.Count >= 253 then + aFile.CleanMasters; - aFile.AddMasters(slMasters); - end; + aFile.AddMasters(slMasters); + end; + Tracker.Write('Done adding masters'); - except - on x: Exception do begin - Tracker.Write('Critical exception adding masters!'); - Tracker.Write(x.Message); - raise x; - end; + except + on x: Exception do begin + Tracker.Write('Critical exception adding masters!'); + Tracker.Write(x.Message); + raise x; + end; + end + finally + slMasters.Free; + if Tracker.Cancel then + raise Exception.Create('User cancelled smashing.'); end; - slMasters.Free; - if Tracker.Cancel then - raise Exception.Create('User cancelled smashing.'); - Tracker.Write('Done adding masters'); end; procedure BuildOverridesList(var patch: TPatch; var lst: TList; From a962d5b86fe568ba3873a518af3fe90721c98ef3 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Mon, 24 Aug 2020 16:18:06 -0400 Subject: [PATCH 16/76] Turn off translation of localized strings No need to translate them since we don't show them in the smash UI. This seems to resolve the "No strings file for lstring" error. --- frontend/msLoader.pas | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/frontend/msLoader.pas b/frontend/msLoader.pas index dcb6299..994ac32 100755 --- a/frontend/msLoader.pas +++ b/frontend/msLoader.pas @@ -44,7 +44,7 @@ implementation msCore, // mp forms // xEdit units - wbHelpers, wbInterface, wbImplementation, wbBSA, + wbHelpers, wbInterface, wbImplementation, wbLocalization, wbBSA, wbDefinitionsFNV, wbDefinitionsFO3, wbDefinitionsTES3, wbDefinitionsTES4, wbDefinitionsTES5, wbDefinitionsFO4; @@ -106,6 +106,7 @@ function InitBase: boolean; wbEditAllowed := True; wbContainerHandler := wbCreateContainerHandler; wbContainerHandler._AddRef; + wbLocalizationHandler.NoTranslate := true; // INITIALIZE DEFINITIONS Logger.Write('GENERAL', 'Definitions', 'Using '+wbAppName+'Edit Definitions'); From a196564b61016b0ba6dc89e2cd640c31f32e4140 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Mon, 24 Aug 2020 16:39:12 -0400 Subject: [PATCH 17/76] Log adding masters instead of printing to tracker Now that masters get added dynamically, it made the tracker not useful. --- frontend/msSmash.pas | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index afc5412..5fb67ad 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -115,7 +115,6 @@ procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); // TODO: Investigate other params to this function el.ReportRequiredMasters(slMasters, true, true, true); - Tracker.Write('Adding master...'); for i := 0 to Pred(aFile.MasterCount[true]) do if slMasters.Find(aFile.Masters[i, true].FileName, j) then slMasters.Delete(j); @@ -134,8 +133,8 @@ procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); aFile.CleanMasters; aFile.AddMasters(slMasters); + Logger.Write('PATCH', 'MASTERS', 'Added masters: ' + slMasters.CommaText); end; - Tracker.Write('Done adding masters'); except on x: Exception do begin From a6269955912a949ed729cbba0efa84884321cf10 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Thu, 27 Aug 2020 00:41:19 -0400 Subject: [PATCH 18/76] Load plugin BSAs ourselves Seems to fixed localized strings Must be configuring xEdit wrong if it is not loading them? --- frontend/MatorSmash.dproj | 8 ++++---- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msLoader.pas | 3 +-- frontend/msThreads.pas | 3 +++ 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index e0f06a3..a754b11 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -264,9 +264,9 @@ True - + - MatorSmash.exe + .\ true @@ -277,9 +277,9 @@ true - + - .\ + MatorSmash.exe true diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 411227fd3679a53eccd24fed8ebe7bded57f56eb..8c1cfc625747a6b7eeaf75a22082eb31254f1049 100755 GIT binary patch delta 14 VcmX@3dPa3Z33D$;`Nr~4Apk8+1%&_r delta 14 VcmX@3dPa3Z33D({$;R?fApk4D1xx?{ diff --git a/frontend/msLoader.pas b/frontend/msLoader.pas index 994ac32..dcb6299 100755 --- a/frontend/msLoader.pas +++ b/frontend/msLoader.pas @@ -44,7 +44,7 @@ implementation msCore, // mp forms // xEdit units - wbHelpers, wbInterface, wbImplementation, wbLocalization, wbBSA, + wbHelpers, wbInterface, wbImplementation, wbBSA, wbDefinitionsFNV, wbDefinitionsFO3, wbDefinitionsTES3, wbDefinitionsTES4, wbDefinitionsTES5, wbDefinitionsFO4; @@ -106,7 +106,6 @@ function InitBase: boolean; wbEditAllowed := True; wbContainerHandler := wbCreateContainerHandler; wbContainerHandler._AddRef; - wbLocalizationHandler.NoTranslate := true; // INITIALIZE DEFINITIONS Logger.Write('GENERAL', 'Definitions', 'Using '+wbAppName+'Edit Definitions'); diff --git a/frontend/msThreads.pas b/frontend/msThreads.pas index 393fbf6..9412eda 100755 --- a/frontend/msThreads.pas +++ b/frontend/msThreads.pas @@ -89,6 +89,9 @@ procedure TInitThread.Execute; plugin._File._AddRef; plugin.GetMsData; PluginsList.Add(Pointer(plugin)); + // TODO: Seems like xEdit should load them for me... wbLoadBSAs?? + // Must be setting xEdit up wrong still + BSAExists(slPlugins[i]) except on x: Exception do begin Logger.Write('ERROR', 'Load', 'Exception loading '+slPlugins[i]); From 5516c8abd26ddfc9deae42480a37a72d435fbf99 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Thu, 27 Aug 2020 00:45:11 -0400 Subject: [PATCH 19/76] Add extra master for SkyrimVR --- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msLoader.pas | 3 +++ 2 files changed, 3 insertions(+) diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 8c1cfc625747a6b7eeaf75a22082eb31254f1049..42d6350d6997ef7f5ad0a3416f0efc82a45f8554 100755 GIT binary patch delta 13 UcmX@3dPa3Z2~#`Q#<{9 delta 13 UcmX@3dPa3Z2~#h}# Date: Tue, 1 Sep 2020 11:03:34 -0700 Subject: [PATCH 20/76] Update msSmash.pas Add the required masters of the elements parent plugin. This will fix the "can not be mapped to file FileID for file" error. --- frontend/msSmash.pas | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 5fb67ad..3717285 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -355,7 +355,7 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); mst := WinningOverrideInFiles(rec, plugin.masters); Tracker.Write(Format(' Smashing override from: %s, master: %s', [f.FileName, mst._File.FileName])); - AddRequiredMasters(patch.plugin._File, e); + AddRequiredMasters(patch.plugin._File, ovr); rcore(IwbElement(ovr), IwbElement(mst), IwbElement(patchRec), patchRec, recObj, false, bDeletions, bOverride); except From 9e7ab2a792f6b5915a2b592c0e87fec37f415edb Mon Sep 17 00:00:00 2001 From: Sandman534 <45305344+Sandman534@users.noreply.github.com> Date: Tue, 1 Sep 2020 11:06:58 -0700 Subject: [PATCH 21/76] Update mteBase.pas When creating new settings this will make sure that Structs and Struct Arrays do not get prefixed with a signature --- lib/mte/mteBase.pas | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index c023386..824e93a 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -1372,6 +1372,9 @@ procedure BuildChildDef(def: IwbNamedDef; recObj: ISuperObject); for i := 0 to Pred(recDef.MemberCount) do BuildChildDef(recDef.Members[i] as IwbNamedDef, recObj); end + else if (def.DefType = dtSubRecordStruct) or (def.DefType = dtSubRecordArray) then begin + AddDefIfMissing(recObj, def, def.Name); + end else if Supports(def, IwbSignatureDef, sigDef) then begin name := SigToStr(sigDef.DefaultSignature) + ' - ' + sigDef.Name; AddDefIfMissing(recObj, def, name); From c82f7fc58f24ac0fc45513f1f2a246970d09035f Mon Sep 17 00:00:00 2001 From: chuck <> Date: Thu, 3 Sep 2020 18:47:00 -0400 Subject: [PATCH 22/76] Regenerate Smash.All setting Fixed some issues I was having with null references in smashed patch. TODO: Check with mator that description of Smash.All was true... --- frontend/settings/Skyrim/Smash.All.json | 2 +- frontend/settings/Skyrim/Smash.All.old.json | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) mode change 100644 => 100755 frontend/settings/Skyrim/Smash.All.json create mode 100755 frontend/settings/Skyrim/Smash.All.old.json diff --git a/frontend/settings/Skyrim/Smash.All.json b/frontend/settings/Skyrim/Smash.All.json old mode 100644 new mode 100755 index bc8092a..090ae7e --- a/frontend/settings/Skyrim/Smash.All.json +++ b/frontend/settings/Skyrim/Smash.All.json @@ -1 +1 @@ -{"records":"AACT,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,ACHR","description":"Smashes all the things. Produced using autoset attributes on all record types found in Skyrim.esm and DLCs. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 04\/14\/2018.","tree":{"records":[{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"},{"t":3,"p":1,"n":"General Flags"},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"},{"t":3,"p":1,"n":"General Flags"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male"},{"t":3,"p":1,"n":"Weight slider - Female"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model Filename"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model Filename"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model Filename"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model Filename"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon filename"},{"t":2,"p":1,"n":"MIC2 - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"},{"t":3,"p":1,"n":"General Flags"},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"},{"t":3,"p":1,"n":"General Flags"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags"}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - ","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags"},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land"}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits"}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Weight"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Related Camera Path"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags"}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model Filename"},{"t":3,"p":1,"n":"Flags"}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags"},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags"}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale"}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags"}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags"},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points"}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points"}]}]},{"t":2,"p":1,"n":"XMRK - Model Filename"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags"},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - Filename"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - Filename"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Related Idle Animation"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags"},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags"},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags"},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags"},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"UNAM - Radial Blur Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":2,"p":1,"n":"fileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"s":1,"p":1,"n":"Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - ","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags"}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"n":"INAM - Unused"}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags"},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags"},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags"},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track Filename"},{"t":2,"p":1,"n":"BNAM - Finale Filename"},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"External Connections","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags"},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"s":1,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags"},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"Skill"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"Skill"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"Sound Types","d":1,"c":[{"t":6,"p":1,"n":"Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"s":1,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":2,"p":1,"n":"fileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags"}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - ","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags"}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags"}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags"},{"t":3,"p":1,"n":"Clear General Flags"},{"t":3,"p":1,"n":"Set Interrupt Flags"},{"t":3,"p":1,"n":"Clear Interrupt Flags"},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags"}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"fileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags"},{"t":11,"n":"Unknown"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model Filename"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"fragmentCount"},{"t":2,"p":1,"n":"fileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"Stages","d":1,"c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags"},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":11,"n":"ANAM - Aliases Marker"},{"t":8,"s":1,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Additional Flags"}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"Targets","d":1,"c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"},{"t":3,"p":1,"n":"General Flags"},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"},{"t":3,"p":1,"n":"General Flags"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":7,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"Skill Boost","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2"},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Voice"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Decapitate Armor"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Default Hair Color"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags"},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"p":1,"n":"Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags"},{"t":8,"p":1,"n":"Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"s":1,"p":1,"n":"Male Head Data","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":10,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1"},{"t":3,"n":"Eye Morph Flags 2"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Race Presets Male","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"Available Hair Colors Male","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"Face Details Texture Set List Male","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Head Data","c":[{"p":1,"n":"NAM0 - Head Data Marker"},{"p":1,"n":"FNAM - Female Data Marker"},{"t":10,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1"},{"t":3,"n":"Eye Morph Flags 2"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Race Presets Female","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"Available Hair Colors Female","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"Face Details Texture Set List Female","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Shadow Depth Bias"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":2,"p":1,"n":"fileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags"},{"t":3,"p":1,"n":"DNAM - Behaviour Flags"}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - ","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags"},{"t":3,"p":1,"n":"Quest Flags"}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":"Value"}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"LOD","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags"}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags"}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Damage Per Second"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model Filename"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2"},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"n":"Unused RNAM","c":[{"t":6,"n":"RNAM - Grid","c":[{"t":3,"n":"Y"},{"t":3,"n":"X"},{"t":7,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - ","c":[{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags"},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]}]},"name":"Smash.All","hash":"B5A65E9D","color":128} \ No newline at end of file +{"records":"AACT,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,PLYR,PMIS,PROJ,PWAT,QUST,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TES4,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,ACHR","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 09\/03\/2020.","tree":{"records":[{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"MOD2 - Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"MOD3 - Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"MOD4 - Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"MOD5 - Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures"}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"MODL - Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"MOD2 - Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"MOD4 - Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICO2 - Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"MODL - Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"PNAM - Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"PNAM - Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"CNAM - Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":10,"p":1,"n":"BPTN - Body Parts","d":1,"c":[{"t":6,"p":1,"n":"BPTN - Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types"},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With"}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"SNAM - Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"DATA - Models","d":1,"c":[{"t":6,"p":1,"n":"DATA - Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"BNAM - Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"TNAM - Unknown TNAM","c":[{"t":6,"n":"TNAM - Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects"}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents"},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"XNAM - Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"RNAM - Ranks","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"LNAM - FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"n":"Walk Forward Sets"},{"t":3,"n":"Run Forward Sets"},{"t":3,"n":"Walk Forward Alternate Sets"},{"t":3,"n":"Run Forward Alternate Sets"},{"t":3,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"p":1,"n":"DATA - Footstep Sets"}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"ENAM - Markers","d":1,"c":[{"t":6,"p":1,"n":"ENAM - Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"FNPR - Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"HNAM - Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"NAM0 - Parts","d":1,"c":[{"t":6,"p":1,"n":"NAM0 - Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"CTDA - Conditions","c":[{"t":6,"n":"CTDA - Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius"},{"t":7,"p":1,"n":"VNAM - Double Vision Strength"},{"t":7,"p":1,"n":"TNAM - Tint Color"},{"t":7,"p":1,"n":"NAM3 - Fade Color"},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down"},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start"},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance"},{"t":7,"p":1,"n":"YNAM - DoF Range"},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength"},{"t":6,"s":1,"p":1,"n":"aIAD - HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult"},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add"},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult"},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add"},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult"},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add"},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult"},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add"},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult"},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add"},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult"},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add"},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult"},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add"},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult"},{"t":7,"p":1,"n":"GIAD - Sky Scale Add"}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"rIAD - Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult"},{"t":7,"p":1,"n":"QIAD - Saturation Add"},{"t":7,"p":1,"n":"sIAD - Brightness Mult"},{"t":7,"p":1,"n":"RIAD - Brightness Add"},{"t":7,"p":1,"n":"tIAD - Contrast Mult"},{"t":7,"p":1,"n":"SIAD - Contrast Add"}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments"}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"s":1,"p":1,"n":"TCLT - Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"TRDT - Responses","d":1,"c":[{"t":6,"p":1,"n":"TRDT - Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"SCHR - Unknown","c":[{"t":6,"n":"SCHR - Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"PNAM - Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"BTXT - Layers","d":1,"c":[{"t":6,"p":1,"n":"BTXT - Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"ATXT - Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures"}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference"},{"t":7,"n":"LCPR - Location Cell Persistent Reference"},{"t":7,"n":"RCPR - Reference Cell Persistent Reference"},{"t":7,"n":"ACUN - Actor Cell Unique"},{"t":7,"n":"LCUN - Location Cell Unique"},{"t":7,"n":"RCUN - Reference Cell Unique"},{"t":7,"n":"ACSR - Actor Cell Static Reference"},{"t":7,"n":"LCSR - Location Cell Static Reference"},{"t":7,"n":"RCSR - Reference Cell Static Reference"},{"t":8,"n":"ACEC - Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates"}]}]},{"t":8,"n":"LCEC - Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates"}]}]},{"t":8,"n":"RCEC - Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates"}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference"},{"t":7,"n":"LCID - Location Cell Marker Reference"},{"t":7,"n":"ACEP - Actor Cell Enable Point"},{"t":7,"n":"LCEP - Location Cell Enable Point"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"DNAM - Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"DNAM - Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"GNAM - Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"LVLO - Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"LVLO - Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"LVLO - Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"DNAM - Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"ITXT - Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"ITXT - Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"ESCE - Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds"},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks"}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points"},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks"}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"NVMI - Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To"},{"t":7,"n":"Preferred Merges"},{"t":7,"n":"Linked Doors"},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles"},{"t":7,"n":"Vertices"}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes"},{"t":7,"n":"NavMesh Tree?"}]},{"t":7,"n":"NVSI - Unknown"}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices"},{"t":7,"n":"Triangles"},{"t":7,"n":"Edge Links"},{"t":7,"n":"Door Triangles"},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"s":1,"p":1,"n":"SNAM - Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"SPLO - Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"ATKD - Attacks","d":1,"c":[{"t":6,"p":1,"n":"ATKD - Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"PRKR - Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"PKID - Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"p":1,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"PNAM - Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}]},{"t":3,"p":1,"n":"HCLF - Hair Color"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height"},{"t":5,"p":1,"n":"NAM7 - Weight"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"CSDT - Sound Types","d":1,"c":[{"t":6,"p":1,"n":"CSDT - Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"CSDI - Sounds","c":[{"t":6,"p":1,"n":"CSDI - Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}]},{"t":10,"p":1,"n":"TINI - Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"TINI - Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}]}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items"}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments"}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"IDLF - Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations"},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"ANAM - Package Data","c":[{"t":8,"p":1,"n":"ANAM - Data Input Values","c":[{"t":6,"p":1,"n":"ANAM - Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"UNAM - Data Inputs","c":[{"t":6,"p":1,"n":"UNAM - Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"ANAM - Procedure Tree","c":[{"t":8,"p":1,"n":"ANAM - Branches","c":[{"t":6,"p":1,"n":"ANAM - Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"PKC2 - Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"PFO2 - Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"PFOR - Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"UNAM - Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"UNAM - Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"POBA - OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"POEA - OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"POCA - OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments"}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"PRKE - Effects","d":1,"c":[{"t":6,"p":1,"n":"PRKE - Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"PRKC - Perk Conditions","c":[{"t":6,"p":1,"n":"PRKC - Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"EPFT - Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PLYR - Player Reference","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments"}]},{"t":7,"p":1,"n":"Aliases"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"QTGL - Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"CTDA - Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"p":1,"n":"INDX - Stages","d":1,"c":[{"t":6,"p":1,"n":"INDX - Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"QSDT - Log Entries","c":[{"t":6,"p":1,"n":"QSDT - Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"QOBJ - Objectives","d":1,"c":[{"t":6,"p":1,"n":"QOBJ - Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"QSTA - Targets","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unused"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"s":1,"p":1,"n":"ALST - Aliases","d":1,"c":[{"t":6,"p":1,"n":"ALST - Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"ALFA - Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"ALEQ - External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"ALCO - Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"ALNA - Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"ALFE - Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"ALSP - Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"ALPC - Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"p":1,"n":"ALLS - Alias","c":[{"t":3,"p":1,"n":"ALLS - Location Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"ALFA - Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"ALEQ - External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"ALCO - Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"ALNA - Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"ALFE - Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"ALSP - Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"ALPC - Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"QSTA - Targets","d":1,"c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"SPLO - Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":3,"n":"WNAM - Skin"},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"BODT - Body Template","c":[{"t":3,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":6,"n":"DATA - DATA","c":[{"t":7,"n":"Skill Boosts","c":[{"t":6,"n":"","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"n":"Male Height"},{"t":5,"n":"Female Height"},{"t":5,"n":"Male Weight"},{"t":5,"n":"Female Weight"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Playable"},{"t":4,"n":"FaceGen Head"},{"t":4,"n":"Child"},{"t":4,"n":"Tilt Front\/Back"},{"t":4,"n":"Tilt Left\/Right"},{"t":4,"n":"No Shadow"},{"t":4,"n":"Swims"},{"t":4,"n":"Flies"},{"t":4,"n":"Walks"},{"t":4,"n":"Immobile"},{"t":4,"n":"Not Pushable"},{"t":4,"n":"No Combat In Water"},{"t":4,"n":"No Rotating to Head-Track"},{"t":4,"n":"Don't Show Blood Spray"},{"t":4,"n":"Don't Show Blood Decal"},{"t":4,"n":"Uses Head Track Anims"},{"t":4,"n":"Spells Align w\/Magic Node"},{"t":4,"n":"Use World Raycasts For FootIK"},{"t":4,"n":"Allow Ragdoll Collision"},{"t":4,"n":"Regen HP In Combat"},{"t":4,"n":"Can't Open Doors"},{"t":4,"n":"Allow PC Dialogue"},{"t":4,"n":"No Knockdowns"},{"t":4,"n":"Allow Pickpocket"},{"t":4,"n":"Always Use Proxy Controller"},{"t":4,"n":"Don't Show Weapon Blood"},{"t":4,"n":"Overlay Head Part List"},{"t":4,"n":"Override Head Part List"},{"t":4,"n":"Can Pickup Items"},{"t":4,"n":"Allow Multiple Membrane Shaders"},{"t":4,"n":"Can Dual Wield"},{"t":4,"n":"Avoids Roads"}]},{"t":5,"n":"Starting Health"},{"t":5,"n":"Starting Magicka"},{"t":5,"n":"Starting Stamina"},{"t":5,"n":"Base Carry Weight"},{"t":5,"n":"Base Mass"},{"t":5,"n":"Acceleration rate"},{"t":5,"n":"Deceleration rate"},{"t":3,"n":"Size"},{"t":3,"n":"Head Biped Object"},{"t":3,"n":"Hair Biped Object"},{"t":5,"n":"Injured Health Pct"},{"t":3,"n":"Shield Biped Object"},{"t":5,"n":"Health Regen"},{"t":5,"n":"Magicka Regen"},{"t":5,"n":"Stamina Regen"},{"t":5,"n":"Unarmed Damage"},{"t":5,"n":"Unarmed Reach"},{"t":3,"n":"Body Biped Object"},{"t":5,"n":"Aim Angle Tolerance"},{"t":5,"n":"Flight Radius"},{"t":5,"n":"Angular Acceleration Rate"},{"t":5,"n":"Angular Tolerance"},{"t":3,"n":"Flags 2","c":[{"t":4,"n":"Use Advanced Avoidance"},{"t":4,"n":"Non-Hostile"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Allow Mounted Combat"}]},{"t":6,"n":"Mount Data","c":[{"t":5,"n":"Offset X"},{"t":5,"n":"Offset Y"},{"t":5,"n":"Unknown"}]}]},{"n":"MNAM - Male Marker"},{"t":2,"n":"ANAM - Male Skeletal Model"},{"t":11,"n":"MODT - Texture Files Hashes"},{"n":"FNAM - Female Marker"},{"t":2,"n":"ANAM - Female Skeletal Model"},{"n":"NAM2 - Marker NAM2 #1"},{"t":8,"n":"MTNM - Movement Type Names","c":[{"t":2,"n":"MTNM - Name"}]},{"t":7,"n":"VTCK - Voices","c":[{"t":3,"n":"Male"},{"t":3,"n":"Female"}]},{"t":7,"n":"DNAM - Decapitate Armors","c":[{"t":3,"n":"Male"},{"t":3,"n":"Female"}]},{"t":7,"n":"HCLF - Default Hair Colors","c":[{"t":3,"n":"Male"},{"t":3,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"ATKD - Attacks","c":[{"t":6,"n":"ATKD - Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":6,"n":"NAM1 - Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"n":"MNAM - Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"n":"INDX - Parts","c":[{"t":6,"n":"INDX - Part","c":[{"t":3,"n":"INDX - Index"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]}]}]}]},{"t":6,"n":"FNAM - Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"n":"INDX - Parts","c":[{"t":6,"n":"INDX - Part","c":[{"t":3,"n":"INDX - Index"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]}]}]}]}]},{"t":7,"n":"HNAM - Hairs"},{"t":7,"n":"ENAM - Eyes"},{"t":3,"n":"GNAM - Body Part Data"},{"n":"NAM2 - Marker NAM2 #2"},{"n":"NAM3 - Marker NAM3 #3"},{"t":6,"n":"MNAM - Male Behavior Graph","c":[{"n":"MNAM - Male Data Marker"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]}]},{"t":6,"n":"FNAM - Female Behavior Graph","c":[{"n":"FNAM - Female Data Marker"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]}]},{"t":3,"n":"NAM4 - Material Type"},{"t":3,"n":"NAM5 - Impact Data Set"},{"t":3,"n":"NAM7 - Decapitation FX"},{"t":3,"n":"ONAM - Open Loot Sound"},{"t":3,"n":"LNAM - Close Loot Sound"},{"t":8,"n":"NAME - Biped Object Names","c":[{"t":2,"n":"NAME - Name"}]},{"t":10,"n":"MTYP - Movement Types","c":[{"t":6,"n":"MTYP - Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags","c":[{"t":4,"n":"Hand To Hand Melee"},{"t":4,"n":"One Hand Sword"},{"t":4,"n":"One Hand Dagger"},{"t":4,"n":"One Hand Axe"},{"t":4,"n":"One Hand Mace"},{"t":4,"n":"Two Hand Sword"},{"t":4,"n":"Two Hand Axe"},{"t":4,"n":"Bow"},{"t":4,"n":"Staff"},{"t":4,"n":"Spell"},{"t":4,"n":"Shield"},{"t":4,"n":"Torch"},{"t":4,"n":"Crossbow"}]},{"t":8,"n":"QNAM - Equip Slots","c":[{"t":3,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"PHTN - Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"PHWT - FaceFX Phonemes","c":[{"t":6,"n":"PHWT - IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"n":"NAM0 - Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"n":"MNAM - Male Head Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"n":"INDX - Head Parts","c":[{"t":6,"n":"INDX - Head Part","c":[{"t":3,"n":"INDX - Head Part Number"},{"t":3,"n":"HEAD - Head"}]}]},{"t":6,"n":"MPAI - Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"RPRM - Race Presets Male","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"AHCM - Available Hair Colors Male","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"FTSM - Face Details Texture Set List Male","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Default Face Texture Male"},{"t":8,"n":"TINI - Tint Masks","c":[{"t":6,"n":"TINI - Tint Assets","c":[{"t":8,"n":"TINI - Tint Layer","c":[{"t":6,"n":"TINI - Texture","c":[{"t":3,"n":"TINI - Index"},{"t":2,"n":"TINT - File Name"},{"t":3,"n":"TINP - Mask Type"},{"t":3,"n":"TIND - Preset Default"}]}]},{"t":8,"n":"TINC - Presets","c":[{"t":6,"n":"TINC - Preset","c":[{"t":3,"n":"TINC - Color"},{"t":5,"n":"TINV - Default Value"},{"t":3,"n":"TIRS - Index"}]}]}]}]},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]}]},{"t":6,"n":"NAM0 - Female Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"n":"FNAM - Female Data Marker"},{"t":10,"n":"INDX - Head Parts","c":[{"t":6,"n":"INDX - Head Part","c":[{"t":3,"n":"INDX - Head Part Number"},{"t":3,"n":"HEAD - Head"}]}]},{"t":6,"n":"MPAI - Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"RPRF - Race Presets Female","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"AHCF - Available Hair Colors Female","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"FTSF - Face Details Texture Set List Female","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Default Face Texture Female"},{"t":8,"n":"TINI - Tint Masks","c":[{"t":6,"n":"TINI - Tint Assets","c":[{"t":8,"n":"TINI - Tint Layer","c":[{"t":6,"n":"TINI - Texture","c":[{"t":3,"n":"TINI - Index"},{"t":2,"n":"TINT - File Name"},{"t":3,"n":"TINP - Mask Type"},{"t":3,"n":"TIND - Preset Default"}]}]},{"t":8,"n":"TINC - Presets","c":[{"t":6,"n":"TINC - Preset","c":[{"t":3,"n":"TINC - Color"},{"t":5,"n":"TINV - Default Value"},{"t":3,"n":"TIRS - Index"}]}]}]}]},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data"},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"XRMR - Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"XLRM - Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLTW - Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"XPRD - Patrol","d":1,"c":[{"t":6,"p":1,"n":"XPRD - Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"XMRK - Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"RPLI - Region Areas","d":1,"c":[{"t":6,"p":1,"n":"RPLI - Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data"}]}]},{"t":10,"p":1,"n":"RDAT - Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"RDAT - Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds"},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects"},{"t":7,"p":1,"n":"RDGS - Grasses"},{"t":7,"p":1,"n":"RDWT - Weather Types"}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments"},{"t":7,"p":1,"n":"Phase Fragments"}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"HNAM - Phases","d":1,"c":[{"t":6,"p":1,"n":"HNAM - Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"CTDA - Start Conditions","c":[{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"CTDA - Completion Conditions","c":[{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"ALID - Actors","d":1,"c":[{"t":6,"p":1,"n":"ALID - Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"ANAM - Actions","d":1,"c":[{"t":6,"p":1,"n":"ANAM - Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"PNAM - Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"ONAM - Parts","d":1,"c":[{"t":6,"p":1,"n":"ONAM - Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"SNAM - Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"NNAM - Quests","d":1,"c":[{"t":6,"p":1,"n":"NNAM - Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"ANAM - Sounds","d":1,"c":[{"t":6,"p":1,"n":"ANAM - Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TES4 - Main File Header","d":1,"c":[{"t":6,"s":1,"p":1,"n":"HEDR - Header","c":[{"t":5,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Number of Records"},{"t":3,"p":1,"n":"Next Object ID"}]},{"t":11,"n":"OFST - Unknown"},{"t":11,"n":"DELE - Unknown"},{"t":2,"p":1,"n":"CNAM - Author"},{"t":2,"p":1,"n":"SNAM - Description"},{"t":8,"s":1,"p":1,"n":"MAST - Master Files","d":1,"c":[{"t":6,"p":1,"n":"MAST - Master File","c":[{"t":2,"p":1,"n":"MAST - FileName"},{"t":11,"n":"DATA - Unknown"}]}]},{"t":7,"p":1,"n":"ONAM - Overridden Forms"},{"t":11,"n":"SCRN - Screenshot"},{"t":11,"n":"INTV - Unknown"},{"t":11,"n":"INCC - Unknown"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"TX00 - Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"NNAM - Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MOD3 - Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures"}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"RNAM - Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References"}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"WNAM - Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"MODL - Cloud Model","c":[{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"RNAM - Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed"},{"t":7,"p":1,"n":"QNAM - X Speed"}]},{"t":7,"p":1,"n":"PNAM - Cloud Colors"},{"t":7,"p":1,"n":"JNAM - Cloud Alphas"},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"SNAM - Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"TNAM - Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"MODL - Aurora","c":[{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"XPRD - Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]}]},"name":"Smash.All","hash":"8782B53E","color":128} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Smash.All.old.json b/frontend/settings/Skyrim/Smash.All.old.json new file mode 100755 index 0000000..272a037 --- /dev/null +++ b/frontend/settings/Skyrim/Smash.All.old.json @@ -0,0 +1 @@ +{"records":"ACHR,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,AACT","description":"Smashes all the things. Produced using autoset attributes on all record types found in Skyrim.esm and DLCs. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 04\/14\/2018.","tree":{"records":[{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"},{"t":3,"p":1,"n":"General Flags"},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"},{"t":3,"p":1,"n":"General Flags"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male"},{"t":3,"p":1,"n":"Weight slider - Female"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model Filename"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model Filename"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model Filename"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model Filename"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon filename"},{"t":2,"p":1,"n":"MIC2 - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"},{"t":3,"p":1,"n":"General Flags"},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"},{"t":3,"p":1,"n":"General Flags"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model Filename"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags"}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - ","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags"},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land"}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits"}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Weight"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Related Camera Path"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags"}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model Filename"},{"t":3,"p":1,"n":"Flags"}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags"},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags"}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale"}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags"}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags"},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points"}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points"}]}]},{"t":2,"p":1,"n":"XMRK - Model Filename"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags"},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - Filename"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - Filename"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Related Idle Animation"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags"},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags"},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags"},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags"},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"UNAM - Radial Blur Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":2,"p":1,"n":"fileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"s":1,"p":1,"n":"Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - ","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags"}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"n":"INAM - Unused"}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags"},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags"},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags"},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track Filename"},{"t":2,"p":1,"n":"BNAM - Finale Filename"},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"External Connections","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags"},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"s":1,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags"},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"Skill"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"Skill"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"Sound Types","d":1,"c":[{"t":6,"p":1,"n":"Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"s":1,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":2,"p":1,"n":"fileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags"}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - ","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags"}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags"}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags"},{"t":3,"p":1,"n":"Clear General Flags"},{"t":3,"p":1,"n":"Set Interrupt Flags"},{"t":3,"p":1,"n":"Clear Interrupt Flags"},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags"}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"fileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags"},{"t":11,"n":"Unknown"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model Filename"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"fragmentCount"},{"t":2,"p":1,"n":"fileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"Stages","d":1,"c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags"},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":11,"n":"ANAM - Aliases Marker"},{"t":8,"s":1,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Additional Flags"}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"Targets","d":1,"c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"},{"t":3,"p":1,"n":"General Flags"},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"},{"t":3,"p":1,"n":"General Flags"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":7,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"Skill Boost","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2"},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Voice"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Decapitate Armor"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Default Hair Color"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags"},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"p":1,"n":"Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags"},{"t":8,"p":1,"n":"Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"s":1,"p":1,"n":"Male Head Data","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":10,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1"},{"t":3,"n":"Eye Morph Flags 2"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Race Presets Male","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"Available Hair Colors Male","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"Face Details Texture Set List Male","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Head Data","c":[{"p":1,"n":"NAM0 - Head Data Marker"},{"p":1,"n":"FNAM - Female Data Marker"},{"t":10,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1"},{"t":3,"n":"Eye Morph Flags 2"},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Race Presets Female","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"Available Hair Colors Female","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"Face Details Texture Set List Female","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Shadow Depth Bias"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":2,"p":1,"n":"fileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags"},{"t":3,"p":1,"n":"DNAM - Behaviour Flags"}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - ","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags"},{"t":3,"p":1,"n":"Quest Flags"}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":"Value"}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"LOD","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags"}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags"}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Damage Per Second"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon filename"},{"t":2,"p":1,"n":"MICO - Small Icon filename"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructable","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model Filename"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2"},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"n":"Unused RNAM","c":[{"t":6,"n":"RNAM - Grid","c":[{"t":3,"n":"Y"},{"t":3,"n":"X"},{"t":7,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - ","c":[{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags"},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]}]},"name":"Smash.All.old","hash":"4380CF09","color":128} \ No newline at end of file From 23305ea82302fce947fc28cd11871ff619a9d35f Mon Sep 17 00:00:00 2001 From: chuck <> Date: Thu, 3 Sep 2020 19:52:14 -0400 Subject: [PATCH 23/76] Update bash tag settings --- frontend/settings/Skyrim/Bash.EffectStats.json | 1 + frontend/settings/Skyrim/Bash.EnchantmentStats.json | 1 + frontend/settings/Skyrim/Bash.Invent.Add.json | 1 + frontend/settings/Skyrim/Bash.Invent.Change.json | 1 + frontend/settings/Skyrim/Bash.Invent.Remove.json | 1 + frontend/settings/Skyrim/Bash.Invent.json | 2 +- frontend/settings/Skyrim/Bash.NPC.AIPackageOverrides.json | 1 + frontend/settings/Skyrim/Bash.Outfits.Add.json | 1 + frontend/settings/Skyrim/Bash.Outfits.Remove.json | 1 + frontend/settings/Skyrim/Bash.Relations.Add.json | 1 + frontend/settings/Skyrim/Bash.Relations.Change.json | 1 + frontend/settings/Skyrim/Bash.Relations.Remove.json | 1 + 12 files changed, 12 insertions(+), 1 deletion(-) create mode 100755 frontend/settings/Skyrim/Bash.EffectStats.json create mode 100755 frontend/settings/Skyrim/Bash.EnchantmentStats.json create mode 100755 frontend/settings/Skyrim/Bash.Invent.Add.json create mode 100755 frontend/settings/Skyrim/Bash.Invent.Change.json create mode 100755 frontend/settings/Skyrim/Bash.Invent.Remove.json create mode 100755 frontend/settings/Skyrim/Bash.NPC.AIPackageOverrides.json create mode 100755 frontend/settings/Skyrim/Bash.Outfits.Add.json create mode 100755 frontend/settings/Skyrim/Bash.Outfits.Remove.json create mode 100755 frontend/settings/Skyrim/Bash.Relations.Add.json create mode 100755 frontend/settings/Skyrim/Bash.Relations.Change.json create mode 100755 frontend/settings/Skyrim/Bash.Relations.Remove.json diff --git a/frontend/settings/Skyrim/Bash.EffectStats.json b/frontend/settings/Skyrim/Bash.EffectStats.json new file mode 100755 index 0000000..71d3c73 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.EffectStats.json @@ -0,0 +1 @@ +{"records":"MGEF","description":"Modifies (MGEF) Magic Effect \/ Base Effect stats.","tree":{"records":[{"t":1,"p":1,"n":"MGEF - Magic Effect","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":6,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unknown 7"},{"t":4,"p":1,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"p":1,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"p":1,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"n":"Counter Effect count"},{"t":3,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"n":"Hit Shader"},{"t":3,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"n":"Projectile"},{"t":3,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"n":"Casting Art"},{"t":3,"n":"Hit Effect Art"},{"t":3,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"n":"Dual Casting","c":[{"t":3,"n":"Art"},{"t":5,"n":"Scale"}]},{"t":3,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"n":"Counter Effects","c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"n":"SNDD - Sounds"},{"t":2,"n":"DNAM - Magic Item Description"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]},"name":"Bash.EffectStats","hash":"6A6CEB1A","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.EnchantmentStats.json b/frontend/settings/Skyrim/Bash.EnchantmentStats.json new file mode 100755 index 0000000..7e4ed51 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.EnchantmentStats.json @@ -0,0 +1 @@ +{"records":"ENCH","description":"Modifies (ENCH) Enchantment \/ Object Effect stats.","tree":{"records":[{"t":1,"p":1,"n":"ENCH - Object Effect","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"n":"Effects","c":[{"t":6,"n":"Effect","c":[{"t":3,"n":"EFID - Base Effect"},{"t":6,"n":"EFIT - EFIT","c":[{"t":5,"n":"Magnitude"},{"t":3,"n":"Area"},{"t":3,"n":"Duration"}]},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},"name":"Bash.EnchantmentStats","hash":"BBA72A3B","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Invent.Add.json b/frontend/settings/Skyrim/Bash.Invent.Add.json new file mode 100755 index 0000000..cda05c8 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.Invent.Add.json @@ -0,0 +1 @@ +{"records":"CONT,NPC_","description":"Adds items to inventories.","tree":{"records":[{"t":1,"p":1,"n":"CONT - Container","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","c":[{"t":6,"s":1,"p":1,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"DATA - DATA","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Allow Sounds When Animation"},{"t":4,"n":"Respawns"},{"t":4,"n":"Show Owner"}]},{"t":5,"n":"Weight"}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Female"},{"t":4,"n":"Essential"},{"t":4,"n":"Is CharGen Face Preset"},{"t":4,"n":"Respawn"},{"t":4,"n":"Auto-calc stats"},{"t":4,"n":"Unique"},{"t":4,"n":"Doesn't affect stealth meter"},{"t":4,"n":"PC Level Mult"},{"t":4,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Bleedout Override"},{"t":4,"n":"Opposite Gender Anims"},{"t":4,"n":"Simple Actor"},{"t":4,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"looped audio?"},{"t":4,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Invulnerable"}]},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":3,"n":"Level"},{"t":3,"n":"Level Mult"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags","c":[{"t":4,"n":"Use Traits"},{"t":4,"n":"Use Stats"},{"t":4,"n":"Use Factions"},{"t":4,"n":"Use Spell List"},{"t":4,"n":"Use AI Data"},{"t":4,"n":"Use AI Packages"},{"t":4,"n":"Use Model\/Animation?"},{"t":4,"n":"Use Base Data"},{"t":4,"n":"Use Inventory"},{"t":4,"n":"Use Script"},{"t":4,"n":"Use Def Pack List"},{"t":4,"n":"Use Attack Data"},{"t":4,"n":"Use Keywords"}]},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":8,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","c":[{"t":6,"s":1,"p":1,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":8,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"OneHanded"},{"t":3,"n":"TwoHanded"},{"t":3,"n":"Marksman"},{"t":3,"n":"Block"},{"t":3,"n":"Smithing"},{"t":3,"n":"HeavyArmor"},{"t":3,"n":"LightArmor"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Lockpicking"},{"t":3,"n":"Sneak"},{"t":3,"n":"Alchemy"},{"t":3,"n":"Speechcraft"},{"t":3,"n":"Alteration"},{"t":3,"n":"Conjuration"},{"t":3,"n":"Destruction"},{"t":3,"n":"Illusion"},{"t":3,"n":"Restoration"},{"t":3,"n":"Enchanting"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"OneHanded"},{"t":3,"n":"TwoHanded"},{"t":3,"n":"Marksman"},{"t":3,"n":"Block"},{"t":3,"n":"Smithing"},{"t":3,"n":"HeavyArmor"},{"t":3,"n":"LightArmor"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Lockpicking"},{"t":3,"n":"Sneak"},{"t":3,"n":"Alchemy"},{"t":3,"n":"Speechcraft"},{"t":3,"n":"Alteration"},{"t":3,"n":"Conjuration"},{"t":3,"n":"Destruction"},{"t":3,"n":"Illusion"},{"t":3,"n":"Restoration"},{"t":3,"n":"Enchanting"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"}]},{"t":8,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"},{"t":6,"n":"TINC - Tint Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Alpha"}]},{"t":3,"n":"TINV - Interpolation Value"},{"t":3,"n":"TIAS - Preset"}]}]}]}]},"name":"Bash.Invent.Add","hash":"9EAB411D","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Invent.Change.json b/frontend/settings/Skyrim/Bash.Invent.Change.json new file mode 100755 index 0000000..0277d83 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.Invent.Change.json @@ -0,0 +1 @@ +{"records":"CONT,NPC_","description":"Changes other properties (like count and owner) of items in inventories.","tree":{"records":[{"t":1,"p":1,"n":"CONT - Container","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"o":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"n":"Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"DATA - DATA","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Allow Sounds When Animation"},{"t":4,"n":"Respawns"},{"t":4,"n":"Show Owner"}]},{"t":5,"n":"Weight"}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Female"},{"t":4,"n":"Essential"},{"t":4,"n":"Is CharGen Face Preset"},{"t":4,"n":"Respawn"},{"t":4,"n":"Auto-calc stats"},{"t":4,"n":"Unique"},{"t":4,"n":"Doesn't affect stealth meter"},{"t":4,"n":"PC Level Mult"},{"t":4,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Bleedout Override"},{"t":4,"n":"Opposite Gender Anims"},{"t":4,"n":"Simple Actor"},{"t":4,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"looped audio?"},{"t":4,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Invulnerable"}]},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":3,"n":"Level"},{"t":3,"n":"Level Mult"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags","c":[{"t":4,"n":"Use Traits"},{"t":4,"n":"Use Stats"},{"t":4,"n":"Use Factions"},{"t":4,"n":"Use Spell List"},{"t":4,"n":"Use AI Data"},{"t":4,"n":"Use AI Packages"},{"t":4,"n":"Use Model\/Animation?"},{"t":4,"n":"Use Base Data"},{"t":4,"n":"Use Inventory"},{"t":4,"n":"Use Script"},{"t":4,"n":"Use Def Pack List"},{"t":4,"n":"Use Attack Data"},{"t":4,"n":"Use Keywords"}]},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":8,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"o":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":8,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"OneHanded"},{"t":3,"n":"TwoHanded"},{"t":3,"n":"Marksman"},{"t":3,"n":"Block"},{"t":3,"n":"Smithing"},{"t":3,"n":"HeavyArmor"},{"t":3,"n":"LightArmor"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Lockpicking"},{"t":3,"n":"Sneak"},{"t":3,"n":"Alchemy"},{"t":3,"n":"Speechcraft"},{"t":3,"n":"Alteration"},{"t":3,"n":"Conjuration"},{"t":3,"n":"Destruction"},{"t":3,"n":"Illusion"},{"t":3,"n":"Restoration"},{"t":3,"n":"Enchanting"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"OneHanded"},{"t":3,"n":"TwoHanded"},{"t":3,"n":"Marksman"},{"t":3,"n":"Block"},{"t":3,"n":"Smithing"},{"t":3,"n":"HeavyArmor"},{"t":3,"n":"LightArmor"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Lockpicking"},{"t":3,"n":"Sneak"},{"t":3,"n":"Alchemy"},{"t":3,"n":"Speechcraft"},{"t":3,"n":"Alteration"},{"t":3,"n":"Conjuration"},{"t":3,"n":"Destruction"},{"t":3,"n":"Illusion"},{"t":3,"n":"Restoration"},{"t":3,"n":"Enchanting"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"}]},{"t":8,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"},{"t":6,"n":"TINC - Tint Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Alpha"}]},{"t":3,"n":"TINV - Interpolation Value"},{"t":3,"n":"TIAS - Preset"}]}]}]}]},"name":"Bash.Invent.Change","hash":"E7029CE0","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Invent.Remove.json b/frontend/settings/Skyrim/Bash.Invent.Remove.json new file mode 100755 index 0000000..d6519de --- /dev/null +++ b/frontend/settings/Skyrim/Bash.Invent.Remove.json @@ -0,0 +1 @@ +{"records":"CONT,NPC_","description":"Removes items from inventories.","tree":{"records":[{"t":1,"p":1,"n":"CONT - Container","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":6,"n":"DATA - DATA","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Allow Sounds When Animation"},{"t":4,"n":"Respawns"},{"t":4,"n":"Show Owner"}]},{"t":5,"n":"Weight"}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Female"},{"t":4,"n":"Essential"},{"t":4,"n":"Is CharGen Face Preset"},{"t":4,"n":"Respawn"},{"t":4,"n":"Auto-calc stats"},{"t":4,"n":"Unique"},{"t":4,"n":"Doesn't affect stealth meter"},{"t":4,"n":"PC Level Mult"},{"t":4,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Bleedout Override"},{"t":4,"n":"Opposite Gender Anims"},{"t":4,"n":"Simple Actor"},{"t":4,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"looped audio?"},{"t":4,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Invulnerable"}]},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":3,"n":"Level"},{"t":3,"n":"Level Mult"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags","c":[{"t":4,"n":"Use Traits"},{"t":4,"n":"Use Stats"},{"t":4,"n":"Use Factions"},{"t":4,"n":"Use Spell List"},{"t":4,"n":"Use AI Data"},{"t":4,"n":"Use AI Packages"},{"t":4,"n":"Use Model\/Animation?"},{"t":4,"n":"Use Base Data"},{"t":4,"n":"Use Inventory"},{"t":4,"n":"Use Script"},{"t":4,"n":"Use Def Pack List"},{"t":4,"n":"Use Attack Data"},{"t":4,"n":"Use Keywords"}]},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":8,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":8,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"OneHanded"},{"t":3,"n":"TwoHanded"},{"t":3,"n":"Marksman"},{"t":3,"n":"Block"},{"t":3,"n":"Smithing"},{"t":3,"n":"HeavyArmor"},{"t":3,"n":"LightArmor"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Lockpicking"},{"t":3,"n":"Sneak"},{"t":3,"n":"Alchemy"},{"t":3,"n":"Speechcraft"},{"t":3,"n":"Alteration"},{"t":3,"n":"Conjuration"},{"t":3,"n":"Destruction"},{"t":3,"n":"Illusion"},{"t":3,"n":"Restoration"},{"t":3,"n":"Enchanting"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"OneHanded"},{"t":3,"n":"TwoHanded"},{"t":3,"n":"Marksman"},{"t":3,"n":"Block"},{"t":3,"n":"Smithing"},{"t":3,"n":"HeavyArmor"},{"t":3,"n":"LightArmor"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Lockpicking"},{"t":3,"n":"Sneak"},{"t":3,"n":"Alchemy"},{"t":3,"n":"Speechcraft"},{"t":3,"n":"Alteration"},{"t":3,"n":"Conjuration"},{"t":3,"n":"Destruction"},{"t":3,"n":"Illusion"},{"t":3,"n":"Restoration"},{"t":3,"n":"Enchanting"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"}]},{"t":8,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"},{"t":6,"n":"TINC - Tint Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Alpha"}]},{"t":3,"n":"TINV - Interpolation Value"},{"t":3,"n":"TIAS - Preset"}]}]}]}]},"name":"Bash.Invent.Remove","hash":"DFB55892","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Invent.json b/frontend/settings/Skyrim/Bash.Invent.json index e26b0c2..58c9eff 100755 --- a/frontend/settings/Skyrim/Bash.Invent.json +++ b/frontend/settings/Skyrim/Bash.Invent.json @@ -1 +1 @@ -{"records":"NPC_,CONT","description":"Invent tag from Wrye Bash.\r\n\r\nUsed when the mod changes inventories.","tree":{"records":[{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":12,"n":"Level"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags"},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":10,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":9,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":10,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":7,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"Skill #0 (OneHanded)"},{"t":3,"n":"Skill #1 (TwoHanded)"},{"t":3,"n":"Skill #2 (Marksman)"},{"t":3,"n":"Skill #3 (Block)"},{"t":3,"n":"Skill #4 (Smithing)"},{"t":3,"n":"Skill #5 (HeavyArmor)"},{"t":3,"n":"Skill #6 (LightArmor)"},{"t":3,"n":"Skill #7 (Pickpocket)"},{"t":3,"n":"Skill #8 (Lockpicking)"},{"t":3,"n":"Skill #9 (Sneak)"},{"t":3,"n":"Skill #10 (Alchemy)"},{"t":3,"n":"Skill #11 (Speechcraft)"},{"t":3,"n":"Skill #12 (Alteration)"},{"t":3,"n":"Skill #13 (Conjuration)"},{"t":3,"n":"Skill #14 (Destruction)"},{"t":3,"n":"Skill #15 (Illusion)"},{"t":3,"n":"Skill #16 (Restoration)"},{"t":3,"n":"Skill #17 (Enchanting)"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"Skill #0 (OneHanded)"},{"t":3,"n":"Skill #1 (TwoHanded)"},{"t":3,"n":"Skill #2 (Marksman)"},{"t":3,"n":"Skill #3 (Block)"},{"t":3,"n":"Skill #4 (Smithing)"},{"t":3,"n":"Skill #5 (HeavyArmor)"},{"t":3,"n":"Skill #6 (LightArmor)"},{"t":3,"n":"Skill #7 (Pickpocket)"},{"t":3,"n":"Skill #8 (Lockpicking)"},{"t":3,"n":"Skill #9 (Sneak)"},{"t":3,"n":"Skill #10 (Alchemy)"},{"t":3,"n":"Skill #11 (Speechcraft)"},{"t":3,"n":"Skill #12 (Alteration)"},{"t":3,"n":"Skill #13 (Conjuration)"},{"t":3,"n":"Skill #14 (Destruction)"},{"t":3,"n":"Skill #15 (Illusion)"},{"t":3,"n":"Skill #16 (Restoration)"},{"t":3,"n":"Skill #17 (Enchanting)"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"},{"t":11,"n":"Unused"}]},{"t":9,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"}]}]}]},{"t":1,"p":1,"n":"CONT - Container","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"QNAM - Sound - Close"}]}]},"name":"Bash.Invent","hash":"$7F0C9C4C","color":255} \ No newline at end of file +{"records":"CONT,NPC_","description":"Invent tag from Wrye Bash.\r\n\r\nUsed when the mod changes inventories.","tree":{"records":[{"t":1,"p":1,"n":"CONT - Container","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":2,"n":"FULL - Name"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"o":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]}]}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"DATA - ","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Weight"}]},{"t":3,"n":"SNAM - Sound - Open"},{"t":3,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags"},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":12,"n":"Data","c":[{"t":9,"n":"Scripts","c":[{"t":6,"n":"Script","c":[{"t":2,"n":"scriptName"},{"t":3,"n":"Flags"},{"t":9,"n":"Properties","c":[{"t":6,"n":"Property","c":[{"t":2,"n":"propertyName"},{"t":3,"n":"Type"},{"t":3,"n":"Flags"},{"t":12,"n":"Value"}]}]}]}]}]}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags"},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":12,"n":"Level"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags"},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":10,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":9,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructable","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":10,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"o":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":7,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":9,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"Skill #0 (OneHanded)"},{"t":3,"n":"Skill #1 (TwoHanded)"},{"t":3,"n":"Skill #2 (Marksman)"},{"t":3,"n":"Skill #3 (Block)"},{"t":3,"n":"Skill #4 (Smithing)"},{"t":3,"n":"Skill #5 (HeavyArmor)"},{"t":3,"n":"Skill #6 (LightArmor)"},{"t":3,"n":"Skill #7 (Pickpocket)"},{"t":3,"n":"Skill #8 (Lockpicking)"},{"t":3,"n":"Skill #9 (Sneak)"},{"t":3,"n":"Skill #10 (Alchemy)"},{"t":3,"n":"Skill #11 (Speechcraft)"},{"t":3,"n":"Skill #12 (Alteration)"},{"t":3,"n":"Skill #13 (Conjuration)"},{"t":3,"n":"Skill #14 (Destruction)"},{"t":3,"n":"Skill #15 (Illusion)"},{"t":3,"n":"Skill #16 (Restoration)"},{"t":3,"n":"Skill #17 (Enchanting)"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"Skill #0 (OneHanded)"},{"t":3,"n":"Skill #1 (TwoHanded)"},{"t":3,"n":"Skill #2 (Marksman)"},{"t":3,"n":"Skill #3 (Block)"},{"t":3,"n":"Skill #4 (Smithing)"},{"t":3,"n":"Skill #5 (HeavyArmor)"},{"t":3,"n":"Skill #6 (LightArmor)"},{"t":3,"n":"Skill #7 (Pickpocket)"},{"t":3,"n":"Skill #8 (Lockpicking)"},{"t":3,"n":"Skill #9 (Sneak)"},{"t":3,"n":"Skill #10 (Alchemy)"},{"t":3,"n":"Skill #11 (Speechcraft)"},{"t":3,"n":"Skill #12 (Alteration)"},{"t":3,"n":"Skill #13 (Conjuration)"},{"t":3,"n":"Skill #14 (Destruction)"},{"t":3,"n":"Skill #15 (Illusion)"},{"t":3,"n":"Skill #16 (Restoration)"},{"t":3,"n":"Skill #17 (Enchanting)"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"},{"t":11,"n":"Unused"}]},{"t":9,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"}]}]}]}]},"name":"Bash.Invent","hash":"3E1680F0","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.NPC.AIPackageOverrides.json b/frontend/settings/Skyrim/Bash.NPC.AIPackageOverrides.json new file mode 100755 index 0000000..53bd3b2 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.NPC.AIPackageOverrides.json @@ -0,0 +1 @@ +{"records":"NPC_","description":"","tree":{"records":[{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"n":"Version"},{"t":3,"n":"Object Format"},{"t":7,"n":"Scripts"}]},{"t":6,"n":"OBND - Object Bounds","c":[{"t":3,"n":"X1"},{"t":3,"n":"Y1"},{"t":3,"n":"Z1"},{"t":3,"n":"X2"},{"t":3,"n":"Y2"},{"t":3,"n":"Z2"}]},{"t":6,"n":"ACBS - Configuration","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Female"},{"t":4,"n":"Essential"},{"t":4,"n":"Is CharGen Face Preset"},{"t":4,"n":"Respawn"},{"t":4,"n":"Auto-calc stats"},{"t":4,"n":"Unique"},{"t":4,"n":"Doesn't affect stealth meter"},{"t":4,"n":"PC Level Mult"},{"t":4,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Bleedout Override"},{"t":4,"n":"Opposite Gender Anims"},{"t":4,"n":"Simple Actor"},{"t":4,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"looped audio?"},{"t":4,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Invulnerable"}]},{"t":3,"n":"Magicka Offset"},{"t":3,"n":"Stamina Offset"},{"t":3,"n":"Level"},{"t":3,"n":"Level Mult"},{"t":3,"n":"Calc min level"},{"t":3,"n":"Calc max level"},{"t":3,"n":"Speed Multiplier"},{"t":3,"n":"Disposition Base (unused)"},{"t":3,"n":"Template Flags","c":[{"t":4,"n":"Use Traits"},{"t":4,"n":"Use Stats"},{"t":4,"n":"Use Factions"},{"t":4,"n":"Use Spell List"},{"t":4,"n":"Use AI Data"},{"t":4,"n":"Use AI Packages"},{"t":4,"n":"Use Model\/Animation?"},{"t":4,"n":"Use Base Data"},{"t":4,"n":"Use Inventory"},{"t":4,"n":"Use Script"},{"t":4,"n":"Use Def Pack List"},{"t":4,"n":"Use Attack Data"},{"t":4,"n":"Use Keywords"}]},{"t":3,"n":"Health Offset"},{"t":3,"n":"Bleedout Override"}]},{"t":8,"n":"Factions","c":[{"t":6,"n":"SNAM - Faction","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"INAM - Death item"},{"t":3,"n":"VTCK - Voice"},{"t":3,"n":"TPLT - Template"},{"t":3,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":6,"n":"Destructible","c":[{"t":6,"n":"DEST - Header","c":[{"t":3,"n":"Health"},{"t":3,"n":"DEST Count"},{"t":3,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"n":"Stages","c":[{"t":6,"n":"Stage","c":[{"t":6,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"n":"Health %"},{"t":3,"n":"Index"},{"t":3,"n":"Model Damage Stage"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Cap Damage"},{"t":4,"n":"Disable"},{"t":4,"n":"Destroy"},{"t":4,"n":"Ignore External Dmg"}]},{"t":3,"n":"Self Damage per Second"},{"t":3,"n":"Explosion"},{"t":3,"n":"Debris"},{"t":3,"n":"Debris Count"}]},{"t":6,"n":"Model","c":[{"t":2,"n":"DMDL - Model FileName"},{"t":11,"n":"DMDT - Texture Files Hashes"},{"t":7,"n":"DMDS - Alternate Textures"}]},{"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"WNAM - Worn Armor"},{"t":3,"n":"ANAM - Far away model"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"n":"Perks","c":[{"t":6,"n":"PRKR - Perk","c":[{"t":3,"n":"Perk"},{"t":3,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":6,"n":"AIDT - AI Data","c":[{"t":3,"n":"Aggression"},{"t":3,"n":"Confidence"},{"t":3,"n":"Energy Level"},{"t":3,"n":"Responsibility"},{"t":3,"n":"Mood"},{"t":3,"n":"Assistance"},{"t":6,"n":"Aggro","c":[{"t":3,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"n":"Warn"},{"t":3,"n":"Warn\/Attack"},{"t":3,"n":"Attack"}]}]},{"t":8,"n":"Packages","c":[{"t":3,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"CNAM - Class"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"n":"DNAM - Player Skills","c":[{"t":7,"n":"Skill Values","c":[{"t":3,"n":"OneHanded"},{"t":3,"n":"TwoHanded"},{"t":3,"n":"Marksman"},{"t":3,"n":"Block"},{"t":3,"n":"Smithing"},{"t":3,"n":"HeavyArmor"},{"t":3,"n":"LightArmor"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Lockpicking"},{"t":3,"n":"Sneak"},{"t":3,"n":"Alchemy"},{"t":3,"n":"Speechcraft"},{"t":3,"n":"Alteration"},{"t":3,"n":"Conjuration"},{"t":3,"n":"Destruction"},{"t":3,"n":"Illusion"},{"t":3,"n":"Restoration"},{"t":3,"n":"Enchanting"}]},{"t":7,"n":"Skill Offsets","c":[{"t":3,"n":"OneHanded"},{"t":3,"n":"TwoHanded"},{"t":3,"n":"Marksman"},{"t":3,"n":"Block"},{"t":3,"n":"Smithing"},{"t":3,"n":"HeavyArmor"},{"t":3,"n":"LightArmor"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Lockpicking"},{"t":3,"n":"Sneak"},{"t":3,"n":"Alchemy"},{"t":3,"n":"Speechcraft"},{"t":3,"n":"Alteration"},{"t":3,"n":"Conjuration"},{"t":3,"n":"Destruction"},{"t":3,"n":"Illusion"},{"t":3,"n":"Restoration"},{"t":3,"n":"Enchanting"}]},{"t":3,"n":"Health"},{"t":3,"n":"Magicka"},{"t":3,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"n":"Far away model distance"},{"t":3,"n":"Geared up weapons"}]},{"t":8,"n":"Head Parts","c":[{"t":3,"n":"PNAM - Head Part"}]},{"t":3,"n":"HCLF - Hair Color"},{"t":3,"n":"ZNAM - Combat Style"},{"t":3,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"n":"NAM6 - Height"},{"t":5,"n":"NAM7 - Weight"},{"t":3,"n":"NAM8 - Sound Level"},{"t":10,"n":"Sound Types","c":[{"t":6,"n":"Sound Type","c":[{"t":3,"n":"CSDT - Type"},{"t":10,"n":"Sounds","c":[{"t":6,"n":"Sound","c":[{"t":3,"n":"CSDI - Sound"},{"t":3,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"n":"CSCR - Inherits Sounds From"},{"t":3,"n":"DOFT - Default outfit"},{"t":3,"n":"SOFT - Sleeping outfit"},{"t":3,"n":"DPLT - Default Package List"},{"t":3,"n":"CRIF - Crime faction"},{"t":3,"n":"FTST - Head texture"},{"t":6,"n":"QNAM - Texture lighting","c":[{"t":5,"n":"Red"},{"t":5,"n":"Green"},{"t":5,"n":"Blue"}]},{"t":6,"n":"NAM9 - Face morph","c":[{"t":5,"n":"Nose Long\/Short"},{"t":5,"n":"Nose Up\/Down"},{"t":5,"n":"Jaw Up\/Down"},{"t":5,"n":"Jaw Narrow\/Wide"},{"t":5,"n":"Jaw Farward\/Back"},{"t":5,"n":"Cheeks Up\/Down"},{"t":5,"n":"Cheeks Farward\/Back"},{"t":5,"n":"Eyes Up\/Down"},{"t":5,"n":"Eyes In\/Out"},{"t":5,"n":"Brows Up\/Down"},{"t":5,"n":"Brows In\/Out"},{"t":5,"n":"Brows Farward\/Back"},{"t":5,"n":"Lips Up\/Down"},{"t":5,"n":"Lips In\/Out"},{"t":5,"n":"Chin Narrow\/Wide"},{"t":5,"n":"Chin Up\/Down"},{"t":5,"n":"Chin Underbite\/Overbite"},{"t":5,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"n":"NAMA - Face parts","c":[{"t":3,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"n":"Eyes"},{"t":3,"n":"Mouth"}]},{"t":10,"n":"Tint Layers","c":[{"t":6,"n":"Layer","c":[{"t":3,"n":"TINI - Tint Index"},{"t":6,"n":"TINC - Tint Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":3,"n":"Alpha"}]},{"t":3,"n":"TINV - Interpolation Value"},{"t":3,"n":"TIAS - Preset"}]}]}]}]},"name":"Bash.NPC.AIPackageOverrides","hash":"F3D39EF3","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Outfits.Add.json b/frontend/settings/Skyrim/Bash.Outfits.Add.json new file mode 100755 index 0000000..a4167d9 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.Outfits.Add.json @@ -0,0 +1 @@ +{"records":"OTFT","description":"Adds items to outfits.","tree":{"records":[{"t":1,"p":1,"n":"OTFT - Outfit","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items"}]}]},"name":"Bash.Outfits.Add","hash":"0731D103","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Outfits.Remove.json b/frontend/settings/Skyrim/Bash.Outfits.Remove.json new file mode 100755 index 0000000..1be5c3e --- /dev/null +++ b/frontend/settings/Skyrim/Bash.Outfits.Remove.json @@ -0,0 +1 @@ +{"records":"OTFT","description":"Adds items to outfits.","tree":{"records":[{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items"}]}]},"name":"Bash.Outfits.Remove","hash":"2A83645B","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Relations.Add.json b/frontend/settings/Skyrim/Bash.Relations.Add.json new file mode 100755 index 0000000..cf26c88 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.Relations.Add.json @@ -0,0 +1 @@ +{"records":"FACT","description":"Adds faction relationships.","tree":{"records":[{"t":1,"p":1,"n":"FACT - Faction","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":8,"p":1,"n":"Relations","c":[{"t":6,"s":1,"p":1,"n":"XNAM - Relation","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Modifier"},{"t":3,"n":"Group Combat Reaction"}]}]},{"t":6,"n":"DATA - Flags","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Hidden From NPC"},{"t":4,"n":"Special Combat"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Track Crime"},{"t":4,"n":"Ignore Crimes: Murder"},{"t":4,"n":"Ignore Crimes: Assault"},{"t":4,"n":"Ignore Crimes: Stealing"},{"t":4,"n":"Ignore Crimes: Trespass"},{"t":4,"n":"Do Not Report Crimes Against Members"},{"t":4,"n":"Crime Gold - Use Defaults"},{"t":4,"n":"Ignore Crimes: Pickpocket"},{"t":4,"n":"Vendor"},{"t":4,"n":"Can Be Owner"},{"t":4,"n":"Ignore Crimes: Werewolf"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]}]},{"t":3,"n":"JAIL - Exterior Jail Marker"},{"t":3,"n":"WAIT - Follower Wait Marker"},{"t":3,"n":"STOL - Stolen Goods Container"},{"t":3,"n":"PLCN - Player Inventory Container"},{"t":3,"n":"CRGR - Shared Crime Faction List"},{"t":3,"n":"JOUT - Jail Outfit"},{"t":6,"n":"CRVA - Crime Values","c":[{"t":3,"n":"Arrest"},{"t":3,"n":"Attack On Sight"},{"t":3,"n":"Murder"},{"t":3,"n":"Assault"},{"t":3,"n":"Trespass"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"n":"Steal Multiplier"},{"t":3,"n":"Escape"},{"t":3,"n":"Werewolf"}]},{"t":10,"n":"Ranks","c":[{"t":6,"n":"Rank","c":[{"t":3,"n":"RNAM - Rank#"},{"t":2,"n":"MNAM - Male Title"},{"t":2,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"n":"VENC - Merchant Container"},{"t":6,"n":"VENV - Vendor Values","c":[{"t":3,"n":"Start Hour"},{"t":3,"n":"End Hour"},{"t":3,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"n":"Only Buys Stolen Items"},{"t":3,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"n":"PLVD - Location","c":[{"t":3,"n":"Type"},{"t":3,"n":"Reference"},{"t":3,"n":"Cell"},{"t":11,"n":"Near Package Start Location"},{"t":11,"n":"Near Editor Location"},{"t":3,"n":"Object ID"},{"t":3,"n":"Object Type"},{"t":3,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]},"name":"Bash.Relations.Add","hash":"E940522E","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Relations.Change.json b/frontend/settings/Skyrim/Bash.Relations.Change.json new file mode 100755 index 0000000..5f5d8f8 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.Relations.Change.json @@ -0,0 +1 @@ +{"records":"FACT","description":"Changes faction relationships.","tree":{"records":[{"t":1,"p":1,"n":"FACT - Faction","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":8,"p":1,"o":1,"n":"Relations","c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"n":"DATA - Flags","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Hidden From NPC"},{"t":4,"n":"Special Combat"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Track Crime"},{"t":4,"n":"Ignore Crimes: Murder"},{"t":4,"n":"Ignore Crimes: Assault"},{"t":4,"n":"Ignore Crimes: Stealing"},{"t":4,"n":"Ignore Crimes: Trespass"},{"t":4,"n":"Do Not Report Crimes Against Members"},{"t":4,"n":"Crime Gold - Use Defaults"},{"t":4,"n":"Ignore Crimes: Pickpocket"},{"t":4,"n":"Vendor"},{"t":4,"n":"Can Be Owner"},{"t":4,"n":"Ignore Crimes: Werewolf"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]}]},{"t":3,"n":"JAIL - Exterior Jail Marker"},{"t":3,"n":"WAIT - Follower Wait Marker"},{"t":3,"n":"STOL - Stolen Goods Container"},{"t":3,"n":"PLCN - Player Inventory Container"},{"t":3,"n":"CRGR - Shared Crime Faction List"},{"t":3,"n":"JOUT - Jail Outfit"},{"t":6,"n":"CRVA - Crime Values","c":[{"t":3,"n":"Arrest"},{"t":3,"n":"Attack On Sight"},{"t":3,"n":"Murder"},{"t":3,"n":"Assault"},{"t":3,"n":"Trespass"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"n":"Steal Multiplier"},{"t":3,"n":"Escape"},{"t":3,"n":"Werewolf"}]},{"t":10,"n":"Ranks","c":[{"t":6,"n":"Rank","c":[{"t":3,"n":"RNAM - Rank#"},{"t":2,"n":"MNAM - Male Title"},{"t":2,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"n":"VENC - Merchant Container"},{"t":6,"n":"VENV - Vendor Values","c":[{"t":3,"n":"Start Hour"},{"t":3,"n":"End Hour"},{"t":3,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"n":"Only Buys Stolen Items"},{"t":3,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"n":"PLVD - Location","c":[{"t":3,"n":"Type"},{"t":3,"n":"Reference"},{"t":3,"n":"Cell"},{"t":11,"n":"Near Package Start Location"},{"t":11,"n":"Near Editor Location"},{"t":3,"n":"Object ID"},{"t":3,"n":"Object Type"},{"t":3,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]},"name":"Bash.Relations.Change","hash":"B1BB42FB","color":255} \ No newline at end of file diff --git a/frontend/settings/Skyrim/Bash.Relations.Remove.json b/frontend/settings/Skyrim/Bash.Relations.Remove.json new file mode 100755 index 0000000..5bad449 --- /dev/null +++ b/frontend/settings/Skyrim/Bash.Relations.Remove.json @@ -0,0 +1 @@ +{"records":"FACT","description":"Removes faction relationships.","tree":{"records":[{"t":1,"p":1,"n":"FACT - Faction","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":8,"p":1,"n":"Relations","d":1,"c":[{"t":6,"s":1,"p":1,"n":"XNAM - Relation","c":[{"t":3,"n":"Faction"},{"t":3,"n":"Modifier"},{"t":3,"n":"Group Combat Reaction"}]}]},{"t":6,"n":"DATA - Flags","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Hidden From NPC"},{"t":4,"n":"Special Combat"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Track Crime"},{"t":4,"n":"Ignore Crimes: Murder"},{"t":4,"n":"Ignore Crimes: Assault"},{"t":4,"n":"Ignore Crimes: Stealing"},{"t":4,"n":"Ignore Crimes: Trespass"},{"t":4,"n":"Do Not Report Crimes Against Members"},{"t":4,"n":"Crime Gold - Use Defaults"},{"t":4,"n":"Ignore Crimes: Pickpocket"},{"t":4,"n":"Vendor"},{"t":4,"n":"Can Be Owner"},{"t":4,"n":"Ignore Crimes: Werewolf"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]}]},{"t":3,"n":"JAIL - Exterior Jail Marker"},{"t":3,"n":"WAIT - Follower Wait Marker"},{"t":3,"n":"STOL - Stolen Goods Container"},{"t":3,"n":"PLCN - Player Inventory Container"},{"t":3,"n":"CRGR - Shared Crime Faction List"},{"t":3,"n":"JOUT - Jail Outfit"},{"t":6,"n":"CRVA - Crime Values","c":[{"t":3,"n":"Arrest"},{"t":3,"n":"Attack On Sight"},{"t":3,"n":"Murder"},{"t":3,"n":"Assault"},{"t":3,"n":"Trespass"},{"t":3,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"n":"Steal Multiplier"},{"t":3,"n":"Escape"},{"t":3,"n":"Werewolf"}]},{"t":10,"n":"Ranks","c":[{"t":6,"n":"Rank","c":[{"t":3,"n":"RNAM - Rank#"},{"t":2,"n":"MNAM - Male Title"},{"t":2,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"n":"VENC - Merchant Container"},{"t":6,"n":"VENV - Vendor Values","c":[{"t":3,"n":"Start Hour"},{"t":3,"n":"End Hour"},{"t":3,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"n":"Only Buys Stolen Items"},{"t":3,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"n":"PLVD - Location","c":[{"t":3,"n":"Type"},{"t":3,"n":"Reference"},{"t":3,"n":"Cell"},{"t":11,"n":"Near Package Start Location"},{"t":11,"n":"Near Editor Location"},{"t":3,"n":"Object ID"},{"t":3,"n":"Object Type"},{"t":3,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]}]}]},"name":"Bash.Relations.Remove","hash":"4E293056","color":255} \ No newline at end of file From c5d7a2a5b9e1d414776a371f0aeab5330e7750b8 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 27 Sep 2020 03:07:55 -0400 Subject: [PATCH 24/76] Maybe fix the new Smash.All --- frontend/settings/Skyrim/Smash.All.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/settings/Skyrim/Smash.All.json b/frontend/settings/Skyrim/Smash.All.json index 090ae7e..584e7cf 100755 --- a/frontend/settings/Skyrim/Smash.All.json +++ b/frontend/settings/Skyrim/Smash.All.json @@ -1 +1 @@ -{"records":"AACT,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,PLYR,PMIS,PROJ,PWAT,QUST,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TES4,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,ACHR","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 09\/03\/2020.","tree":{"records":[{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"MOD2 - Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"MOD3 - Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"MOD4 - Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"MOD5 - Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures"}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"MODL - Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"MOD2 - Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"MOD4 - Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICO2 - Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"MODL - Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"PNAM - Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"PNAM - Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"CNAM - Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":10,"p":1,"n":"BPTN - Body Parts","d":1,"c":[{"t":6,"p":1,"n":"BPTN - Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types"},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With"}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"SNAM - Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"DATA - Models","d":1,"c":[{"t":6,"p":1,"n":"DATA - Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"BNAM - Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"TNAM - Unknown TNAM","c":[{"t":6,"n":"TNAM - Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects"}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents"},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"XNAM - Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"RNAM - Ranks","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"LNAM - FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"n":"Walk Forward Sets"},{"t":3,"n":"Run Forward Sets"},{"t":3,"n":"Walk Forward Alternate Sets"},{"t":3,"n":"Run Forward Alternate Sets"},{"t":3,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"p":1,"n":"DATA - Footstep Sets"}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"ENAM - Markers","d":1,"c":[{"t":6,"p":1,"n":"ENAM - Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"FNPR - Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"HNAM - Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"NAM0 - Parts","d":1,"c":[{"t":6,"p":1,"n":"NAM0 - Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"CTDA - Conditions","c":[{"t":6,"n":"CTDA - Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius"},{"t":7,"p":1,"n":"VNAM - Double Vision Strength"},{"t":7,"p":1,"n":"TNAM - Tint Color"},{"t":7,"p":1,"n":"NAM3 - Fade Color"},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down"},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start"},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance"},{"t":7,"p":1,"n":"YNAM - DoF Range"},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength"},{"t":6,"s":1,"p":1,"n":"aIAD - HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult"},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add"},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult"},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add"},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult"},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add"},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult"},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add"},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult"},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add"},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult"},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add"},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult"},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add"},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult"},{"t":7,"p":1,"n":"GIAD - Sky Scale Add"}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"rIAD - Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult"},{"t":7,"p":1,"n":"QIAD - Saturation Add"},{"t":7,"p":1,"n":"sIAD - Brightness Mult"},{"t":7,"p":1,"n":"RIAD - Brightness Add"},{"t":7,"p":1,"n":"tIAD - Contrast Mult"},{"t":7,"p":1,"n":"SIAD - Contrast Add"}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments"}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"s":1,"p":1,"n":"TCLT - Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"TRDT - Responses","d":1,"c":[{"t":6,"p":1,"n":"TRDT - Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"SCHR - Unknown","c":[{"t":6,"n":"SCHR - Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"PNAM - Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"BTXT - Layers","d":1,"c":[{"t":6,"p":1,"n":"BTXT - Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"ATXT - Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures"}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference"},{"t":7,"n":"LCPR - Location Cell Persistent Reference"},{"t":7,"n":"RCPR - Reference Cell Persistent Reference"},{"t":7,"n":"ACUN - Actor Cell Unique"},{"t":7,"n":"LCUN - Location Cell Unique"},{"t":7,"n":"RCUN - Reference Cell Unique"},{"t":7,"n":"ACSR - Actor Cell Static Reference"},{"t":7,"n":"LCSR - Location Cell Static Reference"},{"t":7,"n":"RCSR - Reference Cell Static Reference"},{"t":8,"n":"ACEC - Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates"}]}]},{"t":8,"n":"LCEC - Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates"}]}]},{"t":8,"n":"RCEC - Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates"}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference"},{"t":7,"n":"LCID - Location Cell Marker Reference"},{"t":7,"n":"ACEP - Actor Cell Enable Point"},{"t":7,"n":"LCEP - Location Cell Enable Point"},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"DNAM - Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"DNAM - Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"GNAM - Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"LVLO - Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"LVLO - Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"LVLO - Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"DNAM - Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"ITXT - Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"ITXT - Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"ESCE - Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds"},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks"}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points"},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks"}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"NVMI - Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To"},{"t":7,"n":"Preferred Merges"},{"t":7,"n":"Linked Doors"},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles"},{"t":7,"n":"Vertices"}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes"},{"t":7,"n":"NavMesh Tree?"}]},{"t":7,"n":"NVSI - Unknown"}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices"},{"t":7,"n":"Triangles"},{"t":7,"n":"Edge Links"},{"t":7,"n":"Door Triangles"},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"s":1,"p":1,"n":"SNAM - Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"SPLO - Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"ATKD - Attacks","d":1,"c":[{"t":6,"p":1,"n":"ATKD - Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"PRKR - Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"PKID - Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"p":1,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"PNAM - Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}]},{"t":3,"p":1,"n":"HCLF - Hair Color"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height"},{"t":5,"p":1,"n":"NAM7 - Weight"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"CSDT - Sound Types","d":1,"c":[{"t":6,"p":1,"n":"CSDT - Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"CSDI - Sounds","c":[{"t":6,"p":1,"n":"CSDI - Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}]},{"t":10,"p":1,"n":"TINI - Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"TINI - Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}]}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items"}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments"}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"IDLF - Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations"},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"ANAM - Package Data","c":[{"t":8,"p":1,"n":"ANAM - Data Input Values","c":[{"t":6,"p":1,"n":"ANAM - Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"UNAM - Data Inputs","c":[{"t":6,"p":1,"n":"UNAM - Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"ANAM - Procedure Tree","c":[{"t":8,"p":1,"n":"ANAM - Branches","c":[{"t":6,"p":1,"n":"ANAM - Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"PKC2 - Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"PFO2 - Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"PFOR - Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"UNAM - Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"UNAM - Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"POBA - OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"POEA - OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"POCA - OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments"}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"PRKE - Effects","d":1,"c":[{"t":6,"p":1,"n":"PRKE - Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"PRKC - Perk Conditions","c":[{"t":6,"p":1,"n":"PRKC - Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"EPFT - Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PLYR - Player Reference","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments"}]},{"t":7,"p":1,"n":"Aliases"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"QTGL - Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"CTDA - Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"p":1,"n":"INDX - Stages","d":1,"c":[{"t":6,"p":1,"n":"INDX - Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"QSDT - Log Entries","c":[{"t":6,"p":1,"n":"QSDT - Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"QOBJ - Objectives","d":1,"c":[{"t":6,"p":1,"n":"QOBJ - Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"QSTA - Targets","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unused"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"s":1,"p":1,"n":"ALST - Aliases","d":1,"c":[{"t":6,"p":1,"n":"ALST - Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"ALFA - Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"ALEQ - External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"ALCO - Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"ALNA - Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"ALFE - Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"ALSP - Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"ALPC - Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"p":1,"n":"ALLS - Alias","c":[{"t":3,"p":1,"n":"ALLS - Location Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"ALFA - Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"ALEQ - External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"ALCO - Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"ALNA - Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"ALFE - Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"ALSP - Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"ALPC - Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"QSTA - Targets","d":1,"c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"SPLO - Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":3,"n":"WNAM - Skin"},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":6,"n":"BODT - Body Template","c":[{"t":3,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":6,"n":"DATA - DATA","c":[{"t":7,"n":"Skill Boosts","c":[{"t":6,"n":"","c":[{"t":3,"n":"Skill"},{"t":3,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"n":"Male Height"},{"t":5,"n":"Female Height"},{"t":5,"n":"Male Weight"},{"t":5,"n":"Female Weight"},{"t":3,"n":"Flags","c":[{"t":4,"n":"Playable"},{"t":4,"n":"FaceGen Head"},{"t":4,"n":"Child"},{"t":4,"n":"Tilt Front\/Back"},{"t":4,"n":"Tilt Left\/Right"},{"t":4,"n":"No Shadow"},{"t":4,"n":"Swims"},{"t":4,"n":"Flies"},{"t":4,"n":"Walks"},{"t":4,"n":"Immobile"},{"t":4,"n":"Not Pushable"},{"t":4,"n":"No Combat In Water"},{"t":4,"n":"No Rotating to Head-Track"},{"t":4,"n":"Don't Show Blood Spray"},{"t":4,"n":"Don't Show Blood Decal"},{"t":4,"n":"Uses Head Track Anims"},{"t":4,"n":"Spells Align w\/Magic Node"},{"t":4,"n":"Use World Raycasts For FootIK"},{"t":4,"n":"Allow Ragdoll Collision"},{"t":4,"n":"Regen HP In Combat"},{"t":4,"n":"Can't Open Doors"},{"t":4,"n":"Allow PC Dialogue"},{"t":4,"n":"No Knockdowns"},{"t":4,"n":"Allow Pickpocket"},{"t":4,"n":"Always Use Proxy Controller"},{"t":4,"n":"Don't Show Weapon Blood"},{"t":4,"n":"Overlay Head Part List"},{"t":4,"n":"Override Head Part List"},{"t":4,"n":"Can Pickup Items"},{"t":4,"n":"Allow Multiple Membrane Shaders"},{"t":4,"n":"Can Dual Wield"},{"t":4,"n":"Avoids Roads"}]},{"t":5,"n":"Starting Health"},{"t":5,"n":"Starting Magicka"},{"t":5,"n":"Starting Stamina"},{"t":5,"n":"Base Carry Weight"},{"t":5,"n":"Base Mass"},{"t":5,"n":"Acceleration rate"},{"t":5,"n":"Deceleration rate"},{"t":3,"n":"Size"},{"t":3,"n":"Head Biped Object"},{"t":3,"n":"Hair Biped Object"},{"t":5,"n":"Injured Health Pct"},{"t":3,"n":"Shield Biped Object"},{"t":5,"n":"Health Regen"},{"t":5,"n":"Magicka Regen"},{"t":5,"n":"Stamina Regen"},{"t":5,"n":"Unarmed Damage"},{"t":5,"n":"Unarmed Reach"},{"t":3,"n":"Body Biped Object"},{"t":5,"n":"Aim Angle Tolerance"},{"t":5,"n":"Flight Radius"},{"t":5,"n":"Angular Acceleration Rate"},{"t":5,"n":"Angular Tolerance"},{"t":3,"n":"Flags 2","c":[{"t":4,"n":"Use Advanced Avoidance"},{"t":4,"n":"Non-Hostile"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Allow Mounted Combat"}]},{"t":6,"n":"Mount Data","c":[{"t":5,"n":"Offset X"},{"t":5,"n":"Offset Y"},{"t":5,"n":"Unknown"}]}]},{"n":"MNAM - Male Marker"},{"t":2,"n":"ANAM - Male Skeletal Model"},{"t":11,"n":"MODT - Texture Files Hashes"},{"n":"FNAM - Female Marker"},{"t":2,"n":"ANAM - Female Skeletal Model"},{"n":"NAM2 - Marker NAM2 #1"},{"t":8,"n":"MTNM - Movement Type Names","c":[{"t":2,"n":"MTNM - Name"}]},{"t":7,"n":"VTCK - Voices","c":[{"t":3,"n":"Male"},{"t":3,"n":"Female"}]},{"t":7,"n":"DNAM - Decapitate Armors","c":[{"t":3,"n":"Male"},{"t":3,"n":"Female"}]},{"t":7,"n":"HCLF - Default Hair Colors","c":[{"t":3,"n":"Male"},{"t":3,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"ATKD - Attacks","c":[{"t":6,"n":"ATKD - Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":3,"n":"Attack Type"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Stamina Mult"}]},{"t":2,"n":"ATKE - Attack Event"}]}]},{"t":6,"n":"NAM1 - Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"n":"MNAM - Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"n":"INDX - Parts","c":[{"t":6,"n":"INDX - Part","c":[{"t":3,"n":"INDX - Index"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]}]}]}]},{"t":6,"n":"FNAM - Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"n":"INDX - Parts","c":[{"t":6,"n":"INDX - Part","c":[{"t":3,"n":"INDX - Index"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]}]}]}]}]},{"t":7,"n":"HNAM - Hairs"},{"t":7,"n":"ENAM - Eyes"},{"t":3,"n":"GNAM - Body Part Data"},{"n":"NAM2 - Marker NAM2 #2"},{"n":"NAM3 - Marker NAM3 #3"},{"t":6,"n":"MNAM - Male Behavior Graph","c":[{"n":"MNAM - Male Data Marker"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]}]},{"t":6,"n":"FNAM - Female Behavior Graph","c":[{"n":"FNAM - Female Data Marker"},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]}]},{"t":3,"n":"NAM4 - Material Type"},{"t":3,"n":"NAM5 - Impact Data Set"},{"t":3,"n":"NAM7 - Decapitation FX"},{"t":3,"n":"ONAM - Open Loot Sound"},{"t":3,"n":"LNAM - Close Loot Sound"},{"t":8,"n":"NAME - Biped Object Names","c":[{"t":2,"n":"NAME - Name"}]},{"t":10,"n":"MTYP - Movement Types","c":[{"t":6,"n":"MTYP - Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags","c":[{"t":4,"n":"Hand To Hand Melee"},{"t":4,"n":"One Hand Sword"},{"t":4,"n":"One Hand Dagger"},{"t":4,"n":"One Hand Axe"},{"t":4,"n":"One Hand Mace"},{"t":4,"n":"Two Hand Sword"},{"t":4,"n":"Two Hand Axe"},{"t":4,"n":"Bow"},{"t":4,"n":"Staff"},{"t":4,"n":"Spell"},{"t":4,"n":"Shield"},{"t":4,"n":"Torch"},{"t":4,"n":"Crossbow"}]},{"t":8,"n":"QNAM - Equip Slots","c":[{"t":3,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"PHTN - Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"PHWT - FaceFX Phonemes","c":[{"t":6,"n":"PHWT - IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"n":"NAM0 - Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"n":"MNAM - Male Head Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"n":"INDX - Head Parts","c":[{"t":6,"n":"INDX - Head Part","c":[{"t":3,"n":"INDX - Head Part Number"},{"t":3,"n":"HEAD - Head"}]}]},{"t":6,"n":"MPAI - Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"RPRM - Race Presets Male","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"AHCM - Available Hair Colors Male","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"FTSM - Face Details Texture Set List Male","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Default Face Texture Male"},{"t":8,"n":"TINI - Tint Masks","c":[{"t":6,"n":"TINI - Tint Assets","c":[{"t":8,"n":"TINI - Tint Layer","c":[{"t":6,"n":"TINI - Texture","c":[{"t":3,"n":"TINI - Index"},{"t":2,"n":"TINT - File Name"},{"t":3,"n":"TINP - Mask Type"},{"t":3,"n":"TIND - Preset Default"}]}]},{"t":8,"n":"TINC - Presets","c":[{"t":6,"n":"TINC - Preset","c":[{"t":3,"n":"TINC - Color"},{"t":5,"n":"TINV - Default Value"},{"t":3,"n":"TIRS - Index"}]}]}]}]},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]}]},{"t":6,"n":"NAM0 - Female Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"n":"FNAM - Female Data Marker"},{"t":10,"n":"INDX - Head Parts","c":[{"t":6,"n":"INDX - Head Part","c":[{"t":3,"n":"INDX - Head Part Number"},{"t":3,"n":"HEAD - Head"}]}]},{"t":6,"n":"MPAI - Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"RPRF - Race Presets Female","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"AHCF - Available Hair Colors Female","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"FTSF - Face Details Texture Set List Female","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Default Face Texture Female"},{"t":8,"n":"TINI - Tint Masks","c":[{"t":6,"n":"TINI - Tint Assets","c":[{"t":8,"n":"TINI - Tint Layer","c":[{"t":6,"n":"TINI - Texture","c":[{"t":3,"n":"TINI - Index"},{"t":2,"n":"TINT - File Name"},{"t":3,"n":"TINP - Mask Type"},{"t":3,"n":"TIND - Preset Default"}]}]},{"t":8,"n":"TINC - Presets","c":[{"t":6,"n":"TINC - Preset","c":[{"t":3,"n":"TINC - Color"},{"t":5,"n":"TINV - Default Value"},{"t":3,"n":"TIRS - Index"}]}]}]}]},{"t":6,"n":"MODL - Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":7,"n":"MODS - Alternate Textures"}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data"},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"XRMR - Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"XLRM - Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLTW - Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"XPRD - Patrol","d":1,"c":[{"t":6,"p":1,"n":"XPRD - Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"XMRK - Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"RPLI - Region Areas","d":1,"c":[{"t":6,"p":1,"n":"RPLI - Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data"}]}]},{"t":10,"p":1,"n":"RDAT - Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"RDAT - Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds"},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects"},{"t":7,"p":1,"n":"RDGS - Grasses"},{"t":7,"p":1,"n":"RDWT - Weather Types"}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments"},{"t":7,"p":1,"n":"Phase Fragments"}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"HNAM - Phases","d":1,"c":[{"t":6,"p":1,"n":"HNAM - Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"CTDA - Start Conditions","c":[{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"CTDA - Completion Conditions","c":[{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"ALID - Actors","d":1,"c":[{"t":6,"p":1,"n":"ALID - Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"ANAM - Actions","d":1,"c":[{"t":6,"p":1,"n":"ANAM - Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"PNAM - Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"ONAM - Parts","d":1,"c":[{"t":6,"p":1,"n":"ONAM - Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"SNAM - Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"NNAM - Quests","d":1,"c":[{"t":6,"p":1,"n":"NNAM - Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"ANAM - Sounds","d":1,"c":[{"t":6,"p":1,"n":"ANAM - Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TES4 - Main File Header","d":1,"c":[{"t":6,"s":1,"p":1,"n":"HEDR - Header","c":[{"t":5,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Number of Records"},{"t":3,"p":1,"n":"Next Object ID"}]},{"t":11,"n":"OFST - Unknown"},{"t":11,"n":"DELE - Unknown"},{"t":2,"p":1,"n":"CNAM - Author"},{"t":2,"p":1,"n":"SNAM - Description"},{"t":8,"s":1,"p":1,"n":"MAST - Master Files","d":1,"c":[{"t":6,"p":1,"n":"MAST - Master File","c":[{"t":2,"p":1,"n":"MAST - FileName"},{"t":11,"n":"DATA - Unknown"}]}]},{"t":7,"p":1,"n":"ONAM - Overridden Forms"},{"t":11,"n":"SCRN - Screenshot"},{"t":11,"n":"INTV - Unknown"},{"t":11,"n":"INCC - Unknown"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"TX00 - Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"NNAM - Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MOD3 - Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures"}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"RNAM - Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References"}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"WNAM - Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"MODL - Cloud Model","c":[{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"RNAM - Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed"},{"t":7,"p":1,"n":"QNAM - X Speed"}]},{"t":7,"p":1,"n":"PNAM - Cloud Colors"},{"t":7,"p":1,"n":"JNAM - Cloud Alphas"},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"SNAM - Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"TNAM - Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"MODL - Aurora","c":[{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts"}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"XPRD - Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type"},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]}]},"name":"Smash.All","hash":"8782B53E","color":128} \ No newline at end of file +{"records":"AACT,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,PLYR,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,ACHR","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 09\/27\/2020.","tree":{"records":[{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"MOD2 - Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MOD3 - Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MOD4 - Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MOD5 - Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"MODL - Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"MOD2 - Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"MOD4 - Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICO2 - Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"MODL - Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"PNAM - Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"PNAM - Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"CNAM - Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"BPTN - Body Parts","d":1,"c":[{"t":6,"p":1,"n":"BPTN - Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"SNAM - Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"DATA - Models","d":1,"c":[{"t":6,"p":1,"n":"DATA - Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"BNAM - Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"TNAM - Unknown TNAM","c":[{"t":6,"n":"TNAM - Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"XNAM - Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"RNAM - Ranks","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"LNAM - FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"ENAM - Markers","d":1,"c":[{"t":6,"p":1,"n":"ENAM - Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"FNPR - Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"HNAM - Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"NAM0 - Parts","d":1,"c":[{"t":6,"p":1,"n":"NAM0 - Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"CTDA - Conditions","c":[{"t":6,"n":"CTDA - Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"aIAD - HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"rIAD - Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"s":1,"p":1,"n":"TCLT - Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"TRDT - Responses","d":1,"c":[{"t":6,"p":1,"n":"TRDT - Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"SCHR - Unknown","c":[{"t":6,"n":"SCHR - Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"PNAM - Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"BTXT - Layers","d":1,"c":[{"t":6,"p":1,"n":"BTXT - Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"ATXT - Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"ACEC - Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"LCEC - Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"RCEC - Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"DNAM - Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"DNAM - Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"GNAM - Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"LVLO - Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"LVLO - Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"LVLO - Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"DNAM - Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"ITXT - Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"ITXT - Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"ESCE - Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"NVMI - Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"s":1,"p":1,"n":"SNAM - Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"SPLO - Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"ATKD - Attacks","d":1,"c":[{"t":6,"p":1,"n":"ATKD - Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"PRKR - Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"PKID - Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"p":1,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"PNAM - Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"CSDT - Sound Types","d":1,"c":[{"t":6,"p":1,"n":"CSDT - Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"CSDI - Sounds","c":[{"t":6,"p":1,"n":"CSDI - Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"TINI - Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"TINI - Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"s":1,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"IDLF - Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"ANAM - Package Data","c":[{"t":8,"p":1,"n":"ANAM - Data Input Values","c":[{"t":6,"p":1,"n":"ANAM - Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"UNAM - Data Inputs","c":[{"t":6,"p":1,"n":"UNAM - Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"ANAM - Procedure Tree","c":[{"t":8,"p":1,"n":"ANAM - Branches","c":[{"t":6,"p":1,"n":"ANAM - Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"PKC2 - Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"PFO2 - Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"PFOR - Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"UNAM - Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"UNAM - Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"POBA - OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"POEA - OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"POCA - OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"PRKE - Effects","d":1,"c":[{"t":6,"p":1,"n":"PRKE - Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"PRKC - Perk Conditions","c":[{"t":6,"p":1,"n":"PRKC - Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"EPFT - Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PLYR - Player Reference","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"QTGL - Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"CTDA - Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"INDX - Stages","d":1,"c":[{"t":6,"p":1,"n":"INDX - Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"QSDT - Log Entries","c":[{"t":6,"p":1,"n":"QSDT - Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"QOBJ - Objectives","d":1,"c":[{"t":6,"p":1,"n":"QOBJ - Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"QSTA - Targets","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unused"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"s":1,"p":1,"n":"ALST - Aliases","d":1,"c":[{"t":6,"p":1,"n":"ALST - Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"ALFA - Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"ALEQ - External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"ALCO - Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"ALNA - Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"ALFE - Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"ALSP - Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"ALPC - Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"p":1,"n":"ALLS - Alias","c":[{"t":3,"p":1,"n":"ALLS - Location Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"ALFA - Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"ALEQ - External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"ALCO - Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"ALNA - Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"ALFE - Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"ALSP - Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"ALPC - Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"QSTA - Targets","d":1,"c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"SPLO - Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":7,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Playable"},{"t":4,"n":"FaceGen Head"},{"t":4,"n":"Child"},{"t":4,"n":"Tilt Front\/Back"},{"t":4,"n":"Tilt Left\/Right"},{"t":4,"n":"No Shadow"},{"t":4,"n":"Swims"},{"t":4,"n":"Flies"},{"t":4,"n":"Walks"},{"t":4,"n":"Immobile"},{"t":4,"n":"Not Pushable"},{"t":4,"n":"No Combat In Water"},{"t":4,"n":"No Rotating to Head-Track"},{"t":4,"n":"Don't Show Blood Spray"},{"t":4,"n":"Don't Show Blood Decal"},{"t":4,"n":"Uses Head Track Anims"},{"t":4,"n":"Spells Align w\/Magic Node"},{"t":4,"n":"Use World Raycasts For FootIK"},{"t":4,"n":"Allow Ragdoll Collision"},{"t":4,"n":"Regen HP In Combat"},{"t":4,"n":"Can't Open Doors"},{"t":4,"n":"Allow PC Dialogue"},{"t":4,"n":"No Knockdowns"},{"t":4,"n":"Allow Pickpocket"},{"t":4,"n":"Always Use Proxy Controller"},{"t":4,"n":"Don't Show Weapon Blood"},{"t":4,"n":"Overlay Head Part List"},{"t":4,"n":"Override Head Part List"},{"t":4,"n":"Can Pickup Items"},{"t":4,"n":"Allow Multiple Membrane Shaders"},{"t":4,"n":"Can Dual Wield"},{"t":4,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","c":[{"t":4,"n":"Use Advanced Avoidance"},{"t":4,"n":"Non-Hostile"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"ATKD - Attacks","c":[{"t":6,"p":1,"n":"ATKD - Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"NAM1 - Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"MNAM - Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"INDX - Parts","d":1,"c":[{"t":6,"p":1,"n":"INDX - Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"FNAM - Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"INDX - Parts","d":1,"c":[{"t":6,"p":1,"n":"INDX - Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"MNAM - Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"p":1,"n":"NAME - Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"MTYP - Movement Types","c":[{"t":6,"n":"MTYP - Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags","c":[{"t":4,"n":"Hand To Hand Melee"},{"t":4,"n":"One Hand Sword"},{"t":4,"n":"One Hand Dagger"},{"t":4,"n":"One Hand Axe"},{"t":4,"n":"One Hand Mace"},{"t":4,"n":"Two Hand Sword"},{"t":4,"n":"Two Hand Axe"},{"t":4,"n":"Bow"},{"t":4,"n":"Staff"},{"t":4,"n":"Spell"},{"t":4,"n":"Shield"},{"t":4,"n":"Torch"},{"t":4,"n":"Crossbow"}]},{"t":8,"p":1,"n":"QNAM - Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"PHTN - Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"PHWT - FaceFX Phonemes","c":[{"t":6,"n":"PHWT - IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"NAM0 - Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"s":1,"p":1,"n":"MNAM - Male Head Data","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":10,"p":1,"n":"INDX - Head Parts","c":[{"t":6,"p":1,"n":"INDX - Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"MPAI - Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"RPRM - Race Presets Male","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"AHCM - Available Hair Colors Male","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"FTSM - Face Details Texture Set List Male","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"TINI - Tint Masks","c":[{"t":6,"p":1,"n":"TINI - Tint Assets","c":[{"t":8,"p":1,"n":"TINI - Tint Layer","c":[{"t":6,"p":1,"n":"TINI - Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"TINC - Presets","c":[{"t":6,"p":1,"n":"TINC - Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Female Head Data","c":[{"p":1,"n":"NAM0 - Head Data Marker"},{"p":1,"n":"FNAM - Female Data Marker"},{"t":10,"p":1,"n":"INDX - Head Parts","c":[{"t":6,"p":1,"n":"INDX - Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"MPAI - Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"RPRF - Race Presets Female","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"AHCF - Available Hair Colors Female","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"FTSF - Face Details Texture Set List Female","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"TINI - Tint Masks","c":[{"t":6,"p":1,"n":"TINI - Tint Assets","c":[{"t":8,"p":1,"n":"TINI - Tint Layer","c":[{"t":6,"p":1,"n":"TINI - Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"TINC - Presets","c":[{"t":6,"p":1,"n":"TINC - Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"XRMR - Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"XLRM - Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLTW - Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"XPRD - Patrol","d":1,"c":[{"t":6,"p":1,"n":"XPRD - Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"XMRK - Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"RPLI - Region Areas","d":1,"c":[{"t":6,"p":1,"n":"RPLI - Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"RDAT - Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"RDAT - Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"HNAM - Phases","d":1,"c":[{"t":6,"p":1,"n":"HNAM - Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"CTDA - Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"CTDA - Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"ALID - Actors","d":1,"c":[{"t":6,"p":1,"n":"ALID - Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"ANAM - Actions","d":1,"c":[{"t":6,"p":1,"n":"ANAM - Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"PNAM - Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"ONAM - Parts","d":1,"c":[{"t":6,"p":1,"n":"ONAM - Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"SNAM - Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"NNAM - Quests","d":1,"c":[{"t":6,"p":1,"n":"NNAM - Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"ANAM - Sounds","d":1,"c":[{"t":6,"p":1,"n":"ANAM - Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"TX00 - Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"NNAM - Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MOD3 - Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"RNAM - Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"WNAM - Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"MODL - Cloud Model","c":[{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"RNAM - Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"SNAM - Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"TNAM - Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"MODL - Aurora","c":[{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"XPRD - Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]}]},"name":"Smash.All","hash":"88950B1B","color":128} \ No newline at end of file From 465669a41318488741623155e3b0d2f81ff6c739 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 27 Sep 2020 14:12:26 -0400 Subject: [PATCH 25/76] Make original BSA loading code work --- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msThreads.pas | 8 +++++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 42d6350d6997ef7f5ad0a3416f0efc82a45f8554..c4f8f67ddbb14e21f715e1e893ba8656a96f1fbf 100755 GIT binary patch delta 14 VcmX@3dPa3Z39~M5-Ny1zApk1w1u*~s delta 14 VcmX@3dPa3Z33EGF`Nr~4Apk8e1%Utn diff --git a/frontend/msThreads.pas b/frontend/msThreads.pas index 9412eda..a530582 100755 --- a/frontend/msThreads.pas +++ b/frontend/msThreads.pas @@ -89,9 +89,6 @@ procedure TInitThread.Execute; plugin._File._AddRef; plugin.GetMsData; PluginsList.Add(Pointer(plugin)); - // TODO: Seems like xEdit should load them for me... wbLoadBSAs?? - // Must be setting xEdit up wrong still - BSAExists(slPlugins[i]) except on x: Exception do begin Logger.Write('ERROR', 'Load', 'Exception loading '+slPlugins[i]); @@ -114,6 +111,11 @@ procedure TInitThread.Execute; end; end; + // LOAD RESOURCES + Tracker.Write('Loading Resources'); + wbContainerHandler.AddFolder(wbDataPath); + LoadBSAs; + // LOAD PLUGIN INFORMATION Tracker.Write('Loading plugin information'); TPatchHelpers.AssignPatchesToPlugins; From a6aba9977bf4838325d67c75e1aa8f88adb700a9 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 27 Sep 2020 16:47:30 -0400 Subject: [PATCH 26/76] Add setting to ESL flag Smashed Patch --- frontend/msConfiguration.pas | 1 + frontend/msSmash.pas | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/frontend/msConfiguration.pas b/frontend/msConfiguration.pas index a9e15dc..067e079 100755 --- a/frontend/msConfiguration.pas +++ b/frontend/msConfiguration.pas @@ -39,6 +39,7 @@ TSettings = class(TObject) logMessageTemplate: string; preserveTempPath: boolean; allowTagging: boolean; + flagESL: boolean; smashSound: boolean; [IniSection('Patching')] patchDirectory: string; diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 3717285..4d42001 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -34,14 +34,16 @@ procedure BuildPluginsList(var patch: TPatch; var lst: TList); procedure SetPatchAttributes(var patch: TPatch); var patchFile: IwbFile; - fileHeader: IwbContainer; + fileHeader: IwbMainRecord; begin patchFile := patch.plugin._File; - fileHeader := patchFile.Elements[0] as IwbContainer; + fileHeader := patchFile.Elements[0] as IwbMainRecord; // set author fileHeader.ElementEditValues['CNAM'] := 'Mator Smash v' + ProgramStatus.Version; // set description fileHeader.ElementEditValues['SNAM'] := 'Smashed patch:'#13#10 + patch.plugins.Text; + // set ESL flag + fileHeader.IsESL := settings.flagESL; end; function GetPatchFile(var patch: TPatch; var lst: TList): IwbFile; From a78b00497af54f8e2afc466830ea3a4b6ed42875 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 27 Sep 2020 21:09:34 -0400 Subject: [PATCH 27/76] Add option to use multiple threads to remove ITPOs TODO: Clean up this code TODO: Maybe do the same for smashing records? --- frontend/msConfiguration.pas | 1 + frontend/msSmash.pas | 100 ++++++++++++++++++++++++++++------- 2 files changed, 81 insertions(+), 20 deletions(-) diff --git a/frontend/msConfiguration.pas b/frontend/msConfiguration.pas index 067e079..f9113b7 100755 --- a/frontend/msConfiguration.pas +++ b/frontend/msConfiguration.pas @@ -40,6 +40,7 @@ TSettings = class(TObject) preserveTempPath: boolean; allowTagging: boolean; flagESL: boolean; + multiThreadedSmash: boolean; smashSound: boolean; [IniSection('Patching')] patchDirectory: string; diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 4d42001..d85526f 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -426,39 +426,99 @@ procedure RemoveEmptyContainers(aContainer: IwbContainer); RemoveEmptyContainers(nextContainer); end; + +function FindITPO(e: IwbMainRecord): Boolean; +begin + // skip master records + if e.IsMaster then + Exit(False); + + // skip records that have elements in child group (WRLD, CELL, DIAL) + if Assigned(e.ChildGroup) and (e.ChildGroup.ElementCount > 0) then + Exit(False); + + // remove record if no conflicts + if not IsITPO(e) then + Exit(False); + + Result := True; + Tracker.Write(' Removing ITPO: ' + e.Name); +end; + +type + TITPOThread = class(TThread) + private + Fe: IwbMainRecord; + procedure Execute; override; + public + constructor Create(const e: IwbMainRecord); + property ReturnValue; + end; + +constructor TITPOThread.Create; +begin + inherited Create(False); + Fe := e; +end; + +procedure TITPOThread.Execute; +begin + if FindITPO(Fe) then + ReturnValue := 1 + else + ReturnValue := 0; +end; + procedure RemoveITPOs(aFile: IwbFile); var i, CountITPO: Integer; - e, m: IwbMainRecord; + e: IwbMainRecord; container: IwbContainer; ITPOs: TDynMainRecords; + ThreadRefs: array of TITPOThread; + ThreadHandles: array of THandle; begin Tracker.Write(' '); Tracker.Write('Removing ITPO records from patch'); CountITPO := 0; - // loop through file's records - for i := Pred(aFile.RecordCount) downto 0 do begin - if Tracker.Cancel then break; - e := aFile.Records[i]; - m := e.MasterOrSelf; - - // skip master records - if e.IsMaster then - continue; + if settings.multiThreadedSmash then begin + SetLength(ThreadRefs, aFile.RecordCount); + SetLength(ThreadHandles, aFile.RecordCount); - // skip records that have elements in child group (WRLD, CELL, DIAL) - if Assigned(e.ChildGroup) and (e.ChildGroup.ElementCount > 0) then - continue; + // loop through file's records + for i := Pred(aFile.RecordCount) downto 0 do begin + if Tracker.Cancel then break; + e := aFile.Records[i]; - // remove record if no conflicts - if IsITPO(e) then begin - Tracker.Write(' Removing ITPO: ' + e.Name); + ThreadRefs[i] := TITPOThread.Create(e); + ThreadHandles[i] := ThreadRefs[i].Handle; + end; - // add ITPO to list of records to remove - SetLength(ITPOs, CountITPO + 1); - ITPOs[CountITPO] := e; - Inc(CountITPO); + // Wait for Threads + WaitForMultipleObjects(Length(ThreadRefs), Pointer(ThreadHandles), True, INFINITE); + + // loop through threads and get results + for i := Pred(Length(ThreadRefs)) downto 0 do begin + // remove record if no conflicts + if ThreadRefs[i].ReturnValue = 1 then begin + // add ITPO to list of records to remove + SetLength(ITPOs, CountITPO + 1); + ITPOs[CountITPO] := e; + Inc(CountITPO); + end; + end; + end else begin + // loop through file's records + for i := Pred(aFile.RecordCount) downto 0 do begin + e := aFile.Records[i]; + + if FindITPO(e) then begin + // add ITPO to list of records to remove + SetLength(ITPOs, CountITPO + 1); + ITPOs[CountITPO] := e; + Inc(CountITPO); + end; end; end; From 4267c2a11fe696cea8bfbfcfff26113d4a6c4689 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 4 Oct 2020 15:44:58 -0400 Subject: [PATCH 28/76] Further tweak new Smash.All --- frontend/settings/Skyrim/Smash.All.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/settings/Skyrim/Smash.All.json b/frontend/settings/Skyrim/Smash.All.json index 584e7cf..8290150 100755 --- a/frontend/settings/Skyrim/Smash.All.json +++ b/frontend/settings/Skyrim/Smash.All.json @@ -1 +1 @@ -{"records":"AACT,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,PLYR,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,ACHR","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 09\/27\/2020.","tree":{"records":[{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"MOD2 - Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MOD3 - Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MOD4 - Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MOD5 - Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"MODL - Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"MOD2 - Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"MOD4 - Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICO2 - Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"MODL - Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"PNAM - Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"PNAM - Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"CNAM - Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"BPTN - Body Parts","d":1,"c":[{"t":6,"p":1,"n":"BPTN - Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"SNAM - Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"DATA - Models","d":1,"c":[{"t":6,"p":1,"n":"DATA - Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"BNAM - Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"TNAM - Unknown TNAM","c":[{"t":6,"n":"TNAM - Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"XNAM - Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"RNAM - Ranks","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"LNAM - FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"ENAM - Markers","d":1,"c":[{"t":6,"p":1,"n":"ENAM - Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"FNPR - Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"HNAM - Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"NAM0 - Parts","d":1,"c":[{"t":6,"p":1,"n":"NAM0 - Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"CTDA - Conditions","c":[{"t":6,"n":"CTDA - Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"aIAD - HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"rIAD - Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"s":1,"p":1,"n":"TCLT - Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"TRDT - Responses","d":1,"c":[{"t":6,"p":1,"n":"TRDT - Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"SCHR - Unknown","c":[{"t":6,"n":"SCHR - Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"PNAM - Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"BTXT - Layers","d":1,"c":[{"t":6,"p":1,"n":"BTXT - Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"ATXT - Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"ACEC - Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"LCEC - Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"RCEC - Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"DNAM - Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"DNAM - Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"GNAM - Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"LVLO - Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"LVLO - Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"LVLO - Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"DNAM - Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"ITXT - Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"ITXT - Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"ESCE - Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"NVMI - Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"s":1,"p":1,"n":"SNAM - Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"SPLO - Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"ATKD - Attacks","d":1,"c":[{"t":6,"p":1,"n":"ATKD - Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"PRKR - Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"PKID - Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"p":1,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"PNAM - Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"CSDT - Sound Types","d":1,"c":[{"t":6,"p":1,"n":"CSDT - Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"CSDI - Sounds","c":[{"t":6,"p":1,"n":"CSDI - Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"TINI - Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"TINI - Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"s":1,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"IDLF - Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"ANAM - Package Data","c":[{"t":8,"p":1,"n":"ANAM - Data Input Values","c":[{"t":6,"p":1,"n":"ANAM - Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"UNAM - Data Inputs","c":[{"t":6,"p":1,"n":"UNAM - Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"ANAM - Procedure Tree","c":[{"t":8,"p":1,"n":"ANAM - Branches","c":[{"t":6,"p":1,"n":"ANAM - Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"PKC2 - Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"PFO2 - Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"PFOR - Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"UNAM - Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"UNAM - Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"POBA - OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"POEA - OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"POCA - OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"PRKE - Effects","d":1,"c":[{"t":6,"p":1,"n":"PRKE - Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"PRKC - Perk Conditions","c":[{"t":6,"p":1,"n":"PRKC - Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"EPFT - Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PLYR - Player Reference","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"QTGL - Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"CTDA - Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"INDX - Stages","d":1,"c":[{"t":6,"p":1,"n":"INDX - Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"QSDT - Log Entries","c":[{"t":6,"p":1,"n":"QSDT - Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"QOBJ - Objectives","d":1,"c":[{"t":6,"p":1,"n":"QOBJ - Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"QSTA - Targets","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unused"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"s":1,"p":1,"n":"ALST - Aliases","d":1,"c":[{"t":6,"p":1,"n":"ALST - Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"ALFA - Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"ALEQ - External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"ALCO - Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"ALNA - Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"ALFE - Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"ALSP - Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"ALPC - Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"p":1,"n":"ALLS - Alias","c":[{"t":3,"p":1,"n":"ALLS - Location Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"ALFA - Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"ALEQ - External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"ALCO - Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"ALNA - Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"ALFE - Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"ALSP - Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"ALPC - Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"QSTA - Targets","d":1,"c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"SPLO - Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":7,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Playable"},{"t":4,"n":"FaceGen Head"},{"t":4,"n":"Child"},{"t":4,"n":"Tilt Front\/Back"},{"t":4,"n":"Tilt Left\/Right"},{"t":4,"n":"No Shadow"},{"t":4,"n":"Swims"},{"t":4,"n":"Flies"},{"t":4,"n":"Walks"},{"t":4,"n":"Immobile"},{"t":4,"n":"Not Pushable"},{"t":4,"n":"No Combat In Water"},{"t":4,"n":"No Rotating to Head-Track"},{"t":4,"n":"Don't Show Blood Spray"},{"t":4,"n":"Don't Show Blood Decal"},{"t":4,"n":"Uses Head Track Anims"},{"t":4,"n":"Spells Align w\/Magic Node"},{"t":4,"n":"Use World Raycasts For FootIK"},{"t":4,"n":"Allow Ragdoll Collision"},{"t":4,"n":"Regen HP In Combat"},{"t":4,"n":"Can't Open Doors"},{"t":4,"n":"Allow PC Dialogue"},{"t":4,"n":"No Knockdowns"},{"t":4,"n":"Allow Pickpocket"},{"t":4,"n":"Always Use Proxy Controller"},{"t":4,"n":"Don't Show Weapon Blood"},{"t":4,"n":"Overlay Head Part List"},{"t":4,"n":"Override Head Part List"},{"t":4,"n":"Can Pickup Items"},{"t":4,"n":"Allow Multiple Membrane Shaders"},{"t":4,"n":"Can Dual Wield"},{"t":4,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","c":[{"t":4,"n":"Use Advanced Avoidance"},{"t":4,"n":"Non-Hostile"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"ATKD - Attacks","c":[{"t":6,"p":1,"n":"ATKD - Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"NAM1 - Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"MNAM - Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"INDX - Parts","d":1,"c":[{"t":6,"p":1,"n":"INDX - Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"FNAM - Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"INDX - Parts","d":1,"c":[{"t":6,"p":1,"n":"INDX - Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"MNAM - Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"p":1,"n":"NAME - Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"MTYP - Movement Types","c":[{"t":6,"n":"MTYP - Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags","c":[{"t":4,"n":"Hand To Hand Melee"},{"t":4,"n":"One Hand Sword"},{"t":4,"n":"One Hand Dagger"},{"t":4,"n":"One Hand Axe"},{"t":4,"n":"One Hand Mace"},{"t":4,"n":"Two Hand Sword"},{"t":4,"n":"Two Hand Axe"},{"t":4,"n":"Bow"},{"t":4,"n":"Staff"},{"t":4,"n":"Spell"},{"t":4,"n":"Shield"},{"t":4,"n":"Torch"},{"t":4,"n":"Crossbow"}]},{"t":8,"p":1,"n":"QNAM - Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"PHTN - Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"PHWT - FaceFX Phonemes","c":[{"t":6,"n":"PHWT - IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"NAM0 - Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"s":1,"p":1,"n":"MNAM - Male Head Data","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":10,"p":1,"n":"INDX - Head Parts","c":[{"t":6,"p":1,"n":"INDX - Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"MPAI - Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"RPRM - Race Presets Male","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"AHCM - Available Hair Colors Male","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"FTSM - Face Details Texture Set List Male","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"TINI - Tint Masks","c":[{"t":6,"p":1,"n":"TINI - Tint Assets","c":[{"t":8,"p":1,"n":"TINI - Tint Layer","c":[{"t":6,"p":1,"n":"TINI - Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"TINC - Presets","c":[{"t":6,"p":1,"n":"TINC - Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Female Head Data","c":[{"p":1,"n":"NAM0 - Head Data Marker"},{"p":1,"n":"FNAM - Female Data Marker"},{"t":10,"p":1,"n":"INDX - Head Parts","c":[{"t":6,"p":1,"n":"INDX - Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"MPAI - Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"RPRF - Race Presets Female","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"AHCF - Available Hair Colors Female","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"FTSF - Face Details Texture Set List Female","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"TINI - Tint Masks","c":[{"t":6,"p":1,"n":"TINI - Tint Assets","c":[{"t":8,"p":1,"n":"TINI - Tint Layer","c":[{"t":6,"p":1,"n":"TINI - Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"TINC - Presets","c":[{"t":6,"p":1,"n":"TINC - Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"XRMR - Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"XLRM - Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLTW - Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"XPRD - Patrol","d":1,"c":[{"t":6,"p":1,"n":"XPRD - Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"XMRK - Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"RPLI - Region Areas","d":1,"c":[{"t":6,"p":1,"n":"RPLI - Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"RDAT - Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"RDAT - Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"HNAM - Phases","d":1,"c":[{"t":6,"p":1,"n":"HNAM - Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"CTDA - Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"CTDA - Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"ALID - Actors","d":1,"c":[{"t":6,"p":1,"n":"ALID - Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"ANAM - Actions","d":1,"c":[{"t":6,"p":1,"n":"ANAM - Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"PNAM - Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"ONAM - Parts","d":1,"c":[{"t":6,"p":1,"n":"ONAM - Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"SNAM - Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"NNAM - Quests","d":1,"c":[{"t":6,"p":1,"n":"NNAM - Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"ANAM - Sounds","d":1,"c":[{"t":6,"p":1,"n":"ANAM - Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"TX00 - Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"NNAM - Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MOD3 - Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"RNAM - Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"WNAM - Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"MODL - Cloud Model","c":[{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"RNAM - Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"SNAM - Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"TNAM - Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"MODL - Aurora","c":[{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"XPRD - Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]}]},"name":"Smash.All","hash":"88950B1B","color":128} \ No newline at end of file +{"records":"ACHR,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,PLYR,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,AACT","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 10\/04\/2020.","tree":{"records":[{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"XPRD - Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"MOD2 - Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MOD3 - Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MOD4 - Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MOD5 - Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"MODL - Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"MOD2 - Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"MOD4 - Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICO2 - Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"MODL - Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"PNAM - Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"PNAM - Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"CNAM - Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"BPTN - Body Parts","d":1,"c":[{"t":6,"p":1,"n":"BPTN - Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"SNAM - Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"DATA - Models","d":1,"c":[{"t":6,"p":1,"n":"DATA - Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"BNAM - Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"TNAM - Unknown TNAM","c":[{"t":6,"n":"TNAM - Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"XNAM - Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"RNAM - Ranks","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"LNAM - FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"ENAM - Markers","d":1,"c":[{"t":6,"p":1,"n":"ENAM - Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"FNPR - Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"HNAM - Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"NAM0 - Parts","d":1,"c":[{"t":6,"p":1,"n":"NAM0 - Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"CTDA - Conditions","c":[{"t":6,"n":"CTDA - Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"aIAD - HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"rIAD - Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"s":1,"p":1,"n":"TCLT - Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"TRDT - Responses","d":1,"c":[{"t":6,"p":1,"n":"TRDT - Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"SCHR - Unknown","c":[{"t":6,"n":"SCHR - Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"PNAM - Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"BTXT - Layers","d":1,"c":[{"t":6,"p":1,"n":"BTXT - Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"ATXT - Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"ACEC - Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"LCEC - Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"RCEC - Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"DNAM - Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"DNAM - Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"GNAM - Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"DNAM - Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"ITXT - Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"ITXT - Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"ESCE - Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"NVMI - Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"s":1,"p":1,"n":"SNAM - Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"SPLO - Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"ATKD - Attacks","d":1,"c":[{"t":6,"p":1,"n":"ATKD - Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"PRKR - Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"PKID - Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"p":1,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"PNAM - Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"CSDT - Sound Types","d":1,"c":[{"t":6,"p":1,"n":"CSDT - Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"CSDI - Sounds","c":[{"t":6,"p":1,"n":"CSDI - Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"TINI - Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"TINI - Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"s":1,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"IDLF - Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"ANAM - Package Data","c":[{"t":8,"p":1,"n":"ANAM - Data Input Values","c":[{"t":6,"p":1,"n":"ANAM - Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"UNAM - Data Inputs","c":[{"t":6,"p":1,"n":"UNAM - Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"ANAM - Procedure Tree","c":[{"t":8,"p":1,"n":"ANAM - Branches","c":[{"t":6,"p":1,"n":"ANAM - Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"PKC2 - Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"PFO2 - Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"PFOR - Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"UNAM - Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"UNAM - Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"POBA - OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"POEA - OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"POCA - OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"PRKE - Effects","d":1,"c":[{"t":6,"p":1,"n":"PRKE - Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"PRKC - Perk Conditions","c":[{"t":6,"p":1,"n":"PRKC - Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"EPFT - Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PLYR - Player Reference","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"QTGL - Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"CTDA - Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"INDX - Stages","d":1,"c":[{"t":6,"p":1,"n":"INDX - Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"QSDT - Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"QOBJ - Objectives","d":1,"c":[{"t":6,"p":1,"n":"QOBJ - Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"QSTA - Targets","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unused"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"s":1,"p":1,"n":"ALST - Aliases","d":1,"c":[{"t":6,"p":1,"n":"ALST - Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"ALFA - Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"ALEQ - External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"ALCO - Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"ALNA - Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"ALFE - Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"ALSP - Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"ALPC - Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"p":1,"n":"ALLS - Alias","c":[{"t":3,"p":1,"n":"ALLS - Location Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"ALFA - Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"ALEQ - External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"ALCO - Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"ALNA - Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"ALFE - Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"ALSP - Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"ALPC - Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"QSTA - Targets","d":1,"c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"SPLO - Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":7,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Playable"},{"t":4,"n":"FaceGen Head"},{"t":4,"n":"Child"},{"t":4,"n":"Tilt Front\/Back"},{"t":4,"n":"Tilt Left\/Right"},{"t":4,"n":"No Shadow"},{"t":4,"n":"Swims"},{"t":4,"n":"Flies"},{"t":4,"n":"Walks"},{"t":4,"n":"Immobile"},{"t":4,"n":"Not Pushable"},{"t":4,"n":"No Combat In Water"},{"t":4,"n":"No Rotating to Head-Track"},{"t":4,"n":"Don't Show Blood Spray"},{"t":4,"n":"Don't Show Blood Decal"},{"t":4,"n":"Uses Head Track Anims"},{"t":4,"n":"Spells Align w\/Magic Node"},{"t":4,"n":"Use World Raycasts For FootIK"},{"t":4,"n":"Allow Ragdoll Collision"},{"t":4,"n":"Regen HP In Combat"},{"t":4,"n":"Can't Open Doors"},{"t":4,"n":"Allow PC Dialogue"},{"t":4,"n":"No Knockdowns"},{"t":4,"n":"Allow Pickpocket"},{"t":4,"n":"Always Use Proxy Controller"},{"t":4,"n":"Don't Show Weapon Blood"},{"t":4,"n":"Overlay Head Part List"},{"t":4,"n":"Override Head Part List"},{"t":4,"n":"Can Pickup Items"},{"t":4,"n":"Allow Multiple Membrane Shaders"},{"t":4,"n":"Can Dual Wield"},{"t":4,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","c":[{"t":4,"n":"Use Advanced Avoidance"},{"t":4,"n":"Non-Hostile"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"ATKD - Attacks","c":[{"t":6,"p":1,"n":"ATKD - Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"NAM1 - Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"MNAM - Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"INDX - Parts","d":1,"c":[{"t":6,"p":1,"n":"INDX - Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"FNAM - Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"INDX - Parts","d":1,"c":[{"t":6,"p":1,"n":"INDX - Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"MNAM - Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"p":1,"n":"NAME - Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"MTYP - Movement Types","c":[{"t":6,"n":"MTYP - Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags","c":[{"t":4,"n":"Hand To Hand Melee"},{"t":4,"n":"One Hand Sword"},{"t":4,"n":"One Hand Dagger"},{"t":4,"n":"One Hand Axe"},{"t":4,"n":"One Hand Mace"},{"t":4,"n":"Two Hand Sword"},{"t":4,"n":"Two Hand Axe"},{"t":4,"n":"Bow"},{"t":4,"n":"Staff"},{"t":4,"n":"Spell"},{"t":4,"n":"Shield"},{"t":4,"n":"Torch"},{"t":4,"n":"Crossbow"}]},{"t":8,"p":1,"n":"QNAM - Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"PHTN - Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"PHWT - FaceFX Phonemes","c":[{"t":6,"n":"PHWT - IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"NAM0 - Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"s":1,"p":1,"n":"MNAM - Male Head Data","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":10,"p":1,"n":"INDX - Head Parts","c":[{"t":6,"p":1,"n":"INDX - Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"MPAI - Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"RPRM - Race Presets Male","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"AHCM - Available Hair Colors Male","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"FTSM - Face Details Texture Set List Male","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"TINI - Tint Masks","c":[{"t":6,"p":1,"n":"TINI - Tint Assets","c":[{"t":8,"p":1,"n":"TINI - Tint Layer","c":[{"t":6,"p":1,"n":"TINI - Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"TINC - Presets","c":[{"t":6,"p":1,"n":"TINC - Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Female Head Data","c":[{"p":1,"n":"NAM0 - Head Data Marker"},{"p":1,"n":"FNAM - Female Data Marker"},{"t":10,"p":1,"n":"INDX - Head Parts","c":[{"t":6,"p":1,"n":"INDX - Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"MPAI - Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"RPRF - Race Presets Female","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"AHCF - Available Hair Colors Female","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"FTSF - Face Details Texture Set List Female","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"TINI - Tint Masks","c":[{"t":6,"p":1,"n":"TINI - Tint Assets","c":[{"t":8,"p":1,"n":"TINI - Tint Layer","c":[{"t":6,"p":1,"n":"TINI - Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"TINC - Presets","c":[{"t":6,"p":1,"n":"TINC - Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"XRMR - Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"XLRM - Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLTW - Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"XPRD - Patrol","d":1,"c":[{"t":6,"p":1,"n":"XPRD - Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"XMRK - Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"RPLI - Region Areas","d":1,"c":[{"t":6,"p":1,"n":"RPLI - Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"RDAT - Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"HNAM - Phases","d":1,"c":[{"t":6,"p":1,"n":"HNAM - Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"CTDA - Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"CTDA - Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"ALID - Actors","d":1,"c":[{"t":6,"p":1,"n":"ALID - Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"ANAM - Actions","d":1,"c":[{"t":6,"p":1,"n":"ANAM - Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"PNAM - Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"ONAM - Parts","d":1,"c":[{"t":6,"p":1,"n":"ONAM - Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"SNAM - Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"NNAM - Quests","d":1,"c":[{"t":6,"p":1,"n":"NNAM - Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"ANAM - Sounds","d":1,"c":[{"t":6,"p":1,"n":"ANAM - Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"TX00 - Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"NNAM - Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MOD3 - Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"RNAM - Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"WNAM - Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"MODL - Cloud Model","c":[{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"RNAM - Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"SNAM - Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"TNAM - Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"MODL - Aurora","c":[{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]}]},"name":"Smash.All","hash":"F5F888FA","color":128} \ No newline at end of file From e5cb86c73185292bb45ea6bcd44dbfd6b4e11663 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 13 Dec 2020 18:44:05 -0500 Subject: [PATCH 29/76] Tweak new Smash.All --- frontend/settings/Skyrim/Smash.All.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/settings/Skyrim/Smash.All.json b/frontend/settings/Skyrim/Smash.All.json index 8290150..4ac6713 100755 --- a/frontend/settings/Skyrim/Smash.All.json +++ b/frontend/settings/Skyrim/Smash.All.json @@ -1 +1 @@ -{"records":"ACHR,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,PLYR,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,AACT","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 10\/04\/2020.","tree":{"records":[{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"XPRD - Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"MOD2 - Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MOD3 - Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MOD4 - Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MOD5 - Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"MODL - Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"MOD2 - Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"MOD4 - Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICO2 - Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"MODL - Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"PNAM - Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"PNAM - Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"CNAM - Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"BPTN - Body Parts","d":1,"c":[{"t":6,"p":1,"n":"BPTN - Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"SNAM - Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"DATA - Models","d":1,"c":[{"t":6,"p":1,"n":"DATA - Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"BNAM - Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"TNAM - Unknown TNAM","c":[{"t":6,"n":"TNAM - Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"XNAM - Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"RNAM - Ranks","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"LNAM - FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"ENAM - Markers","d":1,"c":[{"t":6,"p":1,"n":"ENAM - Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"FNPR - Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"HNAM - Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"NAM0 - Parts","d":1,"c":[{"t":6,"p":1,"n":"NAM0 - Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"CTDA - Conditions","c":[{"t":6,"n":"CTDA - Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"aIAD - HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"rIAD - Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"s":1,"p":1,"n":"TCLT - Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"TRDT - Responses","d":1,"c":[{"t":6,"p":1,"n":"TRDT - Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"SCHR - Unknown","c":[{"t":6,"n":"SCHR - Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"PNAM - Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"BTXT - Layers","d":1,"c":[{"t":6,"p":1,"n":"BTXT - Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"ATXT - Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"ACEC - Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"LCEC - Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"RCEC - Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"DNAM - Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"DNAM - Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"GNAM - Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"LVLO - Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"DNAM - Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"ITXT - Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"ITXT - Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"ESCE - Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"NVMI - Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"s":1,"p":1,"n":"SNAM - Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"SPLO - Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"ATKD - Attacks","d":1,"c":[{"t":6,"p":1,"n":"ATKD - Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"PRKR - Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","d":1,"c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"PKID - Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"p":1,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"PNAM - Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"CSDT - Sound Types","d":1,"c":[{"t":6,"p":1,"n":"CSDT - Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"CSDI - Sounds","c":[{"t":6,"p":1,"n":"CSDI - Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"TINI - Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"TINI - Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"s":1,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"IDLF - Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"ANAM - Package Data","c":[{"t":8,"p":1,"n":"ANAM - Data Input Values","c":[{"t":6,"p":1,"n":"ANAM - Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"UNAM - Data Inputs","c":[{"t":6,"p":1,"n":"UNAM - Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"ANAM - Procedure Tree","c":[{"t":8,"p":1,"n":"ANAM - Branches","c":[{"t":6,"p":1,"n":"ANAM - Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"PKC2 - Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"PFO2 - Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"PFOR - Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"UNAM - Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"UNAM - Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"POBA - OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"POEA - OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"POCA - OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"PRKE - Effects","d":1,"c":[{"t":6,"p":1,"n":"PRKE - Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"PRKC - Perk Conditions","c":[{"t":6,"p":1,"n":"PRKC - Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"EPFT - Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PLYR - Player Reference","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"QTGL - Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"CTDA - Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"INDX - Stages","d":1,"c":[{"t":6,"p":1,"n":"INDX - Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"QSDT - Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"QOBJ - Objectives","d":1,"c":[{"t":6,"p":1,"n":"QOBJ - Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"QSTA - Targets","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unused"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"s":1,"p":1,"n":"ALST - Aliases","d":1,"c":[{"t":6,"p":1,"n":"ALST - Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"ALFA - Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"ALEQ - External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"ALCO - Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"ALNA - Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"ALFE - Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"ALSP - Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"ALPC - Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"p":1,"n":"ALLS - Alias","c":[{"t":3,"p":1,"n":"ALLS - Location Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"ALFA - Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"ALEQ - External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"ALCO - Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"ALNA - Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"ALFE - Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"CNTO - Items","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"ALSP - Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"ALPC - Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"QSTA - Targets","d":1,"c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"SPLO - Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":7,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Playable"},{"t":4,"n":"FaceGen Head"},{"t":4,"n":"Child"},{"t":4,"n":"Tilt Front\/Back"},{"t":4,"n":"Tilt Left\/Right"},{"t":4,"n":"No Shadow"},{"t":4,"n":"Swims"},{"t":4,"n":"Flies"},{"t":4,"n":"Walks"},{"t":4,"n":"Immobile"},{"t":4,"n":"Not Pushable"},{"t":4,"n":"No Combat In Water"},{"t":4,"n":"No Rotating to Head-Track"},{"t":4,"n":"Don't Show Blood Spray"},{"t":4,"n":"Don't Show Blood Decal"},{"t":4,"n":"Uses Head Track Anims"},{"t":4,"n":"Spells Align w\/Magic Node"},{"t":4,"n":"Use World Raycasts For FootIK"},{"t":4,"n":"Allow Ragdoll Collision"},{"t":4,"n":"Regen HP In Combat"},{"t":4,"n":"Can't Open Doors"},{"t":4,"n":"Allow PC Dialogue"},{"t":4,"n":"No Knockdowns"},{"t":4,"n":"Allow Pickpocket"},{"t":4,"n":"Always Use Proxy Controller"},{"t":4,"n":"Don't Show Weapon Blood"},{"t":4,"n":"Overlay Head Part List"},{"t":4,"n":"Override Head Part List"},{"t":4,"n":"Can Pickup Items"},{"t":4,"n":"Allow Multiple Membrane Shaders"},{"t":4,"n":"Can Dual Wield"},{"t":4,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","c":[{"t":4,"n":"Use Advanced Avoidance"},{"t":4,"n":"Non-Hostile"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"ATKD - Attacks","c":[{"t":6,"p":1,"n":"ATKD - Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"NAM1 - Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"MNAM - Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"INDX - Parts","d":1,"c":[{"t":6,"p":1,"n":"INDX - Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"FNAM - Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"INDX - Parts","d":1,"c":[{"t":6,"p":1,"n":"INDX - Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"MNAM - Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"p":1,"n":"NAME - Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"MTYP - Movement Types","c":[{"t":6,"n":"MTYP - Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags","c":[{"t":4,"n":"Hand To Hand Melee"},{"t":4,"n":"One Hand Sword"},{"t":4,"n":"One Hand Dagger"},{"t":4,"n":"One Hand Axe"},{"t":4,"n":"One Hand Mace"},{"t":4,"n":"Two Hand Sword"},{"t":4,"n":"Two Hand Axe"},{"t":4,"n":"Bow"},{"t":4,"n":"Staff"},{"t":4,"n":"Spell"},{"t":4,"n":"Shield"},{"t":4,"n":"Torch"},{"t":4,"n":"Crossbow"}]},{"t":8,"p":1,"n":"QNAM - Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"PHTN - Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"PHWT - FaceFX Phonemes","c":[{"t":6,"n":"PHWT - IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"PHWT - FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"NAM0 - Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"s":1,"p":1,"n":"MNAM - Male Head Data","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":10,"p":1,"n":"INDX - Head Parts","c":[{"t":6,"p":1,"n":"INDX - Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"MPAI - Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"RPRM - Race Presets Male","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"AHCM - Available Hair Colors Male","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"FTSM - Face Details Texture Set List Male","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"TINI - Tint Masks","c":[{"t":6,"p":1,"n":"TINI - Tint Assets","c":[{"t":8,"p":1,"n":"TINI - Tint Layer","c":[{"t":6,"p":1,"n":"TINI - Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"TINC - Presets","c":[{"t":6,"p":1,"n":"TINC - Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Female Head Data","c":[{"p":1,"n":"NAM0 - Head Data Marker"},{"p":1,"n":"FNAM - Female Data Marker"},{"t":10,"p":1,"n":"INDX - Head Parts","c":[{"t":6,"p":1,"n":"INDX - Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"MPAI - Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"RPRF - Race Presets Female","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"AHCF - Available Hair Colors Female","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"FTSF - Face Details Texture Set List Female","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"TINI - Tint Masks","c":[{"t":6,"p":1,"n":"TINI - Tint Assets","c":[{"t":8,"p":1,"n":"TINI - Tint Layer","c":[{"t":6,"p":1,"n":"TINI - Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"TINC - Presets","c":[{"t":6,"p":1,"n":"TINC - Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"XRMR - Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"XLRM - Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"XPWR - Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"XLTW - Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"XAPD - Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"XAPR - Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"XOWN - Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"XLKR - Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"XPRD - Patrol","d":1,"c":[{"t":6,"p":1,"n":"XPRD - Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"PDTO - Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"XMRK - Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"RPLI - Region Areas","d":1,"c":[{"t":6,"p":1,"n":"RPLI - Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"RDAT - Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"HNAM - Phases","d":1,"c":[{"t":6,"p":1,"n":"HNAM - Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"CTDA - Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"CTDA - Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"ALID - Actors","d":1,"c":[{"t":6,"p":1,"n":"ALID - Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"ANAM - Actions","d":1,"c":[{"t":6,"p":1,"n":"ANAM - Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"PNAM - Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"SCHR - Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"ONAM - Parts","d":1,"c":[{"t":6,"p":1,"n":"ONAM - Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"SNAM - Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"NNAM - Quests","d":1,"c":[{"t":6,"p":1,"n":"NNAM - Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"ANAM - Sounds","d":1,"c":[{"t":6,"p":1,"n":"ANAM - Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","d":1,"c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"EFID - Effects","d":1,"c":[{"t":6,"p":1,"n":"EFID - Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"CTDA - Conditions","c":[{"t":6,"p":1,"n":"CTDA - Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"TX00 - Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"NNAM - Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"ICON - Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"DEST - Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"DSTD - Stages","c":[{"t":6,"p":1,"n":"DSTD - Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"DMDL - Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"MOD3 - Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"RNAM - Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"WNAM - Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"MODL - Cloud Model","c":[{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"RNAM - Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"SNAM - Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"TNAM - Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"MODL - Aurora","c":[{"t":6,"p":1,"n":"MODL - Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]}]},"name":"Smash.All","hash":"F5F888FA","color":128} \ No newline at end of file +{"records":"ACHR,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,Play,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,AACT","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 12\/13\/2020.","tree":{"records":[{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"s":1,"p":1,"n":"Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"s":1,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"p":1,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"Sound Types","d":1,"c":[{"t":6,"p":1,"n":"Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"s":1,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"Player Reference","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"Stages","d":1,"c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unused"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"s":1,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALLS - Location Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"Targets","d":1,"c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":7,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Playable"},{"t":4,"n":"FaceGen Head"},{"t":4,"n":"Child"},{"t":4,"n":"Tilt Front\/Back"},{"t":4,"n":"Tilt Left\/Right"},{"t":4,"n":"No Shadow"},{"t":4,"n":"Swims"},{"t":4,"n":"Flies"},{"t":4,"n":"Walks"},{"t":4,"n":"Immobile"},{"t":4,"n":"Not Pushable"},{"t":4,"n":"No Combat In Water"},{"t":4,"n":"No Rotating to Head-Track"},{"t":4,"n":"Don't Show Blood Spray"},{"t":4,"n":"Don't Show Blood Decal"},{"t":4,"n":"Uses Head Track Anims"},{"t":4,"n":"Spells Align w\/Magic Node"},{"t":4,"n":"Use World Raycasts For FootIK"},{"t":4,"n":"Allow Ragdoll Collision"},{"t":4,"n":"Regen HP In Combat"},{"t":4,"n":"Can't Open Doors"},{"t":4,"n":"Allow PC Dialogue"},{"t":4,"n":"No Knockdowns"},{"t":4,"n":"Allow Pickpocket"},{"t":4,"n":"Always Use Proxy Controller"},{"t":4,"n":"Don't Show Weapon Blood"},{"t":4,"n":"Overlay Head Part List"},{"t":4,"n":"Override Head Part List"},{"t":4,"n":"Can Pickup Items"},{"t":4,"n":"Allow Multiple Membrane Shaders"},{"t":4,"n":"Can Dual Wield"},{"t":4,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","c":[{"t":4,"n":"Use Advanced Avoidance"},{"t":4,"n":"Non-Hostile"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"p":1,"n":"Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags","c":[{"t":4,"n":"Hand To Hand Melee"},{"t":4,"n":"One Hand Sword"},{"t":4,"n":"One Hand Dagger"},{"t":4,"n":"One Hand Axe"},{"t":4,"n":"One Hand Mace"},{"t":4,"n":"Two Hand Sword"},{"t":4,"n":"Two Hand Axe"},{"t":4,"n":"Bow"},{"t":4,"n":"Staff"},{"t":4,"n":"Spell"},{"t":4,"n":"Shield"},{"t":4,"n":"Torch"},{"t":4,"n":"Crossbow"}]},{"t":8,"p":1,"n":"Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"s":1,"p":1,"n":"Male Head Data","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":10,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Race Presets Male","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"Available Hair Colors Male","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"Face Details Texture Set List Male","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Head Data","c":[{"p":1,"n":"NAM0 - Head Data Marker"},{"p":1,"n":"FNAM - Female Data Marker"},{"t":10,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Race Presets Female","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"Available Hair Colors Female","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"Face Details Texture Set List Female","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]}]},"name":"Smash.All","hash":"AEDCBDD2","color":128} \ No newline at end of file From 33bbaed44f2b5241f8f4721d31a3ce4f00a77d21 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Thu, 7 Jan 2021 18:50:35 -0500 Subject: [PATCH 30/76] Attempt at updating Smash.All for FO4 --- frontend/settings/Fallout4/Smash.All.json | 2 +- frontend/settings/Fallout4/Smash.All.old.json | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) mode change 100644 => 100755 frontend/settings/Fallout4/Smash.All.json create mode 100644 frontend/settings/Fallout4/Smash.All.old.json diff --git a/frontend/settings/Fallout4/Smash.All.json b/frontend/settings/Fallout4/Smash.All.json old mode 100644 new mode 100755 index b03f935..01c7c2f --- a/frontend/settings/Fallout4/Smash.All.json +++ b/frontend/settings/Fallout4/Smash.All.json @@ -1 +1 @@ -{"records":"ACHR,ACTI,ADDN,AECH,ALCH,AMDL,AMMO,ANIO,AORU,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BNDS,BOOK,BPTD,CAMS,CELL,CLAS,CLFM,CLMT,CMPO,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DFOB,DIAL,DLBR,DLVW,DMGT,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,FACT,FLOR,FLST,FSTP,FSTS,FURN,GDRY,GLOB,GMST,GRAS,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,INNR,IPCT,IPDS,KEYM,KSSM,KYWD,LAND,LAYR,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MSWP,MUSC,MUST,NOTE,NPC_,OMOD,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,PKIN,PMIS,PROJ,QUST,REFR,REGN,RELA,REVB,RFCT,RFGP,SCCO,SCEN,SCOL,SCSN,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAG,STAT,TACT,TERM,TREE,TRNS,TXST,VTYP,WATR,WEAP,WRLD,WTHR,ZOOM,AACT","description":"Smashes all the things. Produced using autoset attributes on all record types found in Fallout4.esm.\r\n\r\nLast updated 05\/01\/2018.","tree":{"records":[{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":3,"p":1,"n":"XHLT - Health %"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":8,"s":1,"p":1,"n":"Spline Connection","d":1,"c":[{"t":6,"p":1,"n":"XPLK - Link","c":[{"t":3,"p":1,"n":"Ref"},{"t":11,"n":"Unknown"}]}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":3,"p":1,"n":"STCP - Sound"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"ATTX - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":6,"s":1,"p":1,"n":"RADR - Radio Receiver","c":[{"t":3,"p":1,"n":"Sound Model"},{"t":5,"p":1,"n":"Frequency"},{"t":5,"p":1,"n":"Volume"},{"t":3,"p":1,"n":"Starts Active"},{"t":3,"p":1,"n":"No Signal Static"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"NVNM - Navmesh Geometry","c":[{"t":3,"p":1,"n":"Version"},{"t":11,"p":1,"n":"Magic"},{"t":3,"p":1,"n":"Parent Worldspace"},{"t":6,"p":1,"n":"Coordinates","c":[{"t":3,"p":1,"n":"Grid Y"},{"t":3,"p":1,"n":"Grid X"}]},{"t":3,"p":1,"n":"Parent Cell"},{"t":11,"p":1,"n":"Vertices and Triangles"}]}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":3,"p":1,"n":"LNAM - Light"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"AECH - Audio Effect Chain","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"KNAM - Type"},{"t":6,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Enabled"},{"t":5,"p":1,"n":"Input Gain"},{"t":5,"p":1,"n":"Center Freq"},{"t":5,"p":1,"n":"Feedback %"},{"t":5,"p":1,"n":"Output Gain"},{"t":5,"p":1,"n":"Q Value"},{"t":5,"p":1,"n":"Wet Mix %"},{"t":5,"p":1,"n":"Upper Threshold"},{"t":3,"p":1,"n":"Filter Mode"},{"t":3,"p":1,"n":"Delay MS"},{"t":5,"p":1,"n":"Lower Threshold"},{"t":11,"n":"Unused"}]}]}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"CUSD - Sound - Crafting"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":2,"p":1,"n":"DNAM - Addiction Name"},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMDL - Aim Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":5,"p":1,"n":"Cone of Fire - Min Angle"},{"t":5,"p":1,"n":"Cone of Fire - Max Angle"},{"t":5,"p":1,"n":"Cone of Fire - Increase Per Shot"},{"t":5,"p":1,"n":"Cone of Fire - Decrease Per Sec"},{"t":3,"p":1,"n":"Cone of Fire - Decrease Delay MS"},{"t":5,"p":1,"n":"Cone of Fire - Sneak Mult"},{"t":5,"p":1,"n":"Recoil - Diminish Spring Force"},{"t":5,"p":1,"n":"Recoil - Diminish Sights Mult"},{"t":5,"p":1,"n":"Recoil - Max Per Shot"},{"t":5,"p":1,"n":"Recoil - Min Per Shot"},{"t":5,"p":1,"n":"Recoil - Hip Mult"},{"t":3,"p":1,"n":"Runaway - Recoil Shots"},{"t":5,"p":1,"n":"Recoil - Arc"},{"t":5,"p":1,"n":"Recoil - Arc Rotate"},{"t":5,"p":1,"n":"Cone of Fire - Iron Sights Mult"},{"t":5,"p":1,"n":"Stability - Base Stability"}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"DNAM - ","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Health"}]},{"t":2,"p":1,"n":"ONAM - Short Name"},{"t":2,"p":1,"n":"NAM1 - Casing Model"},{"t":11,"n":"NAM2 - Texture Files Hashes"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"AORU - Attraction Rule","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"AOR2 - Data","c":[{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Delay"},{"t":5,"p":1,"n":"Max Delay"},{"t":3,"p":1,"n":"Requires Line of Sight"},{"t":3,"p":1,"n":"Combat Target"},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"}]},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male"},{"t":3,"p":1,"n":"Weight slider - Female"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model Filename"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO2S - Material Swap"},{"t":5,"p":1,"n":"MO2C - Color Remapping Index"},{"t":11,"n":"MO2F - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model Filename"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO3S - Material Swap"},{"t":5,"p":1,"n":"MO3C - Color Remapping Index"},{"t":11,"n":"MO3F - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO4S - Material Swap"},{"t":5,"p":1,"n":"MO4C - Color Remapping Index"},{"t":11,"n":"MO4F - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model Filename"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO5S - Material Swap"},{"t":5,"p":1,"n":"MO5C - Color Remapping Index"},{"t":11,"n":"MO5F - Unknown"}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin Texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"},{"t":8,"s":1,"p":1,"n":"Bone Data","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":3,"p":1,"n":"BSMP - Gender"},{"t":8,"p":1,"n":"Bones","c":[{"t":6,"p":1,"n":"Bone","c":[{"t":2,"p":1,"n":"BSMB - Name"},{"t":7,"p":1,"n":"BSMS - Values","c":[{"t":5,"p":1,"n":"Value"}]},{"t":11,"n":"BMMP - Unknown"}]}]}]}]}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model Filename"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO2S - Material Swap"}]},{"t":2,"p":1,"n":"ICON - Male Inventory Image"},{"t":2,"p":1,"n":"MICO - Male Message Icon"},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO4S - Material Swap"}]},{"t":2,"p":1,"n":"ICO2 - Female Inventory Image"},{"t":2,"p":1,"n":"MIC2 - Female Message Icon"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"INRD - Instance Naming"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":3,"p":1,"n":"INDX - Addon Index"},{"t":3,"p":1,"n":"MODL - Armor Addon"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Health"}]},{"t":6,"s":1,"p":1,"n":"FNAM - ","c":[{"t":3,"p":1,"n":"Armor Rating"},{"t":3,"p":1,"n":"Base Addon Index"},{"t":3,"p":1,"n":"Stagger Rating"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMA - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"TNAM - Template Armor"},{"t":7,"p":1,"n":"APPR - Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Object Template","c":[{"t":3,"p":1,"n":"OBTE - Count"},{"t":8,"p":1,"n":"Combinations","c":[{"t":6,"p":1,"n":"Combination","c":[{"p":1,"n":"OBTF - Editor Only"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"OBTS - Object Mod Template Item","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":3,"p":1,"n":"Level Min"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Level Max"},{"t":3,"p":1,"n":"ID"},{"t":3,"p":1,"n":"Default"},{"t":7,"p":1,"n":"Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"Min Level For Ranks"},{"t":3,"p":1,"n":"Alt Levels Per Tier"},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Attach Point Index"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]}]}]},{"p":1,"n":"STOP - Marker"}]}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type"},{"t":3,"p":1,"n":"XTRI - Is Interior"},{"t":3,"p":1,"n":"WNAM - Weather Attenuation (dB)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags"}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":5,"p":1,"n":"NAM0 - Default Value"},{"t":3,"p":1,"n":"AVFL - Flags"},{"t":3,"p":1,"n":"NAM1 - Type"}]},{"t":1,"p":1,"n":"BNDS - Bendable Spline","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":5,"p":1,"n":"Default Number of Tiles"},{"t":3,"p":1,"n":"Default Number of Slices"},{"t":3,"p":1,"n":"Default Number of Tiles - Relative to Length"},{"t":6,"p":1,"n":"Default Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Wind Settings - Sensibility"},{"t":5,"p":1,"n":"Wind Settings - Flexibility"}]},{"t":3,"p":1,"n":"TNAM - Texture"}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"FIMD - Featured Item Message"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"DNAM - ","c":[{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Perk"},{"t":6,"p":1,"n":"Text Offset","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":2,"p":1,"n":"CNAM - Description"},{"t":3,"p":1,"n":"INAM - Inventory Art"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":6,"p":1,"n":"BPND - ","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":5,"p":1,"n":"Cut - Min"},{"t":5,"p":1,"n":"Cut - Max"},{"t":5,"p":1,"n":"Cut - Radius"},{"t":5,"p":1,"n":"Gore Effects - Local Rotate X"},{"t":5,"p":1,"n":"Gore Effects - Local Rotate Y"},{"t":5,"p":1,"n":"Cut - Tesselation"},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":5,"p":1,"n":"Explodable - Limb Replacement Scale"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Non-Lethal Dismemberment Chance"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":3,"p":1,"n":"Geometry Segment Index"},{"t":3,"p":1,"n":"On Cripple - Art Object"},{"t":3,"p":1,"n":"On Cripple - Debris"},{"t":3,"p":1,"n":"On Cripple - Explosion"},{"t":3,"p":1,"n":"On Cripple - Impact DataSet"},{"t":5,"p":1,"n":"On Cripple - Debris Scale"},{"t":3,"p":1,"n":"On Cripple - Debris Count"},{"t":3,"p":1,"n":"On Cripple - Decal Count"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"},{"t":2,"p":1,"n":"ENAM - Hit Reaction - Start"},{"t":2,"p":1,"n":"FNAM - Hit Reaction - End"},{"t":3,"p":1,"n":"BNAM - Gore Effects - Dismember Blood Art"},{"t":3,"p":1,"n":"INAM - Gore Effects - Blood Impact Material Type"},{"t":3,"p":1,"n":"JNAM - On Cripple - Blood Impact Material Type"},{"t":3,"p":1,"n":"CNAM - Meat Cap TextureSet"},{"t":3,"p":1,"n":"NAM2 - Collar TextureSet"},{"t":2,"p":1,"n":"DNAM - Twist Variable Prefix"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"},{"t":5,"p":1,"n":"Location Spring"},{"t":5,"p":1,"n":"Target Spring"},{"t":6,"p":1,"n":"Rotation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags"},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land"}]},{"t":11,"n":"VISI - PreVis Files Timestamp"},{"t":3,"p":1,"n":"RVIS - In PreVis File Of"},{"t":11,"n":"PCMB - PreCombined Files Timestamp"},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits"},{"t":5,"p":1,"n":"Near Height Mid"},{"t":5,"p":1,"n":"Near Height Range"},{"t":6,"p":1,"n":"Fog Color High Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color High Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"High Density Scale"},{"t":5,"p":1,"n":"Fog Near Scale"},{"t":5,"p":1,"n":"Fog Far Scale"},{"t":5,"p":1,"n":"Fog High Near Scale"},{"t":5,"p":1,"n":"Fog High Far Scale"},{"t":5,"p":1,"n":"Far Height Mid"},{"t":5,"p":1,"n":"Far Height Range"}]},{"t":3,"p":1,"n":"CNAM - Precombined Object Level XY"},{"t":3,"p":1,"n":"ZNAM - Precombined Object Level Z"},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":6,"s":1,"p":1,"n":"XILW - Exterior LOD","c":[{"t":3,"p":1,"n":"Worldspace"},{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Offset Z"}]},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"},{"t":3,"p":1,"n":"XGDR - God Rays"},{"t":7,"p":1,"n":"XPRI - Physics References","c":[{"t":3,"p":1,"n":"Reference"}]},{"t":6,"s":1,"p":1,"n":"XCRI - Combined References","c":[{"t":3,"p":1,"n":"Meshes Count"},{"t":3,"p":1,"n":"References Count"},{"t":7,"p":1,"n":"Meshes","c":[{"t":3,"p":1,"n":"Combined Mesh"}]},{"t":7,"p":1,"n":"References","c":[{"t":6,"p":1,"n":"Reference","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Combined Mesh"}]}]}]}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Bleedout Default"}]}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"CNAM - Color\/Index"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"CMPO - Component","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"CUSD - Sound - Crafting"},{"t":3,"p":1,"n":"DATA - Auto Calc Value"},{"t":3,"p":1,"n":"MNAM - Scrap Item"},{"t":3,"p":1,"n":"GNAM - Mod Scrap Scalar"}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":7,"p":1,"n":"FVPA - Components","c":[{"t":6,"p":1,"n":"Component","c":[{"t":3,"p":1,"n":"Component"},{"t":3,"p":1,"n":"Count"}]}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":11,"n":"NAM1 - Unused"},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":3,"p":1,"n":"ANAM - Menu Art Object"},{"t":7,"p":1,"n":"FNAM - Category","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"INTV - Data","c":[{"t":3,"p":1,"n":"Created Object Count"},{"t":3,"p":1,"n":"Priority"}]}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"},{"t":3,"p":1,"n":"TNAM - Sound - Take All"},{"t":3,"p":1,"n":"ONAM - Filter List"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Related Camera Path"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom \/ Flags"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"},{"t":5,"p":1,"n":"Dodge Threat Chance"},{"t":5,"p":1,"n":"Evade Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"},{"t":5,"p":1,"n":"Block When Staggered Mult"},{"t":5,"p":1,"n":"Attack When Staggered Mult"}]},{"t":5,"p":1,"n":"CSRA - Ranged Accuracy Mult"},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Dueling - Circle Mult"},{"t":5,"p":1,"n":"Dueling - Fallback Mult"},{"t":5,"p":1,"n":"Flanking - Flank Distance"},{"t":5,"p":1,"n":"Flanking - Stalk Time"},{"t":5,"p":1,"n":"Charging - Charge Distance"},{"t":5,"p":1,"n":"Charging - Throw Probability"},{"t":5,"p":1,"n":"Charging - Sprint Fast Probability"},{"t":5,"p":1,"n":"Charging - Sideswipe Probability"},{"t":5,"p":1,"n":"Charging - Disengane Probability"},{"t":3,"p":1,"n":"Charging - Throw Max Targets"},{"t":5,"p":1,"n":"Flanking - Flank Variance"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"},{"t":5,"p":1,"n":"Adjust Range Mult"},{"t":5,"p":1,"n":"Crouch Mult"},{"t":5,"p":1,"n":"Wait Mult"},{"t":5,"p":1,"n":"Range Mult"}]},{"t":5,"p":1,"n":"CSCV - Cover Search Distance Mult"},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags"}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model Filename"},{"t":3,"p":1,"n":"Flags"}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DFOB - Default Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Object"}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags"},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"p":1,"n":"DMGT - Damage Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"Damage Types","c":[{"t":3,"p":1,"n":"Actor Value Index"}]}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":2,"p":1,"n":"ONAM - Alternate Text - Open"},{"t":2,"p":1,"n":"CNAM - Alternate Text - Close"}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"Data","c":[{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Holes Animation - Start Time"},{"t":5,"p":1,"n":"Holes Animation - End Time"},{"t":5,"p":1,"n":"Holes Animation - Start Value"},{"t":5,"p":1,"n":"Holes Animation - End Value"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"n":"Unknown"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"}]},{"t":6,"s":1,"p":1,"n":"Data (old format)","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Parent"}]},{"t":3,"p":1,"n":"DATA - Flags"},{"t":3,"p":1,"n":"ANAM - Condition Actor Value"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Inner Radius"},{"t":5,"p":1,"n":"Outer Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Sound Level"},{"t":5,"p":1,"n":"Placed Object AutoFade Delay"},{"t":3,"p":1,"n":"Stagger"},{"t":6,"p":1,"n":"Spawn","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"},{"t":5,"p":1,"n":"Spread Degrees"},{"t":3,"p":1,"n":"Count"}]}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf (unused)"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"p":1,"n":"INAM - Insignia (unused)"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Buys Stolen Items"},{"t":3,"p":1,"n":"Buy\/Sell Everything Not In List?"},{"t":3,"p":1,"n":"Buys NonStolen Items"},{"t":3,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Ref Alias"},{"t":3,"p":1,"n":"Loc Alias"},{"t":3,"p":1,"n":"Interrupt Data"},{"t":3,"p":1,"n":"Packdata Target"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Ref Collection Alias"},{"t":3,"p":1,"n":"Radius"},{"t":3,"p":1,"n":"Collection Index"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"ATTX - Activate Text Override"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"n":"XCNT - Count","c":[{"t":3,"n":"Walking"},{"t":3,"n":"Running"},{"t":3,"n":"Sprinting"},{"t":3,"n":"Sneaking"},{"t":3,"n":"Swimming"}]},{"t":7,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"WNAM - Drinking Water Type"},{"t":2,"p":1,"n":"ATTX - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags"},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Form"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points"}]}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points"}]}]},{"t":2,"p":1,"n":"XMRK - Marker Model"},{"t":7,"p":1,"n":"SNAM - Marker Paramaters","c":[{"t":6,"p":1,"n":"Marker","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Offset Z"},{"t":5,"p":1,"n":"Rotation Z"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Entry Types"},{"t":11,"n":"Unknown"}]}]},{"t":6,"s":1,"p":1,"n":"NVNM - Navmesh Geometry","c":[{"t":3,"p":1,"n":"Version"},{"t":11,"p":1,"n":"Magic"},{"t":3,"p":1,"n":"Parent Worldspace"},{"t":6,"p":1,"n":"Coordinates","c":[{"t":3,"p":1,"n":"Grid Y"},{"t":3,"p":1,"n":"Grid X"}]},{"t":3,"p":1,"n":"Parent Cell"},{"t":11,"p":1,"n":"Vertices and Triangles"}]},{"t":7,"p":1,"n":"APPR - Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Object Template","c":[{"t":3,"p":1,"n":"OBTE - Count"},{"t":8,"p":1,"n":"Combinations","c":[{"t":6,"p":1,"n":"Combination","c":[{"p":1,"n":"OBTF - Editor Only"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"OBTS - Object Mod Template Item","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":3,"p":1,"n":"Level Min"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Level Max"},{"t":3,"p":1,"n":"ID"},{"t":3,"p":1,"n":"Default"},{"t":7,"p":1,"n":"Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"Min Level For Ranks"},{"t":3,"p":1,"n":"Alt Levels Per Tier"},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Attach Point Index"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]}]}]},{"p":1,"n":"STOP - Marker"}]}]},{"t":1,"p":1,"n":"GDRY - God Rays","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":6,"p":1,"n":"Back Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":6,"p":1,"n":"Fwd Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Intensity"},{"t":5,"p":1,"n":"Air Color - Scale"},{"t":5,"p":1,"n":"Back Color - Scale"},{"t":5,"p":1,"n":"Fwd Color - Scale"},{"t":5,"p":1,"n":"Back Phase"},{"t":6,"p":1,"n":"Air Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Fwd Phase"}]}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Effect"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"},{"t":6,"p":1,"n":"Taper Effectiveness","c":[{"t":5,"p":1,"n":"Full Effect Radius"},{"t":5,"p":1,"n":"Taper Weight"},{"t":5,"p":1,"n":"Taper Curse"}]}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"DATA - Flags"},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - Filename"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":8,"n":"Conditions","d":1,"c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Actor"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Player Action"},{"t":3,"n":"Alias"},{"t":3,"n":"Alignment"},{"t":3,"n":"Association Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Faction"},{"t":3,"n":"Form List"},{"t":3,"n":"Form Type"},{"t":3,"n":"Furniture"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Global"},{"t":3,"n":"Idle"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Keyword"},{"t":3,"n":"Location"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Owner"},{"t":3,"n":"Package"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Perk"},{"t":3,"n":"Quest"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Race"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Region"},{"t":3,"n":"Scene"},{"t":3,"n":"Sex"},{"t":3,"n":"Shout"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (unused)"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Ward State"},{"t":3,"n":"Weather"},{"t":3,"n":"Worldspace"},{"t":3,"n":"Damage Type"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - Behavior Graph"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Related Idle Animation"}]},{"t":6,"n":"DATA - ","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags"},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]},{"t":2,"n":"GNAM - Animation File"}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"IDLF - Flags"},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":3,"n":"QNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags"},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags"},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":6,"s":1,"p":1,"n":"Radial Blur","c":[{"t":7,"p":1,"n":"RNAM - Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SNAM - RampUp","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"UNAM - Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM1 - RampDown","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - DownStart","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":6,"s":1,"p":1,"n":"Depth of Field","c":[{"t":7,"p":1,"n":"WNAM - Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"XNAM - Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM5 - Vignette Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM6 - Vignette Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unused"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Tonemap E"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Auto Exposure Max"},{"t":5,"p":1,"n":"Auto Exposure Min"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Middle Gray"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"},{"t":5,"p":1,"n":"Vignette Radius"},{"t":5,"p":1,"n":"Vignette Strength"}]},{"t":2,"p":1,"n":"TX00 - LUT"}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"DNAM - Shared INFO"},{"t":3,"n":"GNAM - Unknown"},{"t":2,"p":1,"n":"IOVR - Override Filename"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDA - Response Data","c":[{"t":3,"p":1,"n":"Emotion"},{"t":3,"p":1,"n":"Response number"},{"t":11,"n":"Unused"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Percentage"},{"t":3,"p":1,"n":"Camera Target Alias"},{"t":3,"p":1,"n":"Camera Location Alias"}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":2,"p":1,"n":"NAM4 - Alternate LIP Text"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"},{"t":3,"p":1,"n":"TNAM - Interrupt Percentage"},{"t":11,"p":1,"n":"NAM9 - Text Hash"},{"t":3,"p":1,"n":"SRAF - Camera Path"},{"p":1,"n":"WZMD - Stop on Scene End"}]}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TSCE - Start Scene"},{"t":3,"p":1,"n":"ALFA - Forced Alias"},{"t":11,"n":"INTV - Unknown"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"},{"t":3,"p":1,"n":"GREE - Greet Distance"},{"t":6,"s":1,"p":1,"n":"TIQS - Set Parent Quest Stage","c":[{"t":3,"p":1,"n":"On Begin"},{"t":3,"p":1,"n":"On End"}]},{"t":2,"p":1,"n":"NAM0 - Start Scene Phase"},{"t":3,"p":1,"n":"INCC - Challenge"},{"t":3,"p":1,"n":"MODQ - Reset Global"},{"t":3,"p":1,"n":"INAM - Subtitle Priority"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"INNR - Instance Naming Rules","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"UNAM - Target"},{"t":8,"s":1,"p":1,"n":"Naming Rules","d":1,"c":[{"t":6,"p":1,"n":"Ruleset","c":[{"t":3,"p":1,"n":"VNAM - Count"},{"t":8,"p":1,"n":"Names","c":[{"t":6,"p":1,"n":"Name","c":[{"t":2,"p":1,"n":"WNAM - Text"},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"XNAM - Property","c":[{"t":5,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Op"}]},{"t":3,"p":1,"n":"YNAM - Index"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Alpha Threshold?"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM3 - Footstep Explosion"},{"t":3,"p":1,"n":"NAM2 - Hazard"},{"t":5,"p":1,"n":"FNAM - Footstep Particle Max Dist"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - ","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KSSM - Sound Keyword Mapping","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Primary Descriptor"},{"t":3,"p":1,"n":"ENAM - Exterior Tail"},{"t":3,"p":1,"n":"VNAM - VATS Descriptor"},{"t":5,"p":1,"n":"TNAM - VATS Threshold"},{"t":8,"s":1,"p":1,"n":"Keywords","d":1,"c":[{"t":3,"p":1,"n":"KNAM - Keyword"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Sound","c":[{"t":3,"p":1,"n":"Reverb Class"},{"t":3,"p":1,"n":"Descriptor"}]}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":2,"p":1,"n":"DNAM - Notes"},{"t":3,"p":1,"n":"TNAM - Type"},{"t":3,"p":1,"n":"DATA - Attraction Rule"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"NNAM - Display Name"}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"MPCD - Unknown"}]}]},{"t":1,"p":1,"n":"LAYR - Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent"}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":11,"n":"TNAM - Unknown"}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":5,"n":"ANAM - Unknown"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":10,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags"}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":5,"p":1,"n":"Near Height Mid"},{"t":5,"p":1,"n":"Near Height Range"},{"t":6,"p":1,"n":"Fog Color High Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color High Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"High Density Scale"},{"t":5,"p":1,"n":"Fog Near Scale"},{"t":5,"p":1,"n":"Fog Far Scale"},{"t":5,"p":1,"n":"Fog High Near Scale"},{"t":5,"p":1,"n":"Fog High Far Scale"},{"t":5,"p":1,"n":"Far Height Mid"},{"t":5,"p":1,"n":"Far Height Range"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"WGDR - God Rays"}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":5,"p":1,"n":"Constant"},{"t":5,"p":1,"n":"Scalar"},{"t":5,"p":1,"n":"Exponent"},{"t":5,"p":1,"n":"God Rays - Near Clip"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":2,"p":1,"n":"NAM0 - Gobo"},{"t":3,"p":1,"n":"LNAM - Lens"},{"t":3,"p":1,"n":"WGDR - God Rays"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":3,"p":1,"n":"TNAM - Transform"},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"ZNAM - Zoom","c":[{"t":5,"p":1,"n":"Min"},{"t":5,"p":1,"n":"Max"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLM - Max Count"},{"t":3,"p":1,"n":"LVLF - Flags"},{"t":3,"p":1,"n":"LVLG - Use Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"},{"t":3,"p":1,"n":"Chance None"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":7,"p":1,"n":"LLKC - Filter Keyword Chances","c":[{"t":6,"p":1,"n":"Filter","c":[{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Chance"}]}]},{"t":3,"p":1,"n":"LVSG - Epic Loot Chance"},{"t":2,"p":1,"n":"ONAM - Override Name"}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLM - Max Count"},{"t":3,"p":1,"n":"LVLF - Flags"},{"t":3,"p":1,"n":"LVLG - Use Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"},{"t":3,"p":1,"n":"Chance None"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":7,"p":1,"n":"LLKC - Filter Keyword Chances","c":[{"t":6,"p":1,"n":"Filter","c":[{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Chance"}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Breakable FX"},{"t":11,"n":"MODT - Texture Files Hashes"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":2,"p":1,"n":"SNAM - SWF"},{"t":2,"p":1,"n":"NNAM - Short Title"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":11,"p":1,"n":"Magic Skill (unused)"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archetype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"FIMD - Featured Item Message"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":7,"p":1,"n":"CVPA - Components","c":[{"t":6,"p":1,"n":"Component","c":[{"t":3,"p":1,"n":"Component"},{"t":3,"p":1,"n":"Count"}]}]},{"t":7,"p":1,"n":"CDIX - Component Display Indices","c":[{"t":3,"p":1,"n":"Display Index"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Movement Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Walk - Left"},{"t":5,"p":1,"n":"Run - Left"},{"t":5,"p":1,"n":"Walk - Right"},{"t":5,"p":1,"n":"Run - Right"},{"t":5,"p":1,"n":"Walk - Forward"},{"t":5,"p":1,"n":"Run - Forward"},{"t":5,"p":1,"n":"Sprint - Forward"},{"t":5,"p":1,"n":"Walk - Back"},{"t":5,"p":1,"n":"Run - Back"},{"t":5,"p":1,"n":"Standing - Pitch"},{"t":5,"p":1,"n":"Walk - Pitch"},{"t":5,"p":1,"n":"Run - Pitch"},{"t":5,"p":1,"n":"Sprint - Pitch"},{"t":5,"p":1,"n":"Standing - Yaw"},{"t":5,"p":1,"n":"Walk - Yaw"},{"t":5,"p":1,"n":"Run - Yaw"},{"t":5,"p":1,"n":"Sprint - Yaw"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds (unused)","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]},{"t":5,"p":1,"n":"JNAM - Float Height"},{"t":5,"p":1,"n":"LNAM - Flight - Angle Gain"}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"DATA - On Local Map"},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MSWP - Material Swap","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FNAM - Tree Folder"},{"t":10,"p":1,"n":"Material Substitutions","d":1,"c":[{"t":6,"p":1,"n":"Substitution","c":[{"t":2,"p":1,"n":"BNAM - Original Material"},{"t":2,"p":1,"n":"SNAM - Replacement Material"},{"t":2,"p":1,"n":"FNAM - Tree Folder (obsolete)"},{"t":5,"p":1,"n":"CNAM - Color Remapping Index"}]}]}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track Filename"},{"t":2,"p":1,"n":"BNAM - Finale Filename"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Data"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":11,"n":"Unknown"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":11,"n":"NVSI - Unknown"}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Navmesh Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":11,"n":"Vertices and Triangles"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"NNAM - Unknown"},{"t":11,"n":"MNAM - Unknown"}]},{"t":1,"n":"NOCM - Navigation Mesh Obstacle Manager","d":1,"c":[{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":3,"n":"INDX - Index"},{"t":8,"n":"Unknown","c":[{"t":11,"n":"DATA - Unknown"}]},{"t":11,"n":"INTV - Unknown"},{"t":2,"n":"NAM1 - Model"}]}]}]},{"t":1,"p":1,"n":"NOTE - Note","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"DNAM - Type"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Terminal"},{"t":2,"p":1,"n":"PNAM - Program File"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":3,"n":"STCP - Unknown"},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"XP Value Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Disposition Base"},{"t":3,"p":1,"n":"Use Template Actors"},{"t":3,"p":1,"n":"Bleedout Override"},{"t":11,"n":"Unknown"}]},{"t":8,"s":1,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Default Template"},{"t":3,"p":1,"n":"LTPT - Legendary Template"},{"t":3,"p":1,"n":"LTPC - Legendary Chance"},{"t":6,"s":1,"p":1,"n":"TPTA - Template Actors","c":[{"t":3,"p":1,"n":"Traits"},{"t":3,"p":1,"n":"Stats"},{"t":3,"p":1,"n":"Factions"},{"t":3,"p":1,"n":"Spell List"},{"t":3,"p":1,"n":"AI Data"},{"t":3,"p":1,"n":"AI Packages"},{"t":3,"p":1,"n":"Model\/Animation"},{"t":3,"p":1,"n":"Base Data"},{"t":3,"p":1,"n":"Inventory"},{"t":3,"p":1,"n":"Script"},{"t":3,"p":1,"n":"Def Pack List"},{"t":3,"p":1,"n":"Attack Data"},{"t":3,"p":1,"n":"Keywords"}]},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags"},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Action Points Mult"},{"t":3,"p":1,"n":"Stagger Offset"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"},{"t":3,"p":1,"n":"ATKW - Weapon Slot"},{"t":3,"p":1,"n":"ATKS - Required Slot"},{"t":2,"p":1,"n":"ATKT - Description"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator Override Package List"},{"t":3,"p":1,"n":"OCOR - Observe Dead Body Override Package List"},{"t":3,"p":1,"n":"GWOR - Guard Warn Override Package List"},{"t":3,"p":1,"n":"ECOR - Combat Override Package List"},{"t":3,"p":1,"n":"FCPL - Follower Command Package List"},{"t":3,"p":1,"n":"RCLR - Follower Elevator Package List"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"}]}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]},{"t":11,"n":"Unknown"}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"APPR - Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Object Template","c":[{"t":3,"p":1,"n":"OBTE - Count"},{"t":8,"p":1,"n":"Combinations","c":[{"t":6,"p":1,"n":"Combination","c":[{"p":1,"n":"OBTF - Editor Only"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"OBTS - Object Mod Template Item","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":3,"p":1,"n":"Level Min"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Level Max"},{"t":3,"p":1,"n":"ID"},{"t":3,"p":1,"n":"Default"},{"t":7,"p":1,"n":"Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"Min Level For Ranks"},{"t":3,"p":1,"n":"Alt Levels Per Tier"},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Attach Point Index"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]}]}]},{"p":1,"n":"STOP - Marker"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - ","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Far Away Model Distance"},{"t":3,"p":1,"n":"Geared Up Weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}]},{"t":3,"p":1,"n":"HCLF - Hair Color"},{"t":3,"p":1,"n":"BCLF - Facial Hair Color"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height Min"},{"t":5,"n":"NAM7 - Unused"},{"t":5,"p":1,"n":"NAM4 - Height Max"},{"t":6,"s":1,"p":1,"n":"MWGT - Weight","c":[{"t":5,"p":1,"n":"Thin"},{"t":5,"p":1,"n":"Muscular"},{"t":5,"p":1,"n":"Fat"}]},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":6,"s":1,"p":1,"n":"Actor Sounds","c":[{"t":3,"p":1,"n":"CS2H - Count"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CS2K - Keyword"},{"t":3,"p":1,"n":"CS2D - Sound"}]}]},{"p":1,"n":"CS2E - End Marker"},{"t":11,"p":1,"n":"CS2F - Finalize"}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"PFRN - Power Armor Stand"},{"t":3,"p":1,"n":"DOFT - Default Outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping Outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime Faction"},{"t":3,"p":1,"n":"FTST - Head Texture"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]},{"t":7,"p":1,"n":"MSDK - Morph Keys","c":[{"t":3,"p":1,"n":"Key"}]},{"t":7,"p":1,"n":"MSDV - Morph Values","c":[{"t":5,"p":1,"n":"Value"}]},{"t":10,"p":1,"n":"Face Tinting Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"TETI - Index","c":[{"t":3,"p":1,"n":"Data Type"},{"t":3,"p":1,"n":"Index"}]},{"t":6,"p":1,"n":"TEND - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Template Color Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MRSV - Body Morph Region Values","c":[{"t":5,"p":1,"n":"Head"},{"t":5,"p":1,"n":"Upper Torso"},{"t":5,"p":1,"n":"Arms"},{"t":5,"p":1,"n":"Lower Torso"},{"t":5,"p":1,"n":"Legs"}]},{"t":10,"p":1,"n":"Face Morphs","d":1,"c":[{"t":6,"p":1,"n":"Face Morph","c":[{"t":3,"p":1,"n":"FMRI - Index"},{"t":6,"p":1,"n":"FMRS - Values","c":[{"t":5,"p":1,"n":"Position - X"},{"t":5,"p":1,"n":"Position - Y"},{"t":5,"p":1,"n":"Position - Z"},{"t":5,"p":1,"n":"Rotation - X"},{"t":5,"p":1,"n":"Rotation - Y"},{"t":5,"p":1,"n":"Rotation - Z"},{"t":5,"p":1,"n":"Scale"},{"t":11,"n":"Unknown"}]}]}]},{"t":5,"p":1,"n":"FMIN - Facial Morph Intensity"},{"t":2,"p":1,"n":"ATTX - Activate Text Override"}]},{"t":1,"p":1,"n":"OMOD - Object Modification","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Attach Point"},{"t":7,"p":1,"n":"Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":11,"p":1,"n":"Value 1"},{"t":11,"p":1,"n":"Value 2"}]}]},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Minimum Level"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]},{"t":7,"p":1,"n":"MNAM - Target OMOD Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"FNAM - Filter Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"LNAM - Loose Mod"},{"t":3,"p":1,"n":"NAM1 - Priority"},{"t":2,"p":1,"n":"FLTR - Filter"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items","c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"n":"OVIS - Object Visibility Manager","d":1,"c":[{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":3,"n":"INDX - Object"},{"t":6,"n":"DATA - Object Bounds","c":[{"t":5,"n":"X1"},{"t":5,"n":"Y1"},{"t":5,"n":"Z1"},{"t":5,"n":"X2"},{"t":5,"n":"Y2"},{"t":5,"n":"Z2"}]}]}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags"}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Ref Alias"},{"t":3,"p":1,"n":"Loc Alias"},{"t":3,"p":1,"n":"Interrupt Data"},{"t":3,"p":1,"n":"Packdata Target"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Ref Collection Alias"},{"t":3,"p":1,"n":"Radius"},{"t":3,"p":1,"n":"Collection Index"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Interrupt Data"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags"}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags"}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags"},{"t":3,"p":1,"n":"Clear General Flags"},{"t":3,"p":1,"n":"Set Interrupt Flags"},{"t":3,"p":1,"n":"Clear Interrupt Flags"},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags"}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ICON - Image"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":2,"p":1,"n":"FNAM - SWF"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":3,"p":1,"n":"EPFB - Perk Entry ID (unique)"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags"},{"t":11,"n":"Unknown"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PKIN - Pack-In","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FLTR - Filter"},{"t":3,"p":1,"n":"CNAM - Cell"},{"t":3,"p":1,"n":"VNAM - Version"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":11,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"},{"t":3,"p":1,"n":"Tracer Frequency"},{"t":3,"p":1,"n":"VATS Projectile"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model Filename"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"fragmentCount"},{"t":2,"p":1,"n":"scriptName"},{"t":6,"p":1,"n":"Script Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":11,"n":"Unused"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":3,"p":1,"n":"LNAM - Location"},{"t":3,"p":1,"n":"XNAM - Quest Completion XP"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"p":1,"n":"Stages","d":1,"c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags"},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"NAM2 - Note"},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Keyword"}]},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":11,"n":"ANAM - Aliases Marker"},{"t":8,"s":1,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":3,"p":1,"n":"ALCC - Closest To Alias"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":7,"p":1,"n":"ALLA - Linked Aliases","c":[{"t":6,"p":1,"n":"Linked Alias","c":[{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Alias"}]}]},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":3,"p":1,"n":"ALFV - Forced Voice"},{"t":3,"p":1,"n":"ALDI - Death Item"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":3,"p":1,"n":"GNAM - Quest Group"},{"t":2,"p":1,"n":"SNAM - SWF File"}]},{"t":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"STCP - Sound"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":3,"n":"WNAM - Skin"},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":7,"n":"PRPS - Properties","c":[{"t":6,"n":"Property","c":[{"t":3,"n":"Actor Value"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"APPR - Attach Parent Slots","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":5,"n":"Male Height"},{"t":5,"n":"Female Height"},{"t":6,"n":"Male Default Weight","c":[{"t":5,"n":"Thin"},{"t":5,"n":"Muscular"},{"t":5,"n":"Fat"}]},{"t":6,"n":"Female Default Weight","c":[{"t":5,"n":"Thin"},{"t":5,"n":"Muscular"},{"t":5,"n":"Fat"}]},{"t":3,"n":"Flags"},{"t":5,"n":"Acceleration Rate"},{"t":5,"n":"Deceleration Rate"},{"t":3,"n":"Size"},{"t":11,"n":"Unknown"},{"t":5,"n":"Injured Health Pct"},{"t":3,"n":"Shield Biped Object"},{"t":3,"n":"Beard Biped Object"},{"t":3,"n":"Body Biped Object"},{"t":5,"n":"Aim Angle Tolerance"},{"t":5,"n":"Flight Radius"},{"t":5,"n":"Angular Acceleration Rate"},{"t":5,"n":"Angular Tolerance"},{"t":3,"n":"Flags 2"},{"t":3,"n":"Pipboy Biped Object"},{"t":3,"n":"XP Value"},{"t":5,"n":"Severable - Debris Scale"},{"t":3,"n":"Severable - Debris Count"},{"t":3,"n":"Severable - Decal Count"},{"t":5,"n":"Explodable - Debris Scale"},{"t":3,"n":"Explodable - Debris Count"},{"t":3,"n":"Explodable - Decal Count"},{"t":3,"n":"Severable - Explosion"},{"t":3,"n":"Severable - Debris"},{"t":3,"n":"Severable - Impact DataSet"},{"t":3,"n":"Explodable - Explosion"},{"t":3,"n":"Explodable - Debris"},{"t":3,"n":"Explodable - Impact DataSet"},{"t":5,"n":"OnCripple - Debris Scale"},{"t":3,"n":"OnCripple - Debris Count"},{"t":3,"n":"OnCripple - Decal Count"},{"t":3,"n":"OnCripple - Explosion"},{"t":3,"n":"OnCripple - Debris"},{"t":3,"n":"OnCripple - Impact DataSet"},{"t":3,"n":"Explodable - Subsegment Explosion"},{"t":5,"n":"Orientation Limits - Pitch"},{"t":5,"n":"Orientation Limits - Roll"}]},{"n":"MNAM - Male Marker"},{"t":2,"n":"ANAM - Male Skeletal Model"},{"t":11,"n":"MODT - Texture Files Hashes"},{"n":"FNAM - Female Marker"},{"t":2,"n":"ANAM - Female Skeletal Model"},{"n":"NAM2 - Marker NAM2 #1"},{"t":8,"n":"Movement Type Names","c":[{"t":2,"n":"MTNM - Name"}]},{"t":7,"n":"VTCK - Voices","c":[{"t":3,"n":"Voice"}]},{"t":7,"n":"HCLF - Default Hair Colors","c":[{"t":3,"n":"Default Hair Color"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Action Points Mult"},{"t":3,"n":"Stagger Offset"}]},{"t":2,"n":"ATKE - Attack Event"},{"t":3,"n":"ATKW - Weapon Slot"},{"t":3,"n":"ATKS - Required Slot"},{"t":2,"n":"ATKT - Description"}]}]},{"t":6,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"INDX - Index"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":3,"n":"MODS - Material Swap"},{"t":5,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]}]}]},{"t":6,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"INDX - Index"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":3,"n":"MODS - Material Swap"},{"t":5,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]}]}]}]},{"t":3,"n":"GNAM - Body Part Data"},{"n":"NAM2 - Marker NAM2 #2"},{"n":"NAM3 - Marker NAM3 #3"},{"t":6,"n":"Male Behavior Graph","c":[{"n":"MNAM - Male Data Marker"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":3,"n":"MODS - Material Swap"},{"t":5,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":6,"n":"Female Behavior Graph","c":[{"n":"FNAM - Female Data Marker"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":3,"n":"MODS - Material Swap"},{"t":5,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":3,"n":"NAM4 - Impact Material Type"},{"t":3,"n":"NAM5 - Impact Data Set"},{"t":3,"n":"NAM7 - Dismember Blood Art"},{"t":3,"n":"CNAM - Meat Cap TextureSet"},{"t":3,"n":"NAM2 - Collar TextureSet"},{"t":3,"n":"ONAM - Sound - Open Corpse"},{"t":3,"n":"LNAM - Sound - Close Corpse"},{"t":8,"n":"Biped Object Names","c":[{"t":2,"n":"NAME - Name"}]},{"t":7,"n":"RBPC - Biped Object Conditions","c":[{"t":3,"n":"Slot 30+"}]},{"t":10,"n":"Movement Data Overrides","c":[{"t":6,"n":"Override","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Movement Data","c":[{"t":5,"n":"Unknown"},{"t":5,"n":"Walk - Left"},{"t":5,"n":"Run - Left"},{"t":5,"n":"Walk - Right"},{"t":5,"n":"Run - Right"},{"t":5,"n":"Walk - Forward"},{"t":5,"n":"Run - Forward"},{"t":5,"n":"Sprint - Forward"},{"t":5,"n":"Walk - Back"},{"t":5,"n":"Run - Back"},{"t":5,"n":"Standing - Pitch"},{"t":5,"n":"Walk - Pitch"},{"t":5,"n":"Run - Pitch"},{"t":5,"n":"Sprint - Pitch"},{"t":5,"n":"Standing - Yaw"},{"t":5,"n":"Walk - Yaw"},{"t":5,"n":"Run - Yaw"},{"t":5,"n":"Sprint - Yaw"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags"},{"t":8,"n":"Equip Slots","c":[{"t":6,"n":"Equip Slot","c":[{"t":3,"n":"QNAM - Equip Slot"},{"t":2,"n":"ZNAM - Node"}]}]},{"t":3,"n":"UNWP - Unarmed Weapon"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]}]},{"t":3,"n":"WKMV - Base Movement Defaults - Default"},{"t":3,"n":"SWMV - Base Movement Defaults - Swim"},{"t":3,"n":"FLMV - Base Movement Defaults - Fly"},{"t":3,"n":"SNMV - Base Movement Defaults - Sneak"},{"n":"NAM0 - Head Data Marker"},{"n":"MNAM - Male Data Marker"},{"t":6,"n":"NNAM - Male Neck Fat Adjustments Scale","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"}]},{"t":10,"n":"Male Head Parts","c":[{"t":6,"n":"Head Part","c":[{"t":3,"n":"INDX - Head Part Number"},{"t":3,"n":"HEAD - Head"}]}]},{"t":8,"n":"Male Race Presets","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"Male Hair Colors","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"Male Face Details","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Male Default Face Texture"},{"t":8,"n":"Male Tint Layers","c":[{"t":6,"n":"Group","c":[{"t":2,"n":"TTGP - Group Name"},{"t":8,"n":"Options","c":[{"t":6,"n":"Option","c":[{"t":6,"n":"TETI - Index","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Index"}]},{"t":2,"n":"TTGP - Name"},{"t":11,"n":"TTEF - Unknown"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Actor"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Player Action"},{"t":3,"n":"Alias"},{"t":3,"n":"Alignment"},{"t":3,"n":"Association Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Faction"},{"t":3,"n":"Form List"},{"t":3,"n":"Form Type"},{"t":3,"n":"Furniture"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Global"},{"t":3,"n":"Idle"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Keyword"},{"t":3,"n":"Location"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Owner"},{"t":3,"n":"Package"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Perk"},{"t":3,"n":"Quest"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Race"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Region"},{"t":3,"n":"Scene"},{"t":3,"n":"Sex"},{"t":3,"n":"Shout"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (unused)"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Ward State"},{"t":3,"n":"Weather"},{"t":3,"n":"Worldspace"},{"t":3,"n":"Damage Type"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Textures","c":[{"t":2,"n":"TTET - Texture"}]},{"t":11,"n":"TTEB - Unknown"},{"t":7,"n":"TTEC - Template Colors","c":[{"t":6,"n":"Template Color","c":[{"t":3,"n":"Color"},{"t":5,"n":"Alpha"},{"t":3,"n":"Template Index"},{"t":11,"n":"Unknown"}]}]},{"t":5,"n":"TTED - Unknown"}]}]},{"t":11,"n":"TTGE - Group End"}]}]},{"t":8,"n":"Male Morph Groups","c":[{"t":6,"n":"Morph Group","c":[{"t":2,"n":"MPGN - Name"},{"t":3,"n":"MPPC - Count"},{"t":8,"n":"Morph Presets","c":[{"t":6,"n":"Morph Preset","c":[{"t":3,"n":"MPPI - Index"},{"t":2,"n":"MPPN - Name"},{"t":2,"n":"MPPM - Unknown"},{"t":3,"n":"MPPT - Texture"},{"t":11,"n":"MPPF - Unknown"}]}]},{"t":11,"n":"MPPK - Unknown"},{"t":11,"n":"MPGS - Unknown"}]}]},{"t":8,"n":"Male Face Morphs","c":[{"t":6,"n":"Face Morph","c":[{"t":3,"n":"FMRI - Index"},{"t":2,"n":"FMRN - Name"}]}]},{"t":2,"n":"WMAP - Male Wrinkle Map Path"},{"n":"FNAM - Female Data Marker"},{"t":6,"n":"NNAM - Female Neck Fat Adjustments Scale","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"}]},{"t":10,"n":"Female Head Parts","c":[{"t":6,"n":"Head Part","c":[{"t":3,"n":"INDX - Head Part Number"},{"t":3,"n":"HEAD - Head"}]}]},{"t":8,"n":"Female Race Presets","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"Female Hair Colors","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"Female Face Details","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Female Default Face Texture"},{"t":8,"n":"Female Tint Layers","c":[{"t":6,"n":"Group","c":[{"t":2,"n":"TTGP - Group Name"},{"t":8,"n":"Options","c":[{"t":6,"n":"Option","c":[{"t":6,"n":"TETI - Index","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Index"}]},{"t":2,"n":"TTGP - Name"},{"t":11,"n":"TTEF - Unknown"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Actor"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Player Action"},{"t":3,"n":"Alias"},{"t":3,"n":"Alignment"},{"t":3,"n":"Association Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Faction"},{"t":3,"n":"Form List"},{"t":3,"n":"Form Type"},{"t":3,"n":"Furniture"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Global"},{"t":3,"n":"Idle"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Keyword"},{"t":3,"n":"Location"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Owner"},{"t":3,"n":"Package"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Perk"},{"t":3,"n":"Quest"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Race"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Region"},{"t":3,"n":"Scene"},{"t":3,"n":"Sex"},{"t":3,"n":"Shout"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (unused)"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Ward State"},{"t":3,"n":"Weather"},{"t":3,"n":"Worldspace"},{"t":3,"n":"Damage Type"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Textures","c":[{"t":2,"n":"TTET - Texture"}]},{"t":11,"n":"TTEB - Unknown"},{"t":7,"n":"TTEC - Template Colors","c":[{"t":6,"n":"Template Color","c":[{"t":3,"n":"Color"},{"t":5,"n":"Alpha"},{"t":3,"n":"Template Index"},{"t":11,"n":"Unknown"}]}]},{"t":5,"n":"TTED - Unknown"}]}]},{"t":11,"n":"TTGE - Group End"}]}]},{"t":8,"n":"Female Morph Groups","c":[{"t":6,"n":"Morph Group","c":[{"t":2,"n":"MPGN - Name"},{"t":3,"n":"MPPC - Count"},{"t":8,"n":"Morph Presets","c":[{"t":6,"n":"Morph Preset","c":[{"t":3,"n":"MPPI - Index"},{"t":2,"n":"MPPN - Name"},{"t":2,"n":"MPPM - Unknown"},{"t":3,"n":"MPPT - Texture"},{"t":11,"n":"MPPF - Unknown"}]}]},{"t":11,"n":"MPPK - Unknown"},{"t":11,"n":"MPGS - Unknown"}]}]},{"t":8,"n":"Female Face Morphs","c":[{"t":6,"n":"Face Morph","c":[{"t":3,"n":"FMRI - Index"},{"t":2,"n":"FMRN - Name"}]}]},{"t":2,"n":"WMAP - Female Wrinkle Map Path"},{"t":3,"n":"NAM8 - Morph Race"},{"t":3,"n":"RNAM - Armor Race"},{"t":3,"n":"SRAC - Subgraph Template Race"},{"t":3,"n":"SADD - Subgraph Additive Race"},{"t":8,"n":"Subgraph Data","c":[{"t":6,"n":"Data","c":[{"t":2,"n":"SGNM - Behaviour Graph"},{"t":8,"n":"Actor Keywords","c":[{"t":3,"n":"SAKD - Keyword"}]},{"t":8,"n":"Target Keywords","c":[{"t":3,"n":"STKD - Keyword"}]},{"t":8,"n":"Animation Paths","c":[{"t":2,"n":"SAPT - Path"}]},{"t":6,"n":"SRAF - Flags","c":[{"t":3,"n":"Role"},{"t":3,"n":"Perspective"}]}]}]},{"t":5,"n":"PTOP - Idle Chatter Time Min"},{"t":5,"n":"NTOP - Idle Chatter Time Max"},{"t":8,"n":"Morph Values","c":[{"t":6,"n":"Value","c":[{"t":3,"n":"MSID - Index"},{"t":2,"n":"MSM0 - Min Name"},{"t":2,"n":"MSM1 - Max Name"}]}]},{"t":11,"n":"MLSI - Unknown"},{"t":2,"n":"HNAM - Hair Color Lookup Texture"},{"t":2,"n":"HLTX - Hair Color Extended Lookup Texture"},{"t":3,"n":"QSTI - Dialogue Quest"},{"t":8,"n":"Bone Data","c":[{"t":6,"n":"Data","c":[{"t":3,"n":"BSMP - Gender"},{"t":8,"n":"Bones","c":[{"t":6,"n":"Bone","c":[{"t":2,"n":"BSMB - Name"},{"t":7,"n":"BSMS - Values","c":[{"t":5,"n":"Value"}]},{"t":11,"n":"BMMP - Unknown"}]}]}]}]}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.0+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":5,"p":1,"n":"Near Clip"},{"t":5,"p":1,"n":"Volumetric Intensity"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Transition Interior"}]},{"t":3,"p":1,"n":"XTNM - Teleport Loc Name"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XASP - Acoustic Restriction"},{"p":1,"n":"XATP - Activation Point"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":6,"s":1,"p":1,"n":"XRDO - Radio","c":[{"t":5,"p":1,"n":"Frequency"},{"t":5,"p":1,"n":"Min Weak Distance"},{"t":5,"p":1,"n":"Max Weak Distance"},{"t":3,"p":1,"n":"Flags"}]},{"t":6,"s":1,"p":1,"n":"XBSD - Spline","c":[{"t":5,"p":1,"n":"Slack"},{"t":5,"p":1,"n":"Thickness"},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Wind - Detached End"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XPDD - Projected Decal","c":[{"t":5,"p":1,"n":"Width Scale"},{"t":5,"p":1,"n":"Height Scale"}]},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":3,"p":1,"n":"XHLT - Health %"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":8,"s":1,"p":1,"n":"Spline Connection","d":1,"c":[{"t":6,"p":1,"n":"XPLK - Link","c":[{"t":3,"p":1,"n":"Ref"},{"t":11,"n":"Unknown"}]}]},{"t":6,"s":1,"p":1,"n":"Power Grid","c":[{"t":3,"p":1,"n":"XWPG - Count"},{"t":8,"p":1,"n":"Connections","c":[{"t":6,"p":1,"n":"XWPN - Connection","c":[{"t":3,"p":1,"n":"Node 1"},{"t":3,"p":1,"n":"Node 2"},{"t":3,"p":1,"n":"Line"}]}]}]},{"t":11,"n":"XCVR - Unknown"},{"t":11,"n":"XCVL - Unknown"},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":11,"n":"ANAM - Unknown"}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":5,"p":1,"n":"RLDM - LOD Display Distance Multiplier"},{"t":5,"p":1,"n":"ANAM - Occlusion Accuracy Dist"}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]},{"t":3,"p":1,"n":"ANAM - Reverb Class"}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"RFGP - Reference Group","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"NNAM - Name"},{"t":3,"p":1,"n":"RNAM - Reference"},{"t":11,"n":"PNAM - Unknown"}]},{"t":1,"p":1,"n":"SCCO - Scene Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Scenes","d":1,"c":[{"t":6,"p":1,"n":"Scene","c":[{"t":3,"p":1,"n":"SNAM - Scene"},{"t":6,"n":"XNAM - Unknown","c":[{"t":3,"n":"Unknown"}]}]}]},{"t":11,"n":"VNAM - Unknown"},{"t":8,"n":"Unknown","c":[{"t":6,"n":"XNAM - Unknown","c":[{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker Start Conditions"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker Completion Conditions"},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":6,"p":1,"n":"SCQS - Set Parent Quest Stage","c":[{"t":3,"p":1,"n":"On Start"},{"t":3,"p":1,"n":"On Completion"}]},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Alias ID"},{"t":3,"p":1,"n":"LNAM - Flags"},{"t":3,"p":1,"n":"DNAM - Behaviour Flags"}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Alias ID"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer - Max Seconds"},{"t":3,"p":1,"n":"SCQS - Set Parent Quest Stage"},{"t":5,"p":1,"n":"TNAM - Timer - Min Seconds"},{"t":11,"n":"STSC - Unknown"},{"t":8,"p":1,"n":"Start Scenes","c":[{"t":6,"p":1,"n":"Start Scene","c":[{"t":3,"p":1,"n":"LCEP - Scene"},{"t":3,"p":1,"n":"INTT - Phase Index"},{"t":2,"p":1,"n":"SSPN - Start Phase for Scene"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":3,"p":1,"n":"PTOP - Player Positive Response"},{"t":3,"p":1,"n":"NTOP - Player Negative Response"},{"t":3,"p":1,"n":"NETO - Player Neutral Response"},{"t":3,"p":1,"n":"QTOP - Player Question Response"},{"t":3,"p":1,"n":"VENC - Player Positive Dialogue Subtype"},{"t":3,"p":1,"n":"PLVD - Player Negative Dialogue Subtype"},{"t":3,"p":1,"n":"JOUT - Player Neutral Dialogue Subtype"},{"t":3,"p":1,"n":"DALC - Player Question Dialogue Subtype"},{"t":7,"p":1,"n":"DTID - NPC Headtracking","c":[{"t":3,"p":1,"n":"Actor ID"}]},{"t":3,"p":1,"n":"NPOT - NPC Positive Response"},{"t":3,"p":1,"n":"NNGT - NPC Negative Response"},{"t":3,"p":1,"n":"NNUT - NPC Neutral Response"},{"t":3,"p":1,"n":"NQUT - NPC Question Response"},{"t":3,"p":1,"n":"NPOS - NPC Positive Dialogue Subtype"},{"t":3,"p":1,"n":"NNGS - NPC Negative Dialogue Subtype"},{"t":3,"p":1,"n":"NNUS - NPC Neutral Dialogue Subtype"},{"t":3,"p":1,"n":"NQUS - NPC Question Dialogue Subtype"},{"t":3,"p":1,"n":"DTGT - Dialogue Target Actor"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"p":1,"n":"End Scene Say Greeting"},{"t":3,"p":1,"n":"Play Sound"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":6,"p":1,"n":"CRIS - Camera","c":[{"t":5,"p":1,"n":"FOV On Player Camera"},{"t":5,"p":1,"n":"Rate Of Camera Change"}]},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":7,"p":1,"n":"HTID - Player Headtracking","c":[{"t":3,"p":1,"n":"Actor ID"}]},{"t":3,"p":1,"n":"VENC - Dialogue Subtype"},{"t":3,"p":1,"n":"PNAM - AnimArchType"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":5,"p":1,"n":"CNAM - Camera Distance Override"},{"t":5,"p":1,"n":"ACTV - Dialogue Distance Override"},{"t":5,"p":1,"n":"CRIS - FOV Override"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"SCQS - Set Parent Quest Stage","c":[{"t":3,"p":1,"n":"On Begin"},{"t":3,"p":1,"n":"On End"}]},{"t":2,"p":1,"n":"NNAM - Notes"},{"t":3,"p":1,"n":"TNAM - Template Scene"},{"t":3,"p":1,"n":"XNAM - Index"}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"FLTR - Filter"},{"t":10,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements","c":[{"t":6,"p":1,"n":"Placement","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Scale"}]}]}]}]}]},{"t":1,"p":1,"n":"SCSN - Audio Category Snapshot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Priority"},{"t":8,"s":1,"p":1,"n":"Category Multipliers","d":1,"c":[{"t":6,"p":1,"n":"CNAM - Category Multiplier","c":[{"t":3,"p":1,"n":"Categoty"},{"t":5,"p":1,"n":"Multiplier"}]}]}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags"},{"t":3,"p":1,"n":"Quest Flags"}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":5,"p":1,"n":"HNAM - Hours until reset"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"PNAM - Parent Category"},{"t":3,"p":1,"n":"ONAM - Menu Slider Category"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"},{"t":5,"p":1,"n":"MNAM - Min Frequency Multiplier"},{"t":5,"p":1,"n":"CNAM - Sidechain Target Multiplier"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"NNAM - Notes"},{"t":3,"p":1,"n":"CNAM - Descriptor Type"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Sidechain"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]},{"t":3,"p":1,"n":"Base Descriptor"},{"t":8,"s":1,"p":1,"n":"Descriptors","d":1,"c":[{"t":3,"p":1,"n":"DNAM - Descriptor"}]},{"t":3,"n":"ITMC - Count"},{"t":10,"p":1,"n":"Rates of Fire","d":1,"c":[{"t":6,"p":1,"n":"Sound","c":[{"p":1,"n":"ITMS - Marker Start"},{"t":3,"p":1,"n":"INTV - RoF (RPM)"},{"t":2,"p":1,"n":"FNAM - File"},{"p":1,"n":"ITME - Marker End"}]}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":3,"p":1,"n":"MNAM - Type"},{"t":3,"p":1,"n":"VNAM - Static Attenuation"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"FL"},{"t":3,"p":1,"n":"FR"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"SL"},{"t":3,"p":1,"n":"SR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ATTN - Attenuation Values","c":[{"t":5,"p":1,"n":"Fade In Distance - Start"},{"t":5,"p":1,"n":"Fade In Distance - End"},{"t":5,"p":1,"n":"Fade Out Distance - Start"},{"t":5,"p":1,"n":"Fade Out Distance - End"},{"t":6,"p":1,"n":"Fade In Curve","c":[{"t":3,"p":1,"n":"Value 1"},{"t":3,"p":1,"n":"Value 2"},{"t":3,"p":1,"n":"Value 3"},{"t":3,"p":1,"n":"Value 4"}]},{"t":6,"p":1,"n":"Fade Out Curve","c":[{"t":3,"p":1,"n":"Value 1"},{"t":3,"p":1,"n":"Value 2"},{"t":3,"p":1,"n":"Value 3"},{"t":3,"p":1,"n":"Value 4"}]}]},{"t":3,"p":1,"n":"ENAM - Effect Chain"}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"},{"t":6,"s":1,"p":1,"n":"REPT - Repeat","c":[{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Max Time"},{"t":3,"p":1,"n":"Stackable"}]}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Casting Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"MNAM - Particle Texture"}]},{"t":1,"p":1,"n":"STAG - Animation Sound Tag Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"TNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":2,"p":1,"n":"Action"}]}]}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]},{"t":6,"s":1,"p":1,"n":"NVNM - Navmesh Geometry","c":[{"t":3,"p":1,"n":"Version"},{"t":11,"p":1,"n":"Magic"},{"t":3,"p":1,"n":"Parent Worldspace"},{"t":6,"p":1,"n":"Coordinates","c":[{"t":3,"p":1,"n":"Grid Y"},{"t":3,"p":1,"n":"Grid X"}]},{"t":3,"p":1,"n":"Parent Cell"},{"t":11,"p":1,"n":"Vertices and Triangles"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"LOD","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TERM - Terminal","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"NAM0 - Header Text"},{"t":2,"p":1,"n":"WNAM - Welcome Text"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags"},{"t":11,"n":"WBDT - Workbench Data (unused)"},{"t":2,"p":1,"n":"XMRK - Marker Model"},{"t":7,"p":1,"n":"SNAM - Marker Paramaters","c":[{"t":6,"p":1,"n":"Marker","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Offset Z"},{"t":5,"p":1,"n":"Rotation Z"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Entry Types"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"BSIZ - Count"},{"t":8,"s":1,"p":1,"n":"Body Text","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":2,"p":1,"n":"BTXT - Text"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":3,"n":"ISIZ - Count"},{"t":8,"s":1,"p":1,"n":"Menu Items","d":1,"c":[{"t":6,"p":1,"n":"Menu Item","c":[{"t":2,"p":1,"n":"ITXT - Item Text"},{"t":2,"p":1,"n":"RNAM - Response Text"},{"t":3,"p":1,"n":"ANAM - Type"},{"t":3,"p":1,"n":"ITID - Item ID"},{"t":2,"p":1,"n":"UNAM - Display Text"},{"t":2,"p":1,"n":"VNAM - Show Image"},{"t":3,"p":1,"n":"TNAM - Submenu"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TRNS - Transform","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":5,"p":1,"n":"Scale"},{"t":5,"p":1,"n":"Zoom Min"},{"t":5,"p":1,"n":"Zoom Max"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX03 - Glow"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX02 - Wrinkles"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Smooth Spec"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Alpha Threshold?"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":2,"p":1,"n":"MNAM - Material"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags"}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"ANAM - Opacity (unused)"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"TNAM - Material (unused)"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Consume Spell"},{"t":3,"p":1,"n":"YNAM - Contact Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":11,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":6,"p":1,"n":"Fog Properties","c":[{"t":5,"p":1,"n":"Depth Amount"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Shallow Range"},{"t":5,"p":1,"n":"Color Deep Range"},{"t":5,"p":1,"n":"Shallow Alpha"},{"t":5,"p":1,"n":"Deep Alpha"},{"t":5,"p":1,"n":"Alpha Shallow Range"},{"t":5,"p":1,"n":"Alpha Deep Range"},{"t":6,"p":1,"n":"Underwater Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Underwater Fog Amount"},{"t":5,"p":1,"n":"Underwater Near Fog"},{"t":5,"p":1,"n":"Underwater Far Fog"}]},{"t":6,"p":1,"n":"Physical Properties","c":[{"t":5,"p":1,"n":"Normal Magnitude"},{"t":5,"p":1,"n":"Shallow Normal Falloff"},{"t":5,"p":1,"n":"Deep Normal Falloff"},{"t":5,"p":1,"n":"Reflectivity Amount"},{"t":5,"p":1,"n":"Fresnel Amount"},{"t":5,"p":1,"n":"Surface Effect Falloff"},{"t":6,"p":1,"n":"Displacement Simulator","c":[{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Velocity"},{"t":5,"p":1,"n":"Falloff"},{"t":5,"p":1,"n":"Dampener"},{"t":5,"p":1,"n":"Starting Size"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular Properties","c":[{"t":5,"p":1,"n":"Sun Specular Power"},{"t":5,"p":1,"n":"Sun Specular Magnitude"},{"t":5,"p":1,"n":"Sun Sparkle Power"},{"t":5,"p":1,"n":"Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Interior Specular Radius"},{"t":5,"p":1,"n":"Interior Specular Brightness"},{"t":5,"p":1,"n":"Interior Specular Power"}]},{"t":6,"p":1,"n":"Noise Properties","c":[{"t":5,"p":1,"n":"Layer 1 - Wind Direction"},{"t":5,"p":1,"n":"Layer 2 - Wind Direction"},{"t":5,"p":1,"n":"Layer 3 - Wind Direction"},{"t":5,"p":1,"n":"Layer 1 - Wind Speed"},{"t":5,"p":1,"n":"Layer 2 - Wind Speed"},{"t":5,"p":1,"n":"Layer 3 - Wind Speed"},{"t":5,"p":1,"n":"Layer 1 - Amplitude Scale"},{"t":5,"p":1,"n":"Layer 2 - Amplitude Scale"},{"t":5,"p":1,"n":"Layer 3 - Amplitude Scale"},{"t":5,"p":1,"n":"Layer 1 - UV Scale"},{"t":5,"p":1,"n":"Layer 2 - UV Scale"},{"t":5,"p":1,"n":"Layer 3 - UV Scale"},{"t":5,"p":1,"n":"Layer 1 - Noise Falloff"},{"t":5,"p":1,"n":"Layer 2 - Noise Falloff"},{"t":5,"p":1,"n":"Layer 3 - Noise Falloff"}]},{"t":6,"p":1,"n":"Silt Properties","c":[{"t":5,"p":1,"n":"Silt Amount"},{"t":6,"p":1,"n":"Light Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Dark Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"Screen Space Reflections"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Layer 1 Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Layer 2 Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Layer 3 Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"INRD - Instance Naming"},{"t":7,"p":1,"n":"APPR - Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Object Template","c":[{"t":3,"p":1,"n":"OBTE - Count"},{"t":8,"p":1,"n":"Combinations","c":[{"t":6,"p":1,"n":"Combination","c":[{"p":1,"n":"OBTF - Editor Only"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"OBTS - Object Mod Template Item","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":3,"p":1,"n":"Level Min"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Level Max"},{"t":3,"p":1,"n":"ID"},{"t":3,"p":1,"n":"Default"},{"t":7,"p":1,"n":"Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"Min Level For Ranks"},{"t":3,"p":1,"n":"Alt Levels Per Tier"},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Attach Point Index"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]}]}]},{"p":1,"n":"STOP - Marker"}]},{"t":3,"p":1,"n":"NNAM - Embedded Weapon Mod"},{"t":6,"s":1,"p":1,"n":"1st Person Model","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO4S - Material Swap"},{"t":5,"p":1,"n":"MO4C - Color Remapping Index"},{"t":11,"n":"MO4F - Unknown"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Ammo"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reload Speed"},{"t":5,"p":1,"n":"Reach"},{"t":5,"p":1,"n":"Min Range"},{"t":5,"p":1,"n":"Max Range"},{"t":5,"p":1,"n":"Attack Delay"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Damage - OutOfRange Mult"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Capacity"},{"t":3,"p":1,"n":"Animation Type"},{"t":5,"p":1,"n":"Damage - Secondary"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Damage - Base"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Sound - Attack"},{"t":3,"p":1,"n":"Sound - Attack 2D"},{"t":3,"p":1,"n":"Sound - Attack Loop"},{"t":3,"p":1,"n":"Sound - Attack Fail"},{"t":3,"p":1,"n":"Sound - Idle"},{"t":3,"p":1,"n":"Sound - Equip Sound"},{"t":3,"p":1,"n":"Sound - UnEquip Sound"},{"t":3,"p":1,"n":"Sound - Fast Equip Sound"},{"t":3,"p":1,"n":"Accuracy Bonus"},{"t":5,"p":1,"n":"Animation Attack Seconds"},{"t":5,"p":1,"n":"Action Point Cost"},{"t":5,"p":1,"n":"Full Power Seconds"},{"t":5,"p":1,"n":"Min Power Per Shot"},{"t":3,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"FNAM - ","c":[{"t":5,"p":1,"n":"Animation Fire Seconds"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":5,"p":1,"n":"Animation Reload Seconds"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Sighted Transition Seconds"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Override Projectile"},{"t":3,"p":1,"n":"Pattern"},{"t":3,"p":1,"n":"Rumble - Peroid (ms)"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":5,"p":1,"n":"Crit Damage Mult"},{"t":5,"p":1,"n":"Crit Charge Bonus"},{"t":3,"p":1,"n":"Crit Effect"}]},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"LNAM - NPC Add Ammo List"},{"t":3,"p":1,"n":"WAMD - Aim Model"},{"t":3,"p":1,"n":"WZMD - Zoom"},{"t":3,"p":1,"n":"CNAM - Template"},{"t":7,"p":1,"n":"DAMA - Damage Types","c":[{"t":6,"p":1,"n":"Damage Type","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Amount"}]}]},{"t":2,"p":1,"n":"FLTR - Filter"},{"t":3,"p":1,"n":"MASE - Melee Speed"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"n":"Unused RNAM","c":[{"t":11,"n":"RNAM - Unknown"}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - ","c":[{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags"},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":6,"s":1,"p":1,"n":"World Default Level Data","c":[{"t":6,"p":1,"n":"WLEV - Dimension","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Size","c":[{"t":3,"p":1,"n":"Width"},{"t":3,"p":1,"n":"Height"}]}]},{"t":11,"p":1,"n":"WLEV - Data"}]},{"t":11,"n":"OFST - Offset Data"},{"t":11,"n":"CLSZ - Unknown"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"},{"t":5,"p":1,"n":"EarlySunrise"},{"t":5,"p":1,"n":"LateSunrise"},{"t":5,"p":1,"n":"EarlySunset"},{"t":5,"p":1,"n":"LateSunset"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"EarlySunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"LateSunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"EarlySunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"LateSunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near High","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far High","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"n":"NAM4 - Unknown","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"},{"t":5,"p":1,"n":"Day - Near Height Mid"},{"t":5,"p":1,"n":"Day - Near Height Range"},{"t":5,"p":1,"n":"Night - Near Height Mid"},{"t":5,"p":1,"n":"Night - Near Height Range"},{"t":5,"p":1,"n":"Day - High Density Scale"},{"t":5,"p":1,"n":"Night - High Density Scale"},{"t":5,"p":1,"n":"Day - Far Height Mid"},{"t":5,"p":1,"n":"Day - Far Height Range"},{"t":5,"p":1,"n":"Night - Far Height Mid"},{"t":5,"p":1,"n":"Night - Far Height Range"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"},{"t":3,"p":1,"n":"EarlySunrise"},{"t":3,"p":1,"n":"LateSunrise"},{"t":3,"p":1,"n":"EarlySunset"},{"t":3,"p":1,"n":"LateSunset"}]},{"t":6,"s":1,"p":1,"n":"WGDR - God Rays","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"},{"t":3,"p":1,"n":"EarlySunrise"},{"t":3,"p":1,"n":"LateSunrise"},{"t":3,"p":1,"n":"EarlySunset"},{"t":3,"p":1,"n":"LateSunset"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - EarlySunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - LateSunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - EarlySunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - LateSunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"},{"t":6,"s":1,"p":1,"n":"UNAM - Magic","c":[{"t":3,"p":1,"n":"On Lightning Strike - Spell"},{"t":5,"p":1,"n":"On Lightning Strike - Threshold"},{"t":3,"p":1,"n":"On Weather Activate - Spell"},{"t":5,"p":1,"n":"On Weather Activate - Threshold"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"VNAM - Volatility Mult"},{"t":5,"p":1,"n":"WNAM - Visibility Mult"}]},{"t":1,"p":1,"n":"ZOOM - Zoom","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"GNAM - Data","c":[{"t":5,"p":1,"n":"FOV Mult"},{"t":3,"p":1,"n":"Overlay"},{"t":3,"p":1,"n":"Imagespace Modifier"},{"t":6,"p":1,"n":"Camera Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":2,"p":1,"n":"DNAM - Notes"},{"t":3,"p":1,"n":"TNAM - Type"},{"t":3,"p":1,"n":"DATA - Attraction Rule"},{"t":2,"p":1,"n":"FULL - Name"}]}]},"name":"Smash.All","hash":"A4B4931B","color":128} \ No newline at end of file +{"records":"AACT,ACTI,ADDN,AECH,ALCH,AMDL,AMMO,ANIO,AORU,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BNDS,BOOK,BPTD,CAMS,CELL,CLAS,CLFM,CLMT,CMPO,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DFOB,DIAL,DLBR,DLVW,DMGT,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,FACT,FLOR,FLST,FSTP,FSTS,FURN,GDRY,GLOB,GMST,GRAS,HAZD,HDPT,IDLE,IDLM,IMAD,IMGS,INFO,INGR,INNR,IPCT,IPDS,KEYM,KSSM,KYWD,LAND,LAYR,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MSWP,MUSC,MUST,NOTE,NPC_,OMOD,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,PKIN,PMIS,PROJ,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RFGP,SCCO,SCEN,SCOL,SCSN,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAG,STAT,TACT,TERM,TREE,TRNS,TXST,VTYP,WATR,WEAP,WRLD,WTHR,ZOOM,ACHR","description":"Smashes all the things. Produced using autoset attributes on all record types found in Fallout4.esm and DLC.\r\n\r\nLast updated 01\/07\/2021.","tree":{"records":[{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":2,"p":1,"n":"DNAM - Notes"},{"t":3,"p":1,"n":"TNAM - Type"},{"t":3,"p":1,"n":"DATA - Attraction Rule"},{"t":2,"p":1,"n":"FULL - Name"}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":3,"p":1,"n":"STCP - Sound"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"ATTX - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":6,"s":1,"p":1,"n":"RADR - Radio Receiver","c":[{"t":3,"p":1,"n":"Sound Model"},{"t":5,"p":1,"n":"Frequency"},{"t":5,"p":1,"n":"Volume"},{"t":3,"p":1,"n":"Starts Active"},{"t":3,"p":1,"n":"No Signal Static"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"NVNM - Navmesh Geometry","c":[{"t":3,"p":1,"n":"Version"},{"t":11,"p":1,"n":"Magic"},{"t":3,"p":1,"n":"Parent Worldspace"},{"t":6,"p":1,"n":"Coordinates","c":[{"t":3,"p":1,"n":"Grid Y"},{"t":3,"p":1,"n":"Grid X"}]},{"t":3,"p":1,"n":"Parent Cell"},{"t":11,"p":1,"n":"Vertices and Triangles"}]}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":3,"p":1,"n":"LNAM - Light"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"AECH - Audio Effect Chain","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"KNAM - Type"},{"t":6,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Enabled"},{"t":5,"p":1,"n":"Input Gain"},{"t":5,"p":1,"n":"Center Freq"},{"t":5,"p":1,"n":"Feedback %"},{"t":5,"p":1,"n":"Output Gain"},{"t":5,"p":1,"n":"Q Value"},{"t":5,"p":1,"n":"Wet Mix %"},{"t":5,"p":1,"n":"Upper Threshold"},{"t":3,"p":1,"n":"Filter Mode"},{"t":3,"p":1,"n":"Delay MS"},{"t":5,"p":1,"n":"Lower Threshold"},{"t":11,"n":"Unused"}]}]}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"CUSD - Sound - Crafting"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":2,"p":1,"n":"DNAM - Addiction Name"},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMDL - Aim Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":5,"p":1,"n":"Cone of Fire - Min Angle"},{"t":5,"p":1,"n":"Cone of Fire - Max Angle"},{"t":5,"p":1,"n":"Cone of Fire - Increase Per Shot"},{"t":5,"p":1,"n":"Cone of Fire - Decrease Per Sec"},{"t":3,"p":1,"n":"Cone of Fire - Decrease Delay MS"},{"t":5,"p":1,"n":"Cone of Fire - Sneak Mult"},{"t":5,"p":1,"n":"Recoil - Diminish Spring Force"},{"t":5,"p":1,"n":"Recoil - Diminish Sights Mult"},{"t":5,"p":1,"n":"Recoil - Max Per Shot"},{"t":5,"p":1,"n":"Recoil - Min Per Shot"},{"t":5,"p":1,"n":"Recoil - Hip Mult"},{"t":3,"p":1,"n":"Runaway - Recoil Shots"},{"t":5,"p":1,"n":"Recoil - Arc"},{"t":5,"p":1,"n":"Recoil - Arc Rotate"},{"t":5,"p":1,"n":"Cone of Fire - Iron Sights Mult"},{"t":5,"p":1,"n":"Stability - Base Stability"}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"DNAM - ","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Health"}]},{"t":2,"p":1,"n":"ONAM - Short Name"},{"t":2,"p":1,"n":"NAM1 - Casing Model"},{"t":11,"n":"NAM2 - Texture Files Hashes"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"AORU - Attraction Rule","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"AOR2 - Data","c":[{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Delay"},{"t":5,"p":1,"n":"Max Delay"},{"t":3,"p":1,"n":"Requires Line of Sight"},{"t":3,"p":1,"n":"Combat Target"},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]}]},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO2S - Material Swap"},{"t":5,"p":1,"n":"MO2C - Color Remapping Index"},{"t":11,"n":"MO2F - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO3S - Material Swap"},{"t":5,"p":1,"n":"MO3C - Color Remapping Index"},{"t":11,"n":"MO3F - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO4S - Material Swap"},{"t":5,"p":1,"n":"MO4C - Color Remapping Index"},{"t":11,"n":"MO4F - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO5S - Material Swap"},{"t":5,"p":1,"n":"MO5C - Color Remapping Index"},{"t":11,"n":"MO5F - Unknown"}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin Texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"},{"t":8,"s":1,"p":1,"n":"Bone Data","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":3,"p":1,"n":"BSMP - Gender"},{"t":8,"p":1,"n":"Bones","c":[{"t":6,"p":1,"n":"Bone","c":[{"t":2,"p":1,"n":"BSMB - Name"},{"t":7,"p":1,"n":"BSMS - Values","c":[{"t":5,"p":1,"n":"Value"}]},{"t":11,"n":"BMMP - Unknown"}]}]}]}]}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO2S - Material Swap"}]},{"t":2,"p":1,"n":"ICON - Male Inventory Image"},{"t":2,"p":1,"n":"MICO - Male Message Icon"},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO4S - Material Swap"}]},{"t":2,"p":1,"n":"ICO2 - Female Inventory Image"},{"t":2,"p":1,"n":"MIC2 - Female Message Icon"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"INRD - Instance Naming"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":3,"p":1,"n":"INDX - Addon Index"},{"t":3,"p":1,"n":"MODL - Armor Addon"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Health"}]},{"t":6,"s":1,"p":1,"n":"FNAM - ","c":[{"t":3,"p":1,"n":"Armor Rating"},{"t":3,"p":1,"n":"Base Addon Index"},{"t":3,"p":1,"n":"Stagger Rating"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMA - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"TNAM - Template Armor"},{"t":7,"p":1,"n":"APPR - Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Object Template","c":[{"t":3,"p":1,"n":"OBTE - Count"},{"t":8,"p":1,"n":"Combinations","c":[{"t":6,"p":1,"n":"Combination","c":[{"p":1,"n":"OBTF - Editor Only"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"OBTS - Object Mod Template Item","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":3,"p":1,"n":"Level Min"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Level Max"},{"t":3,"p":1,"n":"ID"},{"t":3,"p":1,"n":"Default"},{"t":7,"p":1,"n":"Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"Min Level For Ranks"},{"t":3,"p":1,"n":"Alt Levels Per Tier"},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Attach Point Index"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]}]}]},{"p":1,"n":"STOP - Marker"}]}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type"},{"t":3,"p":1,"n":"XTRI - Is Interior"},{"t":3,"p":1,"n":"WNAM - Weather Attenuation (dB)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":5,"p":1,"n":"NAM0 - Default Value"},{"t":3,"p":1,"n":"AVFL - Flags"},{"t":3,"p":1,"n":"NAM1 - Type"}]},{"t":1,"p":1,"n":"BNDS - Bendable Spline","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":5,"p":1,"n":"Default Number of Tiles"},{"t":3,"p":1,"n":"Default Number of Slices"},{"t":3,"p":1,"n":"Default Number of Tiles - Relative to Length"},{"t":6,"p":1,"n":"Default Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Wind Settings - Sensibility"},{"t":5,"p":1,"n":"Wind Settings - Flexibility"}]},{"t":3,"p":1,"n":"TNAM - Texture"}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"FIMD - Featured Item Message"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"DNAM - ","c":[{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Perk"},{"t":6,"p":1,"n":"Text Offset","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":2,"p":1,"n":"CNAM - Description"},{"t":3,"p":1,"n":"INAM - Inventory Art"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":5,"p":1,"n":"Cut - Min"},{"t":5,"p":1,"n":"Cut - Max"},{"t":5,"p":1,"n":"Cut - Radius"},{"t":5,"p":1,"n":"Gore Effects - Local Rotate X"},{"t":5,"p":1,"n":"Gore Effects - Local Rotate Y"},{"t":5,"p":1,"n":"Cut - Tesselation"},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":5,"p":1,"n":"Explodable - Limb Replacement Scale"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Non-Lethal Dismemberment Chance"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":3,"p":1,"n":"Geometry Segment Index"},{"t":3,"p":1,"n":"On Cripple - Art Object"},{"t":3,"p":1,"n":"On Cripple - Debris"},{"t":3,"p":1,"n":"On Cripple - Explosion"},{"t":3,"p":1,"n":"On Cripple - Impact DataSet"},{"t":5,"p":1,"n":"On Cripple - Debris Scale"},{"t":3,"p":1,"n":"On Cripple - Debris Count"},{"t":3,"p":1,"n":"On Cripple - Decal Count"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"},{"t":2,"p":1,"n":"ENAM - Hit Reaction - Start"},{"t":2,"p":1,"n":"FNAM - Hit Reaction - End"},{"t":3,"p":1,"n":"BNAM - Gore Effects - Dismember Blood Art"},{"t":3,"p":1,"n":"INAM - Gore Effects - Blood Impact Material Type"},{"t":3,"p":1,"n":"JNAM - On Cripple - Blood Impact Material Type"},{"t":3,"p":1,"n":"CNAM - Meat Cap TextureSet"},{"t":3,"p":1,"n":"NAM2 - Collar TextureSet"},{"t":2,"p":1,"n":"DNAM - Twist Variable Prefix"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"},{"t":5,"p":1,"n":"Location Spring"},{"t":5,"p":1,"n":"Target Spring"},{"t":6,"p":1,"n":"Rotation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":11,"n":"VISI - PreVis Files Timestamp"},{"t":3,"p":1,"n":"RVIS - In PreVis File Of"},{"t":11,"n":"PCMB - PreCombined Files Timestamp"},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]},{"t":5,"p":1,"n":"Near Height Mid"},{"t":5,"p":1,"n":"Near Height Range"},{"t":6,"p":1,"n":"Fog Color High Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color High Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"High Density Scale"},{"t":5,"p":1,"n":"Fog Near Scale"},{"t":5,"p":1,"n":"Fog Far Scale"},{"t":5,"p":1,"n":"Fog High Near Scale"},{"t":5,"p":1,"n":"Fog High Far Scale"},{"t":5,"p":1,"n":"Far Height Mid"},{"t":5,"p":1,"n":"Far Height Range"}]},{"t":3,"p":1,"n":"CNAM - Precombined Object Level XY"},{"t":3,"p":1,"n":"ZNAM - Precombined Object Level Z"},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":6,"s":1,"p":1,"n":"XILW - Exterior LOD","c":[{"t":3,"p":1,"n":"Worldspace"},{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Offset Z"}]},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"},{"t":3,"p":1,"n":"XGDR - God Rays"},{"t":7,"p":1,"n":"XPRI - Physics References","c":[{"t":3,"p":1,"n":"Reference"}]},{"t":6,"s":1,"p":1,"n":"XCRI - Combined References","c":[{"t":3,"p":1,"n":"Meshes Count"},{"t":3,"p":1,"n":"References Count"},{"t":7,"p":1,"n":"Meshes","c":[{"t":3,"p":1,"n":"Combined Mesh"}]},{"t":7,"p":1,"n":"References","c":[{"t":6,"p":1,"n":"Reference","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Combined Mesh"}]}]}]}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Bleedout Default"}]}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"CNAM - Color\/Index"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"CMPO - Component","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"CUSD - Sound - Crafting"},{"t":3,"p":1,"n":"DATA - Auto Calc Value"},{"t":3,"p":1,"n":"MNAM - Scrap Item"},{"t":3,"p":1,"n":"GNAM - Mod Scrap Scalar"}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":7,"p":1,"n":"FVPA - Components","c":[{"t":6,"p":1,"n":"Component","c":[{"t":3,"p":1,"n":"Component"},{"t":3,"p":1,"n":"Count"}]}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":11,"n":"NAM1 - Unused"},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":3,"p":1,"n":"ANAM - Menu Art Object"},{"t":7,"p":1,"n":"FNAM - Category","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"INTV - Data","c":[{"t":3,"p":1,"n":"Created Object Count"},{"t":3,"p":1,"n":"Priority"}]}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"},{"t":3,"p":1,"n":"TNAM - Sound - Take All"},{"t":3,"p":1,"n":"ONAM - Filter List"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom \/ Flags"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"},{"t":5,"p":1,"n":"Dodge Threat Chance"},{"t":5,"p":1,"n":"Evade Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"},{"t":5,"p":1,"n":"Block When Staggered Mult"},{"t":5,"p":1,"n":"Attack When Staggered Mult"}]},{"t":5,"p":1,"n":"CSRA - Ranged Accuracy Mult"},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Dueling - Circle Mult"},{"t":5,"p":1,"n":"Dueling - Fallback Mult"},{"t":5,"p":1,"n":"Flanking - Flank Distance"},{"t":5,"p":1,"n":"Flanking - Stalk Time"},{"t":5,"p":1,"n":"Charging - Charge Distance"},{"t":5,"p":1,"n":"Charging - Throw Probability"},{"t":5,"p":1,"n":"Charging - Sprint Fast Probability"},{"t":5,"p":1,"n":"Charging - Sideswipe Probability"},{"t":5,"p":1,"n":"Charging - Disengane Probability"},{"t":3,"p":1,"n":"Charging - Throw Max Targets"},{"t":5,"p":1,"n":"Flanking - Flank Variance"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"},{"t":5,"p":1,"n":"Adjust Range Mult"},{"t":5,"p":1,"n":"Crouch Mult"},{"t":5,"p":1,"n":"Wait Mult"},{"t":5,"p":1,"n":"Range Mult"}]},{"t":5,"p":1,"n":"CSCV - Cover Search Distance Mult"},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DFOB - Default Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Object"}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"p":1,"n":"DMGT - Damage Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"Damage Types","c":[{"t":3,"p":1,"n":"Actor Value Index"}]}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]},{"t":2,"p":1,"n":"ONAM - Alternate Text - Open"},{"t":2,"p":1,"n":"CNAM - Alternate Text - Close"}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"Data","c":[{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Holes Animation - Start Time"},{"t":5,"p":1,"n":"Holes Animation - End Time"},{"t":5,"p":1,"n":"Holes Animation - Start Value"},{"t":5,"p":1,"n":"Holes Animation - End Value"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"n":"Unknown"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"}]},{"t":6,"s":1,"p":1,"n":"Data (old format)","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Parent"}]},{"t":3,"p":1,"n":"DATA - Flags"},{"t":3,"p":1,"n":"ANAM - Condition Actor Value"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Inner Radius"},{"t":5,"p":1,"n":"Outer Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"},{"t":5,"p":1,"n":"Placed Object AutoFade Delay"},{"t":3,"p":1,"n":"Stagger"},{"t":6,"p":1,"n":"Spawn","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"},{"t":5,"p":1,"n":"Spread Degrees"},{"t":3,"p":1,"n":"Count"}]}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf (unused)"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"p":1,"n":"INAM - Insignia (unused)"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Buys Stolen Items"},{"t":3,"p":1,"n":"Buy\/Sell Everything Not In List?"},{"t":3,"p":1,"n":"Buys NonStolen Items"},{"t":3,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Ref Alias"},{"t":3,"p":1,"n":"Loc Alias"},{"t":3,"p":1,"n":"Interrupt Data"},{"t":3,"p":1,"n":"Packdata Target"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Ref Collection Alias"},{"t":3,"p":1,"n":"Radius"},{"t":3,"p":1,"n":"Collection Index"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"ATTX - Activate Text Override"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"n":"Walking"},{"t":3,"n":"Running"},{"t":3,"n":"Sprinting"},{"t":3,"n":"Sneaking"},{"t":3,"n":"Swimming"}]},{"t":7,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"WNAM - Drinking Water Type"},{"t":2,"p":1,"n":"ATTX - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Form"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Marker Model"},{"t":7,"p":1,"n":"SNAM - Marker Paramaters","c":[{"t":6,"p":1,"n":"Marker","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Offset Z"},{"t":5,"p":1,"n":"Rotation Z"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Entry Types"},{"t":11,"n":"Unknown"}]}]},{"t":6,"s":1,"p":1,"n":"NVNM - Navmesh Geometry","c":[{"t":3,"p":1,"n":"Version"},{"t":11,"p":1,"n":"Magic"},{"t":3,"p":1,"n":"Parent Worldspace"},{"t":6,"p":1,"n":"Coordinates","c":[{"t":3,"p":1,"n":"Grid Y"},{"t":3,"p":1,"n":"Grid X"}]},{"t":3,"p":1,"n":"Parent Cell"},{"t":11,"p":1,"n":"Vertices and Triangles"}]},{"t":7,"p":1,"n":"APPR - Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Object Template","c":[{"t":3,"p":1,"n":"OBTE - Count"},{"t":8,"p":1,"n":"Combinations","c":[{"t":6,"p":1,"n":"Combination","c":[{"p":1,"n":"OBTF - Editor Only"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"OBTS - Object Mod Template Item","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":3,"p":1,"n":"Level Min"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Level Max"},{"t":3,"p":1,"n":"ID"},{"t":3,"p":1,"n":"Default"},{"t":7,"p":1,"n":"Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"Min Level For Ranks"},{"t":3,"p":1,"n":"Alt Levels Per Tier"},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Attach Point Index"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]}]}]},{"p":1,"n":"STOP - Marker"}]}]},{"t":1,"p":1,"n":"GDRY - God Rays","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":6,"p":1,"n":"Back Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":6,"p":1,"n":"Fwd Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Intensity"},{"t":5,"p":1,"n":"Air Color - Scale"},{"t":5,"p":1,"n":"Back Color - Scale"},{"t":5,"p":1,"n":"Fwd Color - Scale"},{"t":5,"p":1,"n":"Back Phase"},{"t":6,"p":1,"n":"Air Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Fwd Phase"}]}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Effect"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"},{"t":6,"p":1,"n":"Taper Effectiveness","c":[{"t":5,"p":1,"n":"Full Effect Radius"},{"t":5,"p":1,"n":"Taper Weight"},{"t":5,"p":1,"n":"Taper Curse"}]}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Actor"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Player Action"},{"t":3,"n":"Alias"},{"t":3,"n":"Alignment"},{"t":3,"n":"Association Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Faction"},{"t":3,"n":"Form List"},{"t":3,"n":"Form Type"},{"t":3,"n":"Furniture"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Global"},{"t":3,"n":"Idle"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Keyword"},{"t":3,"n":"Location"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Owner"},{"t":3,"n":"Package"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Perk"},{"t":3,"n":"Quest"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Race"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Region"},{"t":3,"n":"Scene"},{"t":3,"n":"Sex"},{"t":3,"n":"Shout"},{"t":3,"n":"Variable Name"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (unused)"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Ward State"},{"t":3,"n":"Weather"},{"t":3,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"n":"Damage Type"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - Behavior Graph"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - DATA","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags"},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]},{"t":2,"n":"GNAM - Animation File"}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":3,"n":"QNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":6,"s":1,"p":1,"n":"Radial Blur","c":[{"t":7,"p":1,"n":"RNAM - Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SNAM - RampUp","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"UNAM - Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM1 - RampDown","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - DownStart","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":6,"s":1,"p":1,"n":"Depth of Field","c":[{"t":7,"p":1,"n":"WNAM - Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"XNAM - Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM5 - Vignette Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM6 - Vignette Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unused"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Tonemap E"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Auto Exposure Max"},{"t":5,"p":1,"n":"Auto Exposure Min"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Middle Gray"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"},{"t":5,"p":1,"n":"Vignette Radius"},{"t":5,"p":1,"n":"Vignette Strength"}]},{"t":2,"p":1,"n":"TX00 - LUT"}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"DNAM - Shared INFO"},{"t":3,"n":"GNAM - Unknown"},{"t":2,"p":1,"n":"IOVR - Override Filename"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDA - Response Data","c":[{"t":3,"p":1,"n":"Emotion"},{"t":3,"p":1,"n":"Response number"},{"t":11,"n":"Unused"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Percentage"},{"t":3,"p":1,"n":"Camera Target Alias"},{"t":3,"p":1,"n":"Camera Location Alias"}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":2,"p":1,"n":"NAM4 - Alternate LIP Text"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"},{"t":3,"p":1,"n":"TNAM - Interrupt Percentage"},{"t":11,"p":1,"n":"NAM9 - Text Hash"},{"t":3,"p":1,"n":"SRAF - Camera Path"},{"p":1,"n":"WZMD - Stop on Scene End"}]}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TSCE - Start Scene"},{"t":3,"p":1,"n":"ALFA - Forced Alias"},{"t":11,"n":"INTV - Unknown"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"},{"t":3,"p":1,"n":"GREE - Greet Distance"},{"t":6,"s":1,"p":1,"n":"TIQS - Set Parent Quest Stage","c":[{"t":3,"p":1,"n":"On Begin"},{"t":3,"p":1,"n":"On End"}]},{"t":2,"p":1,"n":"NAM0 - Start Scene Phase"},{"t":3,"p":1,"n":"INCC - Challenge"},{"t":3,"p":1,"n":"MODQ - Reset Global"},{"t":3,"p":1,"n":"INAM - Subtitle Priority"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"INNR - Instance Naming Rules","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"UNAM - Target"},{"t":8,"s":1,"p":1,"n":"Naming Rules","d":1,"c":[{"t":6,"p":1,"n":"Ruleset","c":[{"t":3,"p":1,"n":"VNAM - Count"},{"t":8,"p":1,"n":"Names","c":[{"t":6,"p":1,"n":"Name","c":[{"t":2,"p":1,"n":"WNAM - Text"},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"XNAM - Property","c":[{"t":5,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Op"}]},{"t":3,"p":1,"n":"YNAM - Index"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":3,"p":1,"n":"Alpha Threshold?"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM3 - Footstep Explosion"},{"t":3,"p":1,"n":"NAM2 - Hazard"},{"t":5,"p":1,"n":"FNAM - Footstep Particle Max Dist"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KSSM - Sound Keyword Mapping","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Primary Descriptor"},{"t":3,"p":1,"n":"ENAM - Exterior Tail"},{"t":3,"p":1,"n":"VNAM - VATS Descriptor"},{"t":5,"p":1,"n":"TNAM - VATS Threshold"},{"t":8,"s":1,"p":1,"n":"Keywords","d":1,"c":[{"t":3,"p":1,"n":"KNAM - Keyword"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Sound","c":[{"t":3,"p":1,"n":"Reverb Class"},{"t":3,"p":1,"n":"Descriptor"}]}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":2,"p":1,"n":"DNAM - Notes"},{"t":3,"p":1,"n":"TNAM - Type"},{"t":3,"p":1,"n":"DATA - Attraction Rule"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"NNAM - Display Name"}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"MPCD - Unknown"}]}]},{"t":1,"p":1,"n":"LAYR - Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent"}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":11,"n":"TNAM - Unknown"}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":5,"n":"ANAM - Unknown"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":10,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":5,"p":1,"n":"Near Height Mid"},{"t":5,"p":1,"n":"Near Height Range"},{"t":6,"p":1,"n":"Fog Color High Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color High Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"High Density Scale"},{"t":5,"p":1,"n":"Fog Near Scale"},{"t":5,"p":1,"n":"Fog Far Scale"},{"t":5,"p":1,"n":"Fog High Near Scale"},{"t":5,"p":1,"n":"Fog High Far Scale"},{"t":5,"p":1,"n":"Far Height Mid"},{"t":5,"p":1,"n":"Far Height Range"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"WGDR - God Rays"}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":5,"p":1,"n":"Constant"},{"t":5,"p":1,"n":"Scalar"},{"t":5,"p":1,"n":"Exponent"},{"t":5,"p":1,"n":"God Rays - Near Clip"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":2,"p":1,"n":"NAM0 - Gobo"},{"t":3,"p":1,"n":"LNAM - Lens"},{"t":3,"p":1,"n":"WGDR - God Rays"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":3,"p":1,"n":"TNAM - Transform"},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"ZNAM - Zoom","c":[{"t":5,"p":1,"n":"Min"},{"t":5,"p":1,"n":"Max"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLM - Max Count"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Use Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"},{"t":3,"p":1,"n":"Chance None"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":7,"p":1,"n":"LLKC - Filter Keyword Chances","c":[{"t":6,"p":1,"n":"Filter","c":[{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Chance"}]}]},{"t":3,"p":1,"n":"LVSG - Epic Loot Chance"},{"t":2,"p":1,"n":"ONAM - Override Name"}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLM - Max Count"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Use Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"},{"t":3,"p":1,"n":"Chance None"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":7,"p":1,"n":"LLKC - Filter Keyword Chances","c":[{"t":6,"p":1,"n":"Filter","c":[{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Chance"}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Breakable FX"},{"t":11,"n":"MODT - Texture Files Hashes"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":2,"p":1,"n":"SNAM - SWF"},{"t":2,"p":1,"n":"NNAM - Short Title"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":11,"p":1,"n":"Magic Skill (unused)"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archetype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"FIMD - Featured Item Message"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":7,"p":1,"n":"CVPA - Components","c":[{"t":6,"p":1,"n":"Component","c":[{"t":3,"p":1,"n":"Component"},{"t":3,"p":1,"n":"Count"}]}]},{"t":7,"p":1,"n":"CDIX - Component Display Indices","c":[{"t":3,"p":1,"n":"Display Index"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Movement Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Walk - Left"},{"t":5,"p":1,"n":"Run - Left"},{"t":5,"p":1,"n":"Walk - Right"},{"t":5,"p":1,"n":"Run - Right"},{"t":5,"p":1,"n":"Walk - Forward"},{"t":5,"p":1,"n":"Run - Forward"},{"t":5,"p":1,"n":"Sprint - Forward"},{"t":5,"p":1,"n":"Walk - Back"},{"t":5,"p":1,"n":"Run - Back"},{"t":5,"p":1,"n":"Standing - Pitch"},{"t":5,"p":1,"n":"Walk - Pitch"},{"t":5,"p":1,"n":"Run - Pitch"},{"t":5,"p":1,"n":"Sprint - Pitch"},{"t":5,"p":1,"n":"Standing - Yaw"},{"t":5,"p":1,"n":"Walk - Yaw"},{"t":5,"p":1,"n":"Run - Yaw"},{"t":5,"p":1,"n":"Sprint - Yaw"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds (unused)","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]},{"t":5,"p":1,"n":"JNAM - Float Height"},{"t":5,"p":1,"n":"LNAM - Flight - Angle Gain"}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"DATA - On Local Map"},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MSWP - Material Swap","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FNAM - Tree Folder"},{"t":10,"p":1,"n":"Material Substitutions","d":1,"c":[{"t":6,"p":1,"n":"Substitution","c":[{"t":2,"p":1,"n":"BNAM - Original Material"},{"t":2,"p":1,"n":"SNAM - Replacement Material"},{"t":2,"p":1,"n":"FNAM - Tree Folder (obsolete)"},{"t":5,"p":1,"n":"CNAM - Color Remapping Index"}]}]}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Data"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":11,"n":"Unknown"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":11,"n":"NVSI - Unknown"}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Navmesh Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":11,"n":"Vertices and Triangles"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"NNAM - Unknown"},{"t":11,"n":"MNAM - Unknown"}]},{"t":1,"n":"NOCM - Navigation Mesh Obstacle Manager","d":1,"c":[{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":3,"n":"INDX - Index"},{"t":8,"n":"Unknown","c":[{"t":11,"n":"DATA - Unknown"}]},{"t":11,"n":"INTV - Unknown"},{"t":2,"n":"NAM1 - Model"}]}]}]},{"t":1,"p":1,"n":"NOTE - Note","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"DNAM - Type"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Terminal"},{"t":2,"p":1,"n":"PNAM - Program File"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":3,"n":"STCP - Unknown"},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"XP Value Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Disposition Base"},{"t":3,"p":1,"n":"Use Template Actors"},{"t":3,"p":1,"n":"Bleedout Override"},{"t":11,"n":"Unknown"}]},{"t":8,"s":1,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Default Template"},{"t":3,"p":1,"n":"LTPT - Legendary Template"},{"t":3,"p":1,"n":"LTPC - Legendary Chance"},{"t":6,"s":1,"p":1,"n":"TPTA - Template Actors","c":[{"t":3,"p":1,"n":"Traits"},{"t":3,"p":1,"n":"Stats"},{"t":3,"p":1,"n":"Factions"},{"t":3,"p":1,"n":"Spell List"},{"t":3,"p":1,"n":"AI Data"},{"t":3,"p":1,"n":"AI Packages"},{"t":3,"p":1,"n":"Model\/Animation"},{"t":3,"p":1,"n":"Base Data"},{"t":3,"p":1,"n":"Inventory"},{"t":3,"p":1,"n":"Script"},{"t":3,"p":1,"n":"Def Pack List"},{"t":3,"p":1,"n":"Attack Data"},{"t":3,"p":1,"n":"Keywords"}]},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Action Points Mult"},{"t":3,"p":1,"n":"Stagger Offset"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"},{"t":3,"p":1,"n":"ATKW - Weapon Slot"},{"t":3,"p":1,"n":"ATKS - Required Slot"},{"t":2,"p":1,"n":"ATKT - Description"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator Override Package List"},{"t":3,"p":1,"n":"OCOR - Observe Dead Body Override Package List"},{"t":3,"p":1,"n":"GWOR - Guard Warn Override Package List"},{"t":3,"p":1,"n":"ECOR - Combat Override Package List"},{"t":3,"p":1,"n":"FCPL - Follower Command Package List"},{"t":3,"p":1,"n":"RCLR - Follower Elevator Package List"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"}]}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]},{"t":11,"n":"Unknown"}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"APPR - Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Object Template","c":[{"t":3,"p":1,"n":"OBTE - Count"},{"t":8,"p":1,"n":"Combinations","c":[{"t":6,"p":1,"n":"Combination","c":[{"p":1,"n":"OBTF - Editor Only"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"OBTS - Object Mod Template Item","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":3,"p":1,"n":"Level Min"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Level Max"},{"t":3,"p":1,"n":"ID"},{"t":3,"p":1,"n":"Default"},{"t":7,"p":1,"n":"Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"Min Level For Ranks"},{"t":3,"p":1,"n":"Alt Levels Per Tier"},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Attach Point Index"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]}]}]},{"p":1,"n":"STOP - Marker"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - ","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Far Away Model Distance"},{"t":3,"p":1,"n":"Geared Up Weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}]},{"t":3,"p":1,"n":"HCLF - Hair Color"},{"t":3,"p":1,"n":"BCLF - Facial Hair Color"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height Min"},{"t":5,"n":"NAM7 - Unused"},{"t":5,"p":1,"n":"NAM4 - Height Max"},{"t":6,"s":1,"p":1,"n":"MWGT - Weight","c":[{"t":5,"p":1,"n":"Thin"},{"t":5,"p":1,"n":"Muscular"},{"t":5,"p":1,"n":"Fat"}]},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":6,"s":1,"p":1,"n":"Actor Sounds","c":[{"t":3,"p":1,"n":"CS2H - Count"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CS2K - Keyword"},{"t":3,"p":1,"n":"CS2D - Sound"}]}]},{"p":1,"n":"CS2E - End Marker"},{"t":11,"p":1,"n":"CS2F - Finalize"}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"PFRN - Power Armor Stand"},{"t":3,"p":1,"n":"DOFT - Default Outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping Outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime Faction"},{"t":3,"p":1,"n":"FTST - Head Texture"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]},{"t":7,"p":1,"n":"MSDK - Morph Keys","c":[{"t":3,"p":1,"n":"Key"}]},{"t":7,"p":1,"n":"MSDV - Morph Values","c":[{"t":5,"p":1,"n":"Value"}]},{"t":10,"p":1,"n":"Face Tinting Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"TETI - Index","c":[{"t":3,"p":1,"n":"Data Type"},{"t":3,"p":1,"n":"Index"}]},{"t":6,"p":1,"n":"TEND - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Template Color Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MRSV - Body Morph Region Values","c":[{"t":5,"p":1,"n":"Head"},{"t":5,"p":1,"n":"Upper Torso"},{"t":5,"p":1,"n":"Arms"},{"t":5,"p":1,"n":"Lower Torso"},{"t":5,"p":1,"n":"Legs"}]},{"t":10,"p":1,"n":"Face Morphs","d":1,"c":[{"t":6,"p":1,"n":"Face Morph","c":[{"t":3,"p":1,"n":"FMRI - Index"},{"t":6,"p":1,"n":"FMRS - Values","c":[{"t":5,"p":1,"n":"Position - X"},{"t":5,"p":1,"n":"Position - Y"},{"t":5,"p":1,"n":"Position - Z"},{"t":5,"p":1,"n":"Rotation - X"},{"t":5,"p":1,"n":"Rotation - Y"},{"t":5,"p":1,"n":"Rotation - Z"},{"t":5,"p":1,"n":"Scale"},{"t":11,"n":"Unknown"}]}]}]},{"t":5,"p":1,"n":"FMIN - Facial Morph Intensity"},{"t":2,"p":1,"n":"ATTX - Activate Text Override"}]},{"t":1,"p":1,"n":"OMOD - Object Modification","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Attach Point"},{"t":7,"p":1,"n":"Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":11,"p":1,"n":"Value 1"},{"t":11,"p":1,"n":"Value 2"}]}]},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Minimum Level"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]},{"t":7,"p":1,"n":"MNAM - Target OMOD Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"FNAM - Filter Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"LNAM - Loose Mod"},{"t":3,"p":1,"n":"NAM1 - Priority"},{"t":2,"p":1,"n":"FLTR - Filter"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items","c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"n":"OVIS - Object Visibility Manager","d":1,"c":[{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":3,"n":"INDX - Object"},{"t":6,"n":"DATA - Object Bounds","c":[{"t":5,"n":"X1"},{"t":5,"n":"Y1"},{"t":5,"n":"Z1"},{"t":5,"n":"X2"},{"t":5,"n":"Y2"},{"t":5,"n":"Z2"}]}]}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Ref Alias"},{"t":3,"p":1,"n":"Loc Alias"},{"t":3,"p":1,"n":"Interrupt Data"},{"t":3,"p":1,"n":"Packdata Target"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Ref Collection Alias"},{"t":3,"p":1,"n":"Radius"},{"t":3,"p":1,"n":"Collection Index"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Interrupt Data"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ICON - Image"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":2,"p":1,"n":"FNAM - SWF"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":3,"p":1,"n":"EPFB - Perk Entry ID (unique)"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PKIN - Pack-In","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FLTR - Filter"},{"t":3,"p":1,"n":"CNAM - Cell"},{"t":3,"p":1,"n":"VNAM - Version"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":11,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"},{"t":3,"p":1,"n":"Tracer Frequency"},{"t":3,"p":1,"n":"VATS Projectile"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"scriptName"},{"t":6,"p":1,"n":"Script Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":11,"n":"Unused"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":3,"p":1,"n":"LNAM - Location"},{"t":3,"p":1,"n":"XNAM - Quest Completion XP"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"p":1,"n":"Stages","d":1,"c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"NAM2 - Note"},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":3,"p":1,"n":"Keyword"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"n":"ANAM - Next Alias ID"},{"t":8,"s":1,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":3,"p":1,"n":"ALCC - Closest To Alias"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":7,"p":1,"n":"ALLA - Linked Aliases","c":[{"t":6,"p":1,"n":"Linked Alias","c":[{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Alias"}]}]},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":3,"p":1,"n":"ALFV - Forced Voice"},{"t":3,"p":1,"n":"ALDI - Death Item"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":3,"p":1,"n":"GNAM - Quest Group"},{"t":2,"p":1,"n":"SNAM - SWF File"}]},{"t":1,"p":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"STCP - Sound"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":3,"n":"WNAM - Skin"},{"t":6,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":7,"n":"PRPS - Properties","c":[{"t":6,"n":"Property","c":[{"t":3,"n":"Actor Value"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"APPR - Attach Parent Slots","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":5,"n":"Male Height"},{"t":5,"n":"Female Height"},{"t":6,"n":"Male Default Weight","c":[{"t":5,"n":"Thin"},{"t":5,"n":"Muscular"},{"t":5,"n":"Fat"}]},{"t":6,"n":"Female Default Weight","c":[{"t":5,"n":"Thin"},{"t":5,"n":"Muscular"},{"t":5,"n":"Fat"}]},{"t":3,"n":"Flags"},{"t":5,"n":"Acceleration Rate"},{"t":5,"n":"Deceleration Rate"},{"t":3,"n":"Size"},{"t":11,"n":"Unknown"},{"t":5,"n":"Injured Health Pct"},{"t":3,"n":"Shield Biped Object"},{"t":3,"n":"Beard Biped Object"},{"t":3,"n":"Body Biped Object"},{"t":5,"n":"Aim Angle Tolerance"},{"t":5,"n":"Flight Radius"},{"t":5,"n":"Angular Acceleration Rate"},{"t":5,"n":"Angular Tolerance"},{"t":3,"n":"Flags 2","c":[{"t":4,"n":"Use Advanced Avoidance"},{"t":4,"n":"Non-Hostile"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Allow Mounted Combat"}]},{"t":3,"n":"Pipboy Biped Object"},{"t":3,"n":"XP Value"},{"t":5,"n":"Severable - Debris Scale"},{"t":3,"n":"Severable - Debris Count"},{"t":3,"n":"Severable - Decal Count"},{"t":5,"n":"Explodable - Debris Scale"},{"t":3,"n":"Explodable - Debris Count"},{"t":3,"n":"Explodable - Decal Count"},{"t":3,"n":"Severable - Explosion"},{"t":3,"n":"Severable - Debris"},{"t":3,"n":"Severable - Impact DataSet"},{"t":3,"n":"Explodable - Explosion"},{"t":3,"n":"Explodable - Debris"},{"t":3,"n":"Explodable - Impact DataSet"},{"t":5,"n":"OnCripple - Debris Scale"},{"t":3,"n":"OnCripple - Debris Count"},{"t":3,"n":"OnCripple - Decal Count"},{"t":3,"n":"OnCripple - Explosion"},{"t":3,"n":"OnCripple - Debris"},{"t":3,"n":"OnCripple - Impact DataSet"},{"t":3,"n":"Explodable - Subsegment Explosion"},{"t":5,"n":"Orientation Limits - Pitch"},{"t":5,"n":"Orientation Limits - Roll"}]},{"n":"MNAM - Male Marker"},{"t":2,"n":"ANAM - Male Skeletal Model"},{"t":11,"n":"MODT - Texture Files Hashes"},{"n":"FNAM - Female Marker"},{"t":2,"n":"ANAM - Female Skeletal Model"},{"n":"NAM2 - Marker NAM2 #1"},{"t":8,"n":"MTNM - Movement Type Names","c":[{"t":2,"n":"MTNM - Name"}]},{"t":7,"n":"VTCK - Voices","c":[{"t":3,"n":"Male"},{"t":3,"n":"Female"}]},{"t":7,"n":"HCLF - Default Hair Colors","c":[{"t":3,"n":"Male"},{"t":3,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Action Points Mult"},{"t":3,"n":"Stagger Offset"}]},{"t":2,"n":"ATKE - Attack Event"},{"t":3,"n":"ATKW - Weapon Slot"},{"t":3,"n":"ATKS - Required Slot"},{"t":2,"n":"ATKT - Description"}]}]},{"t":6,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"INDX - Index"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":3,"n":"MODS - Material Swap"},{"t":5,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]}]}]},{"t":6,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"INDX - Index"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":3,"n":"MODS - Material Swap"},{"t":5,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]}]}]}]},{"t":3,"n":"GNAM - Body Part Data"},{"n":"NAM2 - Marker NAM2 #2"},{"n":"NAM3 - Marker NAM3 #3"},{"t":6,"n":"Male Behavior Graph","c":[{"n":"MNAM - Male Data Marker"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":3,"n":"MODS - Material Swap"},{"t":5,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":6,"n":"Female Behavior Graph","c":[{"n":"FNAM - Female Data Marker"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model FileName"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":3,"n":"MODS - Material Swap"},{"t":5,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":3,"n":"NAM4 - Impact Material Type"},{"t":3,"n":"NAM5 - Impact Data Set"},{"t":3,"n":"NAM7 - Dismember Blood Art"},{"t":3,"n":"CNAM - Meat Cap TextureSet"},{"t":3,"n":"NAM2 - Collar TextureSet"},{"t":3,"n":"ONAM - Sound - Open Corpse"},{"t":3,"n":"LNAM - Sound - Close Corpse"},{"t":8,"n":"Biped Object Names","c":[{"t":2,"n":"NAME - Name"}]},{"t":7,"n":"RBPC - Biped Object Conditions","c":[{"t":3,"n":"Slot 30+"}]},{"t":10,"n":"Movement Data Overrides","c":[{"t":6,"n":"Override","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Movement Data","c":[{"t":5,"n":"Unknown"},{"t":5,"n":"Walk - Left"},{"t":5,"n":"Run - Left"},{"t":5,"n":"Walk - Right"},{"t":5,"n":"Run - Right"},{"t":5,"n":"Walk - Forward"},{"t":5,"n":"Run - Forward"},{"t":5,"n":"Sprint - Forward"},{"t":5,"n":"Walk - Back"},{"t":5,"n":"Run - Back"},{"t":5,"n":"Standing - Pitch"},{"t":5,"n":"Walk - Pitch"},{"t":5,"n":"Run - Pitch"},{"t":5,"n":"Sprint - Pitch"},{"t":5,"n":"Standing - Yaw"},{"t":5,"n":"Walk - Yaw"},{"t":5,"n":"Run - Yaw"},{"t":5,"n":"Sprint - Yaw"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags","c":[{"t":4,"n":"Hand To Hand Melee"},{"t":4,"n":"One Hand Sword"},{"t":4,"n":"One Hand Dagger"},{"t":4,"n":"One Hand Axe"},{"t":4,"n":"One Hand Mace"},{"t":4,"n":"Two Hand Sword"},{"t":4,"n":"Two Hand Axe"},{"t":4,"n":"Bow"},{"t":4,"n":"Staff"},{"t":4,"n":"Spell"},{"t":4,"n":"Shield"},{"t":4,"n":"Torch"},{"t":4,"n":"Crossbow"}]},{"t":8,"n":"Equip Slots","c":[{"t":6,"n":"Equip Slot","c":[{"t":3,"n":"QNAM - Equip Slot"},{"t":2,"n":"ZNAM - Node"}]}]},{"t":3,"n":"UNWP - Unarmed Weapon"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]}]},{"t":3,"n":"WKMV - Base Movement Defaults - Default"},{"t":3,"n":"SWMV - Base Movement Defaults - Swim"},{"t":3,"n":"FLMV - Base Movement Defaults - Fly"},{"t":3,"n":"SNMV - Base Movement Defaults - Sneak"},{"n":"NAM0 - Head Data Marker"},{"n":"MNAM - Male Data Marker"},{"t":6,"n":"NNAM - Male Neck Fat Adjustments Scale","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"}]},{"t":10,"n":"Male Head Parts","c":[{"t":6,"n":"Head Part","c":[{"t":3,"n":"INDX - Head Part Number"},{"t":3,"n":"HEAD - Head"}]}]},{"t":8,"n":"Male Race Presets","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"Male Hair Colors","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"Male Face Details","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Male Default Face Texture"},{"t":8,"p":1,"n":"Male Tint Layers","c":[{"t":6,"p":1,"n":"Group","c":[{"t":2,"n":"TTGP - Group Name"},{"t":8,"p":1,"n":"Options","c":[{"t":6,"p":1,"n":"Option","c":[{"t":6,"n":"TETI - Index","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Index"}]},{"t":2,"n":"TTGP - Name"},{"t":11,"n":"TTEF - Unknown"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Actor"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Player Action"},{"t":3,"n":"Alias"},{"t":3,"n":"Alignment"},{"t":3,"n":"Association Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Faction"},{"t":3,"n":"Form List"},{"t":3,"n":"Form Type"},{"t":3,"n":"Furniture"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Global"},{"t":3,"n":"Idle"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Keyword"},{"t":3,"n":"Location"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Owner"},{"t":3,"n":"Package"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Perk"},{"t":3,"n":"Quest"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Race"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Region"},{"t":3,"n":"Scene"},{"t":3,"n":"Sex"},{"t":3,"n":"Shout"},{"t":3,"n":"Variable Name"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (unused)"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Ward State"},{"t":3,"n":"Weather"},{"t":3,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"n":"Damage Type"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Textures","c":[{"t":2,"n":"TTET - Texture"}]},{"t":11,"n":"TTEB - Unknown"},{"t":7,"n":"TTEC - Template Colors","c":[{"t":6,"n":"Template Color","c":[{"t":3,"n":"Color"},{"t":5,"n":"Alpha"},{"t":3,"n":"Template Index"},{"t":11,"n":"Unknown"}]}]},{"t":5,"n":"TTED - Unknown"}]}]},{"t":11,"n":"TTGE - Group End"}]}]},{"t":8,"n":"Male Morph Groups","c":[{"t":6,"n":"Morph Group","c":[{"t":2,"n":"MPGN - Name"},{"t":3,"n":"MPPC - Count"},{"t":8,"n":"Morph Presets","c":[{"t":6,"n":"Morph Preset","c":[{"t":3,"n":"MPPI - Index"},{"t":2,"n":"MPPN - Name"},{"t":2,"n":"MPPM - Unknown"},{"t":3,"n":"MPPT - Texture"},{"t":11,"n":"MPPF - Unknown"}]}]},{"t":11,"n":"MPPK - Unknown"},{"t":11,"n":"MPGS - Unknown"}]}]},{"t":8,"n":"Male Face Morphs","c":[{"t":6,"n":"Face Morph","c":[{"t":3,"n":"FMRI - Index"},{"t":2,"n":"FMRN - Name"}]}]},{"t":2,"n":"WMAP - Male Wrinkle Map Path"},{"n":"FNAM - Female Data Marker"},{"t":6,"n":"NNAM - Female Neck Fat Adjustments Scale","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"}]},{"t":10,"n":"Female Head Parts","c":[{"t":6,"n":"Head Part","c":[{"t":3,"n":"INDX - Head Part Number"},{"t":3,"n":"HEAD - Head"}]}]},{"t":8,"n":"Female Race Presets","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"Female Hair Colors","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"Female Face Details","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Female Default Face Texture"},{"t":8,"p":1,"n":"Female Tint Layers","c":[{"t":6,"p":1,"n":"Group","c":[{"t":2,"n":"TTGP - Group Name"},{"t":8,"p":1,"n":"Options","c":[{"t":6,"p":1,"n":"Option","c":[{"t":6,"n":"TETI - Index","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Index"}]},{"t":2,"n":"TTGP - Name"},{"t":11,"n":"TTEF - Unknown"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Actor"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Player Action"},{"t":3,"n":"Alias"},{"t":3,"n":"Alignment"},{"t":3,"n":"Association Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Faction"},{"t":3,"n":"Form List"},{"t":3,"n":"Form Type"},{"t":3,"n":"Furniture"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Global"},{"t":3,"n":"Idle"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Keyword"},{"t":3,"n":"Location"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Owner"},{"t":3,"n":"Package"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Perk"},{"t":3,"n":"Quest"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Race"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Region"},{"t":3,"n":"Scene"},{"t":3,"n":"Sex"},{"t":3,"n":"Shout"},{"t":3,"n":"Variable Name"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (unused)"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Ward State"},{"t":3,"n":"Weather"},{"t":3,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"n":"Damage Type"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Textures","c":[{"t":2,"n":"TTET - Texture"}]},{"t":11,"n":"TTEB - Unknown"},{"t":7,"n":"TTEC - Template Colors","c":[{"t":6,"n":"Template Color","c":[{"t":3,"n":"Color"},{"t":5,"n":"Alpha"},{"t":3,"n":"Template Index"},{"t":11,"n":"Unknown"}]}]},{"t":5,"n":"TTED - Unknown"}]}]},{"t":11,"n":"TTGE - Group End"}]}]},{"t":8,"n":"Female Morph Groups","c":[{"t":6,"n":"Morph Group","c":[{"t":2,"n":"MPGN - Name"},{"t":3,"n":"MPPC - Count"},{"t":8,"n":"Morph Presets","c":[{"t":6,"n":"Morph Preset","c":[{"t":3,"n":"MPPI - Index"},{"t":2,"n":"MPPN - Name"},{"t":2,"n":"MPPM - Unknown"},{"t":3,"n":"MPPT - Texture"},{"t":11,"n":"MPPF - Unknown"}]}]},{"t":11,"n":"MPPK - Unknown"},{"t":11,"n":"MPGS - Unknown"}]}]},{"t":8,"n":"Female Face Morphs","c":[{"t":6,"n":"Face Morph","c":[{"t":3,"n":"FMRI - Index"},{"t":2,"n":"FMRN - Name"}]}]},{"t":2,"n":"WMAP - Female Wrinkle Map Path"},{"t":3,"n":"NAM8 - Morph Race"},{"t":3,"n":"RNAM - Armor Race"},{"t":3,"n":"SRAC - Subgraph Template Race"},{"t":3,"n":"SADD - Subgraph Additive Race"},{"t":8,"n":"Subgraph Data","c":[{"t":6,"n":"Data","c":[{"t":2,"n":"SGNM - Behaviour Graph"},{"t":8,"n":"Actor Keywords","c":[{"t":3,"n":"SAKD - Keyword"}]},{"t":8,"n":"Target Keywords","c":[{"t":3,"n":"STKD - Keyword"}]},{"t":8,"n":"Animation Paths","c":[{"t":2,"n":"SAPT - Path"}]},{"t":6,"n":"SRAF - Flags","c":[{"t":3,"n":"Role"},{"t":3,"n":"Perspective"}]}]}]},{"t":5,"n":"PTOP - Idle Chatter Time Min"},{"t":5,"n":"NTOP - Idle Chatter Time Max"},{"t":8,"n":"Morph Values","c":[{"t":6,"n":"Value","c":[{"t":3,"n":"MSID - Index"},{"t":2,"n":"MSM0 - Min Name"},{"t":2,"n":"MSM1 - Max Name"}]}]},{"t":11,"n":"MLSI - Unknown"},{"t":2,"n":"HNAM - Hair Color Lookup Texture"},{"t":2,"n":"HLTX - Hair Color Extended Lookup Texture"},{"t":3,"n":"QSTI - Dialogue Quest"},{"t":8,"n":"Bone Data","c":[{"t":6,"n":"Data","c":[{"t":3,"n":"BSMP - Gender"},{"t":8,"n":"Bones","c":[{"t":6,"n":"Bone","c":[{"t":2,"n":"BSMB - Name"},{"t":7,"n":"BSMS - Values","c":[{"t":5,"n":"Value"}]},{"t":11,"n":"BMMP - Unknown"}]}]}]}]}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.0+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":5,"p":1,"n":"Near Clip"},{"t":5,"p":1,"n":"Volumetric Intensity"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]},{"t":3,"p":1,"n":"Transition Interior"}]},{"t":3,"p":1,"n":"XTNM - Teleport Loc Name"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XASP - Acoustic Restriction"},{"p":1,"n":"XATP - Activation Point"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":6,"s":1,"p":1,"n":"XRDO - Radio","c":[{"t":5,"p":1,"n":"Frequency"},{"t":5,"p":1,"n":"Min Weak Distance"},{"t":5,"p":1,"n":"Max Weak Distance"},{"t":3,"p":1,"n":"Flags"}]},{"t":6,"s":1,"p":1,"n":"XBSD - Spline","c":[{"t":5,"p":1,"n":"Slack"},{"t":5,"p":1,"n":"Thickness"},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Wind - Detached End"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XPDD - Projected Decal","c":[{"t":5,"p":1,"n":"Width Scale"},{"t":5,"p":1,"n":"Height Scale"}]},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":3,"p":1,"n":"XHLT - Health %"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":8,"s":1,"p":1,"n":"Spline Connection","d":1,"c":[{"t":6,"p":1,"n":"XPLK - Link","c":[{"t":3,"p":1,"n":"Ref"},{"t":11,"n":"Unknown"}]}]},{"t":6,"s":1,"p":1,"n":"Power Grid","c":[{"t":3,"p":1,"n":"XWPG - Count"},{"t":8,"p":1,"n":"Connections","c":[{"t":6,"p":1,"n":"XWPN - Connection","c":[{"t":3,"p":1,"n":"Node 1"},{"t":3,"p":1,"n":"Node 2"},{"t":3,"p":1,"n":"Line"}]}]}]},{"t":11,"n":"XCVR - Unknown"},{"t":11,"n":"XCVL - Unknown"},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":11,"n":"ANAM - Unknown"}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":5,"p":1,"n":"RLDM - LOD Display Distance Multiplier"},{"t":5,"p":1,"n":"ANAM - Occlusion Accuracy Dist"}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]},{"t":3,"p":1,"n":"ANAM - Reverb Class"}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RFGP - Reference Group","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"NNAM - Name"},{"t":3,"p":1,"n":"RNAM - Reference"},{"t":11,"n":"PNAM - Unknown"}]},{"t":1,"p":1,"n":"SCCO - Scene Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Scenes","d":1,"c":[{"t":6,"p":1,"n":"Scene","c":[{"t":3,"p":1,"n":"SNAM - Scene"},{"t":6,"n":"XNAM - Unknown","c":[{"t":3,"n":"Unknown"}]}]}]},{"t":11,"n":"VNAM - Unknown"},{"t":8,"n":"Unknown","c":[{"t":6,"n":"XNAM - Unknown","c":[{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker Start Conditions"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker Completion Conditions"},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":6,"p":1,"n":"SCQS - Set Parent Quest Stage","c":[{"t":3,"p":1,"n":"On Start"},{"t":3,"p":1,"n":"On Completion"}]},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Alias ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Alias ID"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer - Max Seconds"},{"t":3,"p":1,"n":"SCQS - Set Parent Quest Stage"},{"t":5,"p":1,"n":"TNAM - Timer - Min Seconds"},{"t":11,"n":"STSC - Unknown"},{"t":8,"p":1,"n":"Start Scenes","c":[{"t":6,"p":1,"n":"Start Scene","c":[{"t":3,"p":1,"n":"LCEP - Scene"},{"t":3,"p":1,"n":"INTT - Phase Index"},{"t":2,"p":1,"n":"SSPN - Start Phase for Scene"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":3,"p":1,"n":"PTOP - Player Positive Response"},{"t":3,"p":1,"n":"NTOP - Player Negative Response"},{"t":3,"p":1,"n":"NETO - Player Neutral Response"},{"t":3,"p":1,"n":"QTOP - Player Question Response"},{"t":3,"p":1,"n":"VENC - Player Positive Dialogue Subtype"},{"t":3,"p":1,"n":"PLVD - Player Negative Dialogue Subtype"},{"t":3,"p":1,"n":"JOUT - Player Neutral Dialogue Subtype"},{"t":3,"p":1,"n":"DALC - Player Question Dialogue Subtype"},{"t":7,"p":1,"n":"DTID - NPC Headtracking","c":[{"t":3,"p":1,"n":"Actor ID"}]},{"t":3,"p":1,"n":"NPOT - NPC Positive Response"},{"t":3,"p":1,"n":"NNGT - NPC Negative Response"},{"t":3,"p":1,"n":"NNUT - NPC Neutral Response"},{"t":3,"p":1,"n":"NQUT - NPC Question Response"},{"t":3,"p":1,"n":"NPOS - NPC Positive Dialogue Subtype"},{"t":3,"p":1,"n":"NNGS - NPC Negative Dialogue Subtype"},{"t":3,"p":1,"n":"NNUS - NPC Neutral Dialogue Subtype"},{"t":3,"p":1,"n":"NQUS - NPC Question Dialogue Subtype"},{"t":3,"p":1,"n":"DTGT - Dialogue Target Actor"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"p":1,"n":"End Scene Say Greeting"},{"t":3,"p":1,"n":"Play Sound"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":6,"p":1,"n":"CRIS - Camera","c":[{"t":5,"p":1,"n":"FOV On Player Camera"},{"t":5,"p":1,"n":"Rate Of Camera Change"}]},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":7,"p":1,"n":"HTID - Player Headtracking","c":[{"t":3,"p":1,"n":"Actor ID"}]},{"t":3,"p":1,"n":"VENC - Dialogue Subtype"},{"t":3,"p":1,"n":"PNAM - AnimArchType"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":5,"p":1,"n":"CNAM - Camera Distance Override"},{"t":5,"p":1,"n":"ACTV - Dialogue Distance Override"},{"t":5,"p":1,"n":"CRIS - FOV Override"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"SCQS - Set Parent Quest Stage","c":[{"t":3,"p":1,"n":"On Begin"},{"t":3,"p":1,"n":"On End"}]},{"t":2,"p":1,"n":"NNAM - Notes"},{"t":3,"p":1,"n":"TNAM - Template Scene"},{"t":3,"p":1,"n":"XNAM - Index"}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"FLTR - Filter"},{"t":10,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements","c":[{"t":6,"p":1,"n":"Placement","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Scale"}]}]}]}]}]},{"t":1,"p":1,"n":"SCSN - Audio Category Snapshot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Priority"},{"t":8,"s":1,"p":1,"n":"Category Multipliers","d":1,"c":[{"t":6,"p":1,"n":"CNAM - Category Multiplier","c":[{"t":3,"p":1,"n":"Categoty"},{"t":5,"p":1,"n":"Multiplier"}]}]}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":5,"p":1,"n":"HNAM - Hours until reset"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent Category"},{"t":3,"p":1,"n":"ONAM - Menu Slider Category"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"},{"t":5,"p":1,"n":"MNAM - Min Frequency Multiplier"},{"t":5,"p":1,"n":"CNAM - Sidechain Target Multiplier"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"NNAM - Notes"},{"t":3,"p":1,"n":"CNAM - Descriptor Type"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Sidechain"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]},{"t":3,"p":1,"n":"Base Descriptor"},{"t":8,"s":1,"p":1,"n":"Descriptors","d":1,"c":[{"t":3,"p":1,"n":"DNAM - Descriptor"}]},{"t":3,"n":"ITMC - Count"},{"t":10,"p":1,"n":"Rates of Fire","d":1,"c":[{"t":6,"p":1,"n":"Sound","c":[{"p":1,"n":"ITMS - Marker Start"},{"t":3,"p":1,"n":"INTV - RoF (RPM)"},{"t":2,"p":1,"n":"FNAM - File"},{"p":1,"n":"ITME - Marker End"}]}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":3,"p":1,"n":"MNAM - Type"},{"t":3,"p":1,"n":"VNAM - Static Attenuation"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"FL"},{"t":3,"p":1,"n":"FR"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"SL"},{"t":3,"p":1,"n":"SR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"FL"},{"t":3,"p":1,"n":"FR"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"SL"},{"t":3,"p":1,"n":"SR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"FL"},{"t":3,"p":1,"n":"FR"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"SL"},{"t":3,"p":1,"n":"SR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ATTN - Attenuation Values","c":[{"t":5,"p":1,"n":"Fade In Distance - Start"},{"t":5,"p":1,"n":"Fade In Distance - End"},{"t":5,"p":1,"n":"Fade Out Distance - Start"},{"t":5,"p":1,"n":"Fade Out Distance - End"},{"t":6,"p":1,"n":"Fade In Curve","c":[{"t":3,"p":1,"n":"Value 1"},{"t":3,"p":1,"n":"Value 2"},{"t":3,"p":1,"n":"Value 3"},{"t":3,"p":1,"n":"Value 4"}]},{"t":6,"p":1,"n":"Fade Out Curve","c":[{"t":3,"p":1,"n":"Value 1"},{"t":3,"p":1,"n":"Value 2"},{"t":3,"p":1,"n":"Value 3"},{"t":3,"p":1,"n":"Value 4"}]}]},{"t":3,"p":1,"n":"ENAM - Effect Chain"}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"},{"t":6,"s":1,"p":1,"n":"REPT - Repeat","c":[{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Max Time"},{"t":3,"p":1,"n":"Stackable"}]}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Casting Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"MNAM - Particle Texture"}]},{"t":1,"p":1,"n":"STAG - Animation Sound Tag Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"TNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":2,"p":1,"n":"Action"}]}]}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]},{"t":6,"s":1,"p":1,"n":"NVNM - Navmesh Geometry","c":[{"t":3,"p":1,"n":"Version"},{"t":11,"p":1,"n":"Magic"},{"t":3,"p":1,"n":"Parent Worldspace"},{"t":6,"p":1,"n":"Coordinates","c":[{"t":3,"p":1,"n":"Grid Y"},{"t":3,"p":1,"n":"Grid X"}]},{"t":3,"p":1,"n":"Parent Cell"},{"t":11,"p":1,"n":"Vertices and Triangles"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TERM - Terminal","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"NAM0 - Header Text"},{"t":2,"p":1,"n":"WNAM - Welcome Text"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":11,"n":"WBDT - Workbench Data (unused)"},{"t":2,"p":1,"n":"XMRK - Marker Model"},{"t":7,"p":1,"n":"SNAM - Marker Paramaters","c":[{"t":6,"p":1,"n":"Marker","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Offset Z"},{"t":5,"p":1,"n":"Rotation Z"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Entry Types"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"BSIZ - Count"},{"t":8,"s":1,"p":1,"n":"Body Text","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":2,"p":1,"n":"BTXT - Text"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":3,"n":"ISIZ - Count"},{"t":8,"s":1,"p":1,"n":"Menu Items","d":1,"c":[{"t":6,"p":1,"n":"Menu Item","c":[{"t":2,"p":1,"n":"ITXT - Item Text"},{"t":2,"p":1,"n":"RNAM - Response Text"},{"t":3,"p":1,"n":"ANAM - Type"},{"t":3,"p":1,"n":"ITID - Item ID"},{"t":2,"p":1,"n":"UNAM - Display Text"},{"t":2,"p":1,"n":"VNAM - Show Image"},{"t":3,"p":1,"n":"TNAM - Submenu"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TRNS - Transform","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":5,"p":1,"n":"Scale"},{"t":5,"p":1,"n":"Zoom Min"},{"t":5,"p":1,"n":"Zoom Max"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX03 - Glow"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX02 - Wrinkles"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Smooth Spec"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":3,"p":1,"n":"Alpha Threshold?"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]},{"t":2,"p":1,"n":"MNAM - Material"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"ANAM - Opacity (unused)"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":3,"p":1,"n":"TNAM - Material (unused)"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Consume Spell"},{"t":3,"p":1,"n":"YNAM - Contact Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":11,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":6,"p":1,"n":"Fog Properties","c":[{"t":5,"p":1,"n":"Depth Amount"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Shallow Range"},{"t":5,"p":1,"n":"Color Deep Range"},{"t":5,"p":1,"n":"Shallow Alpha"},{"t":5,"p":1,"n":"Deep Alpha"},{"t":5,"p":1,"n":"Alpha Shallow Range"},{"t":5,"p":1,"n":"Alpha Deep Range"},{"t":6,"p":1,"n":"Underwater Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Underwater Fog Amount"},{"t":5,"p":1,"n":"Underwater Near Fog"},{"t":5,"p":1,"n":"Underwater Far Fog"}]},{"t":6,"p":1,"n":"Physical Properties","c":[{"t":5,"p":1,"n":"Normal Magnitude"},{"t":5,"p":1,"n":"Shallow Normal Falloff"},{"t":5,"p":1,"n":"Deep Normal Falloff"},{"t":5,"p":1,"n":"Reflectivity Amount"},{"t":5,"p":1,"n":"Fresnel Amount"},{"t":5,"p":1,"n":"Surface Effect Falloff"},{"t":6,"p":1,"n":"Displacement Simulator","c":[{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Velocity"},{"t":5,"p":1,"n":"Falloff"},{"t":5,"p":1,"n":"Dampener"},{"t":5,"p":1,"n":"Starting Size"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular Properties","c":[{"t":5,"p":1,"n":"Sun Specular Power"},{"t":5,"p":1,"n":"Sun Specular Magnitude"},{"t":5,"p":1,"n":"Sun Sparkle Power"},{"t":5,"p":1,"n":"Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Interior Specular Radius"},{"t":5,"p":1,"n":"Interior Specular Brightness"},{"t":5,"p":1,"n":"Interior Specular Power"}]},{"t":6,"p":1,"n":"Noise Properties","c":[{"t":5,"p":1,"n":"Layer 1 - Wind Direction"},{"t":5,"p":1,"n":"Layer 2 - Wind Direction"},{"t":5,"p":1,"n":"Layer 3 - Wind Direction"},{"t":5,"p":1,"n":"Layer 1 - Wind Speed"},{"t":5,"p":1,"n":"Layer 2 - Wind Speed"},{"t":5,"p":1,"n":"Layer 3 - Wind Speed"},{"t":5,"p":1,"n":"Layer 1 - Amplitude Scale"},{"t":5,"p":1,"n":"Layer 2 - Amplitude Scale"},{"t":5,"p":1,"n":"Layer 3 - Amplitude Scale"},{"t":5,"p":1,"n":"Layer 1 - UV Scale"},{"t":5,"p":1,"n":"Layer 2 - UV Scale"},{"t":5,"p":1,"n":"Layer 3 - UV Scale"},{"t":5,"p":1,"n":"Layer 1 - Noise Falloff"},{"t":5,"p":1,"n":"Layer 2 - Noise Falloff"},{"t":5,"p":1,"n":"Layer 3 - Noise Falloff"}]},{"t":6,"p":1,"n":"Silt Properties","c":[{"t":5,"p":1,"n":"Silt Amount"},{"t":6,"p":1,"n":"Light Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Dark Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"Screen Space Reflections"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Layer 1 Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Layer 2 Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Layer 3 Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"INRD - Instance Naming"},{"t":7,"p":1,"n":"APPR - Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Object Template","c":[{"t":3,"p":1,"n":"OBTE - Count"},{"t":8,"p":1,"n":"Combinations","c":[{"t":6,"p":1,"n":"Combination","c":[{"p":1,"n":"OBTF - Editor Only"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"OBTS - Object Mod Template Item","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":3,"p":1,"n":"Level Min"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Level Max"},{"t":3,"p":1,"n":"ID"},{"t":3,"p":1,"n":"Default"},{"t":7,"p":1,"n":"Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"Min Level For Ranks"},{"t":3,"p":1,"n":"Alt Levels Per Tier"},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Attach Point Index"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]}]}]},{"p":1,"n":"STOP - Marker"}]},{"t":3,"p":1,"n":"NNAM - Embedded Weapon Mod"},{"t":6,"s":1,"p":1,"n":"1st Person Model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO4S - Material Swap"},{"t":5,"p":1,"n":"MO4C - Color Remapping Index"},{"t":11,"n":"MO4F - Unknown"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Ammo"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reload Speed"},{"t":5,"p":1,"n":"Reach"},{"t":5,"p":1,"n":"Min Range"},{"t":5,"p":1,"n":"Max Range"},{"t":5,"p":1,"n":"Attack Delay"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Damage - OutOfRange Mult"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":3,"p":1,"n":"Capacity"},{"t":3,"p":1,"n":"Animation Type"},{"t":5,"p":1,"n":"Damage - Secondary"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Damage - Base"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Sound - Attack"},{"t":3,"p":1,"n":"Sound - Attack 2D"},{"t":3,"p":1,"n":"Sound - Attack Loop"},{"t":3,"p":1,"n":"Sound - Attack Fail"},{"t":3,"p":1,"n":"Sound - Idle"},{"t":3,"p":1,"n":"Sound - Equip Sound"},{"t":3,"p":1,"n":"Sound - UnEquip Sound"},{"t":3,"p":1,"n":"Sound - Fast Equip Sound"},{"t":3,"p":1,"n":"Accuracy Bonus"},{"t":5,"p":1,"n":"Animation Attack Seconds"},{"t":5,"p":1,"n":"Action Point Cost"},{"t":5,"p":1,"n":"Full Power Seconds"},{"t":5,"p":1,"n":"Min Power Per Shot"},{"t":3,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"FNAM - ","c":[{"t":5,"p":1,"n":"Animation Fire Seconds"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":5,"p":1,"n":"Animation Reload Seconds"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Sighted Transition Seconds"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Override Projectile"},{"t":3,"p":1,"n":"Pattern"},{"t":3,"p":1,"n":"Rumble - Peroid (ms)"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":5,"p":1,"n":"Crit Damage Mult"},{"t":5,"p":1,"n":"Crit Charge Bonus"},{"t":3,"p":1,"n":"Crit Effect"}]},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"LNAM - NPC Add Ammo List"},{"t":3,"p":1,"n":"WAMD - Aim Model"},{"t":3,"p":1,"n":"WZMD - Zoom"},{"t":3,"p":1,"n":"CNAM - Template"},{"t":7,"p":1,"n":"DAMA - Damage Types","c":[{"t":6,"p":1,"n":"Damage Type","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Amount"}]}]},{"t":2,"p":1,"n":"FLTR - Filter"},{"t":3,"p":1,"n":"MASE - Melee Speed"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"n":"Large References","c":[{"t":11,"n":"RNAM - Unknown"}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":6,"s":1,"p":1,"n":"World Default Level Data","c":[{"t":6,"p":1,"n":"WLEV - Dimension","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Size","c":[{"t":3,"p":1,"n":"Width"},{"t":3,"p":1,"n":"Height"}]}]},{"t":11,"p":1,"n":"WLEV - Data"}]},{"t":11,"n":"OFST - Offset Data"},{"t":11,"n":"CLSZ - Unknown"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"},{"t":5,"p":1,"n":"EarlySunrise"},{"t":5,"p":1,"n":"LateSunrise"},{"t":5,"p":1,"n":"EarlySunset"},{"t":5,"p":1,"n":"LateSunset"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"EarlySunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"LateSunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"EarlySunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"LateSunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near High","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far High","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"n":"NAM4 - Unknown","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"},{"t":5,"p":1,"n":"Day - Near Height Mid"},{"t":5,"p":1,"n":"Day - Near Height Range"},{"t":5,"p":1,"n":"Night - Near Height Mid"},{"t":5,"p":1,"n":"Night - Near Height Range"},{"t":5,"p":1,"n":"Day - High Density Scale"},{"t":5,"p":1,"n":"Night - High Density Scale"},{"t":5,"p":1,"n":"Day - Far Height Mid"},{"t":5,"p":1,"n":"Day - Far Height Range"},{"t":5,"p":1,"n":"Night - Far Height Mid"},{"t":5,"p":1,"n":"Night - Far Height Range"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"},{"t":3,"p":1,"n":"EarlySunrise"},{"t":3,"p":1,"n":"LateSunrise"},{"t":3,"p":1,"n":"EarlySunset"},{"t":3,"p":1,"n":"LateSunset"}]},{"t":6,"s":1,"p":1,"n":"WGDR - God Rays","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"},{"t":3,"p":1,"n":"EarlySunrise"},{"t":3,"p":1,"n":"LateSunrise"},{"t":3,"p":1,"n":"EarlySunset"},{"t":3,"p":1,"n":"LateSunset"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - EarlySunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - LateSunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - EarlySunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - LateSunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"},{"t":6,"s":1,"p":1,"n":"UNAM - Magic","c":[{"t":3,"p":1,"n":"On Lightning Strike - Spell"},{"t":5,"p":1,"n":"On Lightning Strike - Threshold"},{"t":3,"p":1,"n":"On Weather Activate - Spell"},{"t":5,"p":1,"n":"On Weather Activate - Threshold"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"VNAM - Volatility Mult"},{"t":5,"p":1,"n":"WNAM - Visibility Mult"}]},{"t":1,"p":1,"n":"ZOOM - Zoom","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"GNAM - Data","c":[{"t":5,"p":1,"n":"FOV Mult"},{"t":3,"p":1,"n":"Overlay"},{"t":3,"p":1,"n":"Imagespace Modifier"},{"t":6,"p":1,"n":"Camera Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":3,"p":1,"n":"XHLT - Health %"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":8,"s":1,"p":1,"n":"Spline Connection","d":1,"c":[{"t":6,"p":1,"n":"XPLK - Link","c":[{"t":3,"p":1,"n":"Ref"},{"t":11,"n":"Unknown"}]}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]}]},"name":"Smash.All","hash":"99238B45","color":128} \ No newline at end of file diff --git a/frontend/settings/Fallout4/Smash.All.old.json b/frontend/settings/Fallout4/Smash.All.old.json new file mode 100644 index 0000000..1e40a14 --- /dev/null +++ b/frontend/settings/Fallout4/Smash.All.old.json @@ -0,0 +1 @@ +{"records":"ACHR,ACTI,ADDN,AECH,ALCH,AMDL,AMMO,ANIO,AORU,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BNDS,BOOK,BPTD,CAMS,CELL,CLAS,CLFM,CLMT,CMPO,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DFOB,DIAL,DLBR,DLVW,DMGT,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,FACT,FLOR,FLST,FSTP,FSTS,FURN,GDRY,GLOB,GMST,GRAS,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,INNR,IPCT,IPDS,KEYM,KSSM,KYWD,LAND,LAYR,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MSWP,MUSC,MUST,NOTE,NPC_,OMOD,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,PKIN,PMIS,PROJ,QUST,REFR,REGN,RELA,REVB,RFCT,RFGP,SCCO,SCEN,SCOL,SCSN,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAG,STAT,TACT,TERM,TREE,TRNS,TXST,VTYP,WATR,WEAP,WRLD,WTHR,ZOOM,AACT","description":"Smashes all the things. Produced using autoset attributes on all record types found in Fallout4.esm.\r\n\r\nLast updated 05\/01\/2018.","tree":{"records":[{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":3,"p":1,"n":"XHLT - Health %"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":8,"s":1,"p":1,"n":"Spline Connection","d":1,"c":[{"t":6,"p":1,"n":"XPLK - Link","c":[{"t":3,"p":1,"n":"Ref"},{"t":11,"n":"Unknown"}]}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":3,"p":1,"n":"STCP - Sound"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"ATTX - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":6,"s":1,"p":1,"n":"RADR - Radio Receiver","c":[{"t":3,"p":1,"n":"Sound Model"},{"t":5,"p":1,"n":"Frequency"},{"t":5,"p":1,"n":"Volume"},{"t":3,"p":1,"n":"Starts Active"},{"t":3,"p":1,"n":"No Signal Static"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"NVNM - Navmesh Geometry","c":[{"t":3,"p":1,"n":"Version"},{"t":11,"p":1,"n":"Magic"},{"t":3,"p":1,"n":"Parent Worldspace"},{"t":6,"p":1,"n":"Coordinates","c":[{"t":3,"p":1,"n":"Grid Y"},{"t":3,"p":1,"n":"Grid X"}]},{"t":3,"p":1,"n":"Parent Cell"},{"t":11,"p":1,"n":"Vertices and Triangles"}]}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":3,"p":1,"n":"LNAM - Light"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"AECH - Audio Effect Chain","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"KNAM - Type"},{"t":6,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Enabled"},{"t":5,"p":1,"n":"Input Gain"},{"t":5,"p":1,"n":"Center Freq"},{"t":5,"p":1,"n":"Feedback %"},{"t":5,"p":1,"n":"Output Gain"},{"t":5,"p":1,"n":"Q Value"},{"t":5,"p":1,"n":"Wet Mix %"},{"t":5,"p":1,"n":"Upper Threshold"},{"t":3,"p":1,"n":"Filter Mode"},{"t":3,"p":1,"n":"Delay MS"},{"t":5,"p":1,"n":"Lower Threshold"},{"t":11,"n":"Unused"}]}]}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"CUSD - Sound - Crafting"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":2,"p":1,"n":"DNAM - Addiction Name"},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMDL - Aim Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":5,"p":1,"n":"Cone of Fire - Min Angle"},{"t":5,"p":1,"n":"Cone of Fire - Max Angle"},{"t":5,"p":1,"n":"Cone of Fire - Increase Per Shot"},{"t":5,"p":1,"n":"Cone of Fire - Decrease Per Sec"},{"t":3,"p":1,"n":"Cone of Fire - Decrease Delay MS"},{"t":5,"p":1,"n":"Cone of Fire - Sneak Mult"},{"t":5,"p":1,"n":"Recoil - Diminish Spring Force"},{"t":5,"p":1,"n":"Recoil - Diminish Sights Mult"},{"t":5,"p":1,"n":"Recoil - Max Per Shot"},{"t":5,"p":1,"n":"Recoil - Min Per Shot"},{"t":5,"p":1,"n":"Recoil - Hip Mult"},{"t":3,"p":1,"n":"Runaway - Recoil Shots"},{"t":5,"p":1,"n":"Recoil - Arc"},{"t":5,"p":1,"n":"Recoil - Arc Rotate"},{"t":5,"p":1,"n":"Cone of Fire - Iron Sights Mult"},{"t":5,"p":1,"n":"Stability - Base Stability"}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"DNAM - ","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Health"}]},{"t":2,"p":1,"n":"ONAM - Short Name"},{"t":2,"p":1,"n":"NAM1 - Casing Model"},{"t":11,"n":"NAM2 - Texture Files Hashes"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"AORU - Attraction Rule","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"AOR2 - Data","c":[{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Delay"},{"t":5,"p":1,"n":"Max Delay"},{"t":3,"p":1,"n":"Requires Line of Sight"},{"t":3,"p":1,"n":"Combat Target"},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"}]},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male"},{"t":3,"p":1,"n":"Weight slider - Female"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model Filename"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO2S - Material Swap"},{"t":5,"p":1,"n":"MO2C - Color Remapping Index"},{"t":11,"n":"MO2F - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model Filename"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO3S - Material Swap"},{"t":5,"p":1,"n":"MO3C - Color Remapping Index"},{"t":11,"n":"MO3F - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO4S - Material Swap"},{"t":5,"p":1,"n":"MO4C - Color Remapping Index"},{"t":11,"n":"MO4F - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model Filename"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO5S - Material Swap"},{"t":5,"p":1,"n":"MO5C - Color Remapping Index"},{"t":11,"n":"MO5F - Unknown"}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin Texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"},{"t":8,"s":1,"p":1,"n":"Bone Data","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":3,"p":1,"n":"BSMP - Gender"},{"t":8,"p":1,"n":"Bones","c":[{"t":6,"p":1,"n":"Bone","c":[{"t":2,"p":1,"n":"BSMB - Name"},{"t":7,"p":1,"n":"BSMS - Values","c":[{"t":5,"p":1,"n":"Value"}]},{"t":11,"n":"BMMP - Unknown"}]}]}]}]}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model Filename"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO2S - Material Swap"}]},{"t":2,"p":1,"n":"ICON - Male Inventory Image"},{"t":2,"p":1,"n":"MICO - Male Message Icon"},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO4S - Material Swap"}]},{"t":2,"p":1,"n":"ICO2 - Female Inventory Image"},{"t":2,"p":1,"n":"MIC2 - Female Message Icon"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"INRD - Instance Naming"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":3,"p":1,"n":"INDX - Addon Index"},{"t":3,"p":1,"n":"MODL - Armor Addon"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Health"}]},{"t":6,"s":1,"p":1,"n":"FNAM - ","c":[{"t":3,"p":1,"n":"Armor Rating"},{"t":3,"p":1,"n":"Base Addon Index"},{"t":3,"p":1,"n":"Stagger Rating"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMA - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"TNAM - Template Armor"},{"t":7,"p":1,"n":"APPR - Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Object Template","c":[{"t":3,"p":1,"n":"OBTE - Count"},{"t":8,"p":1,"n":"Combinations","c":[{"t":6,"p":1,"n":"Combination","c":[{"p":1,"n":"OBTF - Editor Only"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"OBTS - Object Mod Template Item","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":3,"p":1,"n":"Level Min"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Level Max"},{"t":3,"p":1,"n":"ID"},{"t":3,"p":1,"n":"Default"},{"t":7,"p":1,"n":"Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"Min Level For Ranks"},{"t":3,"p":1,"n":"Alt Levels Per Tier"},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Attach Point Index"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]}]}]},{"p":1,"n":"STOP - Marker"}]}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type"},{"t":3,"p":1,"n":"XTRI - Is Interior"},{"t":3,"p":1,"n":"WNAM - Weather Attenuation (dB)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags"}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":5,"p":1,"n":"NAM0 - Default Value"},{"t":3,"p":1,"n":"AVFL - Flags"},{"t":3,"p":1,"n":"NAM1 - Type"}]},{"t":1,"p":1,"n":"BNDS - Bendable Spline","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":5,"p":1,"n":"Default Number of Tiles"},{"t":3,"p":1,"n":"Default Number of Slices"},{"t":3,"p":1,"n":"Default Number of Tiles - Relative to Length"},{"t":6,"p":1,"n":"Default Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Wind Settings - Sensibility"},{"t":5,"p":1,"n":"Wind Settings - Flexibility"}]},{"t":3,"p":1,"n":"TNAM - Texture"}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"FIMD - Featured Item Message"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"DNAM - ","c":[{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Perk"},{"t":6,"p":1,"n":"Text Offset","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":2,"p":1,"n":"CNAM - Description"},{"t":3,"p":1,"n":"INAM - Inventory Art"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":6,"p":1,"n":"BPND - ","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":5,"p":1,"n":"Cut - Min"},{"t":5,"p":1,"n":"Cut - Max"},{"t":5,"p":1,"n":"Cut - Radius"},{"t":5,"p":1,"n":"Gore Effects - Local Rotate X"},{"t":5,"p":1,"n":"Gore Effects - Local Rotate Y"},{"t":5,"p":1,"n":"Cut - Tesselation"},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":5,"p":1,"n":"Explodable - Limb Replacement Scale"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Non-Lethal Dismemberment Chance"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":3,"p":1,"n":"Geometry Segment Index"},{"t":3,"p":1,"n":"On Cripple - Art Object"},{"t":3,"p":1,"n":"On Cripple - Debris"},{"t":3,"p":1,"n":"On Cripple - Explosion"},{"t":3,"p":1,"n":"On Cripple - Impact DataSet"},{"t":5,"p":1,"n":"On Cripple - Debris Scale"},{"t":3,"p":1,"n":"On Cripple - Debris Count"},{"t":3,"p":1,"n":"On Cripple - Decal Count"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"},{"t":2,"p":1,"n":"ENAM - Hit Reaction - Start"},{"t":2,"p":1,"n":"FNAM - Hit Reaction - End"},{"t":3,"p":1,"n":"BNAM - Gore Effects - Dismember Blood Art"},{"t":3,"p":1,"n":"INAM - Gore Effects - Blood Impact Material Type"},{"t":3,"p":1,"n":"JNAM - On Cripple - Blood Impact Material Type"},{"t":3,"p":1,"n":"CNAM - Meat Cap TextureSet"},{"t":3,"p":1,"n":"NAM2 - Collar TextureSet"},{"t":2,"p":1,"n":"DNAM - Twist Variable Prefix"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"},{"t":5,"p":1,"n":"Location Spring"},{"t":5,"p":1,"n":"Target Spring"},{"t":6,"p":1,"n":"Rotation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags"},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land"}]},{"t":11,"n":"VISI - PreVis Files Timestamp"},{"t":3,"p":1,"n":"RVIS - In PreVis File Of"},{"t":11,"n":"PCMB - PreCombined Files Timestamp"},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits"},{"t":5,"p":1,"n":"Near Height Mid"},{"t":5,"p":1,"n":"Near Height Range"},{"t":6,"p":1,"n":"Fog Color High Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color High Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"High Density Scale"},{"t":5,"p":1,"n":"Fog Near Scale"},{"t":5,"p":1,"n":"Fog Far Scale"},{"t":5,"p":1,"n":"Fog High Near Scale"},{"t":5,"p":1,"n":"Fog High Far Scale"},{"t":5,"p":1,"n":"Far Height Mid"},{"t":5,"p":1,"n":"Far Height Range"}]},{"t":3,"p":1,"n":"CNAM - Precombined Object Level XY"},{"t":3,"p":1,"n":"ZNAM - Precombined Object Level Z"},{"t":11,"n":"TVDT - Unknown"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":6,"s":1,"p":1,"n":"XILW - Exterior LOD","c":[{"t":3,"p":1,"n":"Worldspace"},{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Offset Z"}]},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"},{"t":3,"p":1,"n":"XGDR - God Rays"},{"t":7,"p":1,"n":"XPRI - Physics References","c":[{"t":3,"p":1,"n":"Reference"}]},{"t":6,"s":1,"p":1,"n":"XCRI - Combined References","c":[{"t":3,"p":1,"n":"Meshes Count"},{"t":3,"p":1,"n":"References Count"},{"t":7,"p":1,"n":"Meshes","c":[{"t":3,"p":1,"n":"Combined Mesh"}]},{"t":7,"p":1,"n":"References","c":[{"t":6,"p":1,"n":"Reference","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Combined Mesh"}]}]}]}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Bleedout Default"}]}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"CNAM - Color\/Index"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"CMPO - Component","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"CUSD - Sound - Crafting"},{"t":3,"p":1,"n":"DATA - Auto Calc Value"},{"t":3,"p":1,"n":"MNAM - Scrap Item"},{"t":3,"p":1,"n":"GNAM - Mod Scrap Scalar"}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":7,"p":1,"n":"FVPA - Components","c":[{"t":6,"p":1,"n":"Component","c":[{"t":3,"p":1,"n":"Component"},{"t":3,"p":1,"n":"Count"}]}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":11,"n":"NAM1 - Unused"},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":3,"p":1,"n":"ANAM - Menu Art Object"},{"t":7,"p":1,"n":"FNAM - Category","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"INTV - Data","c":[{"t":3,"p":1,"n":"Created Object Count"},{"t":3,"p":1,"n":"Priority"}]}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"},{"t":3,"p":1,"n":"TNAM - Sound - Take All"},{"t":3,"p":1,"n":"ONAM - Filter List"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Related Camera Path"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom \/ Flags"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"},{"t":5,"p":1,"n":"Dodge Threat Chance"},{"t":5,"p":1,"n":"Evade Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"},{"t":5,"p":1,"n":"Block When Staggered Mult"},{"t":5,"p":1,"n":"Attack When Staggered Mult"}]},{"t":5,"p":1,"n":"CSRA - Ranged Accuracy Mult"},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Dueling - Circle Mult"},{"t":5,"p":1,"n":"Dueling - Fallback Mult"},{"t":5,"p":1,"n":"Flanking - Flank Distance"},{"t":5,"p":1,"n":"Flanking - Stalk Time"},{"t":5,"p":1,"n":"Charging - Charge Distance"},{"t":5,"p":1,"n":"Charging - Throw Probability"},{"t":5,"p":1,"n":"Charging - Sprint Fast Probability"},{"t":5,"p":1,"n":"Charging - Sideswipe Probability"},{"t":5,"p":1,"n":"Charging - Disengane Probability"},{"t":3,"p":1,"n":"Charging - Throw Max Targets"},{"t":5,"p":1,"n":"Flanking - Flank Variance"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"},{"t":5,"p":1,"n":"Adjust Range Mult"},{"t":5,"p":1,"n":"Crouch Mult"},{"t":5,"p":1,"n":"Wait Mult"},{"t":5,"p":1,"n":"Range Mult"}]},{"t":5,"p":1,"n":"CSCV - Cover Search Distance Mult"},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags"}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model Filename"},{"t":3,"p":1,"n":"Flags"}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DFOB - Default Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Object"}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags"},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"p":1,"n":"DMGT - Damage Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"Damage Types","c":[{"t":3,"p":1,"n":"Actor Value Index"}]}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":2,"p":1,"n":"ONAM - Alternate Text - Open"},{"t":2,"p":1,"n":"CNAM - Alternate Text - Close"}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"Data","c":[{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Holes Animation - Start Time"},{"t":5,"p":1,"n":"Holes Animation - End Time"},{"t":5,"p":1,"n":"Holes Animation - Start Value"},{"t":5,"p":1,"n":"Holes Animation - End Value"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"n":"Unknown"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"}]},{"t":6,"s":1,"p":1,"n":"Data (old format)","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Parent"}]},{"t":3,"p":1,"n":"DATA - Flags"},{"t":3,"p":1,"n":"ANAM - Condition Actor Value"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Inner Radius"},{"t":5,"p":1,"n":"Outer Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Sound Level"},{"t":5,"p":1,"n":"Placed Object AutoFade Delay"},{"t":3,"p":1,"n":"Stagger"},{"t":6,"p":1,"n":"Spawn","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"},{"t":5,"p":1,"n":"Spread Degrees"},{"t":3,"p":1,"n":"Count"}]}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf (unused)"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"p":1,"n":"INAM - Insignia (unused)"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Buys Stolen Items"},{"t":3,"p":1,"n":"Buy\/Sell Everything Not In List?"},{"t":3,"p":1,"n":"Buys NonStolen Items"},{"t":3,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Ref Alias"},{"t":3,"p":1,"n":"Loc Alias"},{"t":3,"p":1,"n":"Interrupt Data"},{"t":3,"p":1,"n":"Packdata Target"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Ref Collection Alias"},{"t":3,"p":1,"n":"Radius"},{"t":3,"p":1,"n":"Collection Index"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"ATTX - Activate Text Override"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"n":"XCNT - Count","c":[{"t":3,"n":"Walking"},{"t":3,"n":"Running"},{"t":3,"n":"Sprinting"},{"t":3,"n":"Sneaking"},{"t":3,"n":"Swimming"}]},{"t":7,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"WNAM - Drinking Water Type"},{"t":2,"p":1,"n":"ATTX - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags"},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Form"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points"}]}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points"}]}]},{"t":2,"p":1,"n":"XMRK - Marker Model"},{"t":7,"p":1,"n":"SNAM - Marker Paramaters","c":[{"t":6,"p":1,"n":"Marker","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Offset Z"},{"t":5,"p":1,"n":"Rotation Z"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Entry Types"},{"t":11,"n":"Unknown"}]}]},{"t":6,"s":1,"p":1,"n":"NVNM - Navmesh Geometry","c":[{"t":3,"p":1,"n":"Version"},{"t":11,"p":1,"n":"Magic"},{"t":3,"p":1,"n":"Parent Worldspace"},{"t":6,"p":1,"n":"Coordinates","c":[{"t":3,"p":1,"n":"Grid Y"},{"t":3,"p":1,"n":"Grid X"}]},{"t":3,"p":1,"n":"Parent Cell"},{"t":11,"p":1,"n":"Vertices and Triangles"}]},{"t":7,"p":1,"n":"APPR - Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Object Template","c":[{"t":3,"p":1,"n":"OBTE - Count"},{"t":8,"p":1,"n":"Combinations","c":[{"t":6,"p":1,"n":"Combination","c":[{"p":1,"n":"OBTF - Editor Only"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"OBTS - Object Mod Template Item","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":3,"p":1,"n":"Level Min"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Level Max"},{"t":3,"p":1,"n":"ID"},{"t":3,"p":1,"n":"Default"},{"t":7,"p":1,"n":"Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"Min Level For Ranks"},{"t":3,"p":1,"n":"Alt Levels Per Tier"},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Attach Point Index"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]}]}]},{"p":1,"n":"STOP - Marker"}]}]},{"t":1,"p":1,"n":"GDRY - God Rays","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":6,"p":1,"n":"Back Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":6,"p":1,"n":"Fwd Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Intensity"},{"t":5,"p":1,"n":"Air Color - Scale"},{"t":5,"p":1,"n":"Back Color - Scale"},{"t":5,"p":1,"n":"Fwd Color - Scale"},{"t":5,"p":1,"n":"Back Phase"},{"t":6,"p":1,"n":"Air Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Fwd Phase"}]}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Effect"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"},{"t":6,"p":1,"n":"Taper Effectiveness","c":[{"t":5,"p":1,"n":"Full Effect Radius"},{"t":5,"p":1,"n":"Taper Weight"},{"t":5,"p":1,"n":"Taper Curse"}]}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"DATA - Flags"},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - Filename"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":8,"n":"Conditions","d":1,"c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Actor"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Player Action"},{"t":3,"n":"Alias"},{"t":3,"n":"Alignment"},{"t":3,"n":"Association Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Faction"},{"t":3,"n":"Form List"},{"t":3,"n":"Form Type"},{"t":3,"n":"Furniture"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Global"},{"t":3,"n":"Idle"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Keyword"},{"t":3,"n":"Location"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Owner"},{"t":3,"n":"Package"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Perk"},{"t":3,"n":"Quest"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Race"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Region"},{"t":3,"n":"Scene"},{"t":3,"n":"Sex"},{"t":3,"n":"Shout"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (unused)"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Ward State"},{"t":3,"n":"Weather"},{"t":3,"n":"Worldspace"},{"t":3,"n":"Damage Type"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - Behavior Graph"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Related Idle Animation"}]},{"t":6,"n":"DATA - ","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags"},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]},{"t":2,"n":"GNAM - Animation File"}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"IDLF - Flags"},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":3,"n":"QNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags"},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags"},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags"},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":6,"s":1,"p":1,"n":"Radial Blur","c":[{"t":7,"p":1,"n":"RNAM - Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SNAM - RampUp","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"UNAM - Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM1 - RampDown","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - DownStart","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":6,"s":1,"p":1,"n":"Depth of Field","c":[{"t":7,"p":1,"n":"WNAM - Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"XNAM - Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM5 - Vignette Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM6 - Vignette Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unused"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Tonemap E"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Auto Exposure Max"},{"t":5,"p":1,"n":"Auto Exposure Min"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Middle Gray"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"},{"t":5,"p":1,"n":"Vignette Radius"},{"t":5,"p":1,"n":"Vignette Strength"}]},{"t":2,"p":1,"n":"TX00 - LUT"}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"DNAM - Shared INFO"},{"t":3,"n":"GNAM - Unknown"},{"t":2,"p":1,"n":"IOVR - Override Filename"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDA - Response Data","c":[{"t":3,"p":1,"n":"Emotion"},{"t":3,"p":1,"n":"Response number"},{"t":11,"n":"Unused"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Percentage"},{"t":3,"p":1,"n":"Camera Target Alias"},{"t":3,"p":1,"n":"Camera Location Alias"}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":2,"p":1,"n":"NAM4 - Alternate LIP Text"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"},{"t":3,"p":1,"n":"TNAM - Interrupt Percentage"},{"t":11,"p":1,"n":"NAM9 - Text Hash"},{"t":3,"p":1,"n":"SRAF - Camera Path"},{"p":1,"n":"WZMD - Stop on Scene End"}]}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TSCE - Start Scene"},{"t":3,"p":1,"n":"ALFA - Forced Alias"},{"t":11,"n":"INTV - Unknown"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"},{"t":3,"p":1,"n":"GREE - Greet Distance"},{"t":6,"s":1,"p":1,"n":"TIQS - Set Parent Quest Stage","c":[{"t":3,"p":1,"n":"On Begin"},{"t":3,"p":1,"n":"On End"}]},{"t":2,"p":1,"n":"NAM0 - Start Scene Phase"},{"t":3,"p":1,"n":"INCC - Challenge"},{"t":3,"p":1,"n":"MODQ - Reset Global"},{"t":3,"p":1,"n":"INAM - Subtitle Priority"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"INNR - Instance Naming Rules","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"UNAM - Target"},{"t":8,"s":1,"p":1,"n":"Naming Rules","d":1,"c":[{"t":6,"p":1,"n":"Ruleset","c":[{"t":3,"p":1,"n":"VNAM - Count"},{"t":8,"p":1,"n":"Names","c":[{"t":6,"p":1,"n":"Name","c":[{"t":2,"p":1,"n":"WNAM - Text"},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"XNAM - Property","c":[{"t":5,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Op"}]},{"t":3,"p":1,"n":"YNAM - Index"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Alpha Threshold?"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM3 - Footstep Explosion"},{"t":3,"p":1,"n":"NAM2 - Hazard"},{"t":5,"p":1,"n":"FNAM - Footstep Particle Max Dist"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - ","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KSSM - Sound Keyword Mapping","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Primary Descriptor"},{"t":3,"p":1,"n":"ENAM - Exterior Tail"},{"t":3,"p":1,"n":"VNAM - VATS Descriptor"},{"t":5,"p":1,"n":"TNAM - VATS Threshold"},{"t":8,"s":1,"p":1,"n":"Keywords","d":1,"c":[{"t":3,"p":1,"n":"KNAM - Keyword"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Sound","c":[{"t":3,"p":1,"n":"Reverb Class"},{"t":3,"p":1,"n":"Descriptor"}]}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":2,"p":1,"n":"DNAM - Notes"},{"t":3,"p":1,"n":"TNAM - Type"},{"t":3,"p":1,"n":"DATA - Attraction Rule"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"NNAM - Display Name"}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"MPCD - Unknown"}]}]},{"t":1,"p":1,"n":"LAYR - Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent"}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":11,"n":"TNAM - Unknown"}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":5,"n":"ANAM - Unknown"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":10,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags"}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":5,"p":1,"n":"Near Height Mid"},{"t":5,"p":1,"n":"Near Height Range"},{"t":6,"p":1,"n":"Fog Color High Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color High Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"High Density Scale"},{"t":5,"p":1,"n":"Fog Near Scale"},{"t":5,"p":1,"n":"Fog Far Scale"},{"t":5,"p":1,"n":"Fog High Near Scale"},{"t":5,"p":1,"n":"Fog High Far Scale"},{"t":5,"p":1,"n":"Far Height Mid"},{"t":5,"p":1,"n":"Far Height Range"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"WGDR - God Rays"}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":5,"p":1,"n":"Constant"},{"t":5,"p":1,"n":"Scalar"},{"t":5,"p":1,"n":"Exponent"},{"t":5,"p":1,"n":"God Rays - Near Clip"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":2,"p":1,"n":"NAM0 - Gobo"},{"t":3,"p":1,"n":"LNAM - Lens"},{"t":3,"p":1,"n":"WGDR - God Rays"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":3,"p":1,"n":"TNAM - Transform"},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"ZNAM - Zoom","c":[{"t":5,"p":1,"n":"Min"},{"t":5,"p":1,"n":"Max"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLM - Max Count"},{"t":3,"p":1,"n":"LVLF - Flags"},{"t":3,"p":1,"n":"LVLG - Use Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"},{"t":3,"p":1,"n":"Chance None"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":7,"p":1,"n":"LLKC - Filter Keyword Chances","c":[{"t":6,"p":1,"n":"Filter","c":[{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Chance"}]}]},{"t":3,"p":1,"n":"LVSG - Epic Loot Chance"},{"t":2,"p":1,"n":"ONAM - Override Name"}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLM - Max Count"},{"t":3,"p":1,"n":"LVLF - Flags"},{"t":3,"p":1,"n":"LVLG - Use Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"},{"t":3,"p":1,"n":"Chance None"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":7,"p":1,"n":"LLKC - Filter Keyword Chances","c":[{"t":6,"p":1,"n":"Filter","c":[{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Chance"}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Breakable FX"},{"t":11,"n":"MODT - Texture Files Hashes"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":2,"p":1,"n":"SNAM - SWF"},{"t":2,"p":1,"n":"NNAM - Short Title"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":11,"p":1,"n":"Magic Skill (unused)"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archetype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"FIMD - Featured Item Message"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":7,"p":1,"n":"CVPA - Components","c":[{"t":6,"p":1,"n":"Component","c":[{"t":3,"p":1,"n":"Component"},{"t":3,"p":1,"n":"Count"}]}]},{"t":7,"p":1,"n":"CDIX - Component Display Indices","c":[{"t":3,"p":1,"n":"Display Index"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Movement Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Walk - Left"},{"t":5,"p":1,"n":"Run - Left"},{"t":5,"p":1,"n":"Walk - Right"},{"t":5,"p":1,"n":"Run - Right"},{"t":5,"p":1,"n":"Walk - Forward"},{"t":5,"p":1,"n":"Run - Forward"},{"t":5,"p":1,"n":"Sprint - Forward"},{"t":5,"p":1,"n":"Walk - Back"},{"t":5,"p":1,"n":"Run - Back"},{"t":5,"p":1,"n":"Standing - Pitch"},{"t":5,"p":1,"n":"Walk - Pitch"},{"t":5,"p":1,"n":"Run - Pitch"},{"t":5,"p":1,"n":"Sprint - Pitch"},{"t":5,"p":1,"n":"Standing - Yaw"},{"t":5,"p":1,"n":"Walk - Yaw"},{"t":5,"p":1,"n":"Run - Yaw"},{"t":5,"p":1,"n":"Sprint - Yaw"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds (unused)","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]},{"t":5,"p":1,"n":"JNAM - Float Height"},{"t":5,"p":1,"n":"LNAM - Flight - Angle Gain"}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"DATA - On Local Map"},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MSWP - Material Swap","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FNAM - Tree Folder"},{"t":10,"p":1,"n":"Material Substitutions","d":1,"c":[{"t":6,"p":1,"n":"Substitution","c":[{"t":2,"p":1,"n":"BNAM - Original Material"},{"t":2,"p":1,"n":"SNAM - Replacement Material"},{"t":2,"p":1,"n":"FNAM - Tree Folder (obsolete)"},{"t":5,"p":1,"n":"CNAM - Color Remapping Index"}]}]}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track Filename"},{"t":2,"p":1,"n":"BNAM - Finale Filename"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Data"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":11,"n":"Unknown"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":11,"n":"NVSI - Unknown"}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Navmesh Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":11,"n":"Vertices and Triangles"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"NNAM - Unknown"},{"t":11,"n":"MNAM - Unknown"}]},{"t":1,"n":"NOCM - Navigation Mesh Obstacle Manager","d":1,"c":[{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":3,"n":"INDX - Index"},{"t":8,"n":"Unknown","c":[{"t":11,"n":"DATA - Unknown"}]},{"t":11,"n":"INTV - Unknown"},{"t":2,"n":"NAM1 - Model"}]}]}]},{"t":1,"p":1,"n":"NOTE - Note","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"DNAM - Type"},{"t":6,"s":1,"p":1,"n":"DATA - ","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Terminal"},{"t":2,"p":1,"n":"PNAM - Program File"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":3,"n":"STCP - Unknown"},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"XP Value Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Disposition Base"},{"t":3,"p":1,"n":"Use Template Actors"},{"t":3,"p":1,"n":"Bleedout Override"},{"t":11,"n":"Unknown"}]},{"t":8,"s":1,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Default Template"},{"t":3,"p":1,"n":"LTPT - Legendary Template"},{"t":3,"p":1,"n":"LTPC - Legendary Chance"},{"t":6,"s":1,"p":1,"n":"TPTA - Template Actors","c":[{"t":3,"p":1,"n":"Traits"},{"t":3,"p":1,"n":"Stats"},{"t":3,"p":1,"n":"Factions"},{"t":3,"p":1,"n":"Spell List"},{"t":3,"p":1,"n":"AI Data"},{"t":3,"p":1,"n":"AI Packages"},{"t":3,"p":1,"n":"Model\/Animation"},{"t":3,"p":1,"n":"Base Data"},{"t":3,"p":1,"n":"Inventory"},{"t":3,"p":1,"n":"Script"},{"t":3,"p":1,"n":"Def Pack List"},{"t":3,"p":1,"n":"Attack Data"},{"t":3,"p":1,"n":"Keywords"}]},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags"},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Action Points Mult"},{"t":3,"p":1,"n":"Stagger Offset"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"},{"t":3,"p":1,"n":"ATKW - Weapon Slot"},{"t":3,"p":1,"n":"ATKS - Required Slot"},{"t":2,"p":1,"n":"ATKT - Description"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator Override Package List"},{"t":3,"p":1,"n":"OCOR - Observe Dead Body Override Package List"},{"t":3,"p":1,"n":"GWOR - Guard Warn Override Package List"},{"t":3,"p":1,"n":"ECOR - Combat Override Package List"},{"t":3,"p":1,"n":"FCPL - Follower Command Package List"},{"t":3,"p":1,"n":"RCLR - Follower Elevator Package List"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"}]}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":3,"p":1,"n":"NTRM - Native Terminal"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]},{"t":11,"n":"Unknown"}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"APPR - Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Object Template","c":[{"t":3,"p":1,"n":"OBTE - Count"},{"t":8,"p":1,"n":"Combinations","c":[{"t":6,"p":1,"n":"Combination","c":[{"p":1,"n":"OBTF - Editor Only"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"OBTS - Object Mod Template Item","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":3,"p":1,"n":"Level Min"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Level Max"},{"t":3,"p":1,"n":"ID"},{"t":3,"p":1,"n":"Default"},{"t":7,"p":1,"n":"Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"Min Level For Ranks"},{"t":3,"p":1,"n":"Alt Levels Per Tier"},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Attach Point Index"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]}]}]},{"p":1,"n":"STOP - Marker"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"t":11,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - ","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Far Away Model Distance"},{"t":3,"p":1,"n":"Geared Up Weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}]},{"t":3,"p":1,"n":"HCLF - Hair Color"},{"t":3,"p":1,"n":"BCLF - Facial Hair Color"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height Min"},{"t":5,"n":"NAM7 - Unused"},{"t":5,"p":1,"n":"NAM4 - Height Max"},{"t":6,"s":1,"p":1,"n":"MWGT - Weight","c":[{"t":5,"p":1,"n":"Thin"},{"t":5,"p":1,"n":"Muscular"},{"t":5,"p":1,"n":"Fat"}]},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":6,"s":1,"p":1,"n":"Actor Sounds","c":[{"t":3,"p":1,"n":"CS2H - Count"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CS2K - Keyword"},{"t":3,"p":1,"n":"CS2D - Sound"}]}]},{"p":1,"n":"CS2E - End Marker"},{"t":11,"p":1,"n":"CS2F - Finalize"}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"PFRN - Power Armor Stand"},{"t":3,"p":1,"n":"DOFT - Default Outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping Outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime Faction"},{"t":3,"p":1,"n":"FTST - Head Texture"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]},{"t":7,"p":1,"n":"MSDK - Morph Keys","c":[{"t":3,"p":1,"n":"Key"}]},{"t":7,"p":1,"n":"MSDV - Morph Values","c":[{"t":5,"p":1,"n":"Value"}]},{"t":10,"p":1,"n":"Face Tinting Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"TETI - Index","c":[{"t":3,"p":1,"n":"Data Type"},{"t":3,"p":1,"n":"Index"}]},{"t":6,"p":1,"n":"TEND - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Template Color Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"MRSV - Body Morph Region Values","c":[{"t":5,"p":1,"n":"Head"},{"t":5,"p":1,"n":"Upper Torso"},{"t":5,"p":1,"n":"Arms"},{"t":5,"p":1,"n":"Lower Torso"},{"t":5,"p":1,"n":"Legs"}]},{"t":10,"p":1,"n":"Face Morphs","d":1,"c":[{"t":6,"p":1,"n":"Face Morph","c":[{"t":3,"p":1,"n":"FMRI - Index"},{"t":6,"p":1,"n":"FMRS - Values","c":[{"t":5,"p":1,"n":"Position - X"},{"t":5,"p":1,"n":"Position - Y"},{"t":5,"p":1,"n":"Position - Z"},{"t":5,"p":1,"n":"Rotation - X"},{"t":5,"p":1,"n":"Rotation - Y"},{"t":5,"p":1,"n":"Rotation - Z"},{"t":5,"p":1,"n":"Scale"},{"t":11,"n":"Unknown"}]}]}]},{"t":5,"p":1,"n":"FMIN - Facial Morph Intensity"},{"t":2,"p":1,"n":"ATTX - Activate Text Override"}]},{"t":1,"p":1,"n":"OMOD - Object Modification","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Attach Point"},{"t":7,"p":1,"n":"Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":11,"p":1,"n":"Value 1"},{"t":11,"p":1,"n":"Value 2"}]}]},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Minimum Level"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]},{"t":7,"p":1,"n":"MNAM - Target OMOD Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"FNAM - Filter Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"LNAM - Loose Mod"},{"t":3,"p":1,"n":"NAM1 - Priority"},{"t":2,"p":1,"n":"FLTR - Filter"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items","c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"n":"OVIS - Object Visibility Manager","d":1,"c":[{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":3,"n":"INDX - Object"},{"t":6,"n":"DATA - Object Bounds","c":[{"t":5,"n":"X1"},{"t":5,"n":"Y1"},{"t":5,"n":"Z1"},{"t":5,"n":"X2"},{"t":5,"n":"Y2"},{"t":5,"n":"Z2"}]}]}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags"}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Ref Alias"},{"t":3,"p":1,"n":"Loc Alias"},{"t":3,"p":1,"n":"Interrupt Data"},{"t":3,"p":1,"n":"Packdata Target"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Ref Collection Alias"},{"t":3,"p":1,"n":"Radius"},{"t":3,"p":1,"n":"Collection Index"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Interrupt Data"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags"}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags"}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags"},{"t":3,"p":1,"n":"Clear General Flags"},{"t":3,"p":1,"n":"Set Interrupt Flags"},{"t":3,"p":1,"n":"Clear Interrupt Flags"},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags"}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ICON - Image"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":2,"p":1,"n":"FNAM - SWF"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":3,"p":1,"n":"EPFB - Perk Entry ID (unique)"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags"},{"t":11,"n":"Unknown"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PKIN - Pack-In","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FLTR - Filter"},{"t":3,"p":1,"n":"CNAM - Cell"},{"t":3,"p":1,"n":"VNAM - Version"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"n":"XASP - Unknown"},{"t":11,"n":"XATP - Unknown"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":11,"n":"XCVR - Unknown"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":11,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"},{"t":3,"p":1,"n":"Tracer Frequency"},{"t":3,"p":1,"n":"VATS Projectile"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model Filename"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"fragmentCount"},{"t":2,"p":1,"n":"scriptName"},{"t":6,"p":1,"n":"Script Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":11,"n":"Unused"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":3,"p":1,"n":"LNAM - Location"},{"t":3,"p":1,"n":"XNAM - Quest Completion XP"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"p":1,"n":"Stages","d":1,"c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags"},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"NAM2 - Note"},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Keyword"}]},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":11,"n":"ANAM - Aliases Marker"},{"t":8,"s":1,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":3,"p":1,"n":"ALCC - Closest To Alias"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":7,"p":1,"n":"ALLA - Linked Aliases","c":[{"t":6,"p":1,"n":"Linked Alias","c":[{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Alias"}]}]},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":3,"p":1,"n":"ALFV - Forced Voice"},{"t":3,"p":1,"n":"ALDI - Death Item"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":3,"p":1,"n":"GNAM - Quest Group"},{"t":2,"p":1,"n":"SNAM - SWF File"}]},{"t":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"STCP - Sound"},{"t":2,"n":"FULL - Name"},{"t":2,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"n":"Actor Effects","c":[{"t":3,"n":"SPLO - Actor Effect"}]},{"t":3,"n":"WNAM - Skin"},{"t":6,"n":"BOD2 - Biped Body Template","c":[{"t":3,"n":"First Person Flags"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":7,"n":"PRPS - Properties","c":[{"t":6,"n":"Property","c":[{"t":3,"n":"Actor Value"},{"t":5,"n":"Value"}]}]},{"t":7,"n":"APPR - Attach Parent Slots","c":[{"t":3,"n":"Keyword"}]},{"t":6,"n":"DATA - Data","c":[{"t":5,"n":"Male Height"},{"t":5,"n":"Female Height"},{"t":6,"n":"Male Default Weight","c":[{"t":5,"n":"Thin"},{"t":5,"n":"Muscular"},{"t":5,"n":"Fat"}]},{"t":6,"n":"Female Default Weight","c":[{"t":5,"n":"Thin"},{"t":5,"n":"Muscular"},{"t":5,"n":"Fat"}]},{"t":3,"n":"Flags"},{"t":5,"n":"Acceleration Rate"},{"t":5,"n":"Deceleration Rate"},{"t":3,"n":"Size"},{"t":11,"n":"Unknown"},{"t":5,"n":"Injured Health Pct"},{"t":3,"n":"Shield Biped Object"},{"t":3,"n":"Beard Biped Object"},{"t":3,"n":"Body Biped Object"},{"t":5,"n":"Aim Angle Tolerance"},{"t":5,"n":"Flight Radius"},{"t":5,"n":"Angular Acceleration Rate"},{"t":5,"n":"Angular Tolerance"},{"t":3,"n":"Flags 2"},{"t":3,"n":"Pipboy Biped Object"},{"t":3,"n":"XP Value"},{"t":5,"n":"Severable - Debris Scale"},{"t":3,"n":"Severable - Debris Count"},{"t":3,"n":"Severable - Decal Count"},{"t":5,"n":"Explodable - Debris Scale"},{"t":3,"n":"Explodable - Debris Count"},{"t":3,"n":"Explodable - Decal Count"},{"t":3,"n":"Severable - Explosion"},{"t":3,"n":"Severable - Debris"},{"t":3,"n":"Severable - Impact DataSet"},{"t":3,"n":"Explodable - Explosion"},{"t":3,"n":"Explodable - Debris"},{"t":3,"n":"Explodable - Impact DataSet"},{"t":5,"n":"OnCripple - Debris Scale"},{"t":3,"n":"OnCripple - Debris Count"},{"t":3,"n":"OnCripple - Decal Count"},{"t":3,"n":"OnCripple - Explosion"},{"t":3,"n":"OnCripple - Debris"},{"t":3,"n":"OnCripple - Impact DataSet"},{"t":3,"n":"Explodable - Subsegment Explosion"},{"t":5,"n":"Orientation Limits - Pitch"},{"t":5,"n":"Orientation Limits - Roll"}]},{"n":"MNAM - Male Marker"},{"t":2,"n":"ANAM - Male Skeletal Model"},{"t":11,"n":"MODT - Texture Files Hashes"},{"n":"FNAM - Female Marker"},{"t":2,"n":"ANAM - Female Skeletal Model"},{"n":"NAM2 - Marker NAM2 #1"},{"t":8,"n":"Movement Type Names","c":[{"t":2,"n":"MTNM - Name"}]},{"t":7,"n":"VTCK - Voices","c":[{"t":3,"n":"Voice"}]},{"t":7,"n":"HCLF - Default Hair Colors","c":[{"t":3,"n":"Default Hair Color"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"n":"ATKR - Attack Race"},{"t":10,"n":"Attacks","c":[{"t":6,"n":"Attack","c":[{"t":6,"n":"ATKD - Attack Data","c":[{"t":5,"n":"Damage Mult"},{"t":5,"n":"Attack Chance"},{"t":3,"n":"Attack Spell"},{"t":3,"n":"Attack Flags"},{"t":5,"n":"Attack Angle"},{"t":5,"n":"Strike Angle"},{"t":5,"n":"Stagger"},{"t":5,"n":"Knockdown"},{"t":5,"n":"Recovery Time"},{"t":5,"n":"Action Points Mult"},{"t":3,"n":"Stagger Offset"}]},{"t":2,"n":"ATKE - Attack Event"},{"t":3,"n":"ATKW - Weapon Slot"},{"t":3,"n":"ATKS - Required Slot"},{"t":2,"n":"ATKT - Description"}]}]},{"t":6,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"INDX - Index"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":3,"n":"MODS - Material Swap"},{"t":5,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]}]}]},{"t":6,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"n":"Parts","c":[{"t":6,"n":"Part","c":[{"t":3,"n":"INDX - Index"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":3,"n":"MODS - Material Swap"},{"t":5,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]}]}]}]},{"t":3,"n":"GNAM - Body Part Data"},{"n":"NAM2 - Marker NAM2 #2"},{"n":"NAM3 - Marker NAM3 #3"},{"t":6,"n":"Male Behavior Graph","c":[{"n":"MNAM - Male Data Marker"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":3,"n":"MODS - Material Swap"},{"t":5,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":6,"n":"Female Behavior Graph","c":[{"n":"FNAM - Female Data Marker"},{"t":6,"n":"Model","c":[{"t":2,"n":"MODL - Model Filename"},{"t":11,"n":"MODT - Texture Files Hashes"},{"t":3,"n":"MODS - Material Swap"},{"t":5,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":3,"n":"NAM4 - Impact Material Type"},{"t":3,"n":"NAM5 - Impact Data Set"},{"t":3,"n":"NAM7 - Dismember Blood Art"},{"t":3,"n":"CNAM - Meat Cap TextureSet"},{"t":3,"n":"NAM2 - Collar TextureSet"},{"t":3,"n":"ONAM - Sound - Open Corpse"},{"t":3,"n":"LNAM - Sound - Close Corpse"},{"t":8,"n":"Biped Object Names","c":[{"t":2,"n":"NAME - Name"}]},{"t":7,"n":"RBPC - Biped Object Conditions","c":[{"t":3,"n":"Slot 30+"}]},{"t":10,"n":"Movement Data Overrides","c":[{"t":6,"n":"Override","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Movement Data","c":[{"t":5,"n":"Unknown"},{"t":5,"n":"Walk - Left"},{"t":5,"n":"Run - Left"},{"t":5,"n":"Walk - Right"},{"t":5,"n":"Run - Right"},{"t":5,"n":"Walk - Forward"},{"t":5,"n":"Run - Forward"},{"t":5,"n":"Sprint - Forward"},{"t":5,"n":"Walk - Back"},{"t":5,"n":"Run - Back"},{"t":5,"n":"Standing - Pitch"},{"t":5,"n":"Walk - Pitch"},{"t":5,"n":"Run - Pitch"},{"t":5,"n":"Sprint - Pitch"},{"t":5,"n":"Standing - Yaw"},{"t":5,"n":"Walk - Yaw"},{"t":5,"n":"Run - Yaw"},{"t":5,"n":"Sprint - Yaw"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags"},{"t":8,"n":"Equip Slots","c":[{"t":6,"n":"Equip Slot","c":[{"t":3,"n":"QNAM - Equip Slot"},{"t":2,"n":"ZNAM - Node"}]}]},{"t":3,"n":"UNWP - Unarmed Weapon"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"},{"t":11,"n":"Unknown"}]}]}]},{"t":3,"n":"WKMV - Base Movement Defaults - Default"},{"t":3,"n":"SWMV - Base Movement Defaults - Swim"},{"t":3,"n":"FLMV - Base Movement Defaults - Fly"},{"t":3,"n":"SNMV - Base Movement Defaults - Sneak"},{"n":"NAM0 - Head Data Marker"},{"n":"MNAM - Male Data Marker"},{"t":6,"n":"NNAM - Male Neck Fat Adjustments Scale","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"}]},{"t":10,"n":"Male Head Parts","c":[{"t":6,"n":"Head Part","c":[{"t":3,"n":"INDX - Head Part Number"},{"t":3,"n":"HEAD - Head"}]}]},{"t":8,"n":"Male Race Presets","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"Male Hair Colors","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"Male Face Details","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Male Default Face Texture"},{"t":8,"n":"Male Tint Layers","c":[{"t":6,"n":"Group","c":[{"t":2,"n":"TTGP - Group Name"},{"t":8,"n":"Options","c":[{"t":6,"n":"Option","c":[{"t":6,"n":"TETI - Index","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Index"}]},{"t":2,"n":"TTGP - Name"},{"t":11,"n":"TTEF - Unknown"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Actor"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Player Action"},{"t":3,"n":"Alias"},{"t":3,"n":"Alignment"},{"t":3,"n":"Association Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Faction"},{"t":3,"n":"Form List"},{"t":3,"n":"Form Type"},{"t":3,"n":"Furniture"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Global"},{"t":3,"n":"Idle"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Keyword"},{"t":3,"n":"Location"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Owner"},{"t":3,"n":"Package"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Perk"},{"t":3,"n":"Quest"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Race"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Region"},{"t":3,"n":"Scene"},{"t":3,"n":"Sex"},{"t":3,"n":"Shout"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (unused)"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Ward State"},{"t":3,"n":"Weather"},{"t":3,"n":"Worldspace"},{"t":3,"n":"Damage Type"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Textures","c":[{"t":2,"n":"TTET - Texture"}]},{"t":11,"n":"TTEB - Unknown"},{"t":7,"n":"TTEC - Template Colors","c":[{"t":6,"n":"Template Color","c":[{"t":3,"n":"Color"},{"t":5,"n":"Alpha"},{"t":3,"n":"Template Index"},{"t":11,"n":"Unknown"}]}]},{"t":5,"n":"TTED - Unknown"}]}]},{"t":11,"n":"TTGE - Group End"}]}]},{"t":8,"n":"Male Morph Groups","c":[{"t":6,"n":"Morph Group","c":[{"t":2,"n":"MPGN - Name"},{"t":3,"n":"MPPC - Count"},{"t":8,"n":"Morph Presets","c":[{"t":6,"n":"Morph Preset","c":[{"t":3,"n":"MPPI - Index"},{"t":2,"n":"MPPN - Name"},{"t":2,"n":"MPPM - Unknown"},{"t":3,"n":"MPPT - Texture"},{"t":11,"n":"MPPF - Unknown"}]}]},{"t":11,"n":"MPPK - Unknown"},{"t":11,"n":"MPGS - Unknown"}]}]},{"t":8,"n":"Male Face Morphs","c":[{"t":6,"n":"Face Morph","c":[{"t":3,"n":"FMRI - Index"},{"t":2,"n":"FMRN - Name"}]}]},{"t":2,"n":"WMAP - Male Wrinkle Map Path"},{"n":"FNAM - Female Data Marker"},{"t":6,"n":"NNAM - Female Neck Fat Adjustments Scale","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"}]},{"t":10,"n":"Female Head Parts","c":[{"t":6,"n":"Head Part","c":[{"t":3,"n":"INDX - Head Part Number"},{"t":3,"n":"HEAD - Head"}]}]},{"t":8,"n":"Female Race Presets","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"Female Hair Colors","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"Female Face Details","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Female Default Face Texture"},{"t":8,"n":"Female Tint Layers","c":[{"t":6,"n":"Group","c":[{"t":2,"n":"TTGP - Group Name"},{"t":8,"n":"Options","c":[{"t":6,"n":"Option","c":[{"t":6,"n":"TETI - Index","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Index"}]},{"t":2,"n":"TTGP - Name"},{"t":11,"n":"TTEF - Unknown"},{"t":8,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - ","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Actor"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Player Action"},{"t":3,"n":"Alias"},{"t":3,"n":"Alignment"},{"t":3,"n":"Association Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Faction"},{"t":3,"n":"Form List"},{"t":3,"n":"Form Type"},{"t":3,"n":"Furniture"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Global"},{"t":3,"n":"Idle"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Keyword"},{"t":3,"n":"Location"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Owner"},{"t":3,"n":"Package"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Perk"},{"t":3,"n":"Quest"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Race"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Region"},{"t":3,"n":"Scene"},{"t":3,"n":"Sex"},{"t":3,"n":"Shout"},{"t":11,"n":"Variable Name (unused)"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (unused)"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Ward State"},{"t":3,"n":"Weather"},{"t":3,"n":"Worldspace"},{"t":3,"n":"Damage Type"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Textures","c":[{"t":2,"n":"TTET - Texture"}]},{"t":11,"n":"TTEB - Unknown"},{"t":7,"n":"TTEC - Template Colors","c":[{"t":6,"n":"Template Color","c":[{"t":3,"n":"Color"},{"t":5,"n":"Alpha"},{"t":3,"n":"Template Index"},{"t":11,"n":"Unknown"}]}]},{"t":5,"n":"TTED - Unknown"}]}]},{"t":11,"n":"TTGE - Group End"}]}]},{"t":8,"n":"Female Morph Groups","c":[{"t":6,"n":"Morph Group","c":[{"t":2,"n":"MPGN - Name"},{"t":3,"n":"MPPC - Count"},{"t":8,"n":"Morph Presets","c":[{"t":6,"n":"Morph Preset","c":[{"t":3,"n":"MPPI - Index"},{"t":2,"n":"MPPN - Name"},{"t":2,"n":"MPPM - Unknown"},{"t":3,"n":"MPPT - Texture"},{"t":11,"n":"MPPF - Unknown"}]}]},{"t":11,"n":"MPPK - Unknown"},{"t":11,"n":"MPGS - Unknown"}]}]},{"t":8,"n":"Female Face Morphs","c":[{"t":6,"n":"Face Morph","c":[{"t":3,"n":"FMRI - Index"},{"t":2,"n":"FMRN - Name"}]}]},{"t":2,"n":"WMAP - Female Wrinkle Map Path"},{"t":3,"n":"NAM8 - Morph Race"},{"t":3,"n":"RNAM - Armor Race"},{"t":3,"n":"SRAC - Subgraph Template Race"},{"t":3,"n":"SADD - Subgraph Additive Race"},{"t":8,"n":"Subgraph Data","c":[{"t":6,"n":"Data","c":[{"t":2,"n":"SGNM - Behaviour Graph"},{"t":8,"n":"Actor Keywords","c":[{"t":3,"n":"SAKD - Keyword"}]},{"t":8,"n":"Target Keywords","c":[{"t":3,"n":"STKD - Keyword"}]},{"t":8,"n":"Animation Paths","c":[{"t":2,"n":"SAPT - Path"}]},{"t":6,"n":"SRAF - Flags","c":[{"t":3,"n":"Role"},{"t":3,"n":"Perspective"}]}]}]},{"t":5,"n":"PTOP - Idle Chatter Time Min"},{"t":5,"n":"NTOP - Idle Chatter Time Max"},{"t":8,"n":"Morph Values","c":[{"t":6,"n":"Value","c":[{"t":3,"n":"MSID - Index"},{"t":2,"n":"MSM0 - Min Name"},{"t":2,"n":"MSM1 - Max Name"}]}]},{"t":11,"n":"MLSI - Unknown"},{"t":2,"n":"HNAM - Hair Color Lookup Texture"},{"t":2,"n":"HLTX - Hair Color Extended Lookup Texture"},{"t":3,"n":"QSTI - Dialogue Quest"},{"t":8,"n":"Bone Data","c":[{"t":6,"n":"Data","c":[{"t":3,"n":"BSMP - Gender"},{"t":8,"n":"Bones","c":[{"t":6,"n":"Bone","c":[{"t":2,"n":"BSMB - Name"},{"t":7,"n":"BSMS - Values","c":[{"t":5,"n":"Value"}]},{"t":11,"n":"BMMP - Unknown"}]}]}]}]}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.0+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":5,"p":1,"n":"Near Clip"},{"t":5,"p":1,"n":"Volumetric Intensity"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Transition Interior"}]},{"t":3,"p":1,"n":"XTNM - Teleport Loc Name"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XASP - Acoustic Restriction"},{"p":1,"n":"XATP - Activation Point"},{"t":3,"p":1,"n":"XAMC - Ammo Count"},{"p":1,"n":"XLKT - Linked Ref Transient"},{"t":3,"p":1,"n":"XLYR - Layer"},{"t":3,"p":1,"n":"XMSP - Material Swap"},{"t":3,"p":1,"n":"XRFG - Reference Group"},{"t":6,"s":1,"p":1,"n":"XRDO - Radio","c":[{"t":5,"p":1,"n":"Frequency"},{"t":5,"p":1,"n":"Min Weak Distance"},{"t":5,"p":1,"n":"Max Weak Distance"},{"t":3,"p":1,"n":"Flags"}]},{"t":6,"s":1,"p":1,"n":"XBSD - Spline","c":[{"t":5,"p":1,"n":"Slack"},{"t":5,"p":1,"n":"Thickness"},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Wind - Detached End"},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"XPDD - Projected Decal","c":[{"t":5,"p":1,"n":"Width Scale"},{"t":5,"p":1,"n":"Height Scale"}]},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags"},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"XOWN - Owner","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"}]},{"t":3,"p":1,"n":"XRNK - Owner Faction Rank"},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":3,"p":1,"n":"XHLT - Health %"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":8,"s":1,"p":1,"n":"Spline Connection","d":1,"c":[{"t":6,"p":1,"n":"XPLK - Link","c":[{"t":3,"p":1,"n":"Ref"},{"t":11,"n":"Unknown"}]}]},{"t":6,"s":1,"p":1,"n":"Power Grid","c":[{"t":3,"p":1,"n":"XWPG - Count"},{"t":8,"p":1,"n":"Connections","c":[{"t":6,"p":1,"n":"XWPN - Connection","c":[{"t":3,"p":1,"n":"Node 1"},{"t":3,"p":1,"n":"Node 2"},{"t":3,"p":1,"n":"Line"}]}]}]},{"t":11,"n":"XCVR - Unknown"},{"t":11,"n":"XCVL - Unknown"},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":7,"n":"XLOD - Distant LOD Data","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":2,"p":1,"n":"MNAM - Comments"}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":11,"n":"ANAM - Unknown"}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":5,"p":1,"n":"RLDM - LOD Display Distance Multiplier"},{"t":5,"p":1,"n":"ANAM - Occlusion Accuracy Dist"}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]},{"t":3,"p":1,"n":"ANAM - Reverb Class"}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"RFGP - Reference Group","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"NNAM - Name"},{"t":3,"p":1,"n":"RNAM - Reference"},{"t":11,"n":"PNAM - Unknown"}]},{"t":1,"p":1,"n":"SCCO - Scene Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Scenes","d":1,"c":[{"t":6,"p":1,"n":"Scene","c":[{"t":3,"p":1,"n":"SNAM - Scene"},{"t":6,"n":"XNAM - Unknown","c":[{"t":3,"n":"Unknown"}]}]}]},{"t":11,"n":"VNAM - Unknown"},{"t":8,"n":"Unknown","c":[{"t":6,"n":"XNAM - Unknown","c":[{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker Start Conditions"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker Completion Conditions"},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":6,"p":1,"n":"SCQS - Set Parent Quest Stage","c":[{"t":3,"p":1,"n":"On Start"},{"t":3,"p":1,"n":"On Completion"}]},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Alias ID"},{"t":3,"p":1,"n":"LNAM - Flags"},{"t":3,"p":1,"n":"DNAM - Behaviour Flags"}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Alias ID"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer - Max Seconds"},{"t":3,"p":1,"n":"SCQS - Set Parent Quest Stage"},{"t":5,"p":1,"n":"TNAM - Timer - Min Seconds"},{"t":11,"n":"STSC - Unknown"},{"t":8,"p":1,"n":"Start Scenes","c":[{"t":6,"p":1,"n":"Start Scene","c":[{"t":3,"p":1,"n":"LCEP - Scene"},{"t":3,"p":1,"n":"INTT - Phase Index"},{"t":2,"p":1,"n":"SSPN - Start Phase for Scene"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":3,"p":1,"n":"PTOP - Player Positive Response"},{"t":3,"p":1,"n":"NTOP - Player Negative Response"},{"t":3,"p":1,"n":"NETO - Player Neutral Response"},{"t":3,"p":1,"n":"QTOP - Player Question Response"},{"t":3,"p":1,"n":"VENC - Player Positive Dialogue Subtype"},{"t":3,"p":1,"n":"PLVD - Player Negative Dialogue Subtype"},{"t":3,"p":1,"n":"JOUT - Player Neutral Dialogue Subtype"},{"t":3,"p":1,"n":"DALC - Player Question Dialogue Subtype"},{"t":7,"p":1,"n":"DTID - NPC Headtracking","c":[{"t":3,"p":1,"n":"Actor ID"}]},{"t":3,"p":1,"n":"NPOT - NPC Positive Response"},{"t":3,"p":1,"n":"NNGT - NPC Negative Response"},{"t":3,"p":1,"n":"NNUT - NPC Neutral Response"},{"t":3,"p":1,"n":"NQUT - NPC Question Response"},{"t":3,"p":1,"n":"NPOS - NPC Positive Dialogue Subtype"},{"t":3,"p":1,"n":"NNGS - NPC Negative Dialogue Subtype"},{"t":3,"p":1,"n":"NNUS - NPC Neutral Dialogue Subtype"},{"t":3,"p":1,"n":"NQUS - NPC Question Dialogue Subtype"},{"t":3,"p":1,"n":"DTGT - Dialogue Target Actor"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"p":1,"n":"End Scene Say Greeting"},{"t":3,"p":1,"n":"Play Sound"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":6,"p":1,"n":"CRIS - Camera","c":[{"t":5,"p":1,"n":"FOV On Player Camera"},{"t":5,"p":1,"n":"Rate Of Camera Change"}]},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":7,"p":1,"n":"HTID - Player Headtracking","c":[{"t":3,"p":1,"n":"Actor ID"}]},{"t":3,"p":1,"n":"VENC - Dialogue Subtype"},{"t":3,"p":1,"n":"PNAM - AnimArchType"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":5,"p":1,"n":"CNAM - Camera Distance Override"},{"t":5,"p":1,"n":"ACTV - Dialogue Distance Override"},{"t":5,"p":1,"n":"CRIS - FOV Override"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"SCQS - Set Parent Quest Stage","c":[{"t":3,"p":1,"n":"On Begin"},{"t":3,"p":1,"n":"On End"}]},{"t":2,"p":1,"n":"NNAM - Notes"},{"t":3,"p":1,"n":"TNAM - Template Scene"},{"t":3,"p":1,"n":"XNAM - Index"}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"FLTR - Filter"},{"t":10,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements","c":[{"t":6,"p":1,"n":"Placement","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Scale"}]}]}]}]}]},{"t":1,"p":1,"n":"SCSN - Audio Category Snapshot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Priority"},{"t":8,"s":1,"p":1,"n":"Category Multipliers","d":1,"c":[{"t":6,"p":1,"n":"CNAM - Category Multiplier","c":[{"t":3,"p":1,"n":"Categoty"},{"t":5,"p":1,"n":"Multiplier"}]}]}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Child "},{"t":3,"n":"CITC - Condition Count"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags"},{"t":3,"p":1,"n":"Quest Flags"}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":5,"p":1,"n":"HNAM - Hours until reset"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"PNAM - Parent Category"},{"t":3,"p":1,"n":"ONAM - Menu Slider Category"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"},{"t":5,"p":1,"n":"MNAM - Min Frequency Multiplier"},{"t":5,"p":1,"n":"CNAM - Sidechain Target Multiplier"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"NNAM - Notes"},{"t":3,"p":1,"n":"CNAM - Descriptor Type"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":8,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Sidechain"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]},{"t":3,"p":1,"n":"Base Descriptor"},{"t":8,"s":1,"p":1,"n":"Descriptors","d":1,"c":[{"t":3,"p":1,"n":"DNAM - Descriptor"}]},{"t":3,"n":"ITMC - Count"},{"t":10,"p":1,"n":"Rates of Fire","d":1,"c":[{"t":6,"p":1,"n":"Sound","c":[{"p":1,"n":"ITMS - Marker Start"},{"t":3,"p":1,"n":"INTV - RoF (RPM)"},{"t":2,"p":1,"n":"FNAM - File"},{"p":1,"n":"ITME - Marker End"}]}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":3,"p":1,"n":"MNAM - Type"},{"t":3,"p":1,"n":"VNAM - Static Attenuation"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"FL"},{"t":3,"p":1,"n":"FR"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"SL"},{"t":3,"p":1,"n":"SR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ATTN - Attenuation Values","c":[{"t":5,"p":1,"n":"Fade In Distance - Start"},{"t":5,"p":1,"n":"Fade In Distance - End"},{"t":5,"p":1,"n":"Fade Out Distance - Start"},{"t":5,"p":1,"n":"Fade Out Distance - End"},{"t":6,"p":1,"n":"Fade In Curve","c":[{"t":3,"p":1,"n":"Value 1"},{"t":3,"p":1,"n":"Value 2"},{"t":3,"p":1,"n":"Value 3"},{"t":3,"p":1,"n":"Value 4"}]},{"t":6,"p":1,"n":"Fade Out Curve","c":[{"t":3,"p":1,"n":"Value 1"},{"t":3,"p":1,"n":"Value 2"},{"t":3,"p":1,"n":"Value 3"},{"t":3,"p":1,"n":"Value 4"}]}]},{"t":3,"p":1,"n":"ENAM - Effect Chain"}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"},{"t":6,"s":1,"p":1,"n":"REPT - Repeat","c":[{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Max Time"},{"t":3,"p":1,"n":"Stackable"}]}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Casting Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - ","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"MNAM - Particle Texture"}]},{"t":1,"p":1,"n":"STAG - Animation Sound Tag Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"TNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":2,"p":1,"n":"Action"}]}]}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":3,"p":1,"n":"FTYP - Forced Loc Ref Type"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]},{"t":6,"s":1,"p":1,"n":"NVNM - Navmesh Geometry","c":[{"t":3,"p":1,"n":"Version"},{"t":11,"p":1,"n":"Magic"},{"t":3,"p":1,"n":"Parent Worldspace"},{"t":6,"p":1,"n":"Coordinates","c":[{"t":3,"p":1,"n":"Grid Y"},{"t":3,"p":1,"n":"Grid X"}]},{"t":3,"p":1,"n":"Parent Cell"},{"t":11,"p":1,"n":"Vertices and Triangles"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"LOD","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TERM - Terminal","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"NAM0 - Header Text"},{"t":2,"p":1,"n":"WNAM - Welcome Text"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":7,"p":1,"n":"PRPS - Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Value"}]}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags"},{"t":11,"n":"WBDT - Workbench Data (unused)"},{"t":2,"p":1,"n":"XMRK - Marker Model"},{"t":7,"p":1,"n":"SNAM - Marker Paramaters","c":[{"t":6,"p":1,"n":"Marker","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Offset Z"},{"t":5,"p":1,"n":"Rotation Z"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Entry Types"},{"t":11,"n":"Unknown"}]}]},{"t":3,"n":"BSIZ - Count"},{"t":8,"s":1,"p":1,"n":"Body Text","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":2,"p":1,"n":"BTXT - Text"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":3,"n":"ISIZ - Count"},{"t":8,"s":1,"p":1,"n":"Menu Items","d":1,"c":[{"t":6,"p":1,"n":"Menu Item","c":[{"t":2,"p":1,"n":"ITXT - Item Text"},{"t":2,"p":1,"n":"RNAM - Response Text"},{"t":3,"p":1,"n":"ANAM - Type"},{"t":3,"p":1,"n":"ITID - Item ID"},{"t":2,"p":1,"n":"UNAM - Display Text"},{"t":2,"p":1,"n":"VNAM - Show Image"},{"t":3,"p":1,"n":"TNAM - Submenu"},{"t":8,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - ","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Shout"},{"t":11,"p":1,"n":"Variable Name (unused)"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (unused)"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TRNS - Transform","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":5,"p":1,"n":"Scale"},{"t":5,"p":1,"n":"Zoom Min"},{"t":5,"p":1,"n":"Zoom Max"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX03 - Glow"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX02 - Wrinkles"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Smooth Spec"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Alpha Threshold?"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags"},{"t":2,"p":1,"n":"MNAM - Material"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags"}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"ANAM - Opacity (unused)"},{"t":3,"p":1,"n":"FNAM - Flags"},{"t":3,"p":1,"n":"TNAM - Material (unused)"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Consume Spell"},{"t":3,"p":1,"n":"YNAM - Contact Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":11,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":6,"p":1,"n":"Fog Properties","c":[{"t":5,"p":1,"n":"Depth Amount"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Shallow Range"},{"t":5,"p":1,"n":"Color Deep Range"},{"t":5,"p":1,"n":"Shallow Alpha"},{"t":5,"p":1,"n":"Deep Alpha"},{"t":5,"p":1,"n":"Alpha Shallow Range"},{"t":5,"p":1,"n":"Alpha Deep Range"},{"t":6,"p":1,"n":"Underwater Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Underwater Fog Amount"},{"t":5,"p":1,"n":"Underwater Near Fog"},{"t":5,"p":1,"n":"Underwater Far Fog"}]},{"t":6,"p":1,"n":"Physical Properties","c":[{"t":5,"p":1,"n":"Normal Magnitude"},{"t":5,"p":1,"n":"Shallow Normal Falloff"},{"t":5,"p":1,"n":"Deep Normal Falloff"},{"t":5,"p":1,"n":"Reflectivity Amount"},{"t":5,"p":1,"n":"Fresnel Amount"},{"t":5,"p":1,"n":"Surface Effect Falloff"},{"t":6,"p":1,"n":"Displacement Simulator","c":[{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Velocity"},{"t":5,"p":1,"n":"Falloff"},{"t":5,"p":1,"n":"Dampener"},{"t":5,"p":1,"n":"Starting Size"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular Properties","c":[{"t":5,"p":1,"n":"Sun Specular Power"},{"t":5,"p":1,"n":"Sun Specular Magnitude"},{"t":5,"p":1,"n":"Sun Sparkle Power"},{"t":5,"p":1,"n":"Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Interior Specular Radius"},{"t":5,"p":1,"n":"Interior Specular Brightness"},{"t":5,"p":1,"n":"Interior Specular Power"}]},{"t":6,"p":1,"n":"Noise Properties","c":[{"t":5,"p":1,"n":"Layer 1 - Wind Direction"},{"t":5,"p":1,"n":"Layer 2 - Wind Direction"},{"t":5,"p":1,"n":"Layer 3 - Wind Direction"},{"t":5,"p":1,"n":"Layer 1 - Wind Speed"},{"t":5,"p":1,"n":"Layer 2 - Wind Speed"},{"t":5,"p":1,"n":"Layer 3 - Wind Speed"},{"t":5,"p":1,"n":"Layer 1 - Amplitude Scale"},{"t":5,"p":1,"n":"Layer 2 - Amplitude Scale"},{"t":5,"p":1,"n":"Layer 3 - Amplitude Scale"},{"t":5,"p":1,"n":"Layer 1 - UV Scale"},{"t":5,"p":1,"n":"Layer 2 - UV Scale"},{"t":5,"p":1,"n":"Layer 3 - UV Scale"},{"t":5,"p":1,"n":"Layer 1 - Noise Falloff"},{"t":5,"p":1,"n":"Layer 2 - Noise Falloff"},{"t":5,"p":1,"n":"Layer 3 - Noise Falloff"}]},{"t":6,"p":1,"n":"Silt Properties","c":[{"t":5,"p":1,"n":"Silt Amount"},{"t":6,"p":1,"n":"Light Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Dark Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"Screen Space Reflections"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Layer 1 Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Layer 2 Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Layer 3 Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Struct","c":[{"t":7,"p":1,"n":"Struct","c":[{"t":6,"p":1,"n":"Member","c":[{"t":2,"p":1,"n":"memberName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"PTRN - Preview Transform"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]},{"t":2,"p":1,"n":"ICON - Inventory Image"},{"t":2,"p":1,"n":"MICO - Message Icon"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]},{"t":7,"p":1,"n":"DAMC - Resistances","c":[{"t":6,"p":1,"n":"Resistance","c":[{"t":3,"p":1,"n":"Damage Type"},{"t":3,"p":1,"n":"Value"}]}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":2,"p":1,"n":"DSTA - Sequence Name"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model Filename"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":5,"p":1,"n":"DMDC - Color Remapping Index"},{"t":3,"p":1,"n":"DMDS - Material Swap"}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"INRD - Instance Naming"},{"t":7,"p":1,"n":"APPR - Attach Parent Slots","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Object Template","c":[{"t":3,"p":1,"n":"OBTE - Count"},{"t":8,"p":1,"n":"Combinations","c":[{"t":6,"p":1,"n":"Combination","c":[{"p":1,"n":"OBTF - Editor Only"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"OBTS - Object Mod Template Item","c":[{"t":3,"p":1,"n":"Include Count"},{"t":3,"p":1,"n":"Property Count"},{"t":3,"p":1,"n":"Level Min"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Level Max"},{"t":3,"p":1,"n":"ID"},{"t":3,"p":1,"n":"Default"},{"t":7,"p":1,"n":"Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"Min Level For Ranks"},{"t":3,"p":1,"n":"Alt Levels Per Tier"},{"t":7,"p":1,"n":"Includes","c":[{"t":6,"p":1,"n":"Include","c":[{"t":3,"p":1,"n":"Mod"},{"t":3,"p":1,"n":"Attach Point Index"},{"t":3,"p":1,"n":"Optional"},{"t":3,"p":1,"n":"Don't Use All"}]}]},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":3,"p":1,"n":"Value Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Function Type"},{"t":3,"p":1,"n":"Property"},{"t":11,"n":"Value 1 - Unknown"},{"t":3,"p":1,"n":"Value 1 - Int"},{"t":5,"p":1,"n":"Value 1 - Float"},{"t":3,"p":1,"n":"Value 1 - Bool"},{"t":3,"p":1,"n":"Value 1 - FormID"},{"t":3,"p":1,"n":"Value 1 - Enum"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Stagger Value"},{"t":3,"p":1,"n":"Hit Behaviour"},{"t":3,"p":1,"n":"Value 2 - Int"},{"t":5,"p":1,"n":"Value 2 - Float"},{"t":3,"p":1,"n":"Value 2 - Bool"},{"t":5,"p":1,"n":"Step"}]}]}]}]}]},{"p":1,"n":"STOP - Marker"}]},{"t":3,"p":1,"n":"NNAM - Embedded Weapon Mod"},{"t":6,"s":1,"p":1,"n":"1st Person Model","c":[{"t":2,"p":1,"n":"MOD4 - Model Filename"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":3,"p":1,"n":"MO4S - Material Swap"},{"t":5,"p":1,"n":"MO4C - Color Remapping Index"},{"t":11,"n":"MO4F - Unknown"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Ammo"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reload Speed"},{"t":5,"p":1,"n":"Reach"},{"t":5,"p":1,"n":"Min Range"},{"t":5,"p":1,"n":"Max Range"},{"t":5,"p":1,"n":"Attack Delay"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Damage - OutOfRange Mult"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Capacity"},{"t":3,"p":1,"n":"Animation Type"},{"t":5,"p":1,"n":"Damage - Secondary"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Damage - Base"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Sound - Attack"},{"t":3,"p":1,"n":"Sound - Attack 2D"},{"t":3,"p":1,"n":"Sound - Attack Loop"},{"t":3,"p":1,"n":"Sound - Attack Fail"},{"t":3,"p":1,"n":"Sound - Idle"},{"t":3,"p":1,"n":"Sound - Equip Sound"},{"t":3,"p":1,"n":"Sound - UnEquip Sound"},{"t":3,"p":1,"n":"Sound - Fast Equip Sound"},{"t":3,"p":1,"n":"Accuracy Bonus"},{"t":5,"p":1,"n":"Animation Attack Seconds"},{"t":5,"p":1,"n":"Action Point Cost"},{"t":5,"p":1,"n":"Full Power Seconds"},{"t":5,"p":1,"n":"Min Power Per Shot"},{"t":3,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"FNAM - ","c":[{"t":5,"p":1,"n":"Animation Fire Seconds"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":5,"p":1,"n":"Animation Reload Seconds"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Sighted Transition Seconds"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Override Projectile"},{"t":3,"p":1,"n":"Pattern"},{"t":3,"p":1,"n":"Rumble - Peroid (ms)"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":5,"p":1,"n":"Crit Damage Mult"},{"t":5,"p":1,"n":"Crit Charge Bonus"},{"t":3,"p":1,"n":"Crit Effect"}]},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"LNAM - NPC Add Ammo List"},{"t":3,"p":1,"n":"WAMD - Aim Model"},{"t":3,"p":1,"n":"WZMD - Zoom"},{"t":3,"p":1,"n":"CNAM - Template"},{"t":7,"p":1,"n":"DAMA - Damage Types","c":[{"t":6,"p":1,"n":"Damage Type","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Amount"}]}]},{"t":2,"p":1,"n":"FLTR - Filter"},{"t":3,"p":1,"n":"MASE - Melee Speed"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"n":"Unused RNAM","c":[{"t":11,"n":"RNAM - Unknown"}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - ","c":[{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags"},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":6,"s":1,"p":1,"n":"World Default Level Data","c":[{"t":6,"p":1,"n":"WLEV - Dimension","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Size","c":[{"t":3,"p":1,"n":"Width"},{"t":3,"p":1,"n":"Height"}]}]},{"t":11,"p":1,"n":"WLEV - Data"}]},{"t":11,"n":"OFST - Offset Data"},{"t":11,"n":"CLSZ - Unknown"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"},{"t":5,"p":1,"n":"EarlySunrise"},{"t":5,"p":1,"n":"LateSunrise"},{"t":5,"p":1,"n":"EarlySunset"},{"t":5,"p":1,"n":"LateSunset"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"EarlySunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"LateSunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"EarlySunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"LateSunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near High","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far High","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"EarlySunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"LateSunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"n":"NAM4 - Unknown","c":[{"t":5,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"},{"t":5,"p":1,"n":"Day - Near Height Mid"},{"t":5,"p":1,"n":"Day - Near Height Range"},{"t":5,"p":1,"n":"Night - Near Height Mid"},{"t":5,"p":1,"n":"Night - Near Height Range"},{"t":5,"p":1,"n":"Day - High Density Scale"},{"t":5,"p":1,"n":"Night - High Density Scale"},{"t":5,"p":1,"n":"Day - Far Height Mid"},{"t":5,"p":1,"n":"Day - Far Height Range"},{"t":5,"p":1,"n":"Night - Far Height Mid"},{"t":5,"p":1,"n":"Night - Far Height Range"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags"},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"},{"t":3,"p":1,"n":"EarlySunrise"},{"t":3,"p":1,"n":"LateSunrise"},{"t":3,"p":1,"n":"EarlySunset"},{"t":3,"p":1,"n":"LateSunset"}]},{"t":6,"s":1,"p":1,"n":"WGDR - God Rays","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"},{"t":3,"p":1,"n":"EarlySunrise"},{"t":3,"p":1,"n":"LateSunrise"},{"t":3,"p":1,"n":"EarlySunset"},{"t":3,"p":1,"n":"LateSunset"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - EarlySunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - LateSunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - EarlySunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - LateSunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model Filename"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":3,"p":1,"n":"MODS - Material Swap"},{"t":5,"p":1,"n":"MODC - Color Remapping Index"},{"t":11,"n":"MODF - Unknown"}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"},{"t":6,"s":1,"p":1,"n":"UNAM - Magic","c":[{"t":3,"p":1,"n":"On Lightning Strike - Spell"},{"t":5,"p":1,"n":"On Lightning Strike - Threshold"},{"t":3,"p":1,"n":"On Weather Activate - Spell"},{"t":5,"p":1,"n":"On Weather Activate - Threshold"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"VNAM - Volatility Mult"},{"t":5,"p":1,"n":"WNAM - Visibility Mult"}]},{"t":1,"p":1,"n":"ZOOM - Zoom","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"GNAM - Data","c":[{"t":5,"p":1,"n":"FOV Mult"},{"t":3,"p":1,"n":"Overlay"},{"t":3,"p":1,"n":"Imagespace Modifier"},{"t":6,"p":1,"n":"Camera Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":2,"p":1,"n":"DNAM - Notes"},{"t":3,"p":1,"n":"TNAM - Type"},{"t":3,"p":1,"n":"DATA - Attraction Rule"},{"t":2,"p":1,"n":"FULL - Name"}]}]},"name":"Smash.All.old","hash":"A4B4931B","color":128} From c40b42957b1ff301d58a58fef75d66e710089b9b Mon Sep 17 00:00:00 2001 From: Koriss_ <> Date: Thu, 7 Jan 2021 18:52:30 -0500 Subject: [PATCH 31/76] Mostly complete Russian translation? --- frontend/lang/russian.lang | 182 +++++++++++++++++++++++++++++++++++++ 1 file changed, 182 insertions(+) create mode 100755 frontend/lang/russian.lang diff --git a/frontend/lang/russian.lang b/frontend/lang/russian.lang new file mode 100755 index 0000000..f2c844a --- /dev/null +++ b/frontend/lang/russian.lang @@ -0,0 +1,182 @@ +{ TSmashForm } +{ ## QuickBar ## } +msMain_QuickButton_Hint=БыÑтрый патч|Применить Smash.All к загруженным плагинам и #13#10Ñгенерировать Smashed Patch.#13#10 +msMain_NewButton_Hint=Создать новый Smashed Patch|Создать новый пуÑтой Smashed Patch. +msMain_BuildButton_Hint=Собрать патчи| +msMain_ManageButton_Hint=Управление наÑтройками Smash|Ðажмите здеÑÑŒ, чтобы управлÑть наÑтройками Smash. +msMain_OptionsButton_Hint=Параметры|Измените параметры, определÑющие, как #13#10программа работает.#13#10 +{ #### DYNAMIC #### } +msMain_NoPatches=Ðет никаких патчей Ð´Ð»Ñ Ñборки или переÑборки. +msMain_BuildPatches_Loader=Ð’Ñ‹ не можете Ñтроить патчи, пока фоновый #13#10загручик не загрузитÑÑ.#13#10 +msMain_BuildAllPatches=Собирает вÑе патчи, которые готовы к Ñборке или #13#10переÑобирает.#13#10 +{ ## Main Panel ## } +{ ## Details Panel ## } +msMain_DetailsLabel_Caption=Детали +msMain_DetailsCopyToClipboardItem_Caption=Скопировать в буфер обмена +{ ## Plugins Tab ## } +msMain_PluginsTabSheet_Caption=Плагины +msMain_PluginsListView_Column0=Ð˜Ð½Ð´ÐµÐºÑ +msMain_PluginsListView_Column1=Ð˜Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° +msMain_PluginsListView_Column2=ÐаÑтройка +msMain_PluginsListView_Column3=Патч +{ #### DYNAMIC #### } +msMain_PluginDetails=Детали плагина +msMain_Filename=Ð˜Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° +msMain_Hash=Хеш +msMain_FileSize=Размер файла +msMain_DateModified=Дата Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ +msMain_NumRecords=КоличеÑтво запиÑей +msMain_NumOverrides=КоличеÑтво перезапиÑей +msMain_Author=Ðвтор +msMain_Description=ОпиÑание +msMain_Masters=МаÑтер-файлы +msMain_ClearTags=Ð’Ñ‹ уверены, что хотите удалить теги из Ñтих плагинов? +{ ## Plugins Popup Menu ## } +msMain_NewPatchItem_Caption= +msMain_OpenPluginLocationItem_Caption=Открыть раÑположение плагина +msMain_AddToPatchItem_Caption=Добавить в патч +msMain_ManageTagsItem_Caption=Управление тегами +msMain_SmashSettingItem_Caption=ÐаÑтройки Smash +{ ## Patches Tab ## } +msMain_PatchesTabSheet_Caption=Патчи +msMain_PatchesListView_Column0=Ð˜Ð½Ð´ÐµÐºÑ +msMain_PatchesListView_Column1=Ð˜Ð¼Ñ +msMain_PatchesListView_Column2=Ð˜Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° +msMain_PatchesListView_Column3=Размер +msMain_PatchesListView_Column4=Дата ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ +{ #### DYNAMIC #### } +msMain_PatchDetails=Детали патча +msMain_Status=Ð¡Ñ‚Ð°Ñ‚ÑƒÑ +msMain_PatchName=Ðазвание патча +msMain_PluginCount=КоличеÑтво плагинов +msMain_DateBuilt=Дата ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ +msMain_Plugins=Плагины +msMain_Fails=Ошибки +msMain_TooManyFails=Слишком много ошибок Ð´Ð»Ñ Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ. +msMain_DeletePatches=Ð’Ñ‹ уверены, что хотите удалить Ñти патчи? +{ ## Patches Popup Menu ## } +msMain_ToggleRebuildItem_Caption=Переключить ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¿ÐµÑ€ÐµÑборки +msMain_OpenInExplorerItem_Caption=Открыть в проводнике +{ ## Plugins Submenu ## } +msMain_MoveItem_Caption=ПеремеÑтить +msMain_UpItem_Caption=Вверх +msMain_DownItem_Caption=вниз +msMain_ToTopItem_Caption=К началу +msMain_ToBottomItem_Caption=К концу +{ #### DYNAMIC #### } +msMain_BuildPatch=Собрать патч +msMain_RebuildPatch=ПереÑобрать патч +msMain_BuildPatches=Собрать патчи +msMain_RebuildPatches=ПереÑобрать патчи +{ ## Log Tab ## } +msMain_LogTabSheet_Caption=Лог +{ #### DYNAMIC #### } +msMain_AppDetails=Детали Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ +msMain_Application=Приложение +msMain_Author=Ðвтор +msMain_Version=ВерÑÐ¸Ñ +msMain_DateBuilt=Дата ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ +msMain_GameMode=Режим игры +msMain_Language=Язык +msMain_TimesRun=Раз запущено +msMain_PatchesBuilt=Создано патчей +msMain_PluginsSmashed=Плагинов пропатчено +msMain_SettingsSubmitted=ÐаÑтройки Smash отправлены +msMain_RecsSubmitted=ПредÑтавленные рекомендации +msMain_Website=Веб-Ñайт +msMain_ApiCredits=Кредиты API +msMain_xEditVersion=ВерÑÐ¸Ñ xEdit +msMain_xEditCredits=Кредиты xEdit +msMain_Testers=ТеÑтеры +msMain_Translators=Переводчики +msMain_LoadException=ИÑключение загрузки плагинов +msMain_PluginsNotLoaded=Ð’ ÑвÑзи Ñ Ð¸Ñключением, не вÑе ваши плагины #13#10были загружены. Ð’Ñ‹ вÑе еще можете иÑпользовать программу. #13#10См. вкладку лога Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾Ð¹ информации.#13#10 +msMain_Enable=Включить +msMain_Disable=Выключить +msMain_AutoScroll=Ðвтопрокрутка +{ ## Log Popup Menu ## } +msMain_FilterGroupItem_Caption=Группа фильтров +msMain_FilterLabelItem_Caption=Filter label +msMain_CopyToClipboardItem_Caption=Скопировать +msMain_SaveAndClearItem_Caption=Сохранить и очиÑтить +msMain_ToggleAutoScrollItem_Caption=Отключить автопрокрутку + +{ TOptionsForm } +mpOpt_btnCancel_Caption=Отмена +mpOpt_btnOK_Caption=OK +{ ## General Tab ## } +mpOpt_GeneralTabSheet_Caption=ОÑновные +mpOpt_gbLanguage_Caption=Язык +mpOpt_lblLanguage_Caption=Выбранный Ñзык +mpOpt_gbStyle_Caption=Стиль +mpOpt_kbSimpleDictionary_Caption=ПроÑтой проÑмотр ÑÐ»Ð¾Ð²Ð°Ñ€Ñ +mpOpt_kbSimplePlugins_Caption=ПроÑтой ÑиÑок плагинов +{ ## Patching Tab ## } +mpOpt_PatchingTabSheet_Caption=Патчинг +mpOpt_lblDestinationDirectory_Caption=Каталог Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð°Ñ‚Ñ‡Ð° +mpOpt_gbDebug_Caption=Отладка +mpOpt_gbOther_Caption=ОÑтальные опции +{ ## Advanced Tab ## } +mpOpt_AdvancedTabSheet_Caption=Дополнительно +mpOpt_lblCurrentProfile_Caption=Выбранный профиль +mpOpt_gbLogging_Caption=Логирование (Ñоздание логов) +mpOpt_lblClientColor_Caption=Client +mpOpt_lblGeneralColor_Caption=ОÑновные +mpOpt_lblLoadColor_Caption=Загрузка +mpOpt_lblPluginColor_Caption=Плагин +mpOpt_lblErrorColor_Caption=Ошибки +mpOpt_lblTemplate_Caption=Образец +mpOpt_lblSample_Caption=Пример + +{ TSettingsManager } +{ ## Settings ## } +msSet_gbFiltering_Caption=Параметры фильтрации +msSet_lvSettings_Column0=Ð˜Ð¼Ñ +msSet_lvSettings_Column1=ЗапиÑи +msSet_btnSave_Caption=Сохранить +msSet_btnDiscard_Caption=Отменить +{ ## Settings Popup Menu ## } +msSet_NewSettingItem_Caption=ÐÐ¾Ð²Ð°Ñ Ð½Ð°Ñтройка +msSet_CloneSettingItem_Caption=Скопировать наÑтройку +msSet_CombineSettingsItem_Caption=Скомбинировать наÑтройки +msSet_EditSettingItem_Caption=Редактировать наÑтройку +msSet_DeleteSettingItem_Caption=Удалить наÑтройку +{ ## Details ## } +msSet_lblName_Caption=Ðазвание +msSet_lblColor_Caption=Цвет +msSet_lblDescription_Caption=ОпиÑание +msSet_lblTree_Caption=Дерево +{ ## Tree Popup Menu ## } +msSet_ToggleNodesItem_Caption=Toggle Nodes +msSet_IgnoreDeletionsItem_Caption=Toggle ignore deletions +msSet_SingleEntityItem_Caption=Toggle treat as single entity +msSet_PruneNodesItem_Caption=Prune nodes +msSet_PreserveDeletionsItem_Caption=Toggle preserve deletions + +{ TTagManager } +msTagM_Caption=Manage Tags - %s +{ ## General ## } +msTagM_lblDescription_Caption=ОпиÑание +msTagM_btnAdd_Caption=Добавить теги +msTagM_btnRemove_Caption=Удалить теги +msTagM_btnClear_Caption=ОчиÑтить теги +msTagM_btnReset_Caption=СброÑить теги +msTagM_btnApply_Caption=Применить +msTagM_btnCancel_Caption=Отмена +msTagM_kbCombine_Caption=Применить Ñкомбинированную наÑтройку + +{ TTagHelper } +msTagH_btnCancel_Caption=Отмена +msTagH_btnOK_Caption=OK +{ #### DYNAMIC #### } +msTagH_AddTags=Добавить теги +msTagH_RemoveTags=Удалить теги +msTagH_PromptAdd=Отметьте теги, которые хотите добавить +msTagH_PromptRemove=Отметьте теги, которые хотите удалить + +{ TProgressForm } +{ #### DYNAMIC #### } +msProg_Closing=Закрытие +msProg_Smashing=Создание патча +msProg_DoneBuilding=Создание патча закончено +msProg_BuildingTree=Создание дерево \ No newline at end of file From 45c80db82381730bbd3dc46c0aed62f5325adb11 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Thu, 7 Jan 2021 18:56:55 -0500 Subject: [PATCH 32/76] Credit Koriss_ for translation --- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msCore.pas | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index c4f8f67ddbb14e21f715e1e893ba8656a96f1fbf..996c04b146ebf47161a7d995298083e1925ab853 100755 GIT binary patch delta 14 VcmX@3dPa3Z3G-d`=NrpIg#a>V24nyL delta 14 VcmX@3dPa3Z39~M5-Ny1zApk1w1u*~s diff --git a/frontend/msCore.pas b/frontend/msCore.pas index ad270c5..b43fbca 100755 --- a/frontend/msCore.pas +++ b/frontend/msCore.pas @@ -189,7 +189,7 @@ TPatchHelpers = class const // IMPORTANT CONSTANTS ProgramTesters = ' '; - ProgramTranslators = ' '; + ProgramTranslators = 'Koriss_'; // CHECKBOX STATES csUnknown = 0; From 8ced03cd351670ea403d39114ee251d541dfec18 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sat, 17 Jul 2021 16:08:53 -0400 Subject: [PATCH 33/76] Add support for Enderal (SE) --- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msConfiguration.pas | 16 +++++++++++----- frontend/msLoader.pas | 10 +++++----- frontend/msProfilePanel.pas | 4 +++- 4 files changed, 19 insertions(+), 11 deletions(-) diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 996c04b146ebf47161a7d995298083e1925ab853..96359ac6b85dab464fc8cb5f83b7a392ea5d26c4 100755 GIT binary patch delta 15 XcmX@3dPa3Z3CsNld*n7&ga`ouJNX9_ delta 15 WcmX@3dPa3Z3Cmse=dv3sLWBS}*9L+B diff --git a/frontend/msConfiguration.pas b/frontend/msConfiguration.pas index f9113b7..9e03b6b 100755 --- a/frontend/msConfiguration.pas +++ b/frontend/msConfiguration.pas @@ -109,7 +109,7 @@ TProgramStatus = class(TObject) bTranslationDump = false; // GAME MODES - GameArray: array[1..7] of TGameMode = ( + GameArray: array[1..9] of TGameMode = ( ( longName: 'Skyrim'; gameName: 'Skyrim'; gameMode: gmTES5; regName: 'Skyrim'; appName: 'TES5'; exeName: 'TESV.exe'; appIDs: '72850'; bsaOptMode: 'sk'; ), @@ -125,12 +125,18 @@ TProgramStatus = class(TObject) ( longName: 'Fallout 4'; gameName: 'Fallout4'; gameMode: gmFO4; regName: 'Fallout4'; appName: 'FO4'; exeName: 'Fallout4.exe'; appIDs: '377160'; bsaOptMode: ''; ), - ( longName: 'Skyrim Special Edition'; gameName: 'Skyrim'; gameMode: gmSSE; - regName: 'Skyrim Special Edition'; appName: 'SSE'; - exeName: 'SkyrimSE.exe'; appIDs: '489830'; bsaOptMode: ''; ), + ( longname: 'skyrim special edition'; gamename: 'skyrim'; gamemode: gmsse; + regname: 'skyrim special edition'; appname: 'sse'; + exename: 'skyrimse.exe'; appids: '489830'; bsaoptmode: ''; ), ( longName: 'Skyrim VR'; gameName: 'Skyrim'; gameMode: gmTES5VR; regName: 'Skyrim VR'; appName: 'TES5VR'; - exeName: 'SkyrimVR.exe'; appIDs: '611670'; bsaOptMode: ''; ) + exeName: 'SkyrimVR.exe'; appIDs: '611670'; bsaOptMode: ''; ), + ( longName: 'Enderal'; gameName: 'Skyrim'; gameMode: gmEnderal; + regName: 'Enderal'; appName: 'Enderal'; exeName: 'TESV.exe'; appIDs: '933480'; + bsaOptMode: 'sk'; ), + ( longname: 'enderal special edition'; gamename: 'skyrim'; gamemode: gmsse; + regname: 'enderal special edition'; appname: 'enderalse'; + exename: 'skyrimse.exe'; appids: '976620'; bsaoptmode: ''; ) ); implementation diff --git a/frontend/msLoader.pas b/frontend/msLoader.pas index 5f46d84..c3854d4 100755 --- a/frontend/msLoader.pas +++ b/frontend/msLoader.pas @@ -82,10 +82,10 @@ function InitBase: boolean; // SET GAME VARS SetGame(CurrentProfile.gameMode); - wbVWDInTemporary := wbGameMode in [gmSSE, gmTES5VR, gmTES5, gmFO3, gmFNV]; + wbVWDInTemporary := wbGameMode in [gmSSE, gmTES5VR, gmTES5, gmEnderal, gmFO3, gmFNV]; wbVWDAsQuestChildren := wbGameMode = gmFO4; wbArchiveExtension := IfThen(wbGameMode = gmFO4, '.ba2', '.bsa'); - wbLoadBSAs := wbGameMode in [gmFO4, gmSSE, gmTES5VR, gmTES5, gmTES4]; + wbLoadBSAs := wbGameMode in [gmFO4, gmSSE, gmTES5VR, gmTES5, gmEnderal, gmTES4]; Logger.Write('GENERAL', 'Game', 'Using '+wbGameName); Logger.Write('GENERAL', 'Path', 'Using '+wbDataPath); Logger.Write('GENERAL', 'GameIni', 'Using '+wbTheGameIniFileName); @@ -247,7 +247,7 @@ function GetGamePath(mode: TGameMode): string; procedure LoadDefinitions; begin case wbGameMode of - gmTES5, gmTES5VR, gmSSE: DefineTES5; + gmTES5, gmTES5VR, gmSSE, gmEnderal: DefineTES5; gmFNV: DefineFNV; gmTES4: DefineTES4; gmFO3: DefineFO3; @@ -291,7 +291,7 @@ procedure LoadBSAs; slBSAFileNames.Clear; slErrors.Clear; plugin := TPlugin(PluginsList[modIndex]); - bIsTES5 := wbGameMode in [gmTES5, gmSSE, gmTES5VR]; + bIsTES5 := wbGameMode in [gmTES5, gmEnderal, gmSSE, gmTES5VR]; HasBSAs(ChangeFileExt(plugin.filename, ''), wbDataPath, bIsTES5, bIsTES5, slBSAFileNames, slErrors); @@ -384,7 +384,7 @@ procedure AddBaseMasters(var sl: TStringList); begin index := 0; FixLoadOrder(sl, wbGameName + '.esm', index); - if (wbGameMode = gmTES5) then + if (wbGameMode = gmTES5) or (wbGameMode = gmEnderal) then FixLoadOrder(sl, 'Update.esm', index) else if (wbGameMode = gmSSE) or (wbGameMode = gmTES5VR) then begin FixLoadOrder(sl, 'Update.esm', index); diff --git a/frontend/msProfilePanel.pas b/frontend/msProfilePanel.pas index 83e306d..bd167bd 100755 --- a/frontend/msProfilePanel.pas +++ b/frontend/msProfilePanel.pas @@ -70,7 +70,9 @@ constructor TProfilePanel.ICreate(AOwner: TComponent; GameIcons: TImageList; 'Fallout 3'#13#10 + 'Fallout 4'#13#10 + 'Skyrim: Special Edition'#13#10 + - 'Skyrim: VR'; + 'Skyrim: VR'#13#10 + + 'Enderal'#13#10 + + 'Enderal: Special Edition'; begin // set up panel inherited Create(AOwner); From 6990c59d944d8f311605cbf6ecdde2505a3e38bb Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 25 Jul 2021 19:29:21 -0400 Subject: [PATCH 34/76] Tweaks to processing/merging of arrays and flags --- frontend/MatorSmash.dproj | 8 +- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msAlgorithm.pas | 172 +++++++++++++++++++++++++++++++---- frontend/msConfiguration.pas | 12 +-- frontend/msLoader.pas | 4 + lib/mte/mteBase.pas | 2 +- 6 files changed, 171 insertions(+), 27 deletions(-) diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index a754b11..e0f06a3 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -264,9 +264,9 @@ True - + - .\ + MatorSmash.exe true @@ -277,9 +277,9 @@ true - + - MatorSmash.exe + .\ true diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 96359ac6b85dab464fc8cb5f83b7a392ea5d26c4..6fe93e800ca86bf5aed37a62afdb45285df63575 100755 GIT binary patch delta 14 WcmX@3dPa3Z3G@GtM>dv+3IPB&Vh1e% delta 14 WcmX@3dPa3Z3G@92dp4Gb3IPB$^ak_* diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas index 14f57f0..b67f4e6 100755 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -3,7 +3,7 @@ interface uses - SysUtils, Classes, + SysUtils, Classes, Math, // superobject superobject, // mte units @@ -15,7 +15,7 @@ interface procedure CopyLinkedElement(srcCont, dstCont: IwbContainerElementRef; eLink: string; obj: ISuperObject; dstRec: IwbMainRecord); - function rcore(src, mst, dst: IwbElement; dstrec: IwbMainRecord; + function rcore(src, mst, dst: IwbElement; dstRec: IwbMainRecord; obj: ISuperObject; bSingle, bDeletions, bOverride: boolean): boolean; implementation @@ -237,7 +237,7 @@ procedure BuildKeyList(container: IwbContainerElementRef; var sl: TStringList; function MergeArray(src, mst, dst: IwbElement; dstrec: IwbMainRecord; obj: ISuperObject; bSingle, bDeletions, bOverride: boolean): boolean; var - i, s_ndx, m_ndx, d_ndx: integer; + i, s_ndx, m_ndx, d_ndx, align_ndx: integer; se, de: IwbElement; slMst, slDst, slSrc: TStringList; srcCont, dstCont, mstCont, seCont: IwbContainerElementRef; @@ -290,6 +290,7 @@ function MergeArray(src, mst, dst: IwbElement; dstrec: IwbMainRecord; // ELEMENT ADDITION: // Copy array elements in source that aren't in master // or destination + align_ndx := 0; for i := 0 to Pred(slSrc.Count) do begin d_ndx := slDst.IndexOf(slSrc[i]); m_ndx := slMst.IndexOf(slSrc[i]); @@ -303,11 +304,15 @@ function MergeArray(src, mst, dst: IwbElement; dstrec: IwbMainRecord; // add element to destination if settings.debugArrays then Tracker.Write(' > Adding element at '+dst.Path+' with key: '+slSrc[i]); - de := dstCont.Assign(dstCont.ElementCount, se, false); - if bSorted then - slDst.Insert(dstCont.IndexOf(de), slSrc[i]) - else + if bSorted then begin + de := dstCont.Assign(dstCont.ElementCount, se, false); + slDst.Insert(dstCont.IndexOf(de), slSrc[i]); + end + else begin + dstCont.InsertElement(Min(i + align_ndx, dstCont.ElementCount), se); + align_ndx := align_ndx + 1; slDst.Add(slSrc[i]); + end; end // Special handling for sorted arrays @@ -339,6 +344,121 @@ function MergeArray(src, mst, dst: IwbElement; dstrec: IwbMainRecord; end; end; +procedure BuildFlagList(container: IwbContainerElementRef; var sl: TStringList); +var + i, n: integer; + childElement: IwbElement; + key, adjustedKey: string; +begin + // loop through children elements + for i := 0 to Pred(container.ElementCount) do begin + childElement := container.Elements[i]; + + key := childElement.Name; + + // find a non-colliding key + n := 0; + adjustedKey := key; + while (sl.IndexOf(adjustedKey) > -1) do begin + Inc(n); + adjustedKey := key + IntToStr(n); + end; + + // add adjusted key to stringlist + sl.Add(adjustedKey); + end; +end; + +function MergeFlags(src, mst, dst: IwbElement; dstrec: IwbMainRecord; + obj: ISuperObject; bSingle, bDeletions, bOverride: boolean): boolean; +var + i, s_ndx, m_ndx, d_ndx, fi: integer; + val: String; + se: IwbElement; + slMst, slDst, slSrc: TStringList; + srcCont, dstCont, mstCont: IwbContainerElementRef; +begin + Result := false; + + // exit if input array elements can't be treated as a containers + if not Supports(src, IwbContainerElementRef, srcCont) then + exit; + if not Supports(mst, IwbContainerElementRef, mstCont) then + exit; + if not Supports(dst, IwbContainerElementRef, dstCont) then + exit; + + // Build lists of element keys in each array for easy comparison + slSrc := TStringList.Create; + slMst := TStringList.Create; + slDst := TStringList.Create; + try + BuildFlagList(srcCont, slSrc); + BuildFlagList(mstCont, slMst); + BuildFlagList(dstCont, slDst); + + // ELEMENT DELETION: + // Remove elements that are in master and destination, but + // missing from source + if bDeletions then + for i := 0 to Pred(slMst.Count) do begin + s_ndx := slSrc.IndexOf(slMst[i]); + + // element from master isn't in source + if (s_ndx = -1) then begin + Result := true; + // if we're in a treat as single, exit without removing anything + if bSingle then exit; + // if element is present in destination, remove it + d_ndx := slDst.IndexOf(slMst[i]); + if (d_ndx = -1) then continue; + if settings.debugArrays then + Tracker.Write(' > Removing element at '+dst.Path+' with key: '+slMst[i]); + //dstCont.RemoveElement(d_ndx); + fi := (mstCont.Elements[i].Def as IwbFlagDef).FlagIndex; + val := dstCont.EditValue; + val[fi+1] := '0'; + dstCont.EditValue := val; + slDst.Delete(d_ndx); + end; + end; + + // ELEMENT ADDITION: + // Copy array elements in source that aren't in master + // or destination + for i := 0 to Pred(slSrc.Count) do begin + d_ndx := slDst.IndexOf(slSrc[i]); + m_ndx := slMst.IndexOf(slSrc[i]); + se := srcCont.Elements[i]; + + + if (d_ndx = -1) and ((m_ndx = -1) or bOverride) then begin + Result := true; + // if we're in a treat as single, exit without adding anything + if bSingle then exit; + // add element to destination + if settings.debugArrays then + Tracker.Write(' > Adding flag at '+dst.Path+' with key: '+slSrc[i]); + fi := (se.Def as IwbFlagDef).FlagIndex; + val := dstCont.EditValue.PadRight(fi+1, '0'); + val[fi+1] := '1'; + //System.Insert('1', val, fi); + dstCont.EditValue := val; + //dstCont.Add(slSrc[i], true); + //dstCont.Add(slSrc[i], true).EditValue := '1'; + //dstCont.InsertElement((se.Def as IwbFlagDef).FlagIndex, se); + //dstCont.AddIfMissing(se, false, false, '', '', '', '', true); + slDst.Add(slSrc[i]); + end + end; + finally + // free lists + slMst.Free; + slSrc.Free; + slDst.Free; + end; +end; + { CopyElementValue: Copies the edit value of @se to @de. @@ -464,6 +584,7 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; if settings.debugTypes then begin Tracker.Write(' bCanAdd: '+BoolToStr(bCanAdd, true)); Tracker.Write(' SmashType: '+stToString(srcType)); + Tracker.Write(' bIsContainer: '+BoolToStr(bIsContainer, true)); end; // merge array @@ -476,6 +597,16 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; Tracker.Write(' MergeArray: Exception at '+se.Path+': '+x.Message); end; end + // merge flags + else if bIsContainer and (srcType = stInteger) then begin + if settings.debugTraversal then + Tracker.Write(' Merging flags'); + try + Result := MergeFlags(se, me, de, dstrec, obj, bSingle, bDeletions, bOverride); + except on x : Exception do + Tracker.Write(' MergeFlags: Exception at '+se.Path+': '+x.Message); + end; + end // else recurse deeper else if bIsContainer and (srcType <> stInteger) then begin if settings.debugTraversal then @@ -505,17 +636,26 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; end; end; +function MatchingElement(e: IwbElement; i: integer; cont: IwbContainerElementRef): IwbElement; +var + eo: IwbElement; +begin + Result := cont.Elements[i]; + if (Result = nil) or (not Result.Name.Equals(e.Name)) then + Result := cont.ElementByName[e.Name]; +end; + { rcore: Recursively copy overridden elements. Recursively traverses elements, - comparing between a source element (from an override record) @src, a - master element @mst, and a destination element @dst. Tracks the - destination patch record for element copying through @dstRec. Uses a - json tree @obj to determine user settings for traversal. Uses @bSingle - to determine when we're in a "single entity" as specified by the user, - and @bDeletions to determine when it's ok to delete removed elements + comparing between a source element (from an override record) @src, a + master element @mst, and a destination element @dst. Tracks the + destination patch record for element copying through @dstRec. Uses a + json tree @obj to determine user settings for traversal. Uses @bSingle + to determine when we're in a "single entity" as specified by the user, + and @bDeletions to determine when it's ok to delete removed elements from the destination patch record. - + - Uses HandleElementLife to resolve element creation/deletion. - Uses HandleElement to handle arrays, recurse deeper, or copy element values @@ -568,8 +708,8 @@ function rcore(src, mst, dst: IwbElement; dstRec: IwbMainRecord; for i := 0 to Pred(srcCont.ElementCount) do begin // assign source, destination, master elements se := srcCont.Elements[i]; - de := dstCont.ElementByName[se.Name]; - me := mstCont.ElementByName[se.Name]; + de := MatchingElement(se, i, dstCont); + me := MatchingElement(se, i, mstCont); // skip if destination element not assigned if not Assigned(de) then begin diff --git a/frontend/msConfiguration.pas b/frontend/msConfiguration.pas index 9e03b6b..12cc6d8 100755 --- a/frontend/msConfiguration.pas +++ b/frontend/msConfiguration.pas @@ -125,18 +125,18 @@ TProgramStatus = class(TObject) ( longName: 'Fallout 4'; gameName: 'Fallout4'; gameMode: gmFO4; regName: 'Fallout4'; appName: 'FO4'; exeName: 'Fallout4.exe'; appIDs: '377160'; bsaOptMode: ''; ), - ( longname: 'skyrim special edition'; gamename: 'skyrim'; gamemode: gmsse; - regname: 'skyrim special edition'; appname: 'sse'; - exename: 'skyrimse.exe'; appids: '489830'; bsaoptmode: ''; ), + ( longName: 'Skyrim Special Edition'; gameName: 'Skyrim'; gameMode: gmSSE; + regName: 'Skyrim Special Edition'; appName: 'SSE'; + exeName: 'SkyrimSE.exe'; appIDs: '489830'; bsaOptMode: ''; ), ( longName: 'Skyrim VR'; gameName: 'Skyrim'; gameMode: gmTES5VR; regName: 'Skyrim VR'; appName: 'TES5VR'; exeName: 'SkyrimVR.exe'; appIDs: '611670'; bsaOptMode: ''; ), ( longName: 'Enderal'; gameName: 'Skyrim'; gameMode: gmEnderal; regName: 'Enderal'; appName: 'Enderal'; exeName: 'TESV.exe'; appIDs: '933480'; bsaOptMode: 'sk'; ), - ( longname: 'enderal special edition'; gamename: 'skyrim'; gamemode: gmsse; - regname: 'enderal special edition'; appname: 'enderalse'; - exename: 'skyrimse.exe'; appids: '976620'; bsaoptmode: ''; ) + ( longName: 'Enderal Special Edition'; gameName: 'Skyrim'; gameMode: gmSSE; + regName: 'Enderal Special Edition'; appName: 'EnderalSE'; + exeName: 'SkyrimSE.exe'; appIDs: '976620'; bsaOptMode: ''; ) ); implementation diff --git a/frontend/msLoader.pas b/frontend/msLoader.pas index c3854d4..e018bde 100755 --- a/frontend/msLoader.pas +++ b/frontend/msLoader.pas @@ -106,6 +106,10 @@ function InitBase: boolean; wbEditAllowed := True; wbContainerHandler := wbCreateContainerHandler; wbContainerHandler._AddRef; + wbToolSource := tsPlugins; + wbSourceName := 'Plugins'; + wbToolMode := tmEdit; + wbToolName := 'Edit'; // INITIALIZE DEFINITIONS Logger.Write('GENERAL', 'Definitions', 'Using '+wbAppName+'Edit Definitions'); diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index 824e93a..ad5567d 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -563,7 +563,7 @@ function IsSortedDef(def: IwbNamedDef): boolean; if Supports(def, IwbSubRecordArrayDef, sraDef) then Result := Supports(sraDef.Element, IwbHasSortKeyDef) else if Supports(def, IwbArrayDef, arDef) then - Result := Supports(arDef.Element, IwbHasSortKeyDef); + Result := arDef.Sorted; end; { Returns true if @e is a sorted container } From 3f2ec78d6f955b72564ee857b9d6944bf65c3fb7 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Mon, 26 Jul 2021 17:38:34 -0400 Subject: [PATCH 35/76] Tweak to handling of masters Check overrides for parent elements and add their masters. Sort masters according to load order at time of smash. --- frontend/MatorSmash.dproj | 8 +++--- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msSmash.pas | 58 +++++++++++++++++++++++--------------- 3 files changed, 40 insertions(+), 26 deletions(-) diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index e0f06a3..a754b11 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -264,9 +264,9 @@ True - + - MatorSmash.exe + .\ true @@ -277,9 +277,9 @@ true - + - .\ + MatorSmash.exe true diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 6fe93e800ca86bf5aed37a62afdb45285df63575..115a7206d6fec0d1f24d0c58a6e677d0bebc6578 100755 GIT binary patch delta 14 VcmX@3dPa3Z33K-MqZ`XZg#a^u2A}`{ delta 14 WcmX@3dPa3Z3G@GtM>dv+3IPB&Vh1e% diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index d85526f..1957e69 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -107,37 +107,49 @@ function CompareLoadOrder(List: TStringList; Index1, Index2: Integer): Integer; procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); var slMasters: TStringList; + grup: IwbGroupRecord; i, j: Integer; begin - slMasters := TStringList.Create; - slMasters.Sorted := True; - slMasters.Duplicates := dupIgnore; try try - // TODO: Investigate other params to this function - el.ReportRequiredMasters(slMasters, true, true, true); + // Recurse up parent elements? + if Supports(el.Container, IwbGroupRecord, grup) and Assigned(grup.ChildrenOf) then + AddRequiredMasters(aFile, grup.ChildrenOf); - for i := 0 to Pred(aFile.MasterCount[true]) do - if slMasters.Find(aFile.Masters[i, true].FileName, j) then + slMasters := TStringList.Create; + slMasters.Sorted := True; + slMasters.Duplicates := dupIgnore; + try + el.ReportRequiredMasters(slMasters, false, true, true); + if settings.debugMasters then + Tracker.Write('Element '+el.Name+' from '+el._File.Filename+' requires masters: ' + slMasters.CommaText); + + + for i := 0 to Pred(aFile.MasterCount[true]) do + if slMasters.Find(aFile.Masters[i, true].FileName, j) then + slMasters.Delete(j); + if slMasters.Find(aFile.FileName, j) then slMasters.Delete(j); - if slMasters.Find(aFile.FileName, j) then - slMasters.Delete(j); - if slMasters.Count > 0 then begin - for i := 0 to Pred(slMasters.Count) do - if IwbFile(Pointer(slMasters.Objects[i])).LoadOrder >= aFile.LoadOrder then - raise Exception.Create('The required master "' + slMasters[i] + '" can not be added to "' + aFile.FileName + '" as it has a higher load order'); + if slMasters.Count > 0 then begin + for i := 0 to Pred(slMasters.Count) do + if IwbFile(Pointer(slMasters.Objects[i])).LoadOrder >= aFile.LoadOrder then + raise Exception.Create('The required master "' + slMasters[i] + '" can not be added to "' + aFile.FileName + '" as it has a higher load order'); - slMasters.Sorted := False; - slMasters.CustomSort(CompareLoadOrder); + slMasters.Sorted := False; + slMasters.CustomSort(CompareLoadOrder); - if aFile.MasterCount[true] + slMasters.Count >= 253 then - aFile.CleanMasters; + if (aFile.MasterCount[true] + slMasters.Count >= 253) then + aFile.CleanMasters; - aFile.AddMasters(slMasters); - Logger.Write('PATCH', 'MASTERS', 'Added masters: ' + slMasters.CommaText); + aFile.AddMasters(slMasters); + Logger.Write('PATCH', 'MASTERS', 'Added masters: ' + slMasters.CommaText); + if settings.debugMasters then + Tracker.Write('Adding masters: ' + slMasters.CommaText); + end; + finally + slMasters.Free; end; - except on x: Exception do begin Tracker.Write('Critical exception adding masters!'); @@ -146,7 +158,6 @@ procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); end; end finally - slMasters.Free; if Tracker.Cancel then raise Exception.Create('User cancelled smashing.'); end; @@ -334,7 +345,7 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); if bForce then continue; except on x: Exception do begin - Tracker.Write(' Exception copying record '+ovr.Name+' : '+x.Message); + Tracker.Write(' Exception copying record '+e.Name+' from file '+e._File.Filename+': '+x.Message); patch.fails.Add('Exception copying record '+ovr.Name+' : '+x.Message); continue; end; @@ -556,6 +567,9 @@ procedure CleanPatch(var patch: TPatch); on x: Exception do Tracker.Write(' Exception removing ITPOs: '+x.Message); end; + + Tracker.Write('Sorting patch masters according to current load order'); + patchFile.SortMasters; end; procedure SavePatchFiles(var patch: TPatch); From cce9309958c4f7824b18b6e7182a81180e757781 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Tue, 27 Jul 2021 20:14:43 -0400 Subject: [PATCH 36/76] Fix copying new elements from source to dest --- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msAlgorithm.pas | 12 ++---------- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 115a7206d6fec0d1f24d0c58a6e677d0bebc6578..8d7a3b147e41c1e61d099a81fd0f8095efad8b7a 100755 GIT binary patch delta 14 VcmX@3dPa3Z3G+v`V;jpug#a;#1~vcy delta 14 VcmX@3dPa3Z33K-MqZ`XZg#a^u2A}`{ diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas index b67f4e6..18573bc 100755 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -99,7 +99,7 @@ function HandleElementLife(srcCont, dstCont, mstCont: IwbContainerElementRef; try if settings.debugChanges then Tracker.Write(' Created element at '+element.Path); - wbCopyElementToRecord(element, dstRec, false, true); + dstCont.AddIfMissing(element, false, true, '', '', '', '', true); // if another element is linked to the element, copy it eLink := eObj.S['lf']; @@ -414,7 +414,6 @@ function MergeFlags(src, mst, dst: IwbElement; dstrec: IwbMainRecord; if (d_ndx = -1) then continue; if settings.debugArrays then Tracker.Write(' > Removing element at '+dst.Path+' with key: '+slMst[i]); - //dstCont.RemoveElement(d_ndx); fi := (mstCont.Elements[i].Def as IwbFlagDef).FlagIndex; val := dstCont.EditValue; val[fi+1] := '0'; @@ -442,12 +441,7 @@ function MergeFlags(src, mst, dst: IwbElement; dstrec: IwbMainRecord; fi := (se.Def as IwbFlagDef).FlagIndex; val := dstCont.EditValue.PadRight(fi+1, '0'); val[fi+1] := '1'; - //System.Insert('1', val, fi); dstCont.EditValue := val; - //dstCont.Add(slSrc[i], true); - //dstCont.Add(slSrc[i], true).EditValue := '1'; - //dstCont.InsertElement((se.Def as IwbFlagDef).FlagIndex, se); - //dstCont.AddIfMissing(se, false, false, '', '', '', '', true); slDst.Add(slSrc[i]); end end; @@ -637,11 +631,9 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; end; function MatchingElement(e: IwbElement; i: integer; cont: IwbContainerElementRef): IwbElement; -var - eo: IwbElement; begin Result := cont.Elements[i]; - if (Result = nil) or (not Result.Name.Equals(e.Name)) then + if (not Assigned(Result)) or (not Result.Name.Equals(e.Name)) then Result := cont.ElementByName[e.Name]; end; From be2f86b76500760f9c802ec736ff01be79d66006 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Tue, 27 Jul 2021 21:05:41 -0400 Subject: [PATCH 37/76] Don't sort masters Some of the records were not getting updated properly. --- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msSmash.pas | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 8d7a3b147e41c1e61d099a81fd0f8095efad8b7a..c94abf496c79fd032b61f1c726fb9b32b1a266d9 100755 GIT binary patch delta 13 UcmX@3dPa3Z3DX+cjb&j%04SCPK>z>% delta 13 UcmX@3dPa3Z3DZZmjb&j%04c!*ZvX%Q diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 1957e69..0e4adb1 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -568,8 +568,8 @@ procedure CleanPatch(var patch: TPatch); Tracker.Write(' Exception removing ITPOs: '+x.Message); end; - Tracker.Write('Sorting patch masters according to current load order'); - patchFile.SortMasters; + //Tracker.Write('Sorting patch masters according to current load order'); + //patchFile.SortMasters; end; procedure SavePatchFiles(var patch: TPatch); From feea1a080c6be84d640a801d83ed686834ef7280 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Wed, 28 Jul 2021 00:20:25 -0400 Subject: [PATCH 38/76] New attempt and including parent elements? --- frontend/MatorSmash.dproj | 10 ++--- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msSmash.pas | 92 ++++++++++++++++++++++++-------------- 3 files changed, 63 insertions(+), 39 deletions(-) diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index a754b11..ff0f657 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -3,7 +3,7 @@ {12317C9C-736E-45A4-8CB7-E43FF92DD93C} MatorSmash.dpr True - Release + Debug Application VCL DCC32 @@ -264,9 +264,9 @@ True - + - .\ + MatorSmash.exe true @@ -277,9 +277,9 @@ true - + - MatorSmash.exe + .\ true diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index c94abf496c79fd032b61f1c726fb9b32b1a266d9..ac77e3dc2d2c92d653963b65f5b1c16d0983712a 100755 GIT binary patch delta 13 UcmX@3dPa3Z3DY9~jb&j%04Y=jX#fBK delta 13 UcmX@3dPa3Z3DX+cjb&j%04SCPK>z>% diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 0e4adb1..a1bc611 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -107,48 +107,39 @@ function CompareLoadOrder(List: TStringList; Index1, Index2: Integer): Integer; procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); var slMasters: TStringList; - grup: IwbGroupRecord; i, j: Integer; begin + slMasters := TStringList.Create; + slMasters.Sorted := True; + slMasters.Duplicates := dupIgnore; try try - // Recurse up parent elements? - if Supports(el.Container, IwbGroupRecord, grup) and Assigned(grup.ChildrenOf) then - AddRequiredMasters(aFile, grup.ChildrenOf); - - slMasters := TStringList.Create; - slMasters.Sorted := True; - slMasters.Duplicates := dupIgnore; - try - el.ReportRequiredMasters(slMasters, false, true, true); - if settings.debugMasters then - Tracker.Write('Element '+el.Name+' from '+el._File.Filename+' requires masters: ' + slMasters.CommaText); + el.ReportRequiredMasters(slMasters, false, true, true); + if settings.debugMasters then + Tracker.Write('Element '+el.Name+' from '+el._File.Filename+' requires masters: ' + slMasters.CommaText); - for i := 0 to Pred(aFile.MasterCount[true]) do - if slMasters.Find(aFile.Masters[i, true].FileName, j) then - slMasters.Delete(j); - if slMasters.Find(aFile.FileName, j) then + for i := 0 to Pred(aFile.MasterCount[true]) do + if slMasters.Find(aFile.Masters[i, true].FileName, j) then slMasters.Delete(j); + if slMasters.Find(aFile.FileName, j) then + slMasters.Delete(j); - if slMasters.Count > 0 then begin - for i := 0 to Pred(slMasters.Count) do - if IwbFile(Pointer(slMasters.Objects[i])).LoadOrder >= aFile.LoadOrder then - raise Exception.Create('The required master "' + slMasters[i] + '" can not be added to "' + aFile.FileName + '" as it has a higher load order'); + if slMasters.Count > 0 then begin + for i := 0 to Pred(slMasters.Count) do + if IwbFile(Pointer(slMasters.Objects[i])).LoadOrder >= aFile.LoadOrder then + raise Exception.Create('The required master "' + slMasters[i] + '" can not be added to "' + aFile.FileName + '" as it has a higher load order'); - slMasters.Sorted := False; - slMasters.CustomSort(CompareLoadOrder); + slMasters.Sorted := False; + slMasters.CustomSort(CompareLoadOrder); - if (aFile.MasterCount[true] + slMasters.Count >= 253) then - aFile.CleanMasters; + if (aFile.MasterCount[true] + slMasters.Count >= 253) then + aFile.CleanMasters; - aFile.AddMasters(slMasters); - Logger.Write('PATCH', 'MASTERS', 'Added masters: ' + slMasters.CommaText); - if settings.debugMasters then - Tracker.Write('Adding masters: ' + slMasters.CommaText); - end; - finally - slMasters.Free; + aFile.AddMasters(slMasters); + Logger.Write('PATCH', 'MASTERS', 'Added masters: ' + slMasters.CommaText); + if settings.debugMasters then + Tracker.Write('Adding masters: ' + slMasters.CommaText); end; except on x: Exception do begin @@ -158,11 +149,39 @@ procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); end; end finally + slMasters.Free; if Tracker.Cancel then raise Exception.Create('User cancelled smashing.'); end; end; +procedure ListParents(const rec: IwbMainRecord; var parents: TInterfaceList); +var + grup: IwbGroupRecord; +begin + if Supports(rec.Container, IwbGroupRecord, grup) and Assigned(grup.ChildrenOf) then begin + if parents.IndexOf(grup.ChildrenOf) = -1 then begin + parents.Insert(0, grup.ChildrenOf); + ListParents(grup.ChildrenOf, parents); + end + end; +end; + + +procedure AddParents(var patch: TPatch; const rec: IwbElement); +var + grup: IwbGroupRecord; +begin + if Supports(rec.Container, IwbGroupRecord, grup) and Assigned(grup.ChildrenOf) then begin + if not Assigned(patch.plugin._File.RecordByFormID[grup.ChildrenOf.FormID, true, true]) then begin + AddParents(patch, grup.ChildrenOf); + Tracker.Write(Format('Copying parent record %s of %s', [grup.ChildrenOf.Name, rec.Name])); + AddRequiredMasters(patch.plugin._File, grup.ChildrenOf); + grup.ChildrenOf.CopyInto(patch.plugin._File, false, false, '', '', '', ''); + end + end; +end; + procedure BuildOverridesList(var patch: TPatch; var lst: TList; var records: TInterfaceList); var @@ -211,6 +230,9 @@ procedure BuildOverridesList(var patch: TPatch; var lst: TList; if ConflictAllForMainRecord(rec) < caConflict then continue; + // add parent record(s) to list first so they get smashed first? + ListParents(rec, records); + // add record to overrides list if records.IndexOf(rec) = -1 then records.Add(rec); @@ -221,7 +243,7 @@ procedure BuildOverridesList(var patch: TPatch; var lst: TList; end; end; end; - + // update progress bar for file Tracker.UpdateProgress(recCount mod 500); end; @@ -338,6 +360,8 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); e := ovr else e := WinningOverrideInFiles(rec, patch.plugins); + // be sure we include the parent? + AddParents(patch, e); Tracker.Write(Format(' [%d] Copying record %s', [i + 1, e.Name])); AddRequiredMasters(patch.plugin._File, e); eCopy := wbCopyElementToFile(e, patchFile, false, true, '', '' ,'', '', false); @@ -366,8 +390,8 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); mst := e as IwbMainRecord else mst := WinningOverrideInFiles(rec, plugin.masters); - Tracker.Write(Format(' Smashing override from: %s, master: %s', - [f.FileName, mst._File.FileName])); + Tracker.Write(Format(' Smashing override of %s from: %s, master: %s', + [ovr.Name, f.FileName, mst._File.FileName])); AddRequiredMasters(patch.plugin._File, ovr); rcore(IwbElement(ovr), IwbElement(mst), IwbElement(patchRec), patchRec, recObj, false, bDeletions, bOverride); From 96fedd177b9f5d7d8a58ddf4e081ca6d260c3133 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Wed, 28 Jul 2021 01:26:36 -0400 Subject: [PATCH 39/76] Only try to update Count fields that are integers --- frontend/MatorSmash.dproj | 10 +++++----- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msSmash.pas | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index ff0f657..a754b11 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -3,7 +3,7 @@ {12317C9C-736E-45A4-8CB7-E43FF92DD93C} MatorSmash.dpr True - Debug + Release Application VCL DCC32 @@ -264,9 +264,9 @@ True - + - MatorSmash.exe + .\ true @@ -277,9 +277,9 @@ true - + - .\ + MatorSmash.exe true diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index ac77e3dc2d2c92d653963b65f5b1c16d0983712a..89a68f748a4eb13f332073e4cd85a6c92b0a411d 100755 GIT binary patch delta 13 UcmX@3dPa3Z3DaHHjb&j%04YQTS^xk5 delta 13 UcmX@3dPa3Z3DY9~jb&j%04Y=jX#fBK diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index a1bc611..da5d0aa 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -274,7 +274,7 @@ procedure UpdateCounts(var rec: IwbMainRecord); // word count in its name update the count to be the number of elements // in the array if (GetSmashType(nextElement) in stArrays) - and (Pos('Count', element.Name) > 0) then try + and (GetSmashType(element) = stInteger) and (Pos('Count', element.Name) > 0) then try element.NativeValue := arrayContainer.ElementCount; except on x: Exception do @@ -362,7 +362,7 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); e := WinningOverrideInFiles(rec, patch.plugins); // be sure we include the parent? AddParents(patch, e); - Tracker.Write(Format(' [%d] Copying record %s', [i + 1, e.Name])); + Tracker.Write(Format(' [%d] Copying record %s from %s', [i + 1, e.Name, e._File.Name])); AddRequiredMasters(patch.plugin._File, e); eCopy := wbCopyElementToFile(e, patchFile, false, true, '', '' ,'', '', false); patchRec := eCopy as IwbMainRecord; From 7e36a6ea182895d59752a1e04f12555501fd539a Mon Sep 17 00:00:00 2001 From: chuck <> Date: Wed, 28 Jul 2021 15:42:06 -0400 Subject: [PATCH 40/76] Better handling of unions? --- frontend/MatorSmash.dproj | 8 ++++---- frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msAlgorithm.pas | 16 ++++++++++------ frontend/msSmash.pas | 2 +- lib/mte/mteBase.pas | 5 ++++- 5 files changed, 19 insertions(+), 12 deletions(-) diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index a754b11..e0f06a3 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -264,9 +264,9 @@ True - + - .\ + MatorSmash.exe true @@ -277,9 +277,9 @@ true - + - MatorSmash.exe + .\ true diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 89a68f748a4eb13f332073e4cd85a6c92b0a411d..3a4f1a7718e9296031833ce5be84a3db866a13d3 100755 GIT binary patch delta 14 WcmX@3dPa3Z3G<=r$2XRT3IPB$DhAmA delta 14 VcmX@3dPa3Z3G-dnV;jpug#a-21|a|d diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas index 18573bc..f00f64a 100755 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -237,7 +237,7 @@ procedure BuildKeyList(container: IwbContainerElementRef; var sl: TStringList; function MergeArray(src, mst, dst: IwbElement; dstrec: IwbMainRecord; obj: ISuperObject; bSingle, bDeletions, bOverride: boolean): boolean; var - i, s_ndx, m_ndx, d_ndx, align_ndx: integer; + i, s_ndx, m_ndx, d_ndx, a_ndx, align_ndx: integer; se, de: IwbElement; slMst, slDst, slSrc: TStringList; srcCont, dstCont, mstCont, seCont: IwbContainerElementRef; @@ -302,16 +302,19 @@ function MergeArray(src, mst, dst: IwbElement; dstrec: IwbMainRecord; // if we're in a treat as single, exit without adding anything if bSingle then exit; // add element to destination - if settings.debugArrays then - Tracker.Write(' > Adding element at '+dst.Path+' with key: '+slSrc[i]); if bSorted then begin + if settings.debugArrays then + Tracker.Write(' > Adding element at '+dst.Path+' with key: '+slSrc[i]); de := dstCont.Assign(dstCont.ElementCount, se, false); slDst.Insert(dstCont.IndexOf(de), slSrc[i]); end else begin - dstCont.InsertElement(Min(i + align_ndx, dstCont.ElementCount), se); + a_ndx := Min(i + align_ndx, dstCont.ElementCount); + if settings.debugArrays then + Tracker.Write(' > Adding element at '+dst.Path+' at index '+a_ndx.ToString+' with key: '+slSrc[i]); + dstCont.InsertElement(a_ndx, se); align_ndx := align_ndx + 1; - slDst.Add(slSrc[i]); + slDst.Insert(a_ndx, slSrc[i]); end; end @@ -475,7 +478,8 @@ procedure CopyElementValue(se, me, de: IwbElement); // try to copy element value to destination element from source element try - de.EditValue := se.EditValue; + //de.EditValue := se.EditValue; + de.Container.AddIfMissing(se, false, false, '', '', '', '', true); except on x : Exception do Tracker.Write(' CopyElementValue: Exception '+x.Message); end; diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index da5d0aa..415cbf6 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -364,7 +364,7 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); AddParents(patch, e); Tracker.Write(Format(' [%d] Copying record %s from %s', [i + 1, e.Name, e._File.Name])); AddRequiredMasters(patch.plugin._File, e); - eCopy := wbCopyElementToFile(e, patchFile, false, true, '', '' ,'', '', false); + eCopy := e.CopyInto(patchFile, false, true, '', '', '', ''); patchRec := eCopy as IwbMainRecord; if bForce then continue; except diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index ad5567d..ed83cc4 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -474,7 +474,10 @@ function SmashType(def: IwbNamedDef): TSmashtype; function GetSmashType(element: IwbElement): TSmashType; begin - Result := SmashType(element.Def); + if Assigned(element.ResolvedValueDef) then + Result := SmashType(element.ResolvedValueDef) + else + Result := SmashType(element.Def); end; function ElementByIndexedPath(e: IwbElement; ip: string): IwbElement; From f9fcfae6b93e928569febf77eac0871223d5ad11 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Thu, 29 Jul 2021 01:16:57 -0400 Subject: [PATCH 41/76] Tweaks to how elements are copied in Hopefully this will work better with fewer exceptions. --- frontend/MatorSmash.dproj | 64 ++++++++++++++++++++++++++++++++------ frontend/MatorSmash.res | Bin 4812 -> 4812 bytes frontend/msAlgorithm.pas | 10 ++++-- frontend/msSmash.pas | 8 ++--- 4 files changed, 66 insertions(+), 16 deletions(-) diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index e0f06a3..0598f75 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -9,7 +9,7 @@ DCC32 18.8 Win32 - 1 + 3 Win32 @@ -36,11 +36,23 @@ true true + + true + Cfg_2 + true + true + true Base true + + true + Cfg_4 + true + true + true Base @@ -52,6 +64,12 @@ true true + + true + Cfg_1 + true + true + vcl;rtl;vclx;vclactnband;xmlrtl;VclSmp;vclimg;svnui;svn;bdertl;TeeUI;TeeDB;Tee;vcldb;dbrtl;vcldbx;vcltouch;dsnap;dsnapcon;vclib;ibxpress;adortl;IndyCore;IndySystem;IndyProtocols;inet;intrawebdb_110_150;Intraweb_110_150;vclie;websnap;webdsnap;inetdb;inetdbbde;inetdbxpress;soaprtl;vclribbon;dbexpress;DbxCommonDriver;DataSnapIndy10ServerTransport;DataSnapProviderClient;DataSnapClient;dbxcds;DbxClientDriver;DataSnapServer;AzureCloud;DBXInterBaseDriver;DBXMySQLDriver;DBXFirebirdDriver;DBXSybaseASEDriver;DBXSybaseASADriver;DBXOracleDriver;DBXMSSQLDriver;DBXInformixDriver;DBXDb2Driver;$(DCC_UsePackage) ..\lib\Imaging\ZLib;..\lib\abbrevia\source;..\lib\Imaging;..\lib\xedit;..\lib\mte;..\lib\superobject;..\lib\xedit\lz4;..\lib\xedit\zlib;..\lib\xedit\FileContainer;..\lib\xedit\tools\BSArchive;..\lib\xedit\tools\BSArchive\TForge;$(DCC_UnitSearchPath) @@ -85,8 +103,15 @@ MatorSmash_Icon.ico - $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png - $(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png + Resources\smash.png + Resources\smash.png + Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace) + Debug + CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments= + 1033 + $(BDS)\bin\default_app.manifest + 0 + MatorSmash_Icon.ico true @@ -101,6 +126,10 @@ MatorSmash_Icon.ico Debug + + true + PerMonitorV2 + .\DebugLite DEBUG;NX_EXCEPTION_LOG_IN_APP_FOLDER;LiteVersion;$(DCC_Define) @@ -108,6 +137,10 @@ DetailedSegments true + + true + PerMonitorV2 + 0 false @@ -125,6 +158,10 @@ CompanyName=;FileDescription=;FileVersion=1.2.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= true + + true + PerMonitorV2 + MainSource @@ -260,10 +297,23 @@ True - False + True True + + + Assets\ + Logo44x44.png + true + + + + + .\ + true + + MatorSmash.exe @@ -277,12 +327,6 @@ true - - - .\ - true - - 1 diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 3a4f1a7718e9296031833ce5be84a3db866a13d3..76a8cdbf203a0b800cf41e35f042f560c5ffc282 100755 GIT binary patch delta 19 acmX@3dPa3Z3G+q46C29|g; Date: Thu, 29 Jul 2021 02:33:23 -0400 Subject: [PATCH 42/76] Start calling this v2 --- frontend/MatorSmash.dpr | 45 +- frontend/MatorSmash.dproj | 30 +- frontend/MatorSmash.res | Bin 4812 -> 6852 bytes frontend/msAlgorithm.pas | 452 +++++++----- frontend/msChoicePanel.pas | 32 +- frontend/msConfiguration.pas | 121 ++-- frontend/msConflict.pas | 728 +++++++++++--------- frontend/msConflictForm.dfm | 4 +- frontend/msConflictForm.pas | 58 +- frontend/msCore.pas | 962 +++++++++++++++----------- frontend/msEditForm.dfm | 4 + frontend/msEditForm.pas | 36 +- frontend/msLoader.pas | 637 +++++++++-------- frontend/msOptionsForm.dfm | 14 +- frontend/msOptionsForm.pas | 115 ++-- frontend/msPluginSelectionForm.dfm | 0 frontend/msPluginSelectionForm.pas | 16 +- frontend/msProfileForm.pas | 98 +-- frontend/msProfilePanel.pas | 81 +-- frontend/msSettingsManager.dfm | 4 +- frontend/msSettingsManager.pas | 765 +++++++++++---------- frontend/msSmash.pas | 364 +++++----- frontend/msSmashForm.pas | 889 ++++++++++++++---------- frontend/msSplashForm.dfm | 0 frontend/msSplashForm.pas | 4 +- frontend/msTagHelper.dfm | 0 frontend/msTagHelper.pas | 21 +- frontend/msTagManager.dfm | 0 frontend/msTagManager.pas | 3 +- frontend/msThreads.pas | 101 +-- lib/mte/CRC32.pas | 39 +- lib/mte/RttiIni.pas | 93 +-- lib/mte/RttiJson.pas | 24 +- lib/mte/RttiTranslation.pas | 319 +++++---- lib/mte/W7Taskbar.pas | 89 ++- lib/mte/mteBase.pas | 1024 +++++++++++++++++----------- lib/mte/mteChangeLogForm.dfm | 0 lib/mte/mteChangeLogForm.pas | 36 +- lib/mte/mteHelpers.pas | 533 ++++++++------- lib/mte/mteLogger.pas | 15 +- lib/mte/mteLogging.pas | 46 +- lib/mte/mtePluginSelectionForm.dfm | 2 +- lib/mte/mtePluginSelectionForm.pas | 164 +++-- lib/mte/mteProgressForm.dfm | 0 lib/mte/mteProgressForm.pas | 28 +- lib/mte/mteTaskHandler.pas | 31 +- 46 files changed, 4593 insertions(+), 3434 deletions(-) mode change 100644 => 100755 frontend/msChoicePanel.pas mode change 100644 => 100755 frontend/msConflictForm.dfm mode change 100644 => 100755 frontend/msConflictForm.pas mode change 100644 => 100755 frontend/msEditForm.dfm mode change 100644 => 100755 frontend/msEditForm.pas mode change 100644 => 100755 frontend/msOptionsForm.dfm mode change 100644 => 100755 frontend/msOptionsForm.pas mode change 100644 => 100755 frontend/msPluginSelectionForm.dfm mode change 100644 => 100755 frontend/msPluginSelectionForm.pas mode change 100644 => 100755 frontend/msSettingsManager.dfm mode change 100644 => 100755 frontend/msSettingsManager.pas mode change 100644 => 100755 frontend/msSplashForm.dfm mode change 100644 => 100755 frontend/msSplashForm.pas mode change 100644 => 100755 frontend/msTagHelper.dfm mode change 100644 => 100755 frontend/msTagHelper.pas mode change 100644 => 100755 frontend/msTagManager.dfm mode change 100644 => 100755 frontend/msTagManager.pas mode change 100644 => 100755 lib/mte/CRC32.pas mode change 100644 => 100755 lib/mte/RttiIni.pas mode change 100644 => 100755 lib/mte/RttiJson.pas mode change 100644 => 100755 lib/mte/RttiTranslation.pas mode change 100644 => 100755 lib/mte/W7Taskbar.pas mode change 100644 => 100755 lib/mte/mteChangeLogForm.dfm mode change 100644 => 100755 lib/mte/mteChangeLogForm.pas mode change 100644 => 100755 lib/mte/mteHelpers.pas mode change 100644 => 100755 lib/mte/mteLogger.pas mode change 100644 => 100755 lib/mte/mteLogging.pas mode change 100644 => 100755 lib/mte/mtePluginSelectionForm.dfm mode change 100644 => 100755 lib/mte/mtePluginSelectionForm.pas mode change 100644 => 100755 lib/mte/mteProgressForm.dfm mode change 100644 => 100755 lib/mte/mteProgressForm.pas mode change 100644 => 100755 lib/mte/mteTaskHandler.pas diff --git a/frontend/MatorSmash.dpr b/frontend/MatorSmash.dpr index 4242a6f..8bf8842 100755 --- a/frontend/MatorSmash.dpr +++ b/frontend/MatorSmash.dpr @@ -1,16 +1,16 @@ -{******************************************************************************* +{ ******************************************************************************* - The contents of this file are subject to the Mozilla Public License - Version 1.1 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ + The contents of this file are subject to the Mozilla Public License + Version 1.1 (the "License"); you may not use this file except in + compliance with the License. You may obtain a copy of the License at + http://www.mozilla.org/MPL/ - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the - License for the specific language governing rights and limitations - under the License. + Software distributed under the License is distributed on an "AS IS" + basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the + License for the specific language governing rights and limitations + under the License. -*******************************************************************************} + ******************************************************************************* } program MatorSmash; @@ -21,7 +21,6 @@ uses Dialogs, Controls, SysUtils, - // lib\mte CRC32 in '..\lib\mte\CRC32.pas', mteBase in '..\lib\mte\mteBase.pas', mteChangeLogForm in '..\lib\mte\mteChangeLogForm.pas', @@ -35,7 +34,6 @@ uses RttiJson in '..\lib\mte\RttiJson.pas', RttiTranslation in '..\lib\mte\RttiTranslation.pas', W7Taskbar in '..\lib\mte\W7Taskbar.pas', - // lib\xedit wbInit in '..\lib\xedit\wbInit.pas', wbDefinitionsFNV in '..\lib\xedit\wbDefinitionsFNV.pas', wbDefinitionsFO3 in '..\lib\xedit\wbDefinitionsFO3.pas', @@ -49,7 +47,6 @@ uses wbLocalization in '..\lib\xedit\wbLocalization.pas', wbSort in '..\lib\xedit\wbSort.pas', wbStreams in '..\lib\xedit\wbStreams.pas', - // Smash msConfiguration in 'msConfiguration.pas', msCore in 'msCore.pas', msLoader in 'msLoader.pas', @@ -68,7 +65,9 @@ uses msPluginSelectionForm in 'msPluginSelectionForm.pas' {MiniPluginSelectionForm}, msConflictForm in 'msConflictForm.pas' {ConflictForm}, msTagManager in 'msTagManager.pas' {TagManager}, - msTagHelper in 'msTagHelper.pas' {TagHelper}; + msTagHelper in 'msTagHelper.pas' {TagHelper}, + Vcl.Themes, + Vcl.Styles; {$R *.res} {$MAXSTACKSIZE 2097152} @@ -76,23 +75,24 @@ uses const IMAGE_FILE_LARGE_ADDRESS_AWARE = $0020; - -{$SetPEFlags IMAGE_FILE_LARGE_ADDRESS_AWARE} +{$SETPEFLAGS IMAGE_FILE_LARGE_ADDRESS_AWARE} var bProfileProvided, bUseUTF8: boolean; sParam, sProfile, sPath: string; i: Integer; aSettings: TSettings; + begin // set important vars SysUtils.FormatSettings.DecimalSeparator := '.'; Application.HintHidePause := 8000; - //ReportMemoryLeaksOnShutdown := true; + // ReportMemoryLeaksOnShutdown := true; PathList.Values['ProgramPath'] := ExtractFilePath(ParamStr(0)); // get current profile if profile switch provided - for i := 1 to ParamCount do begin + for i := 1 to ParamCount do + begin sParam := ParamStr(i); if sParam = '-profile' then sProfile := ParamStr(i + 1); @@ -101,7 +101,8 @@ begin end; bProfileProvided := sProfile <> ''; sPath := Format('%sprofiles\%s\settings.ini', [ProgramPath, sProfile]); - if bProfileProvided and FileExists(sPath) then begin + if bProfileProvided and FileExists(sPath) then + begin aSettings := TSettings.Create; TRttiIni.Load(sPath, aSettings); CurrentProfile := TProfile.Create(aSettings.profile); @@ -117,9 +118,10 @@ begin LoadStatistics; // have user select game mode - if not bProfileProvided then begin + if not bProfileProvided then + begin ProfileForm := TProfileForm.Create(nil); - if not (ProfileForm.ShowModal = mrOk) then + if not(ProfileForm.ShowModal = mrOk) then exit; ProfileForm.Free; end; @@ -137,4 +139,5 @@ begin Application.CreateForm(TTagManager, TagManager); Application.CreateForm(TTagHelper, TagHelper); Application.Run; + end. diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index 0598f75..c9c1129 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -8,7 +8,7 @@ VCL DCC32 18.8 - Win32 + Win64 3 Win32 @@ -83,7 +83,7 @@ false None 3081 - CompanyName=;FileDescription=;FileVersion=1.2.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= + CompanyName=;FileDescription=;FileVersion=2.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;FMX;System.Win;$(DCC_Namespace) false 00400000 @@ -93,9 +93,9 @@ false MatorSmash true - 2 true true + 2 Resources\smash.png @@ -107,10 +107,9 @@ Resources\smash.png Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace) Debug - CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments= + CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=2.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments= 1033 $(BDS)\bin\default_app.manifest - 0 MatorSmash_Icon.ico @@ -152,15 +151,14 @@ Debug MatorSmash_Icon.ico - 2 - 0 - true - CompanyName=;FileDescription=;FileVersion=1.2.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments= - true true PerMonitorV2 + 1033 + CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=2.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments= + MatorSmash_Icon.ico + $(BDS)\bin\default_app.manifest @@ -308,6 +306,18 @@ true + + + .\ + true + + + + + MatorSmash.exe + true + + .\ diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 76a8cdbf203a0b800cf41e35f042f560c5ffc282..284475d0a12150676a59418c3a1f604db9da836e 100755 GIT binary patch delta 2169 zcmbtV&2HpG5blW<(CiNaP6#+OMsPrC|J!3nGg*cG5hDmhBpc3ccR8`J-Nx;iWP}z! z02iXY^AfxQN3J~2QufT)o83g9-5I&3yQ;drs;{a%e}Dd$_dC_@?hrx=AHGeR!^`K+;tj_$S(AwQ6h(cvK)N^*)TNAo#4 zZa*=~aVsy?{_*WGVz zmd*`c1}Bb&(3B!LTJQ3*%+i?G82TPcd--`<2zjoKpl)i+L#>sl7G=7B&MVl)d{)=x zu3>D#*88w^jM_Llm>affdd82vyUv@oS62%#%6w{U{k;NEfKn|;(=zivP%QsdltZWv zWRcdgIlZJ+FPqvFjA40Xf_D4`Ho;nl{;R#5M6>e=VAE$|%8>$F~V z47V)Ts}dUlVI5oRg$2)1c(5(Jz9y|v`U9EgvS1HnQCBik!;QY_eBErngQi?WSl4f0 zbu51Z>`LDYy~uYh*Nx-E63Jkh@#1vBPZ9acL0DEYMwVo?Up4VrT0>kfs?NmNGIwp( zNb4WX$Ggzw{6Pw=b6UUyjUVD)sQZwi*!G3GoEP)&lC(QW573hh?fJH8rx{wV5df( zbUWoZ2qg|!lxCRCf3tAK9B01K_UOIaKt13G_5Bgo`A#Tjcy85BiZ zsupD_tC}XVqMPxfCn>&%C}S8F-rrb&`2L8_#Z3DJY}2w_Z^A6k^_lC$9^+n<05i=% z0DvQ$#C)n5T|lpcKe-v(@hm5ZLe4x9B6bo97Jw}nZ*12!ZQDyihqu_TnR;+Dw9D

&xZ3Abz(C6R-iL%^^C9&>|4cqX?z9`dIlay}l9+ZHrl>cOdTrCHl% Q$G7JCKMfDhe*0kmU*7O^nE(I) delta 115 zcmX?NdPa4Ef|3Ix1A_ts1H=FS0zeGp0D%DmCkvPXBpetgI_a@7F)%V*6r5P5# '') then begin + if (eLink <> '') then + begin firstLink := eLink; bLinkProcessed := false; CopyLinkedElement(srcCont, dstCont, eLink, obj, dstRec); end; except on x: Exception do - Tracker.Write(' HandleElementLife: Failed to copy '+element.Path+', '+x.Message); + Tracker.Write(' HandleElementLife: Failed to copy ' + + element.Path + ', ' + x.Message); end; end; end; // handle element deletion - if bDeletions then begin - for i := Pred(dstCont.ElementCount) downto 0 do begin + if bDeletions then + begin + for i := Pred(dstCont.ElementCount) downto 0 do + begin element := dstCont.Elements[i]; - if Assigned(mstCont.ElementByName[element.Name]) and - not Assigned(srcCont.ElementByName[element.Name]) then begin + if Assigned(mstCont.ElementByName[element.Name]) and + not Assigned(srcCont.ElementByName[element.Name]) then + begin Result := true; if bSingle then exit; // skip according to setting eObj := GetElementObj(obj, element.Name); - process := Assigned(eObj) and (eObj.I['p'] = 1); - if not process then begin + process := Assigned(eObj) and (eObj.i['p'] = 1); + if not process then + begin if settings.debugSkips then - Tracker.Write(' Skipping element deletion at '+element.Path); + Tracker.Write(' Skipping element deletion at ' + element.Path); continue; end; // remove element if settings.debugChanges then - Tracker.Write(' Deleted element at '+element.Path); + Tracker.Write(' Deleted element at ' + element.Path); dstCont.RemoveElement(element); // if another element is linked to the element, copy it eLink := eObj.S['lf']; - if (eLink <> '') then begin + if (eLink <> '') then + begin firstLink := eLink; bLinkProcessed := false; CopyLinkedElement(srcCont, dstCont, eLink, obj, dstRec); @@ -152,38 +166,41 @@ function HandleElementLife(srcCont, dstCont, mstCont: IwbContainerElementRef; end; // GetMasterElement: Gets the first instance of an element (the master) -function GetMasterElement(src, se: IwbElement; dstRec: IwbMainRecord): IwbElement; +function GetMasterElement(src, se: IwbElement; dstRec: IwbMainRecord) + : IwbElement; const debugGetMaster = false; var - i: integer; - path, key: string; + i: Integer; + Path, key: string; mstRec, ovr: IwbMainRecord; mst: IwbElement; bSorted: boolean; begin Result := nil; mstRec := dstRec.MasterOrSelf; - path := IndexedPath(src); + Path := IndexedPath(src); bSorted := IsSorted(src); - + // if sorted, use SortKey, else use GetAllValues - if bSorted then + if bSorted then key := se.SortKey[false] else key := GetAllValues(se); - + // debug message - if debugGetMaster then - Tracker.Write(' Called GetMasterElement at path '+path+' looking for key '+key); - + if debugGetMaster then + Tracker.Write(' Called GetMasterElement at path ' + Path + + ' looking for key ' + key); + // loop from override 0 to the second to last override // last override is in our patch, we don't want to process that one - for i := 0 to mstRec.OverrideCount - 2 do begin + for i := 0 to mstRec.OverrideCount - 2 do + begin ovr := mstRec.Overrides[i]; - mst := ElementByIndexedPath(mstRec, path); + mst := ElementByIndexedPath(mstRec, Path); Result := ElementByKey(mst, key, bSorted); - + // break if we found a subrecord matching the sortkey if Result <> nil then break; @@ -198,12 +215,13 @@ function GetMasterElement(src, se: IwbElement; dstRec: IwbMainRecord): IwbElemen procedure BuildKeyList(container: IwbContainerElementRef; var sl: TStringList; bUseSortKeys: boolean); var - i, n: integer; + i, n: Integer; childElement: IwbElement; key, adjustedKey: string; begin // loop through children elements - for i := 0 to Pred(container.ElementCount) do begin + for i := 0 to Pred(container.ElementCount) do + begin childElement := container.Elements[i]; // use sort if bUseSortKeys is true, else use GetAllValues @@ -215,7 +233,8 @@ procedure BuildKeyList(container: IwbContainerElementRef; var sl: TStringList; // find a non-colliding key n := 0; adjustedKey := key; - while (sl.IndexOf(adjustedKey) > -1) do begin + while (sl.IndexOf(adjustedKey) > -1) do + begin Inc(n); adjustedKey := key + IntToStr(n); end; @@ -234,10 +253,10 @@ procedure BuildKeyList(container: IwbContainerElementRef; var sl: TStringList; deletions if @bDeletions if true. Tracks @dstRec and @obj for calling rcore on element containers in sorted arrays. } -function MergeArray(src, mst, dst: IwbElement; dstrec: IwbMainRecord; +function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; obj: ISuperObject; bSingle, bDeletions, bOverride: boolean): boolean; var - i, s_ndx, m_ndx, d_ndx, a_ndx, align_ndx: integer; + i, s_ndx, m_ndx, d_ndx, a_ndx, align_ndx: Integer; se, de: IwbElement; slMst, slDst, slSrc: TStringList; srcCont, dstCont, mstCont, seCont: IwbContainerElementRef; @@ -269,19 +288,24 @@ function MergeArray(src, mst, dst: IwbElement; dstrec: IwbMainRecord; // Remove elements that are in master and destination, but // missing from source if bDeletions then - for i := 0 to Pred(slMst.Count) do begin + for i := 0 to Pred(slMst.Count) do + begin s_ndx := slSrc.IndexOf(slMst[i]); // element from master isn't in source - if (s_ndx = -1) then begin + if (s_ndx = -1) then + begin Result := true; // if we're in a treat as single, exit without removing anything - if bSingle then exit; + if bSingle then + exit; // if element is present in destination, remove it d_ndx := slDst.IndexOf(slMst[i]); - if (d_ndx = -1) then continue; + if (d_ndx = -1) then + continue; if settings.debugArrays then - Tracker.Write(' > Removing element at '+dst.Path+' with key: '+slMst[i]); + Tracker.Write(' > Removing element at ' + dst.Path + + ' with key: ' + slMst[i]); dstCont.RemoveElement(d_ndx); slDst.Delete(d_ndx); end; @@ -291,27 +315,33 @@ function MergeArray(src, mst, dst: IwbElement; dstrec: IwbMainRecord; // Copy array elements in source that aren't in master // or destination align_ndx := 0; - for i := 0 to Pred(slSrc.Count) do begin + for i := 0 to Pred(slSrc.Count) do + begin d_ndx := slDst.IndexOf(slSrc[i]); m_ndx := slMst.IndexOf(slSrc[i]); se := srcCont.Elements[i]; - - if (d_ndx = -1) and ((m_ndx = -1) or bOverride) then begin + if (d_ndx = -1) and ((m_ndx = -1) or bOverride) then + begin Result := true; // if we're in a treat as single, exit without adding anything - if bSingle then exit; + if bSingle then + exit; // add element to destination - if bSorted then begin + if bSorted then + begin if settings.debugArrays then - Tracker.Write(' > Adding element at '+dst.Path+' with key: '+slSrc[i]); + Tracker.Write(' > Adding element at ' + dst.Path + + ' with key: ' + slSrc[i]); de := dstCont.Assign(dstCont.ElementCount, se, false); slDst.Insert(dstCont.IndexOf(de), slSrc[i]); end - else begin + else + begin a_ndx := Min(i + align_ndx, dstCont.ElementCount); if settings.debugArrays then - Tracker.Write(' > Adding element at '+dst.Path+' at index '+a_ndx.ToString+' with key: '+slSrc[i]); + Tracker.Write(' > Adding element at ' + dst.Path + + ' at index ' + a_ndx.ToString + ' with key: ' + slSrc[i]); dstCont.InsertElement(a_ndx, se); align_ndx := align_ndx + 1; slDst.Insert(a_ndx, slSrc[i]); @@ -320,21 +350,29 @@ function MergeArray(src, mst, dst: IwbElement; dstrec: IwbMainRecord; // Special handling for sorted arrays // Traverses elements that may have been modified without their sortkey changing - else if bSorted and (d_ndx > -1) and Supports(se, IwbContainerElementRef, seCont) - and (seCont.ElementCount > 0) then begin - if settings.debugArrays then begin - Tracker.Write(' > Traversing element '+se.Path+' with key: '+slSrc[i]); - Tracker.Write(' > Source Element: '+GetAllValues(se)); - Tracker.Write(' > Destination Element: '+GetAllValues(dstCont.Elements[d_ndx])); + else if bSorted and (d_ndx > -1) and Supports(se, IwbContainerElementRef, + seCont) and (seCont.ElementCount > 0) then + begin + if settings.debugArrays then + begin + Tracker.Write(' > Traversing element ' + se.Path + + ' with key: ' + slSrc[i]); + Tracker.Write(' > Source Element: ' + GetAllValues(se)); + Tracker.Write(' > Destination Element: ' + + GetAllValues(dstCont.Elements[d_ndx])); end; // traverse element try - Result := rcore(se, GetMasterElement(src, se, dstrec), dstCont.Elements[d_ndx], - dstrec, GetElementObj(obj, se.Name), bSingle, bDeletions, bOverride); + Result := rcore(se, GetMasterElement(src, se, dstRec), + dstCont.Elements[d_ndx], dstRec, GetElementObj(obj, se.Name), + bSingle, bDeletions, bOverride); if Result and bSingle then exit; - except on x : Exception do begin - Tracker.Write(' rcore: Exception at '+se.Path+': '+x.Message); + except + on x: Exception do + begin + Tracker.Write(' rcore: Exception at ' + se.Path + ': ' + + x.Message); end; end; end; @@ -349,12 +387,13 @@ function MergeArray(src, mst, dst: IwbElement; dstrec: IwbMainRecord; procedure BuildFlagList(container: IwbContainerElementRef; var sl: TStringList); var - i, n: integer; + i, n: Integer; childElement: IwbElement; key, adjustedKey: string; begin // loop through children elements - for i := 0 to Pred(container.ElementCount) do begin + for i := 0 to Pred(container.ElementCount) do + begin childElement := container.Elements[i]; key := childElement.Name; @@ -362,7 +401,8 @@ procedure BuildFlagList(container: IwbContainerElementRef; var sl: TStringList); // find a non-colliding key n := 0; adjustedKey := key; - while (sl.IndexOf(adjustedKey) > -1) do begin + while (sl.IndexOf(adjustedKey) > -1) do + begin Inc(n); adjustedKey := key + IntToStr(n); end; @@ -372,10 +412,10 @@ procedure BuildFlagList(container: IwbContainerElementRef; var sl: TStringList); end; end; -function MergeFlags(src, mst, dst: IwbElement; dstrec: IwbMainRecord; +function MergeFlags(src, mst, dst: IwbElement; dstRec: IwbMainRecord; obj: ISuperObject; bSingle, bDeletions, bOverride: boolean): boolean; var - i, s_ndx, m_ndx, d_ndx, fi: integer; + i, s_ndx, m_ndx, d_ndx, fi: Integer; val: String; se: IwbElement; slMst, slDst, slSrc: TStringList; @@ -404,22 +444,27 @@ function MergeFlags(src, mst, dst: IwbElement; dstrec: IwbMainRecord; // Remove elements that are in master and destination, but // missing from source if bDeletions then - for i := 0 to Pred(slMst.Count) do begin + for i := 0 to Pred(slMst.Count) do + begin s_ndx := slSrc.IndexOf(slMst[i]); // element from master isn't in source - if (s_ndx = -1) then begin + if (s_ndx = -1) then + begin Result := true; // if we're in a treat as single, exit without removing anything - if bSingle then exit; + if bSingle then + exit; // if element is present in destination, remove it d_ndx := slDst.IndexOf(slMst[i]); - if (d_ndx = -1) then continue; + if (d_ndx = -1) then + continue; if settings.debugArrays then - Tracker.Write(' > Removing element at '+dst.Path+' with key: '+slMst[i]); + Tracker.Write(' > Removing element at ' + dst.Path + + ' with key: ' + slMst[i]); fi := (mstCont.Elements[i].Def as IwbFlagDef).FlagIndex; val := dstCont.EditValue; - val[fi+1] := '0'; + val[fi + 1] := '0'; dstCont.EditValue := val; slDst.Delete(d_ndx); end; @@ -428,22 +473,25 @@ function MergeFlags(src, mst, dst: IwbElement; dstrec: IwbMainRecord; // ELEMENT ADDITION: // Copy array elements in source that aren't in master // or destination - for i := 0 to Pred(slSrc.Count) do begin + for i := 0 to Pred(slSrc.Count) do + begin d_ndx := slDst.IndexOf(slSrc[i]); m_ndx := slMst.IndexOf(slSrc[i]); se := srcCont.Elements[i]; - - if (d_ndx = -1) and ((m_ndx = -1) or bOverride) then begin + if (d_ndx = -1) and ((m_ndx = -1) or bOverride) then + begin Result := true; // if we're in a treat as single, exit without adding anything - if bSingle then exit; + if bSingle then + exit; // add element to destination if settings.debugArrays then - Tracker.Write(' > Adding flag at '+dst.Path+' with key: '+slSrc[i]); + Tracker.Write(' > Adding flag at ' + dst.Path + ' with key: ' + + slSrc[i]); fi := (se.Def as IwbFlagDef).FlagIndex; - val := dstCont.EditValue.PadRight(fi+1, '0'); - val[fi+1] := '1'; + val := dstCont.EditValue.PadRight(fi + 1, '0'); + val[fi + 1] := '1'; dstCont.EditValue := val; slDst.Add(slSrc[i]); end @@ -456,24 +504,28 @@ function MergeFlags(src, mst, dst: IwbElement; dstrec: IwbMainRecord; end; end; -{ +{ CopyElementValue: Copies the edit value of @se to @de. } procedure CopyElementValue(se, me, de: IwbElement); begin - if not de.IsEditable then begin - if settings.debugChanges then begin - Tracker.Write(' Unable to copy element value on '+se.path); + if not de.IsEditable then + begin + if settings.debugChanges then + begin + Tracker.Write(' Unable to copy element value on ' + se.Path); Tracker.Write(' Element is not editable'); end; exit; end; - if Assigned(me) and settings.debugChanges then begin + if Assigned(me) and settings.debugChanges then + begin if (not settings.debugTraversal) then - Tracker.Write(' '+se.Path); - Tracker.Write(' > Found differing values: '+se.EditValue+', '+me.EditValue); + Tracker.Write(' ' + se.Path); + Tracker.Write(' > Found differing values: ' + se.EditValue + ', ' + + me.EditValue); end; // try to copy element value to destination element from source element @@ -481,13 +533,14 @@ procedure CopyElementValue(se, me, de: IwbElement); try // TODO: Why does sinply setting EditValue sometimes do nothing?? - de.Container.AddIfMissing(se, false, false, '', '', '', '', true); + de.container.AddIfMissing(se, false, false, '', '', '', '', true); except // If AddIfMissing fails try just setting it... de.EditValue := se.EditValue; end; - except on x : Exception do - Tracker.Write(' CopyElementValue: Exception '+x.Message); + except + on x: Exception do + Tracker.Write(' CopyElementValue: Exception ' + x.Message); end; end; @@ -504,7 +557,8 @@ procedure CopyLinkedElement(srcCont, dstCont: IwbContainerElementRef; cLink: string; begin // exit if we reached the first link in a chain - if (eLink = firstLink) then begin + if (eLink = firstLink) then + begin if bLinkProcessed then exit; bLinkProcessed := true; @@ -515,9 +569,10 @@ procedure CopyLinkedElement(srcCont, dstCont: IwbContainerElementRef; cObj := GetElementObj(obj, eLink); le := srcCont.ElementByName[eLink]; de := dstCont.ElementByName[eLink]; - if Assigned(le) then begin + if Assigned(le) then + begin if settings.debugLinks then - Tracker.Write(' Copying linked element '+le.Path); + Tracker.Write(' Copying linked element ' + le.Path); if Assigned(de) then de.Assign(Low(Integer), le, false) else @@ -529,13 +584,14 @@ procedure CopyLinkedElement(srcCont, dstCont: IwbContainerElementRef; end; except on x: Exception do - Tracker.Write(' CopyLinkedElement: Failed to copy '+eLink+', '+x.Message); + Tracker.Write(' CopyLinkedElement: Failed to copy ' + eLink + ', ' + + x.Message); end; end; { HandleElement: - Wrapper function around the logic for recursing into child + Wrapper function around the logic for recursing into child elements (rcore), handling an array, or copying element values. } function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; @@ -553,30 +609,36 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; dstType := GetSmashType(de); // other type information - bIsContainer := Supports(se, IwbContainerElementRef, container) - and (container.ElementCount > 0); - bCanAdd := se.CanAssign(High(Integer), nil, True) - and not (esNotSuitableToAddTo in se.ElementStates); + bIsContainer := Supports(se, IwbContainerElementRef, container) and + (container.ElementCount > 0); + bCanAdd := se.CanAssign(High(Integer), nil, true) and + not(esNotSuitableToAddTo in se.ElementStates); // exit if srcType <> dstType, returning true - if srcType <> dstType then begin - if settings.debugSkips then begin + if srcType <> dstType then + begin + if settings.debugSkips then + begin Tracker.Write(' Source and destination types don''t match'); - Tracker.Write(' '+stToString(srcType)+' != '+stToString(dstType)); - Tracker.Write(' Skipping '+se.Path); + Tracker.Write(' ' + stToString(srcType) + ' != ' + + stToString(dstType)); + Tracker.Write(' Skipping ' + se.Path); end; - Result := True; + Result := true; exit; end; // exit if master element not assigned and not array - if not Assigned(me) then begin + if not Assigned(me) then + begin if bCanAdd and (srcType in stArrays) then me := de - else begin - if settings.debugSkips then begin + else + begin + if settings.debugSkips then + begin Tracker.Write(' Master element not found!'); - Tracker.Write(' Skipping '+se.Path); + Tracker.Write(' Skipping ' + se.Path); end; exit; end; @@ -584,63 +646,80 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; // debug messages if settings.debugTraversal then - Tracker.Write(' '+se.Path); - if settings.debugTypes then begin - Tracker.Write(' bCanAdd: '+BoolToStr(bCanAdd, true)); - Tracker.Write(' SmashType: '+stToString(srcType)); - Tracker.Write(' bIsContainer: '+BoolToStr(bIsContainer, true)); + Tracker.Write(' ' + se.Path); + if settings.debugTypes then + begin + Tracker.Write(' bCanAdd: ' + BoolToStr(bCanAdd, true)); + Tracker.Write(' SmashType: ' + stToString(srcType)); + Tracker.Write(' bIsContainer: ' + BoolToStr(bIsContainer, true)); end; // merge array - if bCanAdd and (srcType in stArrays) then begin + if bCanAdd and (srcType in stArrays) then + begin if settings.debugTraversal then Tracker.Write(' Merging array'); try - Result := MergeArray(se, me, de, dstrec, obj, bSingle, bDeletions, bOverride); - except on x : Exception do - Tracker.Write(' MergeArray: Exception at '+se.Path+': '+x.Message); + Result := MergeArray(se, me, de, dstRec, obj, bSingle, bDeletions, + bOverride); + except + on x: Exception do + Tracker.Write(' MergeArray: Exception at ' + se.Path + ': ' + + x.Message); end; end // merge flags - else if bIsContainer and (srcType = stInteger) then begin + else if bIsContainer and (srcType = stInteger) then + begin if settings.debugTraversal then Tracker.Write(' Merging flags'); try - Result := MergeFlags(se, me, de, dstrec, obj, bSingle, bDeletions, bOverride); - except on x : Exception do - Tracker.Write(' MergeFlags: Exception at '+se.Path+': '+x.Message); + Result := MergeFlags(se, me, de, dstRec, obj, bSingle, bDeletions, + bOverride); + except + on x: Exception do + Tracker.Write(' MergeFlags: Exception at ' + se.Path + ': ' + + x.Message); end; end // else recurse deeper - else if bIsContainer and (srcType <> stInteger) then begin + else if bIsContainer and (srcType <> stInteger) then + begin if settings.debugTraversal then Tracker.Write(' Recursing deeper'); try - Result := rcore(se, me, de, dstrec, obj, bSingle, bDeletions, bOverride); - except on x : Exception do - Tracker.Write(' rcore: Exception at '+se.Path+': '+x.Message); + Result := rcore(se, me, de, dstRec, obj, bSingle, bDeletions, bOverride); + except + on x: Exception do + Tracker.Write(' rcore: Exception at ' + se.Path + ': ' + + x.Message); end; end // else copy element value - else if (srcType in stValues) then begin + else if (srcType in stValues) then + begin seVal := se.EditValue; meVal := me.EditValue; - if (seVal <> meVal) then begin + if (seVal <> meVal) then + begin if not bSingle then CopyElementValue(se, me, de); Result := true; end - else if settings.debugSkips then begin + else if settings.debugSkips then + begin Tracker.Write(Format(' Skipping, "%s" = "%s"', [seVal, meVal])); end; end - else if settings.debugSkips then begin + else if settings.debugSkips then + begin Tracker.Write(Format(' Skipping, %s is not a value type', [stToString(srcType)])); end; end; -function MatchingElement(e: IwbElement; i: integer; cont: IwbContainerElementRef): IwbElement; +function MatchingElement(e: IwbElement; i: Integer; + cont: IwbContainerElementRef): IwbElement; begin Result := cont.Elements[i]; if (not Assigned(Result)) or (not Result.Name.Equals(e.Name)) then @@ -660,12 +739,12 @@ function MatchingElement(e: IwbElement; i: integer; cont: IwbContainerElementRef - Uses HandleElementLife to resolve element creation/deletion. - Uses HandleElement to handle arrays, recurse deeper, or copy element - values + values } function rcore(src, mst, dst: IwbElement; dstRec: IwbMainRecord; obj: ISuperObject; bSingle, bDeletions, bOverride: boolean): boolean; var - i: integer; + i: Integer; srcCont, dstCont, mstCont: IwbContainerElementRef; se, me, de: IwbElement; process, eSingle, eDeletions, eOverride: boolean; @@ -675,94 +754,111 @@ function rcore(src, mst, dst: IwbElement; dstRec: IwbMainRecord; Result := false; // prepare containers - if not Supports(src, IwbContainerElementRef, srcCont) then begin - if settings.debugSkips then begin + if not Supports(src, IwbContainerElementRef, srcCont) then + begin + if settings.debugSkips then + begin Tracker.Write(' Source element not a container.'); - Tracker.Write(' Skipping '+src.Path); + Tracker.Write(' Skipping ' + src.Path); end; exit; end; - if not Supports(dst, IwbContainerElementRef, dstCont) then begin - if settings.debugSkips then begin + if not Supports(dst, IwbContainerElementRef, dstCont) then + begin + if settings.debugSkips then + begin Tracker.Write(' Destination element not a container.'); - Tracker.Write(' Skipping '+src.Path); + Tracker.Write(' Skipping ' + src.Path); end; exit; end; - if not Supports(mst, IwbContainerElementRef, mstCont) then begin - if settings.debugSkips then begin + if not Supports(mst, IwbContainerElementRef, mstCont) then + begin + if settings.debugSkips then + begin Tracker.Write(' Master element not a container.'); - Tracker.Write(' Skipping '+src.Path); + Tracker.Write(' Skipping ' + src.Path); end; exit; end; // copy elements from source to destination if missing AND // delete elements missing from source if found in master and destination - Result := HandleElementLife(srcCont, dstCont, mstCont, dstRec, obj, bSingle, bDeletions, bOverride); - if bSingle and Result then begin + Result := HandleElementLife(srcCont, dstCont, mstCont, dstRec, obj, bSingle, + bDeletions, bOverride); + if bSingle and Result then + begin if settings.debugSingle then - Tracker.Write(' Single entity change found at '+src.Path); + Tracker.Write(' Single entity change found at ' + src.Path); exit; end; // loop through subelements - for i := 0 to Pred(srcCont.ElementCount) do begin + for i := 0 to Pred(srcCont.ElementCount) do + begin // assign source, destination, master elements se := srcCont.Elements[i]; de := MatchingElement(se, i, dstCont); me := MatchingElement(se, i, mstCont); // skip if destination element not assigned - if not Assigned(de) then begin - if settings.debugSkips then begin + if not Assigned(de) then + begin + if settings.debugSkips then + begin Tracker.Write(' Destination element not found!'); - Tracker.Write(' Skipping '+se.Path); + Tracker.Write(' Skipping ' + se.Path); end; continue; end; // skip according to setting eObj := GetElementObj(obj, se.Name); - process := Assigned(eObj) and (eObj.I['p'] = 1); - if not process then begin + process := Assigned(eObj) and (eObj.i['p'] = 1); + if not process then + begin if settings.debugSkips then - Tracker.Write(' Skipping '+se.Path); + Tracker.Write(' Skipping ' + se.Path); continue; end; // set element treat as single entity / ignore deletions booleans - eSingle := bSingle or (eObj.I['s'] = 1); - eDeletions := bDeletions or (eObj.I['d'] = 1); - eOverride := bOverride or (eObj.I['o'] = 1); + eSingle := bSingle or (eObj.i['s'] = 1); + eDeletions := bDeletions or (eObj.i['d'] = 1); + eOverride := bOverride or (eObj.i['o'] = 1); // handle element - Result := HandleElement(se, me, de, dstRec, eObj, eSingle, eDeletions, eOverride); + Result := HandleElement(se, me, de, dstRec, eObj, eSingle, eDeletions, + eOverride); // if we're in a single entity and an element is changed, break // we don't need to handle anything anymore - if bSingle and Result then begin + if bSingle and Result then + begin if settings.debugSingle then - Tracker.Write(' Single entity change found at '+se.Path); + Tracker.Write(' Single entity change found at ' + se.Path); break; end; // if the element we're processing has the single entity flag set // and we're not currently in a single entity, copy entire element - if eSingle and (not bSingle) and Result then try - if settings.debugSingle then - Tracker.Write(Format(' Copying single entity %s', [se.path])); - de.Assign(Low(Integer), se, false); - except - on x: Exception do - Tracker.Write(' rcore: Failed to copy '+se.Path+', '+x.Message); - end; + if eSingle and (not bSingle) and Result then + try + if settings.debugSingle then + Tracker.Write(Format(' Copying single entity %s', [se.Path])); + de.Assign(Low(Integer), se, false); + except + on x: Exception do + Tracker.Write(' rcore: Failed to copy ' + se.Path + ', ' + + x.Message); + end; // if another element is linked to the element being processed // and the element being processed has been modified, copy the linked // element eLink := eObj.S['lf']; - if Result and (eLink <> '') then begin + if Result and (eLink <> '') then + begin firstLink := eLink; bLinkProcessed := false; CopyLinkedElement(srcCont, dstCont, eLink, obj, dstRec); diff --git a/frontend/msChoicePanel.pas b/frontend/msChoicePanel.pas old mode 100644 new mode 100755 index 0aa1f64..a1e4cde --- a/frontend/msChoicePanel.pas +++ b/frontend/msChoicePanel.pas @@ -12,6 +12,7 @@ interface type TSenderCallback = procedure(Sender: TObject) of object; + TChoicePanel = class(TPanel) public Selected: boolean; @@ -39,22 +40,21 @@ TChoicePanel = class(TPanel) implementation - -{******************************************************************************} +{ ****************************************************************************** } { TChoicePanel A GUI component for interacting with a profile. } -{******************************************************************************} +{ ****************************************************************************** } constructor TChoicePanel.Create(AOwner: TComponent); begin // set up panel inherited Create(AOwner); Parent := AOwner as TWinControl; - Width := (AOwner as TWinControl).ClientWidth; + width := (AOwner as TWinControl).ClientWidth; Height := 36; Left := 0; - Top := 0; + top := 0; ParentBackground := false; ParentColor := false; ParentDoubleBuffered := false; @@ -65,7 +65,7 @@ constructor TChoicePanel.Create(AOwner: TComponent); // set local variables Selected := false; ColorUnselected := Color; - ColorSelected := $f0ece4; + ColorSelected := $F0ECE4; lstChoices := TList.Create; // create components @@ -74,7 +74,7 @@ constructor TChoicePanel.Create(AOwner: TComponent); // set up lblSig lblSig.Parent := self; - lblSig.Top := 10; + lblSig.top := 10; lblSig.Left := 16; lblSig.Caption := 'SIGN'; lblSig.Cursor := crHandPoint; @@ -83,9 +83,9 @@ constructor TChoicePanel.Create(AOwner: TComponent); // set up cbGame cbChoices.Parent := self; - cbChoices.Top := 8; + cbChoices.top := 8; cbChoices.Left := 75; - cbChoices.Width := Width - cbChoices.Left - 6; + cbChoices.width := width - cbChoices.Left - 6; cbChoices.Style := csDropDownList; cbChoices.Items.Text := ''; cbChoices.Items.Add('Patch'); @@ -110,14 +110,20 @@ destructor TChoicePanel.Destroy; { EVENT HANDLING } procedure TChoicePanel.SettingChanged(Sender: TObject); begin - if Assigned(SelectCallback) then SelectCallback(self); + if Assigned(SelectCallback) then + SelectCallback(self); end; procedure TChoicePanel.ToggleSelect(Sender: TObject); begin - if Cursor = crHandPoint then begin - if Selected then Deselect else Select; - if Assigned(SelectCallback) then SelectCallback(self); + if Cursor = crHandPoint then + begin + if Selected then + Deselect + else + Select; + if Assigned(SelectCallback) then + SelectCallback(self); end; end; diff --git a/frontend/msConfiguration.pas b/frontend/msConfiguration.pas index 12cc6d8..a708174 100755 --- a/frontend/msConfiguration.pas +++ b/frontend/msConfiguration.pas @@ -18,6 +18,7 @@ interface appIDs: string; bsaOptMode: string; end; + TSettings = class(TObject) public [IniSection('General')] @@ -57,6 +58,7 @@ TSettings = class(TObject) preserveITPOs: boolean; constructor Create; virtual; end; + TStatistics = class(TObject) public [IniSection('Statistics')] @@ -67,35 +69,37 @@ TStatistics = class(TObject) recsSubmitted: integer; constructor Create; virtual; end; + TProfile = class(TObject) public name: string; - gameMode: Integer; + gameMode: integer; gamePath: string; constructor Create(name: string); virtual; procedure Clone(p: TProfile); procedure Delete; procedure Rename(name: string); end; + TProgramStatus = class(TObject) public bInitException, bLoadException, bChangeProfile, bForceTerminate, - bLoaderDone, bInstallUpdate, bUpdatePatchStatus, bClose: boolean; - GameMode: TGameMode; + bLoaderDone, bInstallUpdate, bUpdatePatchStatus, bClose: boolean; + gameMode: TGameMode; Version: String; constructor Create; virtual; end; - procedure DeleteTempPath; - procedure LoadLanguage; - function GetLanguageString(name: string): string; - procedure SaveProfile(var p: TProfile); - procedure LoadSettings; overload; - function LoadSettings(path: string): TSettings; overload; - procedure SaveSettings; overload; - procedure SaveSettings(var s: TSettings; path: string); overload; - procedure LoadStatistics; - procedure SaveStatistics; +procedure DeleteTempPath; +procedure LoadLanguage; +function GetLanguageString(name: string): string; +procedure SaveProfile(var p: TProfile); +procedure LoadSettings; overload; +function LoadSettings(path: string): TSettings; overload; +procedure SaveSettings; overload; +procedure SaveSettings(var s: TSettings; path: string); overload; +procedure LoadStatistics; +procedure SaveStatistics; var settings: TSettings; @@ -109,35 +113,30 @@ TProgramStatus = class(TObject) bTranslationDump = false; // GAME MODES - GameArray: array[1..9] of TGameMode = ( - ( longName: 'Skyrim'; gameName: 'Skyrim'; gameMode: gmTES5; - regName: 'Skyrim'; appName: 'TES5'; exeName: 'TESV.exe'; appIDs: '72850'; - bsaOptMode: 'sk'; ), - ( longName: 'Oblivion'; gameName: 'Oblivion'; gameMode: gmTES4; - regName: 'Oblivion'; appName: 'TES4'; exeName: 'Oblivion.exe'; - appIDs: '22330,900883'; bsaOptMode: 'ob'; ), - ( longName: 'Fallout New Vegas'; gameName: 'FalloutNV'; gameMode: gmFNV; - regName: 'FalloutNV'; appName: 'FNV'; exeName: 'FalloutNV.exe'; - appIDs: '22380,2028016'; bsaOptMode: 'fo'; ), - ( longName: 'Fallout 3'; gameName: 'Fallout3'; gameMode: gmFO3; - regName: 'Fallout3'; appName: 'FO3'; exeName: 'Fallout3.exe'; - appIDs: '22300,22370'; bsaOptMode: 'fo'; ), - ( longName: 'Fallout 4'; gameName: 'Fallout4'; gameMode: gmFO4; - regName: 'Fallout4'; appName: 'FO4'; exeName: 'Fallout4.exe'; - appIDs: '377160'; bsaOptMode: ''; ), - ( longName: 'Skyrim Special Edition'; gameName: 'Skyrim'; gameMode: gmSSE; - regName: 'Skyrim Special Edition'; appName: 'SSE'; - exeName: 'SkyrimSE.exe'; appIDs: '489830'; bsaOptMode: ''; ), - ( longName: 'Skyrim VR'; gameName: 'Skyrim'; gameMode: gmTES5VR; - regName: 'Skyrim VR'; appName: 'TES5VR'; - exeName: 'SkyrimVR.exe'; appIDs: '611670'; bsaOptMode: ''; ), - ( longName: 'Enderal'; gameName: 'Skyrim'; gameMode: gmEnderal; - regName: 'Enderal'; appName: 'Enderal'; exeName: 'TESV.exe'; appIDs: '933480'; - bsaOptMode: 'sk'; ), - ( longName: 'Enderal Special Edition'; gameName: 'Skyrim'; gameMode: gmSSE; - regName: 'Enderal Special Edition'; appName: 'EnderalSE'; - exeName: 'SkyrimSE.exe'; appIDs: '976620'; bsaOptMode: ''; ) - ); + GameArray: array [1 .. 9] of TGameMode = ((longName: 'Skyrim'; + gameName: 'Skyrim'; gameMode: gmTES5; regName: 'Skyrim'; appName: 'TES5'; + exeName: 'TESV.exe'; appIDs: '72850'; bsaOptMode: 'sk'; + ), (longName: 'Oblivion'; gameName: 'Oblivion'; gameMode: gmTES4; + regName: 'Oblivion'; appName: 'TES4'; exeName: 'Oblivion.exe'; + appIDs: '22330,900883'; bsaOptMode: 'ob';), (longName: 'Fallout New Vegas'; + gameName: 'FalloutNV'; gameMode: gmFNV; regName: 'FalloutNV'; + appName: 'FNV'; exeName: 'FalloutNV.exe'; appIDs: '22380,2028016'; + bsaOptMode: 'fo';), (longName: 'Fallout 3'; gameName: 'Fallout3'; + gameMode: gmFO3; regName: 'Fallout3'; appName: 'FO3'; + exeName: 'Fallout3.exe'; appIDs: '22300,22370'; bsaOptMode: 'fo'; + ), (longName: 'Fallout 4'; gameName: 'Fallout4'; gameMode: gmFO4; + regName: 'Fallout4'; appName: 'FO4'; exeName: 'Fallout4.exe'; + appIDs: '377160'; bsaOptMode: '';), (longName: 'Skyrim Special Edition'; + gameName: 'Skyrim'; gameMode: gmSSE; regName: 'Skyrim Special Edition'; + appName: 'SSE'; exeName: 'SkyrimSE.exe'; appIDs: '489830'; bsaOptMode: ''; + ), (longName: 'Skyrim VR'; gameName: 'Skyrim'; gameMode: gmTES5VR; + regName: 'Skyrim VR'; appName: 'TES5VR'; exeName: 'SkyrimVR.exe'; + appIDs: '611670'; bsaOptMode: '';), (longName: 'Enderal'; + gameName: 'Skyrim'; gameMode: gmEnderal; regName: 'Enderal'; + appName: 'Enderal'; exeName: 'TESV.exe'; appIDs: '933480'; bsaOptMode: 'sk'; + ), (longName: 'Enderal Special Edition'; gameName: 'Skyrim'; + gameMode: gmSSE; regName: 'Enderal Special Edition'; appName: 'EnderalSE'; + exeName: 'SkyrimSE.exe'; appIDs: '976620'; bsaOptMode: '';)); implementation @@ -211,7 +210,7 @@ procedure TProfile.Rename(name: string); { TProgramStatus } constructor TProgramStatus.Create; begin - bInitException := false; + bInitException := false; bLoadException := false; bChangeProfile := false; bForceTerminate := false; @@ -229,26 +228,31 @@ procedure DeleteTempPath; procedure LoadLanguage; const - langFile = 'http://raw.githubusercontent.com/matortheeternal/smash/master/frontend/lang/english.lang'; - directions = 'Your english.lang file is missing. Please download it from GitHub. ' + - 'After you click OK, a webpage with the file will be opened. Right-click the ' + - 'page and choose "Save page as", then save it as english.lang in the "lang\" ' + - 'folder where you have MatorSmash.exe installed.'; - accessMessage = 'It looks like Smash doesn''t have permission to read files ' + - 'from disk. Try running the program as administrator or disabling your antivirus.'; + langFile = + 'http://raw.githubusercontent.com/matortheeternal/smash/master/frontend/lang/english.lang'; + directions = + 'Your english.lang file is missing. Please download it from GitHub. ' + + 'After you click OK, a webpage with the file will be opened. Right-click the ' + + 'page and choose "Save page as", then save it as english.lang in the "lang\" ' + + 'folder where you have MatorSmash.exe installed.'; + accessMessage = 'It looks like Smash doesn''t have permission to read files ' + + 'from disk. Try running the program as administrator or disabling your antivirus.'; var filename: string; begin filename := Format('lang\%s.lang', [settings.language]); language := TStringList.Create; - if (not FileExists(filename)) then begin - if settings.language <> 'english' then begin + if (not FileExists(filename)) then + begin + if settings.language <> 'english' then + begin settings.language := 'english'; LoadLanguage; end else if not FileExists('MatorSmash.exe') then MessageDlg(accessMessage, mtConfirmation, [mbOk], 0) - else begin + else + begin MessageDlg(directions, mtConfirmation, [mbOk], 0); ForceDirectories(PathList.Values['ProgramPath'] + 'lang\'); ShellExecute(0, 'open', PChar(langFile), '', '', SW_SHOWNORMAL); @@ -261,7 +265,8 @@ procedure LoadLanguage; function GetLanguageString(name: string): string; begin if language.Values[name] <> '' then - Result := StringReplace(language.Values[name], '#13#10', #13#10, [rfReplaceAll]) + Result := StringReplace(language.Values[name], '#13#10', #13#10, + [rfReplaceAll]) else Result := name; end; @@ -272,13 +277,15 @@ procedure SaveProfile(var p: TProfile); pSettings: TSettings; begin // get profile path - path := PathList.Values['ProgramPath'] + 'profiles\' + p.name + '\settings.ini'; + path := PathList.Values['ProgramPath'] + 'profiles\' + p.name + + '\settings.ini'; ForceDirectories(ExtractFilePath(path)); // load settings if they exist, else create them if FileExists(path) then pSettings := LoadSettings(path) - else begin + else + begin pSettings := TSettings.Create; pSettings.patchDirectory := p.gamePath + 'Data\'; end; @@ -339,12 +346,14 @@ procedure LoadStatistics; end; initialization + begin ProgramStatus := TProgramStatus.Create; PathList := TStringList.Create; end; finalization + begin ProgramStatus.Free; PathList.Free; diff --git a/frontend/msConflict.pas b/frontend/msConflict.pas index e906e59..957fa79 100755 --- a/frontend/msConflict.pas +++ b/frontend/msConflict.pas @@ -13,46 +13,35 @@ interface type // States used in InitNode to indicate states a node shall initially have. - TVirtualNodeInitState = ( - ivsDisabled, - ivsExpanded, - ivsHasChildren, - ivsMultiline, - ivsSelected, - ivsFiltered, - ivsReInit{>>>}, - ivsHidden{<<<} - ); + TVirtualNodeInitState = (ivsDisabled, ivsExpanded, ivsHasChildren, + ivsMultiline, ivsSelected, ivsFiltered, ivsReInit { >>> } , + ivsHidden { <<< } + ); TVirtualNodeInitStates = set of TVirtualNodeInitState; // navnode flags - TNavNodeFlag = ( - nnfInjected, - nnfNotReachable, - nnfReferencesInjected - ); + TNavNodeFlag = (nnfInjected, nnfNotReachable, nnfReferencesInjected); TNavNodeFlags = set of TNavNodeFlag; // navnode data PNavNodeData = ^TNavNodeData; + TNavNodeData = record - Element : IwbElement; - Container : IwbContainer; - ConflictAll : TConflictAll; - ConflictThis : TConflictThis; - Flags : TNavNodeFlags; + Element: IwbElement; + Container: IwbContainer; + ConflictAll: TConflictAll; + ConflictThis: TConflictThis; + Flags: TNavNodeFlags; end; // node flags - TViewNodeFlag = ( - vnfDontShow, - vnfIgnore - ); + TViewNodeFlag = (vnfDontShow, vnfIgnore); TViewNodeFlags = set of TViewNodeFlag; // node data PViewNodeData = ^TViewNodeData; + TViewNodeData = record Element: IwbElement; Container: IwbContainerElementRef; @@ -62,24 +51,24 @@ TViewNodeData = record end; // collections of node datas - TViewNodeDatas = array[Word] of TViewNodeData; + TViewNodeDatas = array [Word] of TViewNodeData; PViewNodeDatas = ^TViewNodeDatas; TDynViewNodeDatas = array of TViewNodeData; // exposed methods - procedure ConflictLevelForMainRecord(const aMainRecord: IwbMainRecord; - out aConflictAll: TConflictAll; out aConflictThis: TConflictThis); - function ConflictLevelForChildNodeDatas(const aNodeDatas: TDynViewNodeDatas; - aSiblingCompare, aInjected: Boolean): TConflictAll; - function ConflictLevelForNodeDatas(const aNodeDatas: PViewNodeDatas; - aNodeCount: Integer; aSiblingCompare, aInjected: Boolean): TConflictAll; - function ConflictAllForElements(e1, e2: IwbElement; aSiblingCompare, - aInjected: Boolean): TConflictAll; - function ConflictThisForMainRecord(aMainRecord: IwbMainRecord): TConflictThis; - function ConflictAllForMainRecord(aMainRecord: IwbMainRecord): TConflictAll; - function IsITPO(rec: IwbMainRecord): Boolean; - function IsITM(rec: IwbMainRecord): Boolean; +procedure ConflictLevelForMainRecord(const aMainRecord: IwbMainRecord; + out aConflictAll: TConflictAll; out aConflictThis: TConflictThis); +function ConflictLevelForChildNodeDatas(const aNodeDatas: TDynViewNodeDatas; + aSiblingCompare, aInjected: Boolean): TConflictAll; +function ConflictLevelForNodeDatas(const aNodeDatas: PViewNodeDatas; + aNodeCount: Integer; aSiblingCompare, aInjected: Boolean): TConflictAll; +function ConflictAllForElements(e1, e2: IwbElement; + aSiblingCompare, aInjected: Boolean): TConflictAll; +function ConflictThisForMainRecord(aMainRecord: IwbMainRecord): TConflictThis; +function ConflictAllForMainRecord(aMainRecord: IwbMainRecord): TConflictAll; +function IsITPO(rec: IwbMainRecord): Boolean; +function IsITM(rec: IwbMainRecord): Boolean; implementation @@ -89,12 +78,13 @@ procedure AppendToNodeDatas(var NodeDatas: TDynViewNodeDatas; e: IwbElement); begin SetLength(NodeDatas, Succ(Length(NodeDatas))); NodeDatas[Pred(Length(NodeDatas))].Element := e; - if Supports(e, IwbContainerElementRef, Container) and (Container.ElementCount > 0) then + if Supports(e, IwbContainerElementRef, Container) and + (Container.ElementCount > 0) then NodeDatas[Pred(Length(NodeDatas))].Container := Container; end; -function ConflictAllForElements(e1, e2: IwbElement; aSiblingCompare, - aInjected: Boolean): TConflictAll; +function ConflictAllForElements(e1, e2: IwbElement; + aSiblingCompare, aInjected: Boolean): TConflictAll; var NodeDatas: TDynViewNodeDatas; begin @@ -106,174 +96,204 @@ function ConflictAllForElements(e1, e2: IwbElement; aSiblingCompare, Result := caUnknown; if Length(NodeDatas) > 0 then if Assigned(NodeDatas[0].Container) then - Result := ConflictLevelForChildNodeDatas(NodeDatas, aSiblingCompare, aInjected) + Result := ConflictLevelForChildNodeDatas(NodeDatas, aSiblingCompare, + aInjected) else - Result := ConflictLevelForNodeDatas(@NodeDatas[0], Length(NodeDatas), aSiblingCompare, aInjected); + Result := ConflictLevelForNodeDatas(@NodeDatas[0], Length(NodeDatas), + aSiblingCompare, aInjected); end; -function NodeDatasForMainRecord(const aMainRecord: IwbMainRecord): TDynViewNodeDatas; +function NodeDatasForMainRecord(const aMainRecord: IwbMainRecord) + : TDynViewNodeDatas; var - Master : IwbMainRecord; - Rec : IwbMainRecord; - i, j : Integer; - Records : TStringList; - AnyHidden : Boolean; - IsNonOverride : Boolean; - EditorID : string; - FormID : Cardinal; - LoadOrder : Integer; - Group : IwbGroupRecord; - Signature : TwbSignature; - plugin : TPlugin; - aFile : IwbFile; + Master: IwbMainRecord; + rec: IwbMainRecord; + i, j: Integer; + Records: TStringList; + AnyHidden: Boolean; + IsNonOverride: Boolean; + EditorID: string; + FormID: Cardinal; + LoadOrder: Integer; + Group: IwbGroupRecord; + Signature: TwbSignature; + plugin: TPlugin; + aFile: IwbFile; begin Assert(wbLoaderDone); IsNonOverride := False; AnyHidden := False; - if aMainRecord.Signature = 'GMST' then begin + if aMainRecord.Signature = 'GMST' then + begin IsNonOverride := True; EditorID := aMainRecord.EditorID; SetLength(Result, PluginsList.Count); Master := nil; - for i := 0 to Pred(PluginsList.Count) do begin + for i := 0 to Pred(PluginsList.Count) do + begin plugin := TPlugin(PluginsList[i]); aFile := plugin._File; Group := aFile.GroupBySignature['GMST']; - if Assigned(Group) then begin - Rec := Group.MainRecordByEditorID[EditorID]; - if Assigned(Rec) then begin + if Assigned(Group) then + begin + rec := Group.MainRecordByEditorID[EditorID]; + if Assigned(rec) then + begin if not Assigned(Master) then - Master := Rec; - Result[i].Element := Rec; + Master := rec; + Result[i].Element := rec; end; end; end; - end else if (aMainRecord.Signature = 'NAVI') (* or (aMainRecord.Signature = 'TES4') *) then begin + end + else if (aMainRecord.Signature = 'NAVI') + (* or (aMainRecord.Signature = 'TES4') *) then + begin IsNonOverride := True; Signature := aMainRecord.Signature; FormID := aMainRecord.FormID.ToCardinal; LoadOrder := aMainRecord.GetFile.LoadOrder; SetLength(Result, 0); Master := nil; - for i := 0 to Pred(PluginsList.Count) do begin + for i := 0 to Pred(PluginsList.Count) do + begin plugin := TPlugin(PluginsList[i]); aFile := plugin._File; - if aFile.LoadOrder = LoadOrder then begin + if aFile.LoadOrder = LoadOrder then + begin Group := aFile.GroupBySignature[Signature]; - if Assigned(Group) then begin - Rec := Group.MainRecordByFormID[TwbFormID.fromCardinal(FormID)]; - if Assigned(Rec) then begin + if Assigned(Group) then + begin + rec := Group.MainRecordByFormID[TwbFormID.fromCardinal(FormID)]; + if Assigned(rec) then + begin j := Length(Result); - SetLength(Result, j+1); + SetLength(Result, j + 1); if not Assigned(Master) then - Master := Rec; - Result[j].Element := Rec; + Master := rec; + Result[j].Element := rec; end; end; end; end; - end else if (aMainRecord.Signature = 'TES4') then begin + end + else if (aMainRecord.Signature = 'TES4') then + begin IsNonOverride := True; Signature := aMainRecord.Signature; LoadOrder := aMainRecord.GetFile.LoadOrder; SetLength(Result, 0); Master := nil; - for i := 0 to Pred(PluginsList.Count) do begin + for i := 0 to Pred(PluginsList.Count) do + begin plugin := TPlugin(PluginsList[i]); aFile := plugin._File; - if aFile.LoadOrder = LoadOrder then begin + if aFile.LoadOrder = LoadOrder then + begin // header of .dat file, show only itself - if SameText(ExtractFileExt(aMainRecord.GetFile.FileName), '.dat') and not SameText(ExtractFileExt(aFile.FileName), '.dat') then + if SameText(ExtractFileExt(aMainRecord.GetFile.FileName), '.dat') and + not SameText(ExtractFileExt(aFile.FileName), '.dat') then Continue; // skip .dat file header by default - if not SameText(ExtractFileExt(aMainRecord.GetFile.FileName), '.dat') and SameText(ExtractFileExt(aFile.FileName), '.dat') then + if not SameText(ExtractFileExt(aMainRecord.GetFile.FileName), '.dat') + and SameText(ExtractFileExt(aFile.FileName), '.dat') then Continue; - Rec := aFile.Elements[0] as IwbMainRecord; - if Assigned(Rec) then begin + rec := aFile.Elements[0] as IwbMainRecord; + if Assigned(rec) then + begin j := Length(Result); - SetLength(Result, j+1); + SetLength(Result, j + 1); if not Assigned(Master) then - Master := Rec; - Result[j].Element := Rec; + Master := rec; + Result[j].Element := rec; end; end; end; - end else begin + end + else + begin Master := aMainRecord.MasterOrSelf; SetLength(Result, Succ(Master.OverrideCount)); AnyHidden := Master.IsHidden; if not AnyHidden then - for i := 0 to Pred(Master.OverrideCount) do begin + for i := 0 to Pred(Master.OverrideCount) do + begin AnyHidden := Master.Overrides[i].IsHidden; if AnyHidden then Break; end; end; - if (Length(Result) > 1) and ({ModGroupsEnabled or }AnyHidden) or IsNonOverride then begin + if (Length(Result) > 1) and ( { ModGroupsEnabled or } AnyHidden) or IsNonOverride + then + begin Records := TStringList.Create; try - if IsNonOverride then begin + if IsNonOverride then + begin for i := Low(Result) to High(Result) do - if Supports(Result[i].Element, IwbMainRecord, Rec) then - Records.AddObject(Rec._File.FileName, Pointer(Rec)); + if Supports(Result[i].Element, IwbMainRecord, rec) then + Records.AddObject(rec._File.FileName, Pointer(rec)); Result := nil; - end else begin + end + else + begin Records.AddObject(Master._File.FileName, Pointer(Master)); - for i := 0 to Pred(Master.OverrideCount) do begin - Rec := Master.Overrides[i]; - Records.AddObject(Rec._File.FileName, Pointer(Rec)); + for i := 0 to Pred(Master.OverrideCount) do + begin + rec := Master.Overrides[i]; + Records.AddObject(rec._File.FileName, Pointer(rec)); end; end; - {f ModGroupsEnabled then repeat + { f ModGroupsEnabled then repeat MadeChanges := False; sl := TStringList.Create; try - for i := 0 to Pred(ModGroups.Count) do begin - sl.Assign(TStrings(ModGroups.Objects[i])); - for j := Pred(sl.Count) downto 0 do begin - k := Records.IndexOf(sl[j]); - if K > 0 then // >, not >=, never hide the original master - sl.Objects[j] := TObject(k) - else - sl.Delete(j); - end; - if sl.Count > 1 then begin - k := Integer(sl.Objects[0]); - j := 1; - if k = 0 then begin - while (j < sl.Count) and (Integer(sl.Objects[j]) = k + 1) do begin - Records.Objects[Integer(sl.Objects[Pred(j)])] := nil; - Inc(k); - Inc(j); - end; - Inc(j); - end; - while (j < sl.Count) do begin - Records.Objects[Integer(sl.Objects[Pred(j)])] := nil; - Inc(j); - end; - for j := Pred(Records.Count) downto 0 do - if Records.Objects[j] = nil then begin - Records.Delete(j); - MadeChanges := True; - end; - end; - if Records.Count < 2 then - Break; - end; + for i := 0 to Pred(ModGroups.Count) do begin + sl.Assign(TStrings(ModGroups.Objects[i])); + for j := Pred(sl.Count) downto 0 do begin + k := Records.IndexOf(sl[j]); + if K > 0 then // >, not >=, never hide the original master + sl.Objects[j] := TObject(k) + else + sl.Delete(j); + end; + if sl.Count > 1 then begin + k := Integer(sl.Objects[0]); + j := 1; + if k = 0 then begin + while (j < sl.Count) and (Integer(sl.Objects[j]) = k + 1) do begin + Records.Objects[Integer(sl.Objects[Pred(j)])] := nil; + Inc(k); + Inc(j); + end; + Inc(j); + end; + while (j < sl.Count) do begin + Records.Objects[Integer(sl.Objects[Pred(j)])] := nil; + Inc(j); + end; + for j := Pred(Records.Count) downto 0 do + if Records.Objects[j] = nil then begin + Records.Delete(j); + MadeChanges := True; + end; + end; + if Records.Count < 2 then + Break; + end; finally - sl.Free; + sl.Free; end; - until not MadeChanges;} + until not MadeChanges; } i := 0; while (i < Records.Count) and (Records.Count > 1) do @@ -284,14 +304,16 @@ function NodeDatasForMainRecord(const aMainRecord: IwbMainRecord): TDynViewNodeD SetLength(Result, Records.Count); for i := 0 to Pred(Records.Count) do - with Result[i] do begin - Rec := IwbMainRecord(Pointer(Records.Objects[i])); + with Result[i] do + begin + rec := IwbMainRecord(Pointer(Records.Objects[i])); if i = 0 then - Master := Rec; + Master := rec; - Container := Rec as IwbContainerElementRef; + Container := rec as IwbContainerElementRef; Element := Container; - if (Container.ElementCount = 0) or (Rec.Signature <> Master.Signature) then + if (Container.ElementCount = 0) or (rec.Signature <> Master.Signature) + then Container := nil; end; @@ -308,10 +330,12 @@ function NodeDatasForMainRecord(const aMainRecord: IwbMainRecord): TDynViewNodeD Result[0].Container := nil; for i := 0 to Pred(Master.OverrideCount) do - with Result[Succ(i)] do begin + with Result[Succ(i)] do + begin Container := Master.Overrides[i] as IwbContainerElementRef; Element := Container; - if (Container.ElementCount = 0) or (Master.Overrides[i].Signature <> Master.Signature) then + if (Container.ElementCount = 0) or + (Master.Overrides[i].Signature <> Master.Signature) then Container := nil; end; end; @@ -321,19 +345,21 @@ procedure ConflictLevelForMainRecord(const aMainRecord: IwbMainRecord; procedure Fix(const aMainRecord: IwbMainRecord); begin - with aMainRecord do begin + with aMainRecord do + begin ConflictAll := aConflictAll; - if ConflictThis = ctUnknown then begin + if ConflictThis = ctUnknown then + begin ConflictThis := ctHiddenByModGroup; end; end; end; var - NodeDatas : TDynViewNodeDatas; - i : Integer; - Master : IwbMainRecord; - KeepAliveRoot : IwbKeepAliveRoot; + NodeDatas: TDynViewNodeDatas; + i: Integer; + Master: IwbMainRecord; + KeepAliveRoot: IwbKeepAliveRoot; begin KeepAliveRoot := wbCreateKeepAliveRoot; @@ -344,30 +370,39 @@ procedure ConflictLevelForMainRecord(const aMainRecord: IwbMainRecord; Exit; Master := aMainRecord.MasterOrSelf; - if (Master.OverrideCount = 0) and not wbTranslationMode and not (Master.Signature = 'GMST') then begin + if (Master.OverrideCount = 0) and not wbTranslationMode and + not(Master.Signature = 'GMST') then + begin aConflictAll := caOnlyOne; aConflictThis := ctOnlyOne; aMainRecord.ConflictAll := aConflictAll; aMainRecord.ConflictThis := aConflictThis; - end else begin + end + else + begin NodeDatas := NodeDatasForMainRecord(aMainRecord); - if Length(NodeDatas) = 1 then begin + if Length(NodeDatas) = 1 then + begin aConflictAll := caOnlyOne; NodeDatas[0].ConflictAll := caOnlyOne; NodeDatas[0].ConflictThis := ctOnlyOne; - {end else if wbQuickShowConflicts and (Length(NodeDatas) = 2) then begin - aConflictAll := caOverride; - NodeDatas[0].ConflictAll := caOverride; - NodeDatas[1].ConflictAll := caOverride; - NodeDatas[0].ConflictThis := ctMaster; - NodeDatas[1].ConflictThis := ctOverride;} - end else - aConflictAll := ConflictLevelForChildNodeDatas(NodeDatas, False, (aMainRecord.MasterOrSelf.IsInjected and not (aMainRecord.Signature = 'GMST')) ); + { end else if wbQuickShowConflicts and (Length(NodeDatas) = 2) then begin + aConflictAll := caOverride; + NodeDatas[0].ConflictAll := caOverride; + NodeDatas[1].ConflictAll := caOverride; + NodeDatas[0].ConflictThis := ctMaster; + NodeDatas[1].ConflictThis := ctOverride; } + end + else + aConflictAll := ConflictLevelForChildNodeDatas(NodeDatas, False, + (aMainRecord.MasterOrSelf.IsInjected and + not(aMainRecord.Signature = 'GMST'))); for i := Low(NodeDatas) to High(NodeDatas) do with NodeDatas[i] do if Assigned(Element) then - with (Element as IwbMainRecord) do begin + with (Element as IwbMainRecord) do + begin ConflictAll := aConflictAll; ConflictThis := NodeDatas[i].ConflictThis; end; @@ -383,46 +418,51 @@ procedure ConflictLevelForMainRecord(const aMainRecord: IwbMainRecord; procedure InitChilds(const aNodeDatas: PViewNodeDatas; aNodeCount: Integer; var aChildCount: Cardinal); var - NodeData : PNavNodeData; - Container : IwbContainer; - FirstContainer : IwbContainer; - SortableContainer : IwbSortableContainer; - Element : IwbElement; - i, j, k : Integer; - SortedCount : Integer; - NonSortedCount : Integer; - SortedKeys : array of TStringList; - Sortables : array of IwbSortableContainer; - SortKey : string; - LastSortKey : string; - DupCounter : Integer; + NodeData: PNavNodeData; + Container: IwbContainer; + FirstContainer: IwbContainer; + SortableContainer: IwbSortableContainer; + Element: IwbElement; + i, j, k: Integer; + SortedCount: Integer; + NonSortedCount: Integer; + SortedKeys: array of TStringList; + Sortables: array of IwbSortableContainer; + SortKey: string; + LastSortKey: string; + DupCounter: Integer; begin SortedCount := 0; NonSortedCount := 0; FirstContainer := nil; - for i := 0 to Pred(aNodeCount) do begin + for i := 0 to Pred(aNodeCount) do + begin NodeData := @aNodeDatas[i]; Container := NodeData.Container; if not Assigned(FirstContainer) then FirstContainer := Container; if Assigned(Container) then - if Supports(Container, IwbSortableContainer, SortableContainer) and SortableContainer.Sorted then + if Supports(Container, IwbSortableContainer, SortableContainer) and + SortableContainer.Sorted then Inc(SortedCount) else Inc(NonSortedCount); end; - if (NonSortedCount > 0) and (SortedCount > 0) then begin - if Assigned(FirstContainer) then - ;//PostAddMessage('Warning: Comparing sorted and unsorted entry for "' + FirstContainer.Path + '" in "'+FirstContainer.ContainingMainRecord.Name+'"'); + if (NonSortedCount > 0) and (SortedCount > 0) then + begin + if Assigned(FirstContainer) then; + // PostAddMessage('Warning: Comparing sorted and unsorted entry for "' + FirstContainer.Path + '" in "'+FirstContainer.ContainingMainRecord.Name+'"'); SortedCount := 0; end; - if SortedCount > 0 then begin -// Assert(NonSortedCount = 0); + if SortedCount > 0 then + begin + // Assert(NonSortedCount = 0); SetLength(SortedKeys, Succ(aNodeCount)); - for i := Low(SortedKeys) to High(SortedKeys) do begin + for i := Low(SortedKeys) to High(SortedKeys) do + begin SortedKeys[i] := TStringList.Create; SortedKeys[i].Sorted := True; SortedKeys[i].Duplicates := dupError; @@ -434,16 +474,20 @@ procedure InitChilds(const aNodeDatas: PViewNodeDatas; aNodeCount: Integer; SetLength(Sortables, aNodeCount); for i := 0 to Pred(aNodeCount) do - if Supports(aNodeDatas[i].Container, IwbSortableContainer, Sortables[i]) then begin + if Supports(aNodeDatas[i].Container, IwbSortableContainer, Sortables[i]) + then + begin SortableContainer := Sortables[i]; DupCounter := 0; LastSortKey := ''; - for j := 0 to Pred(SortableContainer.ElementCount) do begin + for j := 0 to Pred(SortableContainer.ElementCount) do + begin Element := SortableContainer.Elements[j]; SortKey := Element.SortKey[False]; if SameStr(LastSortKey, SortKey) then Inc(DupCounter) - else begin + else + begin DupCounter := 0; LastSortKey := SortKey; end; @@ -457,7 +501,8 @@ procedure InitChilds(const aNodeDatas: PViewNodeDatas; aNodeCount: Integer; aChildCount := SortedKeys[aNodeCount].Count; - for j := 0 to Pred(aChildCount) do begin + for j := 0 to Pred(aChildCount) do + begin SortKey := SortedKeys[aNodeCount].Strings[j]; for i := 0 to Pred(aNodeCount) do if SortedKeys[i].Find(SortKey, k) then @@ -473,23 +518,28 @@ procedure InitChilds(const aNodeDatas: PViewNodeDatas; aNodeCount: Integer; end else - for i := 0 to Pred(aNodeCount) do begin + for i := 0 to Pred(aNodeCount) do + begin NodeData := @aNodeDatas[i]; Container := NodeData.Container; - if Assigned(Container) then begin + if Assigned(Container) then + begin case Container.ElementType of - etMainRecord, etSubRecordStruct: begin + etMainRecord, etSubRecordStruct: + begin aChildCount := (Container.Def as IwbRecordDef).MemberCount; Inc(aChildCount, Container.AdditionalElementCount); - if Cardinal(Container.ElementCount) > aChildCount then begin - //PostAddMessage('Error: Container.ElementCount {'+IntToStr(Container.ElementCount)+'} > aChildCount {'+IntToStr(aChildCount)+'} for ' + Container.Path + ' in ' + Container.ContainingMainRecord.Name); - //for j := 0 to Pred(Container.ElementCount) do - //PostAddMessage(' #'+IntToStr(j)+': ' + Container.Elements[j].Name); - //Assert(Cardinal(Container.ElementCount) <= aChildCount); + if Cardinal(Container.ElementCount) > aChildCount then + begin + // PostAddMessage('Error: Container.ElementCount {'+IntToStr(Container.ElementCount)+'} > aChildCount {'+IntToStr(aChildCount)+'} for ' + Container.Path + ' in ' + Container.ContainingMainRecord.Name); + // for j := 0 to Pred(Container.ElementCount) do + // PostAddMessage(' #'+IntToStr(j)+': ' + Container.Elements[j].Name); + // Assert(Cardinal(Container.ElementCount) <= aChildCount); end; end; - etSubRecordArray, etArray, etStruct, etSubRecord, etValue, etUnion, etStructChapter: + etSubRecordArray, etArray, etStruct, etSubRecord, etValue, etUnion, + etStructChapter: if aChildCount < Cardinal(Container.ElementCount) then aChildCount := Container.ElementCount; end; @@ -498,35 +548,38 @@ procedure InitChilds(const aNodeDatas: PViewNodeDatas; aNodeCount: Integer; end; procedure InitNodes(const aNodeDatas: PViewNodeDatas; - const aParentDatas: PViewNodeDatas; - aNodeCount: Integer; - aIndex: Cardinal; + const aParentDatas: PViewNodeDatas; aNodeCount: Integer; aIndex: Cardinal; var aInitialStates: TVirtualNodeInitStates); var - NodeData : PViewNodeData; - ParentData : PViewNodeData; - Container : IwbContainerElementRef; - SortableContainer : IwbSortableContainer; - i : Integer; + NodeData: PViewNodeData; + ParentData: PViewNodeData; + Container: IwbContainerElementRef; + SortableContainer: IwbSortableContainer; + i: Integer; begin - for i := 0 to Pred(aNodeCount) do begin + for i := 0 to Pred(aNodeCount) do + begin NodeData := @aNodeDatas[i]; ParentData := @aParentDatas[i]; Container := ParentData.Container; - if Assigned(Container) then begin - if Supports(Container, IwbSortableContainer, SortableContainer) and SortableContainer.Sorted then + if Assigned(Container) then + begin + if Supports(Container, IwbSortableContainer, SortableContainer) and + SortableContainer.Sorted then NodeData.Element := Container.ElementBySortOrder[aIndex] else case Container.ElementType of etMainRecord, etSubRecordStruct: NodeData.Element := Container.ElementBySortOrder[aIndex]; - etSubRecordArray, etArray, etStruct, etSubRecord, etValue, etUnion, etStructChapter: + etSubRecordArray, etArray, etStruct, etSubRecord, etValue, etUnion, + etStructChapter: if aIndex < Cardinal(Container.ElementCount) then NodeData.Element := Container.Elements[aIndex]; end; end; - if Assigned(NodeData.Element) and NodeData.Element.DontShow then begin + if Assigned(NodeData.Element) and NodeData.Element.DontShow then + begin NodeData.Element := nil; Include(NodeData.ViewNodeFlags, vnfDontShow); end; @@ -534,17 +587,21 @@ procedure InitNodes(const aNodeDatas: PViewNodeDatas; aInitialStates := [ivsDisabled]; for i := 0 to Pred(aNodeCount) do - with aNodeDatas[i] do begin + with aNodeDatas[i] do + begin if Assigned(Element) then Exclude(aInitialStates, ivsDisabled) - else - if Assigned(aParentDatas) and ((vnfIgnore in aParentDatas[i].ViewNodeFlags) or (Assigned(aParentDatas[i].Element) and (aParentDatas[i].Element.ConflictPriority = cpIgnore))) then - Include(ViewNodeFlags, vnfIgnore); + else if Assigned(aParentDatas) and + ((vnfIgnore in aParentDatas[i].ViewNodeFlags) or + (Assigned(aParentDatas[i].Element) and + (aParentDatas[i].Element.ConflictPriority = cpIgnore))) then + Include(ViewNodeFlags, vnfIgnore); if not Assigned(Container) then - if Supports(Element, IwbContainerElementRef, Container) then begin - // if Container.ElementCount = 0 then - // Container := nil; + if Supports(Element, IwbContainerElementRef, Container) then + begin + // if Container.ElementCount = 0 then + // Container := nil; end; if Assigned(Container) then @@ -556,29 +613,33 @@ procedure InitNodes(const aNodeDatas: PViewNodeDatas; function ConflictLevelForChildNodeDatas(const aNodeDatas: TDynViewNodeDatas; aSiblingCompare, aInjected: Boolean): TConflictAll; var - ChildCount : Cardinal; - i, j : Integer; - NodeDatas : TDynViewNodeDatas; - InitialStates : TVirtualNodeInitStates; - ConflictAll : TConflictAll; - ConflictThis : TConflictThis; - Element : IwbElement; + ChildCount: Cardinal; + i, j: Integer; + NodeDatas: TDynViewNodeDatas; + InitialStates: TVirtualNodeInitStates; + ConflictAll: TConflictAll; + ConflictThis: TConflictThis; + Element: IwbElement; begin case Length(aNodeDatas) of - 0: Result := caUnknown; - 1: begin - Result := caOnlyOne; - aNodeDatas[0].ConflictThis := ctOnlyOne; - end; + 0: + Result := caUnknown; + 1: + begin + Result := caOnlyOne; + aNodeDatas[0].ConflictThis := ctOnlyOne; + end; else Result := caNoConflict; end; - if wbTranslationMode then begin + if wbTranslationMode then + begin if Result < caOnlyOne then Exit; end - else begin + else + begin if Result < caNoConflict then Exit; end; @@ -586,17 +647,22 @@ function ConflictLevelForChildNodeDatas(const aNodeDatas: TDynViewNodeDatas; ChildCount := 0; InitChilds(@aNodeDatas[0], Length(aNodeDatas), ChildCount); if ChildCount > 0 then - for i := 0 to Pred(ChildCount) do begin + for i := 0 to Pred(ChildCount) do + begin NodeDatas := nil; SetLength(NodeDatas, Length(aNodeDatas)); InitialStates := []; - InitNodes(@NodeDatas[0], @aNodeDatas[0], Length(aNodeDatas), i, InitialStates); - if not (ivsDisabled in InitialStates) then begin + InitNodes(@NodeDatas[0], @aNodeDatas[0], Length(aNodeDatas), i, + InitialStates); + if not(ivsDisabled in InitialStates) then + begin if ivsHasChildren in InitialStates then - ConflictAll := ConflictLevelForChildNodeDatas(NodeDatas, aSiblingCompare, aInjected) + ConflictAll := ConflictLevelForChildNodeDatas(NodeDatas, + aSiblingCompare, aInjected) else - ConflictAll := ConflictLevelForNodeDatas(@NodeDatas[0], Length(NodeDatas), aSiblingCompare, aInjected); + ConflictAll := ConflictLevelForNodeDatas(@NodeDatas[0], + Length(NodeDatas), aSiblingCompare, aInjected); if ConflictAll > Result then Result := ConflictAll; @@ -606,22 +672,27 @@ function ConflictLevelForChildNodeDatas(const aNodeDatas: TDynViewNodeDatas; aNodeDatas[j].ConflictThis := NodeDatas[j].ConflictThis; end - else begin + else + begin ConflictThis := ctNotDefined; - for j := Low(aNodeDatas) to High(aNodeDatas) do begin + for j := Low(aNodeDatas) to High(aNodeDatas) do + begin Element := aNodeDatas[j].Container; if Assigned(Element) then Break; end; - if Assigned(Element) and (Element.ElementType in [etMainRecord, etSubRecordStruct]) then begin + if Assigned(Element) and + (Element.ElementType in [etMainRecord, etSubRecordStruct]) then + begin j := (Element as IwbContainer).AdditionalElementCount; if i >= j then with (Element.Def as IwbRecordDef).Members[i - j] do - if (wbTranslationMode and (ConflictPriority[nil] <> cpTranslate)) or - (wbTranslationMode and (ConflictPriority[nil] = cpIgnore)) then + if (wbTranslationMode and (ConflictPriority[nil] <> cpTranslate)) + or (wbTranslationMode and (ConflictPriority[nil] = cpIgnore)) + then ConflictThis := ctIgnored; end; @@ -635,40 +706,44 @@ function ConflictLevelForChildNodeDatas(const aNodeDatas: TDynViewNodeDatas; function ConflictLevelForNodeDatas(const aNodeDatas: PViewNodeDatas; aNodeCount: Integer; aSiblingCompare, aInjected: Boolean): TConflictAll; var - Element : IwbElement; - CompareElement : IwbElement; - i, j : Integer; - UniqueValues : TStringList; - - MasterPosition : Integer; - FirstElement : IwbElement; - FirstElementNotIgnored : IwbElement; - LastElement : IwbElement; - SameAsLast : Boolean; - SameAsFirst : Boolean; - OverallConflictThis : TConflictThis; - Priority : TwbConflictPriority; - ThisPriority : TwbConflictPriority; - FoundAny : Boolean; + Element: IwbElement; + CompareElement: IwbElement; + i, j: Integer; + UniqueValues: TStringList; + + MasterPosition: Integer; + FirstElement: IwbElement; + FirstElementNotIgnored: IwbElement; + LastElement: IwbElement; + SameAsLast: Boolean; + SameAsFirst: Boolean; + OverallConflictThis: TConflictThis; + Priority: TwbConflictPriority; + ThisPriority: TwbConflictPriority; + FoundAny: Boolean; begin -// if aSiblingCompare then -// Priority := cpBenign -// else -// Priority := cpNormal; -// IgnoreConflicts := False; + // if aSiblingCompare then + // Priority := cpBenign + // else + // Priority := cpNormal; + // IgnoreConflicts := False; FoundAny := False; MasterPosition := 0; OverallConflictThis := ctUnknown; case aNodeCount of - 0: Result := caUnknown; - 1: begin + 0: + Result := caUnknown; + 1: + begin Element := aNodeDatas[0].Element; - if Assigned(Element) then begin + if Assigned(Element) then + begin if Element.ConflictPriority = cpIgnore then aNodeDatas[0].ConflictThis := ctIgnored else aNodeDatas[0].ConflictThis := ctOnlyOne; - end else + end + else aNodeDatas[0].ConflictThis := ctNotDefined; Result := caOnlyOne; end @@ -681,24 +756,31 @@ function ConflictLevelForNodeDatas(const aNodeDatas: PViewNodeDatas; UniqueValues.Duplicates := dupIgnore; Priority := cpNormal; try - for i := 0 to Pred(aNodeCount) do begin + for i := 0 to Pred(aNodeCount) do + begin Element := aNodeDatas[i].Element; - if Assigned(Element) then begin + if Assigned(Element) then + begin FoundAny := True; Priority := Element.ConflictPriority; - if Priority = cpNormalIgnoreEmpty then begin + if Priority = cpNormalIgnoreEmpty then + begin FirstElement := Element; MasterPosition := i; - for j := Pred(aNodeCount) downto i do begin + for j := Pred(aNodeCount) downto i do + begin LastElement := aNodeDatas[j].Element; if Assigned(LastElement) then Break; end; end; - if Element.ConflictPriorityCanChange then begin - for j := Succ(i) to Pred(aNodeCount) do begin + if Element.ConflictPriorityCanChange then + begin + for j := Succ(i) to Pred(aNodeCount) do + begin Element := aNodeDatas[j].Element; - if Assigned(Element) then begin + if Assigned(Element) then + begin ThisPriority := Element.ConflictPriority; if ThisPriority > Priority then Priority := ThisPriority; @@ -715,20 +797,26 @@ function ConflictLevelForNodeDatas(const aNodeDatas: PViewNodeDatas; if aInjected and (Priority >= cpNormal) then Priority := cpCritical; - if (Priority > cpIgnore) and (not Assigned(FirstElement) or (FirstElement.ConflictPriority = cpIgnore)) then + if (Priority > cpIgnore) and + (not Assigned(FirstElement) or + (FirstElement.ConflictPriority = cpIgnore)) then FirstElementNotIgnored := nil else FirstElementNotIgnored := FirstElement; - for i := 0 to Pred(aNodeCount) do begin + for i := 0 to Pred(aNodeCount) do + begin Element := aNodeDatas[i].Element; - if Assigned(Element) then begin + if Assigned(Element) then + begin ThisPriority := Element.ConflictPriority; if ThisPriority <> cpIgnore then UniqueValues.Add(Element.SortKey[True]); - end else begin + end + else + begin ThisPriority := Priority; - if not (vnfIgnore in aNodeDatas[i].ViewNodeFlags) then + if not(vnfIgnore in aNodeDatas[i].ViewNodeFlags) then if Priority <> cpNormalIgnoreEmpty then UniqueValues.Add(''); end; @@ -739,28 +827,31 @@ function ConflictLevelForNodeDatas(const aNodeDatas: PViewNodeDatas; aNodeDatas[i].ConflictThis := ctIgnored else if aSiblingCompare then aNodeDatas[i].ConflictThis := ctOnlyOne - else if i = MasterPosition then begin + else if i = MasterPosition then + begin if Assigned(Element) then aNodeDatas[i].ConflictThis := ctMaster else aNodeDatas[i].ConflictThis := ctUnknown; - end else begin - SameAsLast := (i = Pred(aNodeCount)) or not ( - (Assigned(Element) <> Assigned(LastElement)) or - (Assigned(Element) and not SameStr(Element.SortKey[True], LastElement.SortKey[True])) - ); - - SameAsFirst := not ( - (Assigned(Element) <> Assigned(FirstElementNotIgnored)) or - (Assigned(Element) and not SameStr(Element.SortKey[True], FirstElementNotIgnored.SortKey[True])) - ); - - if not SameAsFirst and - (ThisPriority = cpBenignIfAdded) and - SameAsLast and // We are not overriden later - not Assigned(FirstElementNotIgnored) then begin // The master did not have that element + end + else + begin + SameAsLast := (i = Pred(aNodeCount)) or + not((Assigned(Element) <> Assigned(LastElement)) or + (Assigned(Element) and not SameStr(Element.SortKey[True], + LastElement.SortKey[True]))); + + SameAsFirst := + not((Assigned(Element) <> Assigned(FirstElementNotIgnored)) or + (Assigned(Element) and not SameStr(Element.SortKey[True], + FirstElementNotIgnored.SortKey[True]))); + + if not SameAsFirst and (ThisPriority = cpBenignIfAdded) and + SameAsLast and // We are not overriden later + not Assigned(FirstElementNotIgnored) then + begin // The master did not have that element ThisPriority := cpBenign; Priority := cpBenign; SameAsFirst := True; @@ -774,7 +865,8 @@ function ConflictLevelForNodeDatas(const aNodeDatas: PViewNodeDatas; aNodeDatas[i].ConflictThis := ctConflictLoses; end; - if (ThisPriority = cpBenign) and (aNodeDatas[i].ConflictThis > ctConflictBenign) then + if (ThisPriority = cpBenign) and + (aNodeDatas[i].ConflictThis > ctConflictBenign) then aNodeDatas[i].ConflictThis := ctConflictBenign; if aNodeDatas[i].ConflictThis > OverallConflictThis then @@ -782,15 +874,20 @@ function ConflictLevelForNodeDatas(const aNodeDatas: PViewNodeDatas; end; case UniqueValues.Count of - 0: Result := caNoConflict; - 1: Result := caNoConflict; - 2: begin + 0: + Result := caNoConflict; + 1: + Result := caNoConflict; + 2: + begin Element := aNodeDatas[0].Element; CompareElement := aNodeDatas[Pred(aNodeCount)].Element; if (Assigned(Element) <> Assigned(CompareElement)) or - (Assigned(Element) and not SameStr(Element.SortKey[True], CompareElement.SortKey[True])) then + (Assigned(Element) and not SameStr(Element.SortKey[True], + CompareElement.SortKey[True])) then Result := caOverride - else if (UniqueValues.IndexOf('') >= 0) and Assigned(CompareElement) and (CompareElement.SortKey[True] <> '') then + else if (UniqueValues.IndexOf('') >= 0) and Assigned(CompareElement) + and (CompareElement.SortKey[True] <> '') then Result := caOverride else Result := caConflict; @@ -808,8 +905,10 @@ function ConflictLevelForNodeDatas(const aNodeDatas: PViewNodeDatas; if Result > caNoConflict then case Priority of - cpBenign: Result := caConflictBenign; - cpCritical: begin + cpBenign: + Result := caConflictBenign; + cpCritical: + begin if UniqueValues.Find('', i) then UniqueValues.Delete(i); if UniqueValues.Count > 1 then @@ -827,24 +926,34 @@ function ConflictLevelForNodeDatas(const aNodeDatas: PViewNodeDatas; ConflictThis := ctConflictWins; if Result in [caNoConflict, caOverride, caConflict] then - for i := 0 to Pred(aNodeCount) do begin + for i := 0 to Pred(aNodeCount) do + begin case aNodeDatas[i].ConflictThis of - ctIdenticalToMaster: case Result of - caNoConflict: ; - caOverride, caConflict: if i = Pred(aNodeCount) then - aNodeDatas[i].ConflictThis := ctIdenticalToMasterWinsConflict + ctIdenticalToMaster: + case Result of + caNoConflict: + ; + caOverride, caConflict: + if i = Pred(aNodeCount) then + aNodeDatas[i].ConflictThis := + ctIdenticalToMasterWinsConflict + end; + ctConflictWins: + case Result of + caNoConflict: + aNodeDatas[i].ConflictThis := ctIdenticalToMaster; + caOverride: + aNodeDatas[i].ConflictThis := ctOverride; + caConflict: + ; end; - ctConflictWins: case Result of - caNoConflict: aNodeDatas[i].ConflictThis := ctIdenticalToMaster; - caOverride: aNodeDatas[i].ConflictThis := ctOverride; - caConflict: ; - end; end; end; if Result < caConflict then for i := 0 to Pred(aNodeCount) do - if aNodeDatas[i].ConflictThis >= ctIdenticalToMasterWinsConflict then begin + if aNodeDatas[i].ConflictThis >= ctIdenticalToMasterWinsConflict then + begin Result := caConflict; Break; end; @@ -880,23 +989,22 @@ function IsITPO(rec: IwbMainRecord): Boolean; begin // get previous override mRec := rec.MasterOrSelf; - prevovr := mRec; - for i := 0 to Pred(mRec.OverrideCount) do begin + prevOvr := mRec; + for i := 0 to Pred(mRec.OverrideCount) do + begin ovr := mRec.Overrides[i]; if ovr.Equals(rec) then Break; - prevovr := ovr; + prevOvr := ovr; end; - Result := ConflictAllForElements(prevovr, rec, False, False) <= caNoConflict; + Result := ConflictAllForElements(prevOvr, rec, False, False) <= caNoConflict; end; function IsITM(rec: IwbMainRecord): Boolean; const - ITMConflictArray: set of TConflictThis = [ - ctIdenticalToMaster, - ctIdenticalToMasterWinsConflict - ]; + ITMConflictArray: set of TConflictThis = [ctIdenticalToMaster, + ctIdenticalToMasterWinsConflict]; begin Result := ConflictThisForMainRecord(rec) in ITMConflictArray; end; diff --git a/frontend/msConflictForm.dfm b/frontend/msConflictForm.dfm old mode 100644 new mode 100755 index 08c2378..382a210 --- a/frontend/msConflictForm.dfm +++ b/frontend/msConflictForm.dfm @@ -68,7 +68,7 @@ object ConflictForm: TConflictForm Left = 408 Top = 24 Bitmap = { - 494C010103000800540010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 494C010103000800040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 0000000000003600000028000000400000001000000001002000000000000010 0000000000000000000000000000000000000000000000000000000000000000 0000D7D7F8FF7373E6FF3434DBFF2121BEFF2121BEFF2D2DDAFF6B6BE4FFD2D2 @@ -213,7 +213,7 @@ object ConflictForm: TConflictForm Left = 336 Top = 24 Bitmap = { - 494C010104000800500011001100FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 494C010104000800040011001100FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 0000000000003600000028000000440000002200000001002000000000002024 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 diff --git a/frontend/msConflictForm.pas b/frontend/msConflictForm.pas old mode 100644 new mode 100755 index 7904c73..e40bc96 --- a/frontend/msConflictForm.pas +++ b/frontend/msConflictForm.pas @@ -10,7 +10,7 @@ interface // mte units mteHelpers, mteBase, // ms units - msCore, msChoicePanel; + msCore, msChoicePanel, System.ImageList; type TConflictForm = class(TForm) @@ -21,8 +21,8 @@ TConflictForm = class(TForm) FlagIcons: TImageList; StateImages: TImageList; procedure DrawFlag(Canvas: TCanvas; var x, y: Integer; id: Integer); - procedure tvRecordsCustomDrawItem(Sender: TCustomTreeView; - Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean); + procedure tvRecordsCustomDrawItem(Sender: TCustomTreeView; Node: TTreeNode; + State: TCustomDrawState; var DefaultDraw: Boolean); procedure PopulateTree(sig: string; aSetting: TSmashSetting); procedure ChoiceSelected(Sender: TObject); procedure CreateChoicePanel(sig: string; var lst: TList); @@ -30,8 +30,8 @@ TConflictForm = class(TForm) procedure FormCreate(Sender: TObject); procedure btnOKClick(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); - procedure tvRecordsMouseMove(Sender: TObject; Shift: TShiftState; X, - Y: Integer); + procedure tvRecordsMouseMove(Sender: TObject; Shift: TShiftState; + x, y: Integer); private { Private declarations } lastHint: string; @@ -52,7 +52,8 @@ implementation {$R *.dfm} -procedure TConflictForm.DrawFlag(Canvas: TCanvas; var x, y: Integer; id: Integer); +procedure TConflictForm.DrawFlag(Canvas: TCanvas; var x, y: Integer; + id: Integer); var icon: TIcon; begin @@ -72,8 +73,9 @@ procedure TConflictForm.tvRecordsCustomDrawItem(Sender: TCustomTreeView; R: TRect; x, y: Integer; begin - if Assigned(node.Data) then begin - e := TElementData(node.Data); + if Assigned(Node.Data) then + begin + e := TElementData(Node.Data); R := Node.DisplayRect(true); x := R.Right + 6; y := R.Top; @@ -88,35 +90,37 @@ procedure TConflictForm.tvRecordsCustomDrawItem(Sender: TCustomTreeView; end; procedure TConflictForm.tvRecordsMouseMove(Sender: TObject; Shift: TShiftState; - X, Y: Integer); + x, y: Integer); var - node: TTreeNode; + Node: TTreeNode; e: TElementData; sHint: string; begin // hide hint and exit if shift is down - if (ssShift in Shift) then begin + if (ssShift in Shift) then + begin Application.HideHint; exit; end; // draw hint if on a node with the link parameter - node := tvRecords.GetNodeAt(X, Y); - if not Assigned(node) then + Node := tvRecords.GetNodeAt(x, y); + if not Assigned(Node) then exit; - e := TElementData(node.Data); + e := TElementData(Node.Data); if not Assigned(e) then exit; // get hint - sHint := node.Text + #13#10'Type: '+stToString(e.smashType); + sHint := Node.Text + #13#10'Type: ' + stToString(e.smashType); if e.linkTo <> '' then - sHint := sHint + #13#10'Linked to: '+e.linkTo; + sHint := sHint + #13#10'Linked to: ' + e.linkTo; if e.linkFrom <> '' then - sHint := sHint + #13#10'Linked from: '+e.linkFrom; + sHint := sHint + #13#10'Linked from: ' + e.linkFrom; // display hint if it isn't the last hint we displayed - if sHint <> lastHint then begin + if sHint <> lastHint then + begin tvRecords.Hint := sHint; Application.ActivateHint(Mouse.CursorPos); lastHint := sHint; @@ -130,7 +134,8 @@ procedure TConflictForm.PopulateTree(sig: string; aSetting: TSmashSetting); begin rootNode := tvRecords.Items[0]; for item in aSetting.tree['records'] do - if Copy(item.S['n'], 1, 4) = sig then begin + if Copy(item.S['n'], 1, 4) = sig then + begin LoadElement(tvRecords, rootNode, item, false); break; end; @@ -144,10 +149,12 @@ procedure TConflictForm.btnOKClick(Sender: TObject); begin // get user selection from choice panels, add it to slConflicts // to be handled later - for i := 0 to Pred(ChoicePanels.Count) do begin + for i := 0 to Pred(ChoicePanels.Count) do + begin aChoicePanel := TChoicePanel(ChoicePanels[i]); aSetting := aChoicePanel.GetSetting; - if Assigned(aSetting) then begin + if Assigned(aSetting) then + begin DeleteMatchingItems(aChoicePanel.GetLabel, slConflicts); slConflicts.AddObject(aChoicePanel.GetLabel, TObject(aSetting)); end; @@ -168,7 +175,8 @@ procedure TConflictForm.ChoiceSelected(Sender: TObject); tvRecords.Items.Add(nil, 'Records'); // populate tree view with selected record nodes - for i := 0 to Pred(ChoicePanels.Count) do begin + for i := 0 to Pred(ChoicePanels.Count) do + begin aChoicePanel := TChoicePanel(ChoicePanels[i]); if not aChoicePanel.Selected then continue; @@ -215,7 +223,8 @@ procedure TConflictForm.FormShow(Sender: TObject); // (retrieved from slConflicts) sl := TStringList.Create; try - for i := 0 to Pred(slConflicts.Count) do begin + for i := 0 to Pred(slConflicts.Count) do + begin aSetting := TSmashSetting(slConflicts.Objects[i]); index := sl.IndexOf(slConflicts[i]); if index = -1 then @@ -225,7 +234,8 @@ procedure TConflictForm.FormShow(Sender: TObject); end; // create choice panels - for i := 0 to Pred(sl.Count) do begin + for i := 0 to Pred(sl.Count) do + begin lst := TList(sl.Objects[i]); if lst.Count > 1 then CreateChoicePanel(sl[i], lst); diff --git a/frontend/msCore.pas b/frontend/msCore.pas index b43fbca..4f87a12 100755 --- a/frontend/msCore.pas +++ b/frontend/msCore.pas @@ -29,6 +29,7 @@ TElementData = class(TObject) overrideDeletions, singleEntity, forceValue: boolean; smashType: TSmashType; linkTo, linkFrom: string); overload; end; + TSmashSetting = class(TObject) public name: string; @@ -43,7 +44,7 @@ TSmashSetting = class(TObject) constructor Clone(s: TSmashSetting); function GetRecordDef(sig: string): ISuperObject; procedure LoadDump(dump: ISuperObject); - function Dump: ISuperObject; + function dump: ISuperObject; procedure UpdateHash; procedure UpdateRecords; procedure Save; @@ -53,8 +54,9 @@ TSmashSetting = class(TObject) function GetTags: String; function GetCombinedTags: String; end; - {TRecommendation = class(TObject) - public + + { TRecommendation = class(TObject) + public game: string; username: string; filename: string; @@ -69,16 +71,18 @@ {TRecommendation = class(TObject) procedure SetNotes(notes: string); function GetNotes: string; procedure Save(const filename: string); - end; } + end; } // SMASH CORE CLASSES - TPatchStatusID = ( psUnknown, psNoPlugins, psDirInvalid, psUnloaded, - psErrors, psFailed, psUpToDate, psUpToDateForced, psBuildReady, - psRebuildReady, psRebuildReadyForced ); - TPatchStatus = Record + TPatchStatusID = (psUnknown, psNoPlugins, psDirInvalid, psUnloaded, psErrors, + psFailed, psUpToDate, psUpToDateForced, psBuildReady, psRebuildReady, + psRebuildReadyForced); + + TPatchStatus = Record id: TPatchStatusID; color: integer; desc: string[64]; end; + TPlugin = class(TBasePlugin) public setting: string; @@ -87,11 +91,11 @@ TPlugin = class(TBasePlugin) constructor Create; override; procedure GetMsData; procedure GetDataPath; - function GetFormIndex: Integer; + function GetFormIndex: integer; function IsInPatch: boolean; procedure LoadInfoDump(obj: ISuperObject); function InfoDump: ISuperObject; - function HasTags: Boolean; + function HasTags: boolean; procedure ApplySettingTags; procedure SetSmashSetting(aSetting: TSmashSetting); procedure LoadTags(sSettingName: String; var sl: TStringList; @@ -100,6 +104,7 @@ TPlugin = class(TBasePlugin) procedure WriteDescription; procedure Save; end; + TPatch = class(TObject) public name: string; @@ -115,7 +120,7 @@ TPatch = class(TObject) fails: TStringList; constructor Create; virtual; destructor Destroy; override; - function Dump: ISuperObject; + function dump: ISuperObject; procedure LoadDump(obj: ISuperObject); function GetTimeCost: integer; procedure UpdateHashes; @@ -130,61 +135,64 @@ TPatch = class(TObject) function FilesExist: boolean; function GetStatusColor: integer; end; + TSettingHelpers = class class function SettingByName(name: String): TSmashSetting; class function SettingByHash(hash: String): TSmashSetting; class function GetSmashSetting(setting: string): TSmashSetting; end; + TPatchHelpers = class class function CreateNewPatch(var patches: TList): TPatch; class function GetPatchForPlugin(filename: string): string; class procedure AssignPatchesToPlugins; class function PatchByName(var patches: TList; name: string): TPatch; - class function PatchByFilename(var patches: TList; filename: string): TPatch; + class function PatchByFilename(var patches: TList; + filename: string): TPatch; end; // Loading/Saving Functions - procedure RenameSavedPlugins; - procedure SavePatches; - procedure LoadPatches; - procedure SaveSmashSettings; - procedure LoadSmashSettings; - procedure SavePluginInfo; - procedure LoadPluginInfo; - procedure LoadSettingTags; - // Helper Functions - procedure HandleCanceled(msg: string); - - procedure UpdatePluginData; - function CreateNewPlugin(sFilename: string): TPlugin; - function PluginLoadOrder(sFilename: string): Integer; - function PluginByFilename(sFilename: string): TPlugin; - procedure PopulateAddList(var AddItem: TMenuItem; Event: TNotifyEvent); - procedure AddAllRecords(currentSetting: TSmashSetting; var tv: TTreeView); - procedure RemoveSettingFromPlugins(aSetting: TSmashSetting); - function GetTagString(var slTags: TStringList): String; - // Tree Helper Functions - procedure BuildTreeFromPlugins(var tv: TTreeView; var sl: TStringList; - tree: ISuperObject); - procedure SetChildren(node: TTreeNode; state: Integer); - procedure UpdateParent(node: TTreeNode); - procedure CheckBoxManager(node: TTreeNode); - procedure LoadElement(var tv: TTreeView; node: TTreeNode; obj: ISuperObject; - bWithinSingle: boolean); - procedure LoadTree(var tv: TTreeView; aSetting: TSmashSetting); - function GetRecordObject(tree: ISuperObject; sig: string): ISuperObject; - function GetChild(obj: ISuperObject; name: string): ISuperObject; - procedure MergeChildren(srcObj, dstObj: ISuperObject); - function CreateCombinedSetting(var sl: TStringList; name: string; - bVirtual: boolean = false): TSmashSetting; - function CombineSettingTrees(var lst: TList; var slSettings: TStringList): boolean; - // Tag Helper Functions - function ClearTags(sDescription: String): String; - procedure GetMissingTags(var slPresent, slMissing: TStringList); - procedure ExtractTags(var match: TMatch; var sl: TStringList; - var sTagGroup: String); - procedure ParseTags(description: string; var sl: TStringList); +procedure RenameSavedPlugins; +procedure SavePatches; +procedure LoadPatches; +procedure SaveSmashSettings; +procedure LoadSmashSettings; +procedure SavePluginInfo; +procedure LoadPluginInfo; +procedure LoadSettingTags; +// Helper Functions +procedure HandleCanceled(msg: string); +procedure UpdatePluginData; +function CreateNewPlugin(sFilename: string): TPlugin; +function PluginLoadOrder(sFilename: string): integer; +function PluginByFilename(sFilename: string): TPlugin; +procedure PopulateAddList(var AddItem: TMenuItem; Event: TNotifyEvent); +procedure AddAllRecords(currentSetting: TSmashSetting; var tv: TTreeView); +procedure RemoveSettingFromPlugins(aSetting: TSmashSetting); +function GetTagString(var slTags: TStringList): String; +// Tree Helper Functions +procedure BuildTreeFromPlugins(var tv: TTreeView; var sl: TStringList; + tree: ISuperObject); +procedure SetChildren(node: TTreeNode; state: integer); +procedure UpdateParent(node: TTreeNode); +procedure CheckBoxManager(node: TTreeNode); +procedure LoadElement(var tv: TTreeView; node: TTreeNode; obj: ISuperObject; + bWithinSingle: boolean); +procedure LoadTree(var tv: TTreeView; aSetting: TSmashSetting); +function GetRecordObject(tree: ISuperObject; sig: string): ISuperObject; +function GetChild(obj: ISuperObject; name: string): ISuperObject; +procedure MergeChildren(srcObj, dstObj: ISuperObject); +function CreateCombinedSetting(var sl: TStringList; name: string; + bVirtual: boolean = false): TSmashSetting; +function CombineSettingTrees(var lst: TList; + var slSettings: TStringList): boolean; +// Tag Helper Functions +function ClearTags(sDescription: String): String; +procedure GetMissingTags(var slPresent, slMissing: TStringList); +procedure ExtractTags(var match: TMatch; var sl: TStringList; + var sTagGroup: String); +procedure ParseTags(description: string; var sl: TStringList); const // IMPORTANT CONSTANTS @@ -198,28 +206,29 @@ TPatchHelpers = class csPartiallyChecked = 3; // SMASH TYPE ARRAYS - stArrays = [ stUnsortedArray, stUnsortedStructArray, - stSortedArray, stSortedStructArray ]; - stValues = [ stString, stFloat, stInteger, stByteArray ]; + stArrays = [stUnsortedArray, stUnsortedStructArray, stSortedArray, + stSortedStructArray]; + stValues = [stString, stFloat, stInteger, stByteArray]; // PATCH STATUSES - StatusArray: array[0..10] of TPatchStatus = ( - ( id: psUnknown; color: $808080; desc: 'Unknown'; ), - ( id: psNoPlugins; color: $0000FF; desc: 'Need two or more plugins to patch'; ), - ( id: psDirInvalid; color: $0000FF; desc: 'Directories invalid'; ), - ( id: psUnloaded; color: $0000FF; desc: 'Plugins not loaded'; ), - ( id: psErrors; color: $0000FF; desc: 'Errors in plugins'; ), - ( id: psFailed; color: $0000FF; desc: 'Patch failed'; ), - ( id: psUpToDate; color: $900000; desc: 'Up to date'; ), - ( id: psUpToDateForced; color: $900000; desc: 'Up to date [Forced]'; ), - ( id: psBuildReady; color: $009000; desc: 'Ready to be built'; ), - ( id: psRebuildReady; color: $009000; desc: 'Ready to be rebuilt'; ), - ( id: psRebuildReadyForced; color: $009000; desc: 'Ready to be rebuilt [Forced]'; ) - ); + StatusArray: array [0 .. 10] of TPatchStatus = ((id: psUnknown; + color: $808080; desc: 'Unknown';), (id: psNoPlugins; color: $0000FF; + desc: 'Need two or more plugins to patch'; + ), (id: psDirInvalid; color: $0000FF; desc: 'Directories invalid'; + ), (id: psUnloaded; color: $0000FF; desc: 'Plugins not loaded'; + ), (id: psErrors; color: $0000FF; desc: 'Errors in plugins'; + ), (id: psFailed; color: $0000FF; desc: 'Patch failed'; + ), (id: psUpToDate; color: $900000; desc: 'Up to date'; + ), (id: psUpToDateForced; color: $900000; desc: 'Up to date [Forced]'; + ), (id: psBuildReady; color: $009000; desc: 'Ready to be built'; + ), (id: psRebuildReady; color: $009000; desc: 'Ready to be rebuilt'; + ), (id: psRebuildReadyForced; color: $009000; + desc: 'Ready to be rebuilt [Forced]';)); // STATUS TYPES ErrorStatuses = [psUnknown, psNoPlugins, psDirInvalid, psUnloaded, psErrors]; UpToDateStatuses = [psUpToDate, psUpToDateForced]; - BuildStatuses = [psBuildReady, psRebuildReady, psRebuildReadyForced, psFailed]; + BuildStatuses = [psBuildReady, psRebuildReady, psRebuildReadyForced, + psFailed]; RebuildStatuses = [psRebuildReady, psRebuildReadyForced, psFailed]; ForcedStatuses = [psUpToDateForced, psRebuildReadyForced]; ResolveStatuses = [psNoPlugins, psDirInvalid, psUnloaded, psErrors]; @@ -227,7 +236,7 @@ TPatchHelpers = class var xEditVersion: string; - PatchesList, SmashSettings, pluginsToHandle, patchesToBuild: TList; + PatchesList, smashSettings, pluginsToHandle, patchesToBuild: TList; ActiveMods, SavedPluginPaths: TStringList; ActiveModProfile, xEditLogGroup, xEditLogLabel, DictionaryFilename: string; @@ -259,7 +268,7 @@ procedure TPlugin.GetMsData; GetDataPath; GetHash; - // get numOverrides if not blacklisted + // get numOverrides if not blacklisted if (numRecords < 10000) then numOverrides := CountOverrides(_File); @@ -272,14 +281,15 @@ procedure TPlugin.GetDataPath; dataPath := wbDataPath; end; -function TPlugin.GetFormIndex: Integer; +function TPlugin.GetFormIndex: integer; var Container, MasterFiles: IwbContainer; begin Result := 0; Container := self._File as IwbContainer; Container := Container.Elements[0] as IwbContainer; - if Container.ElementExists['Master Files'] then begin + if Container.ElementExists['Master Files'] then + begin MasterFiles := Container.ElementByPath['Master Files'] as IwbContainer; Result := MasterFiles.ElementCount; end; @@ -297,9 +307,9 @@ function TPlugin.InfoDump: ISuperObject; obj := SO; // filename, hash, errors - obj.S['filename'] := filename; - obj.S['hash'] := hash; - obj.S['setting'] := setting; + obj.s['filename'] := filename; + obj.s['hash'] := hash; + obj.s['setting'] := setting; Result := obj; end; @@ -308,30 +318,32 @@ procedure TPlugin.LoadInfoDump(obj: ISuperObject); var aSetting: TSmashSetting; begin - aSetting := TSettingHelpers.SettingByName(obj.AsObject.S['setting']); + aSetting := TSettingHelpers.SettingByName(obj.AsObject.s['setting']); SetSmashSetting(aSetting); end; procedure TPlugin.SetSmashSetting(aSetting: TSmashSetting); begin - if not Assigned(aSetting) then begin + if not Assigned(aSetting) then + begin setting := 'Skip'; smashSetting := TSettingHelpers.SettingByName(setting); end - else begin + else + begin setting := aSetting.name; smashSetting := aSetting; - Logger.Write('PLUGIN', 'Settings', 'Using '+setting+' for '+filename); + Logger.Write('PLUGIN', 'Settings', 'Using ' + setting + ' for ' + filename); end; end; -function TPlugin.HasTags: Boolean; +function TPlugin.HasTags: boolean; var regex: TRegex; match: TMatch; begin - regex := TRegEx.Create('{{([a-zA-Z]{1,10}:){0,1}([^}]*)}}'); - match := regex.Match(description.Text); + regex := TRegex.Create('{{([a-zA-Z]{1,10}:){0,1}([^}]*)}}'); + match := regex.match(description.Text); Result := match.Success; end; @@ -355,21 +367,25 @@ procedure TPlugin.LoadTags(sSettingName: String; var sl: TStringList; slRecords: TStringList; aSetting: TSmashSetting; settingsToCombine: TList; - i: Integer; + i: integer; begin // if only one setting present, use it - if sl.Count = 1 then begin + if sl.Count = 1 then + begin aSetting := TSettingHelpers.GetSmashSetting(sl[0]); SetSmashSetting(aSetting); end // else make a combined setting - else begin + else + begin settingsToCombine := TList.Create; // loop through found settings - for i := Pred(sl.Count) downto 0 do begin + for i := Pred(sl.Count) downto 0 do + begin aSetting := TSettingHelpers.GetSmashSetting(sl[i]); - if not Assigned(aSetting) then begin + if not Assigned(aSetting) then + begin sl.Delete(i); continue; end; @@ -379,11 +395,12 @@ procedure TPlugin.LoadTags(sSettingName: String; var sl: TStringList; // if settingsToCombine has 0 settings, set to skip setting if settingsToCombine.Count = 0 then SetSmashSetting(nil) - // if settingToCombine has only 1 setting, use that setting + // if settingToCombine has only 1 setting, use that setting else if settingsToCombine.Count = 1 then SetSmashSetting(settingsToCombine[0]) - // else build a combined setting - else begin + // else build a combined setting + else + begin Logger.Write('PLUGIN', 'Settings', 'Building combined setting'); slRecords := TStringList.Create; CombineSettingTrees(settingsToCombine, slRecords); @@ -397,25 +414,28 @@ procedure TPlugin.LoadTags(sSettingName: String; var sl: TStringList; procedure TPlugin.GetSettingTag; var - regex: TRegEx; + regex: TRegex; match: TMatch; sTagGroup: String; sl: TStringList; begin // get setting tags from description - regex := TRegEx.Create('{{([a-zA-Z]{1,10}:){0,1}([^}]*)}}'); - match := regex.Match(description.Text); + regex := TRegex.Create('{{([a-zA-Z]{1,10}:){0,1}([^}]*)}}'); + match := regex.match(description.Text); sl := TStringList.Create; // set to skip setting if no tag is found - if not match.Success then begin - Logger.Write('PLUGIN', 'Tags', 'No tags found for '+filename); + if not match.Success then + begin + Logger.Write('PLUGIN', 'Tags', 'No tags found for ' + filename); setting := 'Skip'; smashSetting := TSettingHelpers.SettingByName(setting); end // else parse settings from tag - else begin - Logger.Write('PLUGIN', 'Tags', 'Found tag '+match.Value+' for '+filename); + else + begin + Logger.Write('PLUGIN', 'Tags', 'Found tag ' + match.Value + ' for ' + + filename); ExtractTags(match, sl, sTagGroup); LoadTags(match.Groups.Item[2].Value, sl, sTagGroup); end; @@ -451,7 +471,7 @@ procedure TPlugin.Save; SavedPluginPaths.Add(dataPath + filename); except on x: Exception do - Tracker.Write('Failed to save: '+x.Message); + Tracker.Write('Failed to save: ' + x.Message); end; TryToFree(FileStream); end; @@ -480,9 +500,8 @@ destructor TPatch.Destroy; inherited; end; - { Produces a dump of the patch. } -function TPatch.Dump: ISuperObject; +function TPatch.dump: ISuperObject; var obj: ISuperObject; i: integer; @@ -490,28 +509,28 @@ function TPatch.Dump: ISuperObject; obj := SO; // normal attributes - obj.S['name'] := name; - obj.S['filename'] := filename; - obj.S['dateBuilt'] := DateTimeToStr(dateBuilt); + obj.s['name'] := name; + obj.s['filename'] := filename; + obj.s['dateBuilt'] := DateTimeToStr(dateBuilt); // plugins, pluginHashes, pluginSettings, masters obj.O['plugins'] := SA([]); for i := 0 to Pred(plugins.Count) do - obj.A['plugins'].S[i] := plugins[i]; + obj.A['plugins'].s[i] := plugins[i]; obj.O['pluginHashes'] := SA([]); for i := 0 to Pred(hashes.Count) do - obj.A['pluginHashes'].S[i] := hashes[i]; + obj.A['pluginHashes'].s[i] := hashes[i]; obj.O['pluginSettings'] := SA([]); for i := 0 to Pred(smashSettings.Count) do - obj.A['pluginSettings'].S[i] := smashSettings[i]; + obj.A['pluginSettings'].s[i] := smashSettings[i]; obj.O['masters'] := SA([]); for i := 0 to Pred(masters.Count) do - obj.A['masters'].S[i] := masters[i]; + obj.A['masters'].s[i] := masters[i]; // files, log, ignored dependencies obj.O['fails'] := SA([]); for i := 0 to Pred(fails.Count) do - obj.A['fails'].S[i] := fails[i]; + obj.A['fails'].s[i] := fails[i]; Result := obj; end; @@ -519,44 +538,46 @@ function TPatch.Dump: ISuperObject; { Loads a dump of a patch. } procedure TPatch.LoadDump(obj: ISuperObject); var - item: ISuperObject; + Item: ISuperObject; begin // load object attributes - name := obj.AsObject.S['name']; - filename := obj.AsObject.S['filename']; + name := obj.AsObject.s['name']; + filename := obj.AsObject.s['filename']; // try loading dateBuilt and parsing to DateTime try - dateBuilt := StrToDateTime(obj.AsObject.S['dateBuilt']); - except on Exception do - dateBuilt := 0; // on exception set to never built + dateBuilt := StrToDateTime(obj.AsObject.s['dateBuilt']); + except + on Exception do + dateBuilt := 0; // on exception set to never built end; // load array attributes - for item in obj['plugins'] do - plugins.Add(item.AsString); - for item in obj['pluginHashes'] do - hashes.Add(item.AsString); + for Item in obj['plugins'] do + plugins.Add(Item.AsString); + for Item in obj['pluginHashes'] do + hashes.Add(Item.AsString); try - for item in obj['pluginSettings'] do - smashSettings.Add(item.AsString); + for Item in obj['pluginSettings'] do + smashSettings.Add(Item.AsString); except on x: Exception do // nothing end; - for item in obj['masters'] do - masters.Add(item.AsString); - for item in obj['fails'] do - fails.Add(item.AsString); + for Item in obj['masters'] do + masters.Add(Item.AsString); + for Item in obj['fails'] do + fails.Add(Item.AsString); end; function TPatch.GetTimeCost: integer; var - i: Integer; + i: integer; plugin: TPlugin; begin Result := 10000; - for i := 0 to Pred(plugins.Count) do begin + for i := 0 to Pred(plugins.Count) do + begin plugin := PluginByFilename(plugins[i]); if Assigned(plugin) then Inc(Result, plugin._File.RecordCount); @@ -572,28 +593,37 @@ function TPatch.PluginsModified: boolean; begin Result := false; // true if number of hashes not equal to number of plugins - if (plugins.Count <> hashes.Count) - or (plugins.Count <> smashSettings.Count) then begin + if (plugins.Count <> hashes.Count) or (plugins.Count <> smashSettings.Count) + then + begin Logger.Write('PATCH', 'Status', name + ' -> Plugin count changed'); Result := true; exit; end; // true if any plugin hash doesn't match - for i := 0 to Pred(plugins.count) do begin + for i := 0 to Pred(plugins.Count) do + begin plugin := PluginByFilename(plugins[i]); - if Assigned(plugin) then begin - if plugin.hash <> hashes[i] then begin - Logger.Write('PATCH', 'Status', name + ' -> '+plugin.filename + ' hash changed.'); + if Assigned(plugin) then + begin + if plugin.hash <> hashes[i] then + begin + Logger.Write('PATCH', 'Status', name + ' -> ' + plugin.filename + + ' hash changed.'); Result := true; end; end; end; // true if any plugin setting doesn't match - for i := 0 to Pred(plugins.count) do begin + for i := 0 to Pred(plugins.Count) do + begin plugin := PluginByFilename(plugins[i]); - if Assigned(plugin) then begin - if plugin.setting <> smashSettings[i] then begin - Logger.Write('PATCH', 'Status', name + ' -> '+plugin.filename + ' smash setting changed.'); + if Assigned(plugin) then + begin + if plugin.setting <> smashSettings[i] then + begin + Logger.Write('PATCH', 'Status', name + ' -> ' + plugin.filename + + ' smash setting changed.'); Result := true; end; end; @@ -615,21 +645,24 @@ procedure TPatch.UpdateDataPath; procedure TPatch.GetStatus; var - i: Integer; + i: integer; plugin: TPlugin; begin Logger.Write('PATCH', 'Status', name + ' -> Getting status'); status := psUnknown; // don't patch if there aren't two or more plugins to patch - if (plugins.Count < 2) then begin - Logger.Write('PATCH', 'Status', name + ' -> Need two or more plugins to patch'); + if (plugins.Count < 2) then + begin + Logger.Write('PATCH', 'Status', + name + ' -> Need two or more plugins to patch'); status := psNoPlugins; exit; end; // don't patch if mod destination directory is blank - if (settings.patchDirectory = '') then begin + if (settings.patchDirectory = '') then + begin Logger.Write('PATCH', 'Status', name + ' -> Patch directory blank'); status := psDirInvalid; exit; @@ -639,26 +672,32 @@ procedure TPatch.GetStatus; UpdateDataPath; // loop through plugins - for i := 0 to Pred(plugins.Count) do begin + for i := 0 to Pred(plugins.Count) do + begin plugin := PluginByFilename(plugins[i]); // see if plugin is loaded - if not Assigned(plugin) then begin - Logger.Write('PATCH', 'Status', name + ' -> Plugin '+plugins[i]+' is missing'); - if status = psUnknown then status := psUnloaded; + if not Assigned(plugin) then + begin + Logger.Write('PATCH', 'Status', name + ' -> Plugin ' + plugins[i] + + ' is missing'); + if status = psUnknown then + status := psUnloaded; continue; end; end; // check plugins were modified or files were deleted before // giving patch the up to date status - if (not PluginsModified) and FilesExist and (status = psUnknown) then begin + if (not PluginsModified) and FilesExist and (status = psUnknown) then + begin Logger.Write('PATCH', 'Status', name + ' -> Up to date'); status := psUpToDate; end; // status green, ready to go - if status = psUnknown then begin + if status = psUnknown then + begin Logger.Write('PATCH', 'Status', name + ' -> Ready to be patchd'); if dateBuilt = 0 then status := psBuildReady @@ -675,11 +714,12 @@ function TPatch.GetStatusColor: integer; // Update the hashes list for the plugins in the patch procedure TPatch.UpdateHashes; var - i: Integer; + i: integer; aPlugin: TPlugin; begin hashes.Clear; - for i := 0 to Pred(plugins.Count) do begin + for i := 0 to Pred(plugins.Count) do + begin aPlugin := PluginByFilename(plugins[i]); if Assigned(aPlugin) then hashes.Add(aPlugin.hash); @@ -689,11 +729,12 @@ procedure TPatch.UpdateHashes; // Update the settings list for the plugins in the patch procedure TPatch.UpdateSettings; var - i: Integer; + i: integer; aPlugin: TPlugin; begin smashSettings.Clear; - for i := 0 to Pred(plugins.Count) do begin + for i := 0 to Pred(plugins.Count) do + begin aPlugin := PluginByFilename(plugins[i]); if Assigned(aPlugin) then smashSettings.Add(aPlugin.setting); @@ -719,7 +760,7 @@ procedure TPatch.SortPlugins; procedure TPatch.Remove(plugin: TPlugin); var - index: Integer; + index: integer; begin // clear plugin's patch property, if it's the name of this patch if plugin.patch = name then @@ -732,7 +773,7 @@ procedure TPatch.Remove(plugin: TPlugin); procedure TPatch.Remove(pluginFilename: string); var - index: Integer; + index: integer; begin index := plugins.IndexOf(pluginFilename); // remove plugin from patch, if present @@ -749,9 +790,11 @@ class function TSettingHelpers.SettingByName(name: string): TSmashSetting; aSetting: TSmashSetting; begin Result := nil; - for i := 0 to Pred(SmashSettings.Count) do begin - aSetting := TSmashSetting(SmashSettings[i]); - if aSetting.name = name then begin + for i := 0 to Pred(smashSettings.Count) do + begin + aSetting := TSmashSetting(smashSettings[i]); + if aSetting.name = name then + begin Result := aSetting; exit; end; @@ -765,9 +808,11 @@ class function TSettingHelpers.SettingByHash(hash: string): TSmashSetting; aSetting: TSmashSetting; begin Result := nil; - for i := 0 to Pred(SmashSettings.Count) do begin - aSetting := TSmashSetting(SmashSettings[i]); - if aSetting.MatchesHash(hash) then begin + for i := 0 to Pred(smashSettings.Count) do + begin + aSetting := TSmashSetting(smashSettings[i]); + if aSetting.MatchesHash(hash) then + begin Result := aSetting; exit; end; @@ -784,7 +829,8 @@ class function TSettingHelpers.GetSmashSetting(setting: string): TSmashSetting; Result := nil; // parse setting name and hash - if Pos('|', setting) > 0 then begin + if Pos('|', setting) > 0 then + begin sl := TStringList.Create; try sl.Delimiter := '|'; @@ -792,7 +838,8 @@ class function TSettingHelpers.GetSmashSetting(setting: string): TSmashSetting; sl.DelimitedText := setting; // if we have a setting name, use it to get a smash setting - if Length(sl[0]) > 0 then begin + if Length(sl[0]) > 0 then + begin smashSetting := SettingByName(sl[0]); // and return it if the hash matches if Assigned(smashSetting) and smashSetting.MatchesHash(sl[1]) then @@ -814,13 +861,15 @@ class function TSettingHelpers.GetSmashSetting(setting: string): TSmashSetting; class function TPatchHelpers.GetPatchForPlugin(filename: string): string; var - i: Integer; + i: integer; patch: TPatch; begin Result := ' '; - for i := 0 to Pred(PatchesList.Count) do begin + for i := 0 to Pred(PatchesList.Count) do + begin patch := TPatch(PatchesList[i]); - if patch.plugins.IndexOf(filename) > -1 then begin + if patch.plugins.IndexOf(filename) > -1 then + begin Result := patch.name; break; end; @@ -829,13 +878,15 @@ class function TPatchHelpers.GetPatchForPlugin(filename: string): string; class procedure TPatchHelpers.AssignPatchesToPlugins; var - i, j: Integer; + i, j: integer; patch: TPatch; plugin: TPlugin; begin - for i := 0 to Pred(PatchesList.Count) do begin + for i := 0 to Pred(PatchesList.Count) do + begin patch := TPatch(PatchesList[i]); - for j := 0 to Pred(patch.plugins.Count) do begin + for j := 0 to Pred(patch.plugins.Count) do + begin plugin := PluginByFilename(patch.plugins[j]); if Assigned(plugin) then plugin.patch := patch.name; @@ -844,32 +895,37 @@ class procedure TPatchHelpers.AssignPatchesToPlugins; end; { Gets a patch matching the given name. } -class function TPatchHelpers.PatchByName(var patches: TList; name: string): TPatch; +class function TPatchHelpers.PatchByName(var patches: TList; + name: string): TPatch; var i: integer; patch: TPatch; begin Result := nil; - for i := 0 to Pred(patches.Count) do begin + for i := 0 to Pred(patches.Count) do + begin patch := TPatch(patches[i]); - if patch.name = name then begin + if patch.name = name then + begin Result := patch; exit; end; end; end; - { Gets a patch matching the given filename. } -class function TPatchHelpers.PatchByFilename(var patches: TList; filename: string): TPatch; +class function TPatchHelpers.PatchByFilename(var patches: TList; + filename: string): TPatch; var i: integer; patch: TPatch; begin Result := nil; - for i := 0 to Pred(patches.Count) do begin + for i := 0 to Pred(patches.Count) do + begin patch := TPatch(patches[i]); - if patch.filename = filename then begin + if patch.filename = filename then + begin Result := patch; exit; end; @@ -879,7 +935,7 @@ class function TPatchHelpers.PatchByFilename(var patches: TList; filename: strin { Create a new patch with non-conflicting name and filename } class function TPatchHelpers.CreateNewPatch(var patches: TList): TPatch; var - i: Integer; + i: integer; patch: TPatch; name: string; begin @@ -888,7 +944,8 @@ class function TPatchHelpers.CreateNewPatch(var patches: TList): TPatch; // deal with conflicting patch names i := 0; name := patch.name; - while Assigned(PatchByName(patches, name)) do begin + while Assigned(PatchByName(patches, name)) do + begin Inc(i); name := 'NewPatch' + IntToStr(i); end; @@ -897,7 +954,8 @@ class function TPatchHelpers.CreateNewPatch(var patches: TList): TPatch; // deal with conflicting patch filenames i := 0; name := patch.filename; - while Assigned(PatchByFilename(patches, name)) do begin + while Assigned(PatchByFilename(patches, name)) do + begin Inc(i); name := 'NewPatch' + IntToStr(i) + '.esp'; end; @@ -916,9 +974,9 @@ constructor TElementData.Create; self.linkFrom := ''; end; -constructor TElementData.Create(priority: Byte; process, preserveDeletions, - overrideDeletions, singleEntity, forceValue: Boolean; smashType: TSmashType; - linkTo, linkFrom: string); +constructor TElementData.Create(priority: byte; + process, preserveDeletions, overrideDeletions, singleEntity, + forceValue: boolean; smashType: TSmashType; linkTo, linkFrom: string); begin self.priority := priority; self.process := process; @@ -934,11 +992,12 @@ constructor TElementData.Create(priority: Byte; process, preserveDeletions, { TSmashSetting } function GetUniqueSettingName(base: string): string; var - i: Integer; + i: integer; begin Result := base; i := 1; - while Assigned(TSettingHelpers.SettingByName(Result)) do begin + while Assigned(TSettingHelpers.SettingByName(Result)) do + begin Inc(i); Result := base + IntToStr(i); end; @@ -962,7 +1021,8 @@ destructor TSmashSetting.Destroy; color := 0; description := ''; records := ''; - if Assigned(tree) then tree._Release; + if Assigned(tree) then + tree._Release; tree := nil; end; @@ -986,15 +1046,15 @@ function TSmashSetting.GetRecordDef(sig: string): ISuperObject; procedure TSmashSetting.LoadDump(dump: ISuperObject); begin - name := dump.S['name']; - color := dump.I['color']; - hash := dump.S['hash']; - description := dump.S['description']; - records := dump.S['records']; + name := dump.s['name']; + color := dump.i['color']; + hash := dump.s['hash']; + description := dump.s['description']; + records := dump.s['records']; tree := dump.O['tree']; end; -function TSmashSetting.Dump: ISuperObject; +function TSmashSetting.dump: ISuperObject; var obj: ISuperObject; begin @@ -1003,11 +1063,11 @@ function TSmashSetting.Dump: ISuperObject; // tree obj.O['tree'] := tree; // normal attributes - obj.S['records'] := records; - obj.S['description'] := description; - obj.I['color'] := color; - obj.S['hash'] := hash; - obj.S['name'] := name; + obj.s['records'] := records; + obj.s['description'] := description; + obj.i['color'] := color; + obj.s['hash'] := hash; + obj.s['name'] := name; Result := obj; end; @@ -1019,7 +1079,7 @@ procedure TSmashSetting.UpdateHash; procedure TSmashSetting.UpdateRecords; var - item: ISuperObject; + Item: ISuperObject; sl: TStringList; begin // prepare comma delimited stringlist @@ -1030,9 +1090,10 @@ procedure TSmashSetting.UpdateRecords; try // loop through records and add their signatures // to the stringlist if they are set to be processed - for item in tree['records'] do begin - if item.I['p'] = 1 then - sl.Add(Copy(item.S['n'], 1, 4)); + for Item in tree['records'] do + begin + if Item.i['p'] = 1 then + sl.Add(Copy(Item.s['n'], 1, 4)); end; // assign records the delimited signatures @@ -1048,18 +1109,18 @@ procedure TSmashSetting.Save; path: string; begin UpdateHash; - path := Format('%s\settings\%s\%s.json', - [PathList.Values['ProgramPath'], ProgramStatus.GameMode.gameName, name]); + path := Format('%s\settings\%s\%s.json', [PathList.Values['ProgramPath'], + ProgramStatus.GameMode.gameName, name]); ForceDirectories(ExtractFilePath(path)); - Dump.SaveTo(path); + dump.SaveTo(path); end; procedure TSmashSetting.Delete; var path: string; begin - path := Format('%s\settings\%s\%s.json', - [PathList.Values['ProgramPath'], ProgramStatus.GameMode.gameName, name]); + path := Format('%s\settings\%s\%s.json', [PathList.Values['ProgramPath'], + ProgramStatus.GameMode.gameName, name]); if FileExists(path) then DeleteToRecycleBin(path, false); end; @@ -1068,19 +1129,20 @@ procedure TSmashSetting.Rename(newName: string); var oldPath, newPath: string; begin - oldPath := Format('%s\settings\%s\%s.json', - [PathList.Values['ProgramPath'], ProgramStatus.GameMode.gameName, name]); - newPath := Format('%s\settings\%s\%s.json', - [PathList.Values['ProgramPath'], ProgramStatus.GameMode.gameName, newName]); - if FileExists(oldpath) then - RenameFile(oldpath, newpath); + oldPath := Format('%s\settings\%s\%s.json', [PathList.Values['ProgramPath'], + ProgramStatus.GameMode.gameName, name]); + newPath := Format('%s\settings\%s\%s.json', [PathList.Values['ProgramPath'], + ProgramStatus.GameMode.gameName, newName]); + if FileExists(oldPath) then + RenameFile(oldPath, newPath); name := newName; end; function TSmashSetting.MatchesHash(hash: string): boolean; begin // result is true if hash is blank - if hash = '' then begin + if hash = '' then + begin Result := true; exit; end; @@ -1092,12 +1154,13 @@ function TSmashSetting.MatchesHash(hash: string): boolean; function TSmashSetting.GetTags: String; var - index: Integer; + index: integer; begin if Pos('Combined setting:', description) = 1 then - Result := GetCombinedTags - // else handle a normal setting - else begin + Result := GetCombinedTags + // else handle a normal setting + else + begin index := Pos('.', name); if (index > 0) and (index < 11) then Result := Format('{{%s}}', [StringReplace(name, '.', ':', [])]) @@ -1128,7 +1191,7 @@ function TSmashSetting.GetCombinedTags: String; procedure SavePatches; var - i: Integer; + i: integer; patch: TPatch; json: ISuperObject; filename: string; @@ -1140,11 +1203,12 @@ procedure SavePatches; // loop through patches Tracker.Write(' '); Tracker.Write('Dumping patches to JSON'); - for i := 0 to Pred(PatchesList.Count) do begin + for i := 0 to Pred(PatchesList.Count) do + begin Tracker.UpdateProgress(1); patch := TPatch(PatchesList[i]); - Tracker.Write(' Dumping '+patch.name); - json.A['patches'].Add(patch.Dump); + Tracker.Write(' Dumping ' + patch.name); + json.A['patches'].Add(patch.dump); end; // save and finalize @@ -1175,14 +1239,16 @@ procedure LoadPatches; obj := SO(PChar(sl.Text)); // loop through patches - for patchItem in obj['patches'] do begin + for patchItem in obj['patches'] do + begin patch := TPatch.Create; try patch.LoadDump(patchItem); PatchesList.Add(patch); except - on x: Exception do begin - Logger.Write('LOAD', 'Patch', 'Failed to load patch '+patch.name); + on x: Exception do + begin + Logger.Write('LOAD', 'Patch', 'Failed to load patch ' + patch.name); Logger.Write('LOAD', 'Patch', x.Message); end; end; @@ -1193,16 +1259,18 @@ procedure LoadPatches; sl.Free; end; -function IndexOfDump(a: TSuperArray; plugin: TPlugin): Integer; +function IndexOfDump(A: TSuperArray; plugin: TPlugin): integer; var - i: Integer; + i: integer; obj: ISuperObject; begin Result := -1; - for i := 0 to Pred(a.Length) do begin - obj := a.O[i]; - if (obj.S['filename'] = plugin.filename) - and (obj.S['hash'] = plugin.hash) then begin + for i := 0 to Pred(A.Length) do + begin + obj := A.O[i]; + if (obj.s['filename'] = plugin.filename) and (obj.s['hash'] = plugin.hash) + then + begin Result := i; exit; end; @@ -1212,14 +1280,15 @@ function IndexOfDump(a: TSuperArray; plugin: TPlugin): Integer; procedure SaveSmashSettings; var aSetting: TSmashSetting; - i: Integer; + i: integer; begin Tracker.Write('Saving smash settings'); - for i := 0 to Pred(SmashSettings.Count) do begin - aSetting := TSmashSetting(SmashSettings[i]); + for i := 0 to Pred(smashSettings.Count) do + begin + aSetting := TSmashSetting(smashSettings[i]); if aSetting.bVirtual then continue; - Tracker.Write(' Saving '+aSetting.name); + Tracker.Write(' Saving ' + aSetting.name); aSetting.Save; end; Tracker.Write(' '); @@ -1228,13 +1297,13 @@ procedure SaveSmashSettings; procedure CreateSkipSetting; var skipSetting: TSmashSetting; - index: Integer; + index: integer; begin - index := SmashSettings.Add(TSmashSetting.Create); - skipSetting := SmashSettings[index]; + index := smashSettings.Add(TSmashSetting.Create); + skipSetting := smashSettings[index]; skipSetting.name := 'Skip'; skipSetting.color := clGray; - skipSetting.description := 'Special setting. Any plugin with this setting '+ + skipSetting.description := 'Special setting. Any plugin with this setting ' + 'will be excluded from patch creation.'; skipSetting.tree := SO(); skipSetting.tree.O['records'] := SA([]); @@ -1248,7 +1317,8 @@ procedure LoadSmashSettings; aSetting: TSmashSetting; path: String; begin - path := Format('%ssettings\%s\', [PathList.Values['ProgramPath'], ProgramStatus.GameMode.gameName]); + path := Format('%ssettings\%s\', [PathList.Values['ProgramPath'], + ProgramStatus.GameMode.gameName]); ForceDirectories(path); // load setting files from settings path @@ -1257,21 +1327,25 @@ procedure LoadSmashSettings; repeat sl := TStringList.Create; try - sl.LoadFromFile(path + info.Name); + sl.LoadFromFile(path + info.name); aSetting := TSmashSetting.Create; obj := SO(PChar(sl.Text)); - if Assigned(obj) then begin + if Assigned(obj) then + begin aSetting.LoadDump(obj); if aSetting.name <> '' then - SmashSettings.Add(aSetting); + smashSettings.Add(aSetting); end; sl.Free; obj := nil; except - on x: Exception do begin - if Assigned(sl) then sl.Free; + on x: Exception do + begin + if Assigned(sl) then + sl.Free; obj := nil; - Logger.Write('ERROR', 'Load', 'Failed to load smash setting '+info.Name); + Logger.Write('ERROR', 'Load', 'Failed to load smash setting ' + + info.name); end; end; until FindNext(info) <> 0; @@ -1283,7 +1357,7 @@ procedure LoadSmashSettings; procedure SavePluginInfo; var - i, index: Integer; + i, index: integer; plugin: TPlugin; obj: ISuperObject; filename: string; @@ -1291,14 +1365,16 @@ procedure SavePluginInfo; begin // don't load file if it doesn't exist filename := PathList.Values['ProfilePath'] + 'PluginInfo.json'; - if FileExists(filename) then begin + if FileExists(filename) then + begin // load file text into SuperObject to parse it sl := TStringList.Create; sl.LoadFromFile(filename); obj := SO(PChar(sl.Text)); sl.Free; end - else begin + else + begin // initialize new json object obj := SO; obj.O['plugins'] := SA([]); @@ -1306,31 +1382,33 @@ procedure SavePluginInfo; // loop through plugins Tracker.Write('Dumping plugin errors to JSON'); - for i := 0 to Pred(PluginsList.Count) do try - plugin := PluginsList[i]; - Tracker.UpdateProgress(1); - if not Assigned(plugin.smashSetting) then - continue; - index := IndexOfDump(obj.A['plugins'], plugin); - if plugin.smashSetting.bVirtual or (plugin.setting = 'Skip') then begin - if index <> -1 then - obj.A['plugins'].Delete(index); - continue; + for i := 0 to Pred(PluginsList.Count) do + try + plugin := PluginsList[i]; + Tracker.UpdateProgress(1); + if not Assigned(plugin.smashSetting) then + continue; + index := IndexOfDump(obj.A['plugins'], plugin); + if plugin.smashSetting.bVirtual or (plugin.setting = 'Skip') then + begin + if index <> -1 then + obj.A['plugins'].Delete(index); + continue; + end; + Tracker.Write(' Dumping ' + plugin.filename); + if index = -1 then + obj.A['plugins'].Add(plugin.InfoDump) + else + obj.A['plugins'].O[index] := plugin.InfoDump; + except + on x: Exception do + Tracker.Write(' Exception ' + x.Message); end; - Tracker.Write(' Dumping '+plugin.filename); - if index = -1 then - obj.A['plugins'].Add(plugin.InfoDump) - else - obj.A['plugins'].O[index] := plugin.InfoDump; - except - on x: Exception do - Tracker.Write(' Exception '+x.Message); - end; // save and finalize Tracker.Write(' '); filename := PathList.Values['ProfilePath'] + 'PluginInfo.json'; - Tracker.Write('Saving to '+filename); + Tracker.Write('Saving to ' + filename); Tracker.UpdateProgress(1); obj.SaveTo(filename); obj := nil; @@ -1354,10 +1432,11 @@ procedure LoadPluginInfo; // loop through patches filename := ''; - for pluginItem in obj['plugins'] do begin - filename := pluginItem.AsObject.S['filename']; - hash := pluginItem.AsObject.S['hash']; - plugin := PluginByFileName(filename); + for pluginItem in obj['plugins'] do + begin + filename := pluginItem.AsObject.s['filename']; + hash := pluginItem.AsObject.s['hash']; + plugin := PluginByFilename(filename); if not Assigned(plugin) then continue; if (plugin.hash = hash) and (plugin.filename = filename) then @@ -1371,11 +1450,12 @@ procedure LoadPluginInfo; procedure LoadSettingTags; var - i: Integer; + i: integer; plugin: TPlugin; begin // loop through loaded plugins - for i := 0 to Pred(PluginsList.Count) do begin + for i := 0 to Pred(PluginsList.Count) do + begin plugin := TPlugin(PluginsList[i]); if plugin.setting <> '' then continue; @@ -1391,34 +1471,37 @@ procedure HandleCanceled(msg: string); procedure RenameSavedPlugins; var - i: Integer; + i: integer; oldFileName, newFileName, bakFileName: string; begin // tracker message Tracker.Write(' '); Tracker.Write('Renaming saved plugins'); - for i := Pred(SavedPluginPaths.Count) downto 0 do try - oldFileName := SavedPluginPaths[i]; - newFileName := oldFileName + '.save'; - bakFileName := oldFileName + '.bak'; - Tracker.Write(Format(' Renaming %s to %s', [ExtractFileName(newFileName), ExtractFileName(oldFileName)])); - if FileExists(bakFileName) then - DeleteFile(bakFileName); - RenameFile(oldFileName, bakFileName); - RenameFile(newFileName, oldFileName); - except - on x: Exception do - Tracker.Write(' Failed to rename ' + newFileName); - end; + for i := Pred(SavedPluginPaths.Count) downto 0 do + try + oldFileName := SavedPluginPaths[i]; + newFileName := oldFileName + '.save'; + bakFileName := oldFileName + '.bak'; + Tracker.Write(Format(' Renaming %s to %s', + [ExtractFileName(newFileName), ExtractFileName(oldFileName)])); + if FileExists(bakFileName) then + DeleteFile(bakFileName); + RenameFile(oldFileName, bakFileName); + RenameFile(newFileName, oldFileName); + except + on x: Exception do + Tracker.Write(' Failed to rename ' + newFileName); + end; end; procedure UpdatePluginData; var - i: Integer; + i: integer; plugin: TPlugin; begin - for i := 0 to Pred(PluginsList.Count) do begin + for i := 0 to Pred(PluginsList.Count) do + begin plugin := TPlugin(PluginsList[i]); plugin.UpdateData; end; @@ -1429,14 +1512,15 @@ function CreateNewPlugin(sFilename: string): TPlugin; Result := TPlugin(TPluginHelpers.CreateNewBasePlugin(PluginsList, sFilename)); end; -function PluginLoadOrder(sFilename: string): Integer; +function PluginLoadOrder(sFilename: string): integer; begin Result := TPluginHelpers.BasePluginLoadOrder(PluginsList, sFilename); end; function PluginByFilename(sFilename: string): TPlugin; begin - Result := TPlugin(TPluginHelpers.BasePluginByFilename(PluginsList, sFilename)); + Result := TPlugin(TPluginHelpers.BasePluginByFilename(PluginsList, + sFilename)); end; function DefDisplayName(var def: TwbRecordDefEntry): String; @@ -1444,39 +1528,43 @@ function DefDisplayName(var def: TwbRecordDefEntry): String; sig: String; begin sig := String(def.rdeSignature); - Result := def.rdeDef.Name; + Result := def.rdeDef.name; if (Result <> sig) then Result := sig + ' - ' + Result; end; procedure PopulateAddList(var AddItem: TMenuItem; Event: TNotifyEvent); var - i: Integer; + i: integer; recordDef: TwbRecordDefEntry; - item: TMenuItem; + Item: TMenuItem; begin - for i := Low(wbRecordDefs) to High(wbRecordDefs) do begin + for i := Low(wbRecordDefs) to High(wbRecordDefs) do + begin recordDef := wbRecordDefs[i]; - item := TMenuItem.Create(AddItem); - item.Caption := DefDisplayName(recordDef); - item.OnClick := Event; - AddItem.Add(item); + Item := TMenuItem.Create(AddItem); + Item.Caption := DefDisplayName(recordDef); + Item.OnClick := Event; + AddItem.Add(Item); end; end; procedure AddAllRecords(currentSetting: TSmashSetting; var tv: TTreeView); var - i: Integer; + i: integer; recordDef: TwbRecordDefEntry; groupName: String; recObj: ISuperObject; begin - for i := Low(wbRecordDefs) to High(wbRecordDefs) do begin + for i := Low(wbRecordDefs) to High(wbRecordDefs) do + begin recordDef := wbRecordDefs[i]; groupName := DefDisplayName(recordDef); recObj := GetRecordObj(currentSetting.tree, groupName); - if Assigned(recObj) then continue; - if not BuildRecordDef(groupName, recObj) then continue; + if Assigned(recObj) then + continue; + if not BuildRecordDef(groupName, recObj) then + continue; currentSetting.tree.A['records'].Add(recObj); LoadElement(tv, tv.Items[0], recObj, false); end; @@ -1484,12 +1572,14 @@ procedure AddAllRecords(currentSetting: TSmashSetting; var tv: TTreeView); procedure RemoveSettingFromPlugins(aSetting: TSmashSetting); var - i: Integer; + i: integer; plugin: TPlugin; begin - for i := 0 to Pred(PluginsList.Count) do begin + for i := 0 to Pred(PluginsList.Count) do + begin plugin := TPlugin(PluginsList[i]); - if plugin.setting = aSetting.name then begin + if plugin.setting = aSetting.name then + begin plugin.setting := 'Skip'; plugin.smashSetting := TSettingHelpers.SettingByName('Skip'); end; @@ -1498,30 +1588,33 @@ procedure RemoveSettingFromPlugins(aSetting: TSmashSetting); function GetTagString(var slTags: TStringList): String; var - i, index: Integer; + i, index: integer; tag, sTagGroup, sGroup: String; begin - for i := 0 to Pred(slTags.Count) do begin + for i := 0 to Pred(slTags.Count) do + begin tag := slTags[i]; index := Pos('.', tag); sTagGroup := Copy(tag, 1, index - 1); - if (index > 0) and (index < 11) and (SameText(sGroup, sTagGroup) or (i = 0)) then + if (index > 0) and (index < 11) and (SameText(sGroup, sTagGroup) or (i = 0)) + then sGroup := sTagGroup else sGroup := ''; end; // generate the string of tags - if sGroup <> '' then begin - Result := StringReplace(slTags.CommaText, sGroup + '.', '', [rfReplaceAll, rfIgnoreCase]); + if sGroup <> '' then + begin + Result := StringReplace(slTags.CommaText, sGroup + '.', '', + [rfReplaceAll, rfIgnoreCase]); Result := Format('{{%s:%s}}', [UpperCase(sGroup), Result]) end else Result := Format('{{%s}}', [slTags.CommaText]); end; - -{******************************************************************************} +{ ****************************************************************************** } { Tree Helper Functions - BuildTreeFromPlugins - SetChildren @@ -1529,15 +1622,15 @@ function GetTagString(var slTags: TStringList): String; - CheckBoxManager - LoadElement } -{******************************************************************************} +{ ****************************************************************************** } procedure BuildTreeFromPlugins(var tv: TTreeView; var sl: TStringList; tree: ISuperObject); var - i, j: Integer; + i, j: integer; plugin: TPlugin; rec: IwbMainRecord; - RecordDef: PwbMainRecordDef; + recordDef: PwbMainRecordDef; def: TwbRecordDefEntry; sName, sSignature: string; slRecordSignatures: TStringList; @@ -1548,15 +1641,17 @@ procedure BuildTreeFromPlugins(var tv: TTreeView; var sl: TStringList; slRecordSignatures.Duplicates := dupIgnore; try // loop through plugins - for i := 0 to Pred(sl.Count) do begin - plugin := PluginByFileName(sl[i]); + for i := 0 to Pred(sl.Count) do + begin + plugin := PluginByFilename(sl[i]); if not Assigned(plugin) then continue; if not plugin._File.IsEditable then continue; // loop through records - for j := 0 to Pred(plugin._File.RecordCount) do begin - rec := plugin._File.Records[j]; + for j := 0 to Pred(plugin._File.RecordCount) do + begin + rec := plugin._File.records[j]; // skip non-override records if rec.IsMaster then continue; @@ -1567,15 +1662,16 @@ procedure BuildTreeFromPlugins(var tv: TTreeView; var sl: TStringList; continue; slRecordSignatures.Add(sSignature); // skip records that aren't defined - if not wbFindRecordDef(AnsiString(sSignature), RecordDef) then + if not wbFindRecordDef(AnsiString(sSignature), recordDef) then continue; // get record def object if it exists - sName := sSignature + ' - ' + RecordDef.Name; + sName := sSignature + ' - ' + recordDef.name; recObj := GetRecordObj(tree, sName); // build record def if it doesn't exist - if not Assigned(recObj) then begin + if not Assigned(recObj) then + begin def := GetRecordDef(rec.Signature); if not BuildRecordDef(sName, def.rdeDef, recObj) then continue; @@ -1595,18 +1691,20 @@ procedure BuildTreeFromPlugins(var tv: TTreeView; var sl: TStringList; Sets the StateIndex attribute of all the children of @node to @state. Uses recursion. } -procedure SetChildren(node: TTreeNode; state: Integer); +procedure SetChildren(node: TTreeNode; state: integer); var tmp: TTreeNode; e: TElementData; begin // exit if we don't have a node to work with - if not Assigned(node) then exit; + if not Assigned(node) then + exit; // loop through children setting StateIndex to state // if child has children, recurse into that child tmp := node.getFirstChild; - while Assigned(tmp) do begin + while Assigned(tmp) do + begin tmp.StateIndex := state; e := TElementData(tmp.Data); e.process := state <> csUnChecked; @@ -1626,21 +1724,26 @@ procedure SetChildren(node: TTreeNode; state: Integer); procedure UpdateParent(node: TTreeNode); var tmp: TTreeNode; - state: Integer; + state: integer; e: TElementData; begin // exit if we don't have a node to work with // or if not is set to be treated as a single entity - if not Assigned(node) then exit; + if not Assigned(node) then + exit; e := TElementData(node.Data); - if not Assigned(e) then exit; - if e.singleEntity then exit; + if not Assigned(e) then + exit; + if e.singleEntity then + exit; // parent state is checked if all siblings are checked state := csChecked; tmp := node.getFirstChild; - while Assigned(tmp) do begin - if tmp.StateIndex <> csChecked then begin + while Assigned(tmp) do + begin + if tmp.StateIndex <> csChecked then + begin state := csPartiallyChecked; break; end; @@ -1648,11 +1751,14 @@ procedure UpdateParent(node: TTreeNode); end; // parent state is unchecked if all siblings are unchecked - if state = csPartiallyChecked then begin + if state = csPartiallyChecked then + begin state := csUnChecked; tmp := node.getFirstChild; - while Assigned(tmp) do begin - if tmp.StateIndex <> csUnChecked then begin + while Assigned(tmp) do + begin + if tmp.StateIndex <> csUnChecked then + begin state := csPartiallyChecked; break; end; @@ -1678,12 +1784,14 @@ procedure CheckBoxManager(node: TTreeNode); e: TElementData; begin // exit if we don't have a node to work with - if not Assigned(node) then exit; + if not Assigned(node) then + exit; // if unchecked or partially checked, set to checked and // set all children to checked, update parents - if (node.StateIndex = csUnChecked) - or (node.StateIndex = csPartiallyChecked) then begin + if (node.StateIndex = csUnChecked) or (node.StateIndex = csPartiallyChecked) + then + begin node.StateIndex := csChecked; e := TElementData(node.Data); e.process := true; @@ -1693,7 +1801,8 @@ procedure CheckBoxManager(node: TTreeNode); end // if checked, set to unchecked and set all children to // unchecked, update parents - else if node.StateIndex = csChecked then begin + else if node.StateIndex = csChecked then + begin node.StateIndex := csUnChecked; e := TElementData(node.Data); e.process := false; @@ -1706,11 +1815,11 @@ procedure CheckBoxManager(node: TTreeNode); procedure LoadElement(var tv: TTreeView; node: TTreeNode; obj: ISuperObject; bWithinSingle: boolean); var - item: ISuperObject; + Item: ISuperObject; child, nextChild: TTreeNode; bProcess, bPreserveDeletions, bOverrideDeletions, bIsSingle, - bForceValue: boolean; - priority: Integer; + bForceValue: boolean; + priority: integer; oSmashType: TSmashType; sName, sLinkTo, sLinkFrom: string; e: TElementData; @@ -1719,25 +1828,27 @@ procedure LoadElement(var tv: TTreeView; node: TTreeNode; obj: ISuperObject; exit; // load data from json - sName := obj.S['n']; - priority := obj.I['r']; - bProcess := obj.I['p'] = 1; - bPreserveDeletions := obj.I['d'] = 1; - bOverrideDeletions := obj.I['o'] = 1; - bIsSingle := obj.I['s'] = 1; - bForceValue := obj.I['f'] = 1; + sName := obj.s['n']; + priority := obj.i['r']; + bProcess := obj.i['p'] = 1; + bPreserveDeletions := obj.i['d'] = 1; + bOverrideDeletions := obj.i['o'] = 1; + bIsSingle := obj.i['s'] = 1; + bForceValue := obj.i['f'] = 1; bWithinSingle := bWithinSingle or bIsSingle; - oSmashType := TSmashType(obj.I['t']); - sLinkTo := obj.S['lt']; - sLinkFrom := obj.S['lf']; + oSmashType := TSmashType(obj.i['t']); + sLinkTo := obj.s['lt']; + sLinkFrom := obj.s['lf']; // create child e := TElementData.Create(priority, bProcess, bPreserveDeletions, bOverrideDeletions, bIsSingle, bForceValue, oSmashType, sLinkTo, sLinkFrom); // nodes insert in sorted order for record nodes - if (node.Level = 0) and node.hasChildren then begin + if (node.Level = 0) and node.HasChildren then + begin child := node.getFirstChild; - while (AnsiCompareText(child.Text, sName) < 0) do begin + while (AnsiCompareText(child.Text, sName) < 0) do + begin nextChild := child.getNextSibling; if not Assigned(nextChild) then break; @@ -1758,20 +1869,21 @@ procedure LoadElement(var tv: TTreeView; node: TTreeNode; obj: ISuperObject; child.StateIndex := csUnChecked; // recurse into children - if Assigned(obj.O['c']) then try - for item in obj['c'] do - LoadElement(tv, child, item, bWithinSingle); - if not bWithinSingle then - UpdateParent(child); - except - on x : Exception do - // nothing - end; + if Assigned(obj.O['c']) then + try + for Item in obj['c'] do + LoadElement(tv, child, Item, bWithinSingle); + if not bWithinSingle then + UpdateParent(child); + except + on x: Exception do + // nothing + end; end; procedure LoadTree(var tv: TTreeView; aSetting: TSmashSetting); var - obj, item: ISuperObject; + obj, Item: ISuperObject; rootNode: TTreeNode; e: TElementData; begin @@ -1783,18 +1895,20 @@ procedure LoadTree(var tv: TTreeView; aSetting: TSmashSetting); if not Assigned(obj['records']) then exit; - for item in obj['records'] do - LoadElement(tv, rootNode, item, false); + for Item in obj['records'] do + LoadElement(tv, rootNode, Item, false); end; function GetRecordObject(tree: ISuperObject; sig: string): ISuperObject; var - item: ISuperObject; + Item: ISuperObject; begin Result := nil; - for item in tree['records'] do begin - if Copy(item.S['n'], 1, 4) = sig then begin - Result := item; + for Item in tree['records'] do + begin + if Copy(Item.s['n'], 1, 4) = sig then + begin + Result := Item; break; end; end; @@ -1805,8 +1919,10 @@ function GetChild(obj: ISuperObject; name: string): ISuperObject; child: ISuperObject; begin Result := nil; - for child in obj['c'] do begin - if child.S['n'] = name then begin + for child in obj['c'] do + begin + if child.s['n'] = name then + begin Result := child; exit; end; @@ -1817,33 +1933,36 @@ procedure MergeChildren(srcObj, dstObj: ISuperObject); var srcChild, dstChild: ISuperObject; begin - for srcChild in srcObj['c'] do begin - dstChild := GetChild(dstObj, srcChild.S['n']); + for srcChild in srcObj['c'] do + begin + dstChild := GetChild(dstObj, srcChild.s['n']); if not Assigned(dstChild) then dstObj.A['c'].Add(srcChild.Clone) - else begin + else + begin // merge force value - if srcChild.I['f'] = 1 then - dstChild.I['f'] := 1; + if srcChild.i['f'] = 1 then + dstChild.i['f'] := 1; // merge treat as single - if srcChild.I['s'] = 1 then - dstChild.I['s'] := 1; + if srcChild.i['s'] = 1 then + dstChild.i['s'] := 1; // merge preserve deletions - if srcChild.I['d'] = 1 then - dstChild.I['d'] := 1; + if srcChild.i['d'] = 1 then + dstChild.i['d'] := 1; // merge override deletions - if srcChild.I['o'] = 1 then - dstChild.I['o'] := 1; + if srcChild.i['o'] = 1 then + dstChild.i['o'] := 1; // merge process - if srcChild.I['p'] = 1 then - dstChild.I['p'] := 1; + if srcChild.i['p'] = 1 then + dstChild.i['p'] := 1; // merge links - if srcChild.S['lt'] <> '' then - dstChild.S['lt'] := srcChild.S['lt']; - if srcChild.S['lf'] <> '' then - dstChild.S['lf'] := srcChild.S['lf']; + if srcChild.s['lt'] <> '' then + dstChild.s['lt'] := srcChild.s['lt']; + if srcChild.s['lf'] <> '' then + dstChild.s['lf'] := srcChild.s['lf']; // recurse into children if present - if Assigned(srcChild.A['c']) then begin + if Assigned(srcChild.A['c']) then + begin if Assigned(dstChild.A['c']) then MergeChildren(srcChild, dstChild) else @@ -1856,7 +1975,7 @@ procedure MergeChildren(srcObj, dstObj: ISuperObject); function CreateCombinedSetting(var sl: TStringList; name: string; bVirtual: boolean = false): TSmashSetting; var - i, index: Integer; + i, index: integer; newSetting, aSetting: TSmashSetting; recordObj, existingRecordObj: ISuperObject; begin @@ -1864,7 +1983,8 @@ function CreateCombinedSetting(var sl: TStringList; name: string; newSetting.tree := SO; newSetting.tree.O['records'] := SA([]); - for i := 0 to Pred(sl.Count) do begin + for i := 0 to Pred(sl.Count) do + begin aSetting := TSmashSetting(sl.Objects[i]); recordObj := GetRecordObject(aSetting.tree, sl[i]); existingRecordObj := GetRecordObject(newSetting.tree, sl[i]); @@ -1872,7 +1992,7 @@ function CreateCombinedSetting(var sl: TStringList; name: string; // merge the record objects if Assigned(existingRecordObj) then MergeChildren(recordObj, existingRecordObj) - // else just add it to the tree + // else just add it to the tree else newSetting.tree.A['records'].Add(recordObj.Clone); end; @@ -1884,34 +2004,40 @@ function CreateCombinedSetting(var sl: TStringList; name: string; newSetting.description := 'Combined setting:'#13#10 + name; index := Pos('.', name); if (index > 0) and (index < 11) then - newSetting.name := Format('%sCombined-%s', [Copy(name, 1, index), newSetting.hash]) + newSetting.name := Format('%sCombined-%s', + [Copy(name, 1, index), newSetting.hash]) else - newSetting.name := 'Combined-'+newSetting.hash; + newSetting.name := 'Combined-' + newSetting.hash; // add new setting to SmashSettings list aSetting := TSettingHelpers.SettingByName(newSetting.name); - if not Assigned(aSetting) then begin - SmashSettings.Add(newSetting); + if not Assigned(aSetting) then + begin + smashSettings.Add(newSetting); Result := newSetting; end - else begin + else + begin newSetting.Free; Result := aSetting; end; end; -function CombineSettingTrees(var lst: TList; var slSettings: TStringList): boolean; +function CombineSettingTrees(var lst: TList; + var slSettings: TStringList): boolean; var setting: TSmashSetting; sl: TStringList; - i, j: Integer; + i, j: integer; begin sl := TStringList.Create; Result := false; - for i := 0 to Pred(lst.Count) do begin + for i := 0 to Pred(lst.Count) do + begin setting := TSmashSetting(lst[i]); sl.CommaText := setting.records; - for j := 0 to Pred(sl.Count) do begin + for j := 0 to Pred(sl.Count) do + begin if slSettings.IndexOf(sl[j]) > -1 then Result := true; slSettings.AddObject(sl[j], TObject(setting)); @@ -1922,15 +2048,14 @@ function CombineSettingTrees(var lst: TList; var slSettings: TStringList): boole sl.Free; end; - -{******************************************************************************} +{ ****************************************************************************** } { Tag Helper Functions - ClearTags - GetMissingTags - ExtractTags - GetTags } -{******************************************************************************} +{ ****************************************************************************** } function ClearTags(sDescription: String): String; var @@ -1939,10 +2064,11 @@ function ClearTags(sDescription: String): String; begin // find tags regex := TRegex.Create('{{([^}]*)}}'); - match := regex.Match(sDescription); + match := regex.match(sDescription); // delete tags - while match.Success do begin + while match.Success do + begin sDescription := StringReplace(sDescription, match.Value, '', []); match := match.NextMatch; end; @@ -1953,11 +2079,12 @@ function ClearTags(sDescription: String): String; procedure GetMissingTags(var slPresent, slMissing: TStringList); var - i: Integer; + i: integer; aSetting: TSmashSetting; begin - for i := 0 to Pred(SmashSettings.Count) do begin - aSetting := TSmashSetting(SmashSettings[i]); + for i := 0 to Pred(smashSettings.Count) do + begin + aSetting := TSmashSetting(smashSettings[i]); if slPresent.IndexOf(aSetting.name) = -1 then slMissing.Add(aSetting.name); end; @@ -1966,7 +2093,7 @@ procedure GetMissingTags(var slPresent, slMissing: TStringList); procedure ExtractTags(var match: TMatch; var sl: TStringList; var sTagGroup: String); var - i: Integer; + i: integer; begin sTagGroup := ''; @@ -1981,7 +2108,8 @@ procedure ExtractTags(var match: TMatch; var sl: TStringList; // if tags are presented under a group, append the group name // and a . to the beginning of each setting name in the tag - if match.Groups.Item[1].Value <> '' then begin + if match.Groups.Item[1].Value <> '' then + begin sTagGroup := TitleCase(match.Groups.Item[1].Value); SetLength(sTagGroup, Length(sTagGroup) - 1); Logger.Write('PLUGIN', 'Tags', 'Parsing as ' + sTagGroup + ' tags'); @@ -1992,30 +2120,32 @@ procedure ExtractTags(var match: TMatch; var sl: TStringList; procedure ParseTags(description: string; var sl: TStringList); var - regex: TRegEx; + regex: TRegex; match: TMatch; sTagGroup: String; begin // get setting tags from description - regex := TRegEx.Create('{{([a-zA-Z]{1,10}:){0,1}([^}]*)}}'); - match := regex.Match(description); + regex := TRegex.Create('{{([a-zA-Z]{1,10}:){0,1}([^}]*)}}'); + match := regex.match(description); // if match found, put the tags into the stringlist - if match.success then + if match.Success then ExtractTags(match, sl, sTagGroup); end; initialization + begin PatchesList := TList.Create; - SmashSettings := TList.Create; + smashSettings := TList.Create; SavedPluginPaths := TStringList.Create; end; finalization + begin FreeList(PatchesList); - FreeList(SmashSettings); + FreeList(smashSettings); SavedPluginPaths.Free; end; diff --git a/frontend/msEditForm.dfm b/frontend/msEditForm.dfm old mode 100644 new mode 100755 index df71cc9..0854842 --- a/frontend/msEditForm.dfm +++ b/frontend/msEditForm.dfm @@ -28,6 +28,10 @@ object EditForm: TEditForm TabWidth = 60 object EditTabSheet: TTabSheet Caption = 'Edit' + ExplicitLeft = 0 + ExplicitTop = 0 + ExplicitWidth = 0 + ExplicitHeight = 0 object lblName: TLabel Left = 12 Top = 13 diff --git a/frontend/msEditForm.pas b/frontend/msEditForm.pas old mode 100644 new mode 100755 index ba77d20..9ba3afb --- a/frontend/msEditForm.pas +++ b/frontend/msEditForm.pas @@ -64,7 +64,8 @@ function TEditForm.NameValid: boolean; exit; // return false if patch with specified name already exists - for i := 0 to Pred(PatchesList.Count) do begin + for i := 0 to Pred(PatchesList.Count) do + begin aPatch := TPatch(PatchesList[i]); if (aPatch.name = edName.Text) and (aPatch <> patch) then exit; @@ -100,8 +101,9 @@ function TEditForm.ESPFilenameValid: boolean; plugin := PluginByFilename(edFilename.Text); loadOrder := PluginLoadOrder(edFilename.Text); highLoadOrder := MaxInt; - if patch.plugins.Count > 0 then begin - sFilename := patch.plugins[patch.plugins.Count -1]; + if patch.plugins.Count > 0 then + begin + sFilename := patch.plugins[patch.plugins.Count - 1]; highLoadOrder := PluginLoadOrder(sFilename); end; @@ -110,9 +112,10 @@ function TEditForm.ESPFilenameValid: boolean; exit; // return false if patch exists - for i := 0 to Pred(PatchesList.Count) do begin + for i := 0 to Pred(PatchesList.Count) do + begin aPatch := TPatch(PatchesList[i]); - if (aPatch.filename = edFileName.Text) and (aPatch <> patch) then + if (aPatch.filename = edFilename.Text) and (aPatch <> patch) then exit; end; @@ -126,19 +129,19 @@ procedure TEditForm.edFilenameChange(Sender: TObject); begin // if invalid disable btnOk, show hint, and make font color red valid := ESPFilenameValid; - btnOk.Enabled := valid and NameValid; + btnOK.Enabled := valid and NameValid; edFilename.ShowHint := valid; if valid then edFilename.Font.Color := clWindowText else - edFilename.Font.Color := $0000ff; + edFilename.Font.Color := $0000FF; end; procedure TEditForm.edFilenameEnter(Sender: TObject); begin // change selection to not include the .esp - if (edFilename.SelLength = Length(edFilename.Text)) - and StrEndsWith(edFilename.Text, '.esp') then + if (edFilename.SelLength = Length(edFilename.Text)) and + StrEndsWith(edFilename.Text, '.esp') then edFilename.SelLength := edFilename.SelLength - 4; end; @@ -147,14 +150,14 @@ procedure TEditForm.edNameChange(Sender: TObject); valid, exists: boolean; begin valid := NameValid; - exists := DirectoryExists(settings.patchDirectory + edName.Text) - and (edName.Text <> patch.name); + exists := DirectoryExists(settings.patchDirectory + edName.Text) and + (edName.Text <> patch.name); // if invalid show hint and make font color red - btnOk.Enabled := valid and ESPFilenameValid; + btnOK.Enabled := valid and ESPFilenameValid; edName.ShowHint := (not valid) or exists; if (not valid) or exists then - edName.Font.Color := $0000ff + edName.Font.Color := $0000FF else edName.Font.Color := clWindowText; end; @@ -163,9 +166,10 @@ procedure TEditForm.edNameChange(Sender: TObject); procedure TEditForm.edKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin - if (HiWord(GetKeyState(vk_Return)) <> 0) and btnOk.Enabled then begin - btnOkClick(nil); - ModalResult := mrOk; + if (HiWord(GetKeyState(vk_Return)) <> 0) and btnOK.Enabled then + begin + btnOKClick(nil); + ModalResult := mrOK; end; end; diff --git a/frontend/msLoader.pas b/frontend/msLoader.pas index e018bde..12e09c4 100755 --- a/frontend/msLoader.pas +++ b/frontend/msLoader.pas @@ -9,26 +9,28 @@ interface // mp units msConfiguration; - { Initialization Methods } - function InitBase: boolean; - function GamePathValid(path: string; id: integer): boolean; - procedure SetGame(id: integer); - function GetGameID(name: string): integer; - function GetLanguageFileSuffix: String; - function GetGamePath(mode: TGameMode): string; - procedure LoadDefinitions; - procedure LoadBSAs; - { Load order functions } - procedure RemoveCommentsAndEmpty(var sl: TStringList); - procedure RemoveMissingFiles(var sl: TStringList); - procedure RemoveSmashedPatches(var sl: TStringList); - procedure FixLoadOrder(var sl: TStringList; const filename: String; var index: Integer); - procedure AddBaseMasters(var sl: TStringList); - procedure AddMissingFiles(var sl: TStringList); - function PluginListCompare(List: TStringList; Index1, Index2: Integer): Integer; - procedure LoadPluginsList(const sLoadPath: String; var sl: TStringList; noDelete: Boolean = False); - procedure LoadLoadOrder(const sLoadPath: String; var slLoadOrder: TStringList); - procedure PrepareLoadOrder(var slLoadOrder, slPlugins: TStringList); +{ Initialization Methods } +function InitBase: boolean; +function GamePathValid(path: string; id: integer): boolean; +procedure SetGame(id: integer); +function GetGameID(name: string): integer; +function GetLanguageFileSuffix: String; +function GetGamePath(mode: TGameMode): string; +procedure LoadDefinitions; +procedure LoadBSAs; +{ Load order functions } +procedure RemoveCommentsAndEmpty(var sl: TStringList); +procedure RemoveMissingFiles(var sl: TStringList); +procedure RemoveSmashedPatches(var sl: TStringList); +procedure FixLoadOrder(var sl: TStringList; const filename: String; + var index: integer); +procedure AddBaseMasters(var sl: TStringList); +procedure AddMissingFiles(var sl: TStringList); +function PluginListCompare(List: TStringList; Index1, Index2: integer): integer; +procedure LoadPluginsList(const sLoadPath: String; var sl: TStringList; + noDelete: boolean = False); +procedure LoadLoadOrder(const sLoadPath: String; var slLoadOrder: TStringList); +procedure PrepareLoadOrder(var slLoadOrder, slPlugins: TStringList); var slPlugins, slLanguageMap: TStringList; @@ -48,8 +50,7 @@ implementation wbDefinitionsFNV, wbDefinitionsFO3, wbDefinitionsTES3, wbDefinitionsTES4, wbDefinitionsTES5, wbDefinitionsFO4; - -{******************************************************************************} +{ ****************************************************************************** } { Initialization Methods Methods that are used for initialization. @@ -62,33 +63,35 @@ implementation - LoadDefinitions - InitPapyrus } -{******************************************************************************} +{ ****************************************************************************** } function InitBase: boolean; var slLoadOrder: TStringList; psForm: TPluginSelectionForm; begin - Result := false; + Result := False; // INITIALIZE VARIABLES LogPath := PathList.Values['ProgramPath'] + 'logs\'; PathList.Values['TempPath'] := PathList.Values['ProgramPath'] + 'temp\'; - PathList.Values['ProfilePath'] := PathList.Values['ProgramPath'] + - 'profiles\'+ CurrentProfile.name + '\'; + PathList.Values['ProfilePath'] := PathList.Values['ProgramPath'] + 'profiles\' + + CurrentProfile.name + '\'; ForceDirectories(PathList.Values['TempPath']); ForceDirectories(LogPath); ForceDirectories(PathList.Values['ProfilePath']); // SET GAME VARS SetGame(CurrentProfile.gameMode); - wbVWDInTemporary := wbGameMode in [gmSSE, gmTES5VR, gmTES5, gmEnderal, gmFO3, gmFNV]; + wbVWDInTemporary := wbGameMode in [gmSSE, gmTES5VR, gmTES5, gmEnderal, + gmFO3, gmFNV]; wbVWDAsQuestChildren := wbGameMode = gmFO4; wbArchiveExtension := IfThen(wbGameMode = gmFO4, '.ba2', '.bsa'); - wbLoadBSAs := wbGameMode in [gmFO4, gmSSE, gmTES5VR, gmTES5, gmEnderal, gmTES4]; - Logger.Write('GENERAL', 'Game', 'Using '+wbGameName); - Logger.Write('GENERAL', 'Path', 'Using '+wbDataPath); - Logger.Write('GENERAL', 'GameIni', 'Using '+wbTheGameIniFileName); + wbLoadBSAs := wbGameMode in [gmFO4, gmSSE, gmTES5VR, gmTES5, + gmEnderal, gmTES4]; + Logger.Write('GENERAL', 'Game', 'Using ' + wbGameName); + Logger.Write('GENERAL', 'Path', 'Using ' + wbDataPath); + Logger.Write('GENERAL', 'GameIni', 'Using ' + wbTheGameIniFileName); // INITIALIZE SETTINGS FOR GAME LoadSettings; @@ -112,7 +115,8 @@ function InitBase: boolean; wbToolName := 'Edit'; // INITIALIZE DEFINITIONS - Logger.Write('GENERAL', 'Definitions', 'Using '+wbAppName+'Edit Definitions'); + Logger.Write('GENERAL', 'Definitions', 'Using ' + wbAppName + + 'Edit Definitions'); LoadDefinitions; // LOAD SMASH SETTINGS @@ -146,27 +150,27 @@ function InitBase: boolean; FreeList(HeaderList); // ALL DONE - Result := true; + Result := True; end; - + { Check if game paths are valid } function GamePathValid(path: string; id: integer): boolean; begin - Result := FileExists(path + GameArray[id].exeName) - and DirectoryExists(path + 'Data'); + Result := FileExists(path + GameArray[id].exeName) and + DirectoryExists(path + 'Data'); end; { Sets the game mode in the TES5Edit API } procedure SetGame(id: integer); -var +var sMyDocumentsPath: string; sIniPath: string; begin - ProgramStatus.GameMode := GameArray[id]; - wbGameName := ProgramStatus.GameMode.gameName; - wbGameName2 := ProgramStatus.GameMode.regName; - wbGameMode := ProgramStatus.GameMode.gameMode; - wbAppName := ProgramStatus.GameMode.appName; + ProgramStatus.gameMode := GameArray[id]; + wbGameName := ProgramStatus.gameMode.gameName; + wbGameName2 := ProgramStatus.gameMode.regName; + wbGameMode := ProgramStatus.gameMode.gameMode; + wbAppName := ProgramStatus.gameMode.appName; wbDataPath := CurrentProfile.gamePath + 'Data\'; // set general paths @@ -175,7 +179,8 @@ procedure SetGame(id: integer); // find game ini inside the user's documents folder. sMyDocumentsPath := GetCSIDLShellFolder(CSIDL_PERSONAL); - if sMyDocumentsPath <> '' then begin + if sMyDocumentsPath <> '' then + begin sIniPath := sMyDocumentsPath + 'My Games\' + wbGameName2 + '\'; if wbGameMode in [gmFO3, gmFNV] then wbTheGameIniFileName := sIniPath + 'Fallout.ini' @@ -191,7 +196,8 @@ function GetGameID(name: string): integer; begin Result := 0; for i := Low(GameArray) to High(GameArray) do - if GameArray[i].longName = name then begin + if GameArray[i].longName = name then + begin Result := i; exit; end; @@ -200,22 +206,22 @@ function GetGameID(name: string): integer; { Gets language file suffix } function GetLanguageFileSuffix: String; begin - Result := settings.language; - if (wbGameMode = gmFO4) and (slLanguageMap.IndexOfName(Result) > -1) then - Result := slLanguageMap.Values[Result]; + Result := settings.language; + if (wbGameMode = gmFO4) and (slLanguageMap.IndexOfName(Result) > -1) then + Result := slLanguageMap.Values[Result]; end; { Gets the path of a game from registry key or app path } function GetGamePath(mode: TGameMode): string; const - sBethRegKey = '\SOFTWARE\Bethesda Softworks\'; - sBethRegKey64 = '\SOFTWARE\Wow6432Node\Bethesda Softworks\'; - sSteamRegKey = '\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\'+ + sBethRegKey = '\SOFTWARE\Bethesda Softworks\'; + sBethRegKey64 = '\SOFTWARE\Wow6432Node\Bethesda Softworks\'; + sSteamRegKey = '\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + 'Steam App '; - sSteamRegKey64 = '\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\'+ + sSteamRegKey64 = '\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\' + 'Uninstall\Steam App '; var - i: Integer; + i: integer; regName: string; keys, appIDs: TStringList; begin @@ -230,7 +236,8 @@ function GetGamePath(mode: TGameMode): string; // add keys to check keys.Add(sBethRegKey + regName + '\Installed Path'); keys.Add(sBethRegKey64 + regName + '\Installed Path'); - for i := 0 to Pred(appIDs.Count) do begin + for i := 0 to Pred(appIDs.Count) do + begin keys.Add(sSteamRegKey + appIDs[i] + '\InstallLocation'); keys.Add(sSteamRegKey64 + appIDs[i] + '\InstallLocation'); end; @@ -251,11 +258,16 @@ function GetGamePath(mode: TGameMode): string; procedure LoadDefinitions; begin case wbGameMode of - gmTES5, gmTES5VR, gmSSE, gmEnderal: DefineTES5; - gmFNV: DefineFNV; - gmTES4: DefineTES4; - gmFO3: DefineFO3; - gmFO4: DefineFO4; + gmTES5, gmTES5VR, gmSSE, gmEnderal: + DefineTES5; + gmFNV: + DefineFNV; + gmTES4: + DefineTES4; + gmFO3: + DefineFO3; + gmFO4: + DefineFO4; end; end; @@ -263,57 +275,58 @@ procedure LoadBSAFile(sFileName: String); var sFileExt: String; begin - sFileExt := ExtractFileExt(sFileName); - Logger.Write('LOAD', 'Resources', 'Loading resources from ' + sFileName); - if sFileExt = '.bsa' then - wbContainerHandler.AddBSA(wbDataPath + sFileName) - else if sFileExt = '.ba2' then - wbContainerHandler.AddBA2(wbDataPath + sFileName); + sFileExt := ExtractFileExt(sFileName); + Logger.Write('LOAD', 'Resources', 'Loading resources from ' + sFileName); + if sFileExt = '.bsa' then + wbContainerHandler.AddBSA(wbDataPath + sFileName) + else if sFileExt = '.ba2' then + wbContainerHandler.AddBA2(wbDataPath + sFileName); end; { Loads all of the BSAs specified in the game ini and by plugins } procedure LoadBSAs; -var +var slBSAFileNames: TStringList; slErrors: TStringList; - i: Integer; - modIndex: Integer; + i: integer; + modIndex: integer; plugin: TPlugin; - bIsTES5: Boolean; + bIsTES5: boolean; begin - slBSAFileNames := TStringList.Create; + slBSAFileNames := TStringList.Create; try - slErrors:= TStringList.Create; + + slErrors := TStringList.Create; try - FindBSAs(wbTheGameIniFileName, wbDataPath, slBSAFileNames, slErrors); - for i := 0 to slBSAFileNames.Count - 1 do - LoadBSAFile(slBSAFileNames[i]); - for i := 0 to slErrors.Count - 1 do - Logger.Write('ERROR', 'Load', slErrors[i] + ' was not found'); - - for modIndex := 0 to PluginsList.Count - 1 do begin - slBSAFileNames.Clear; - slErrors.Clear; - plugin := TPlugin(PluginsList[modIndex]); - bIsTES5 := wbGameMode in [gmTES5, gmEnderal, gmSSE, gmTES5VR]; - - HasBSAs(ChangeFileExt(plugin.filename, ''), wbDataPath, bIsTES5, - bIsTES5, slBSAFileNames, slErrors); - for i := 0 to slBSAFileNames.Count - 1 do - LoadBSAFile(slBSAFileNames[i]); - for i := 0 to slErrors.Count - 1 do - Logger.Write('ERROR', 'Load', slErrors[i] + ' was not found'); - end; - finally - slErrors.Free; + FindBSAs(wbTheGameIniFileName, wbDataPath, slBSAFileNames, slErrors); + for i := 0 to slBSAFileNames.Count - 1 do + LoadBSAFile(slBSAFileNames[i]); + for i := 0 to slErrors.Count - 1 do + Logger.Write('ERROR', 'Load', slErrors[i] + ' was not found'); + + for modIndex := 0 to PluginsList.Count - 1 do + begin + slBSAFileNames.Clear; + slErrors.Clear; + plugin := TPlugin(PluginsList[modIndex]); + bIsTES5 := wbGameMode in [gmTES5, gmEnderal, gmSSE, gmTES5VR]; + + HasBSAs(ChangeFileExt(plugin.filename, ''), wbDataPath, bIsTES5, + bIsTES5, slBSAFileNames, slErrors); + for i := 0 to slBSAFileNames.Count - 1 do + LoadBSAFile(slBSAFileNames[i]); + for i := 0 to slErrors.Count - 1 do + Logger.Write('ERROR', 'Load', slErrors[i] + ' was not found'); + end; + finally + slErrors.Free; end; - finally - slBSAFileNames.Free; + finally + slBSAFileNames.Free; end; end; - -{******************************************************************************} +{ ****************************************************************************** } { Load order functions Set of functions for building a working load order. @@ -322,25 +335,26 @@ procedure LoadBSAs; - RemoveMissingFiles - AddMissingFiles - PluginListCompare -{******************************************************************************} - -{ Remove comments and empty lines from a stringlist } -procedure RemoveCommentsAndEmpty(var sl: TStringList); -var - i, j, k: integer; - s: string; -begin - for i := Pred(sl.Count) downto 0 do begin - s := Trim(sl.Strings[i]); - j := Pos('#', s); - k := Pos('*', s); - if j > 0 then - System.Delete(s, j, High(Integer)); - if s = '' then - sl.Delete(i); - if k = 1 then - sl[i] := Copy(s, 2, Length(s)); - end; + {****************************************************************************** } + +{ Remove comments and empty lines from a stringlist } +procedure RemoveCommentsAndEmpty(var sl: TStringList); +var + i, j, k: integer; + s: string; +begin + for i := Pred(sl.Count) downto 0 do + begin + s := Trim(sl.Strings[i]); + j := Pos('#', s); + k := Pos('*', s); + if j > 0 then + System.Delete(s, j, High(integer)); + if s = '' then + sl.Delete(i); + if k = 1 then + sl[i] := Copy(s, 2, Length(s)); + end; end; { Remove nonexistent files from stringlist } @@ -362,52 +376,57 @@ procedure RemoveSmashedPatches(var sl: TStringList); if Assigned(TPatchHelpers.PatchByFilename(PatchesList, sl[i])) then sl.Delete(i); end; - -{ Forces a plugin to load at a specific position } -procedure FixLoadOrder(var sl: TStringList; const filename: String; var index: Integer); -var - oldIndex: Integer; -begin - oldIndex := sl.IndexOf(filename); - if (oldIndex > -1) then begin - if oldIndex <> index then begin - sl.Delete(oldIndex); - sl.Insert(index, filename); - end; - end - else if FileExists(wbDataPath + filename) then - sl.Insert(index, filename) - else - exit; - Inc(index); -end; - -procedure AddBaseMasters(var sl: TStringList); -var - index: Integer; -begin - index := 0; - FixLoadOrder(sl, wbGameName + '.esm', index); - if (wbGameMode = gmTES5) or (wbGameMode = gmEnderal) then - FixLoadOrder(sl, 'Update.esm', index) - else if (wbGameMode = gmSSE) or (wbGameMode = gmTES5VR) then begin - FixLoadOrder(sl, 'Update.esm', index); - FixLoadOrder(sl, 'Dawnguard.esm', index); - FixLoadOrder(sl, 'HearthFires.esm', index); - FixLoadOrder(sl, 'Dragonborn.esm', index); - if (wbGameMode = gmTES5VR) then - FixLoadOrder(sl, 'SkyrimVR.esm', index); - - end - else if (wbGameMode = gmFO4) then begin - FixLoadOrder(sl, 'DLCRobot.esm', index); - FixLoadOrder(sl, 'DLCworkshop01.esm', index); - FixLoadOrder(sl, 'DLCCoast.esm', index); - FixLoadOrder(sl, 'DLCworkshop02.esm', index); - FixLoadOrder(sl, 'DLCworkshop03.esm', index); - FixLoadOrder(sl, 'DLCNukaWorld.esm', index); - FixLoadOrder(sl, 'DLCUltraHighResolution.esm', index); - end; + +{ Forces a plugin to load at a specific position } +procedure FixLoadOrder(var sl: TStringList; const filename: String; + var index: integer); +var + oldIndex: integer; +begin + oldIndex := sl.IndexOf(filename); + if (oldIndex > -1) then + begin + if oldIndex <> index then + begin + sl.Delete(oldIndex); + sl.Insert(index, filename); + end; + end + else if FileExists(wbDataPath + filename) then + sl.Insert(index, filename) + else + exit; + Inc(index); +end; + +procedure AddBaseMasters(var sl: TStringList); +var + index: integer; +begin + index := 0; + FixLoadOrder(sl, wbGameName + '.esm', index); + if (wbGameMode = gmTES5) or (wbGameMode = gmEnderal) then + FixLoadOrder(sl, 'Update.esm', index) + else if (wbGameMode = gmSSE) or (wbGameMode = gmTES5VR) then + begin + FixLoadOrder(sl, 'Update.esm', index); + FixLoadOrder(sl, 'Dawnguard.esm', index); + FixLoadOrder(sl, 'HearthFires.esm', index); + FixLoadOrder(sl, 'Dragonborn.esm', index); + if (wbGameMode = gmTES5VR) then + FixLoadOrder(sl, 'SkyrimVR.esm', index); + + end + else if (wbGameMode = gmFO4) then + begin + FixLoadOrder(sl, 'DLCRobot.esm', index); + FixLoadOrder(sl, 'DLCworkshop01.esm', index); + FixLoadOrder(sl, 'DLCCoast.esm', index); + FixLoadOrder(sl, 'DLCworkshop02.esm', index); + FixLoadOrder(sl, 'DLCworkshop03.esm', index); + FixLoadOrder(sl, 'DLCNukaWorld.esm', index); + FixLoadOrder(sl, 'DLCUltraHighResolution.esm', index); + end; end; // Put Creation Club plugins in load order @@ -416,12 +435,14 @@ procedure AddCCPlugins(var slLoadOrder: TStringList); sPath: string; slCC: TStringList; i: integer; - index: Integer; + index: integer; begin slCC := TStringList.Create; - sPath := CurrentProfile.GamePath + wbGameName + '.ccc'; - if (wbGameMode <> gmSSE) and (wbGameMode <> gmFO4) then exit; - if FileExists(sPath) then begin + sPath := CurrentProfile.gamePath + wbGameName + '.ccc'; + if (wbGameMode <> gmSSE) and (wbGameMode <> gmFO4) then + exit; + if FileExists(sPath) then + begin slCC.LoadFromFile(sPath); index := 0; for i := 0 to Pred(slCC.Count) do @@ -431,31 +452,34 @@ procedure AddCCPlugins(var slLoadOrder: TStringList); function GetPluginDate(const aFileName: string): Cardinal; const - DateOmitYears = 60; - DatePrecision = 100000; -var - F: TSearchRec; -begin - // Try to fit a meaningful modified date of a file into 32 bits integer value - // For relative load order sorting only - // Oblivion GOG version has dates from 1969 year and FileAge() doesn't support them - if FindFirst(aFileName, faAnyFile, F) = 0 then begin - Result := Round((F.TimeStamp - 364 * DateOmitYears) * DatePrecision); - FindClose(F); - end else + DateOmitYears = 60; + DatePrecision = 100000; +var + F: TSearchRec; +begin + // Try to fit a meaningful modified date of a file into 32 bits integer value + // For relative load order sorting only + // Oblivion GOG version has dates from 1969 year and FileAge() doesn't support them + if FindFirst(aFileName, faAnyFile, F) = 0 then + begin + Result := Round((F.TimeStamp - 364 * DateOmitYears) * DatePrecision); + FindClose(F); + end + else Result := 0; end; { Compare function for sorting load order by date modified/esms } -function PluginListCompare(List: TStringList; Index1, Index2: Integer): Integer; +function PluginListCompare(List: TStringList; Index1, Index2: integer): integer; var - IsESM1, IsESM2: Boolean; - FileSK1, FileSK2: Integer; + IsESM1, IsESM2: boolean; + FileSK1, FileSK2: integer; begin IsESM1 := List[Index1].EndsWith(csDotESM); IsESM2 := List[Index2].EndsWith(csDotESM); - if IsESM1 = IsESM2 then begin + if IsESM1 = IsESM2 then + begin FileSK1 := Cardinal(List.Objects[Index1]); FileSK2 := Cardinal(List.Objects[Index2]); @@ -466,7 +490,8 @@ function PluginListCompare(List: TStringList; Index1, Index2: Integer): Integer; else Result := 0; - end else if IsESM1 then + end + else if IsESM1 then Result := -1 else Result := 1; @@ -483,18 +508,20 @@ procedure AddMissingFiles(var sl: TStringList); slNew := TStringList.Create; try // search for missing plugins and masters - if FindFirst(wbDataPath + '*.*', faAnyFile, F) = 0 then try - repeat - if not (wbIsPlugin(F.Name)) then - continue; - if sl.IndexOf(F.Name) = -1 then begin - fileSortKey := GetPluginDate(wbDataPath + F.Name); - slNew.AddObject(F.Name, TObject(fileSortKey)); - end; - until FindNext(F) <> 0; - finally - FindClose(F); - end; + if FindFirst(wbDataPath + '*.*', faAnyFile, F) = 0 then + try + repeat + if not(wbIsPlugin(F.name)) then + continue; + if sl.IndexOf(F.name) = -1 then + begin + fileSortKey := GetPluginDate(wbDataPath + F.name); + slNew.AddObject(F.name, TObject(fileSortKey)); + end; + until FindNext(F) <> 0; + finally + FindClose(F); + end; // sort the list slNew.CustomSort(PluginListCompare); @@ -511,11 +538,14 @@ procedure AddMissingFiles(var sl: TStringList); // add esm masters after the last master, add esp plugins at the end Inc(j); - for i := 0 to Pred(slNew.Count) do begin - if (slNew[i].EndsWith(csDotESM)) then begin + for i := 0 to Pred(slNew.Count) do + begin + if (slNew[i].EndsWith(csDotESM)) then + begin sl.InsertObject(j, slNew[i], slNew.Objects[i]); Inc(j); - end else + end + else sl.AddObject(slNew[i], slNew.Objects[i]); end; finally @@ -523,131 +553,134 @@ procedure AddMissingFiles(var sl: TStringList); end; end; -procedure ProcessAsterisks(var sl: TStringList; index: Integer; noDelete: Boolean); -var - s: String; -begin - s := sl[index]; - if s[1] <> '*' then begin - if not noDelete then sl.Delete(index); - end - else - sl[index] := Copy(s, 2, Length(s)); -end; - -procedure ProcessPluginsFormat(var sl: TStringList; noDelete: Boolean); -var - i: Integer; -begin - for i := Pred(sl.Count) downto 0 do - ProcessAsterisks(sl, i, noDelete); +procedure ProcessAsterisks(var sl: TStringList; index: integer; + noDelete: boolean); +var + s: String; +begin + s := sl[index]; + if s[1] <> '*' then + begin + if not noDelete then + sl.Delete(index); + end + else + sl[index] := Copy(s, 2, Length(s)); +end; + +procedure ProcessPluginsFormat(var sl: TStringList; noDelete: boolean); +var + i: integer; +begin + for i := Pred(sl.Count) downto 0 do + ProcessAsterisks(sl, i, noDelete); end; - -procedure LoadPluginsList(const sLoadPath: String; var sl: TStringList; noDelete: Boolean = False); -var - sPath: String; -begin - - sPath := sLoadPath + 'plugins.txt'; - if FileExists(sPath) then begin - sl.LoadFromFile(sPath); - if (wbGameMode = gmSSE) or (wbGameMode = gmTES5VR) or (wbGameMode = gmFO4) then - ProcessPluginsFormat(sl, noDelete); - end - else - AddMissingFiles(sl); - - AddCCPlugins(sl); - AddBaseMasters(sl); - // remove comments and missing files - RemoveCommentsAndEmpty(sl); - RemoveMissingFiles(sl); - if noDelete then AddMissingFiles(sl); - RemoveSmashedPatches(sl); + +procedure LoadPluginsList(const sLoadPath: String; var sl: TStringList; + noDelete: boolean = False); +var + sPath: String; +begin + + sPath := sLoadPath + 'plugins.txt'; + if FileExists(sPath) then + begin + sl.LoadFromFile(sPath); + if (wbGameMode = gmSSE) or (wbGameMode = gmTES5VR) or (wbGameMode = gmFO4) + then + ProcessPluginsFormat(sl, noDelete); + end + else + AddMissingFiles(sl); + + AddCCPlugins(sl); + AddBaseMasters(sl); + // remove comments and missing files + RemoveCommentsAndEmpty(sl); + RemoveMissingFiles(sl); + if noDelete then + AddMissingFiles(sl); + RemoveSmashedPatches(sl); end; - -procedure LoadLoadOrder(const sLoadPath: String; var slLoadOrder: TStringList); -var - sPath: String; -begin - sPath := sLoadPath + 'loadorder.txt'; - if (wbGameMode <> gmSSE) and (wbGameMode <> gmTES5VR) and (wbGameMode <> gmFO4) - and FileExists(sPath) then begin - slLoadOrder.LoadFromFile(sPath); - - // remove comments and add/remove files - AddBaseMasters(slLoadOrder); - RemoveCommentsAndEmpty(slLoadOrder); - RemoveMissingFiles(slLoadOrder); - AddMissingFiles(slLoadOrder); - RemoveSmashedPatches(slLoadOrder); - end - else - LoadPluginsList(sLoadPath, slLoadOrder, True); + +procedure LoadLoadOrder(const sLoadPath: String; var slLoadOrder: TStringList); +var + sPath: String; +begin + sPath := sLoadPath + 'loadorder.txt'; + if (wbGameMode <> gmSSE) and (wbGameMode <> gmTES5VR) and + (wbGameMode <> gmFO4) and FileExists(sPath) then + begin + slLoadOrder.LoadFromFile(sPath); + + // remove comments and add/remove files + AddBaseMasters(slLoadOrder); + RemoveCommentsAndEmpty(slLoadOrder); + RemoveMissingFiles(slLoadOrder); + AddMissingFiles(slLoadOrder); + RemoveSmashedPatches(slLoadOrder); + end + else + LoadPluginsList(sLoadPath, slLoadOrder, True); end; procedure PrepareLoadOrder(var slLoadOrder, slPlugins: TStringList); var sLoadPath: String; begin - sLoadPath := GetCSIDLShellFolder(CSIDL_LOCAL_APPDATA) + wbGameName2 +'\'; - LoadPluginsList(sLoadPath, slPlugins); + sLoadPath := GetCSIDLShellFolder(CSIDL_LOCAL_APPDATA) + wbGameName2 + '\'; + LoadPluginsList(sLoadPath, slPlugins); LoadLoadOrder(sLoadPath, slLoadOrder); - end; + +end; { Log Initialization } procedure InitLog; begin // INITIALIZE GROUP FILTERS - GroupFilters.Add(TFilter.Create('GENERAL', true)); - GroupFilters.Add(TFilter.Create('LOAD', true)); - GroupFilters.Add(TFilter.Create('CLIENT', true)); - GroupFilters.Add(TFilter.Create('MERGE', true)); - GroupFilters.Add(TFilter.Create('PLUGIN', true)); - GroupFilters.Add(TFilter.Create('ERROR', true)); + GroupFilters.Add(TFilter.Create('GENERAL', True)); + GroupFilters.Add(TFilter.Create('LOAD', True)); + GroupFilters.Add(TFilter.Create('CLIENT', True)); + GroupFilters.Add(TFilter.Create('MERGE', True)); + GroupFilters.Add(TFilter.Create('PLUGIN', True)); + GroupFilters.Add(TFilter.Create('ERROR', True)); // INITIALIZE LABEL FILTERS - LabelFilters.Add(TFilter.Create('GENERAL', 'Game', true)); - LabelFilters.Add(TFilter.Create('GENERAL', 'Status', true)); - LabelFilters.Add(TFilter.Create('GENERAL', 'Path', true)); - LabelFilters.Add(TFilter.Create('GENERAL', 'Definitions', true)); - LabelFilters.Add(TFilter.Create('GENERAL', 'Dictionary', true)); - LabelFilters.Add(TFilter.Create('GENERAL', 'Load Order', true)); - LabelFilters.Add(TFilter.Create('GENERAL', 'Log', true)); - LabelFilters.Add(TFilter.Create('LOAD', 'Order', false)); - LabelFilters.Add(TFilter.Create('LOAD', 'Plugins', false)); - LabelFilters.Add(TFilter.Create('LOAD', 'Background', true)); - LabelFilters.Add(TFilter.Create('CLIENT', 'Connect', true)); - LabelFilters.Add(TFilter.Create('CLIENT', 'Login', true)); - LabelFilters.Add(TFilter.Create('CLIENT', 'Response', true)); - LabelFilters.Add(TFilter.Create('CLIENT', 'Update', true)); - LabelFilters.Add(TFilter.Create('CLIENT', 'Report', true)); - LabelFilters.Add(TFilter.Create('PATCH', 'Status', false)); - LabelFilters.Add(TFilter.Create('PATCH', 'Create', true)); - LabelFilters.Add(TFilter.Create('PATCH', 'Edit', true)); - LabelFilters.Add(TFilter.Create('PATCH', 'Check', true)); - LabelFilters.Add(TFilter.Create('PATCH', 'Clean', true)); - LabelFilters.Add(TFilter.Create('PATCH', 'Delete', true)); - LabelFilters.Add(TFilter.Create('PATCH', 'Build', true)); - LabelFilters.Add(TFilter.Create('PATCH', 'Report', true)); - LabelFilters.Add(TFilter.Create('PLUGIN', 'Report', true)); - LabelFilters.Add(TFilter.Create('PLUGIN', 'Check', true)); + LabelFilters.Add(TFilter.Create('GENERAL', 'Game', True)); + LabelFilters.Add(TFilter.Create('GENERAL', 'Status', True)); + LabelFilters.Add(TFilter.Create('GENERAL', 'Path', True)); + LabelFilters.Add(TFilter.Create('GENERAL', 'Definitions', True)); + LabelFilters.Add(TFilter.Create('GENERAL', 'Dictionary', True)); + LabelFilters.Add(TFilter.Create('GENERAL', 'Load Order', True)); + LabelFilters.Add(TFilter.Create('GENERAL', 'Log', True)); + LabelFilters.Add(TFilter.Create('LOAD', 'Order', False)); + LabelFilters.Add(TFilter.Create('LOAD', 'Plugins', False)); + LabelFilters.Add(TFilter.Create('LOAD', 'Background', True)); + LabelFilters.Add(TFilter.Create('CLIENT', 'Connect', True)); + LabelFilters.Add(TFilter.Create('CLIENT', 'Login', True)); + LabelFilters.Add(TFilter.Create('CLIENT', 'Response', True)); + LabelFilters.Add(TFilter.Create('CLIENT', 'Update', True)); + LabelFilters.Add(TFilter.Create('CLIENT', 'Report', True)); + LabelFilters.Add(TFilter.Create('PATCH', 'Status', False)); + LabelFilters.Add(TFilter.Create('PATCH', 'Create', True)); + LabelFilters.Add(TFilter.Create('PATCH', 'Edit', True)); + LabelFilters.Add(TFilter.Create('PATCH', 'Check', True)); + LabelFilters.Add(TFilter.Create('PATCH', 'Clean', True)); + LabelFilters.Add(TFilter.Create('PATCH', 'Delete', True)); + LabelFilters.Add(TFilter.Create('PATCH', 'Build', True)); + LabelFilters.Add(TFilter.Create('PATCH', 'Report', True)); + LabelFilters.Add(TFilter.Create('PLUGIN', 'Report', True)); + LabelFilters.Add(TFilter.Create('PLUGIN', 'Check', True)); end; initialization - slLanguageMap := TStringList.Create; - slLanguageMap.Text := - 'English=en'#13 + - 'French=fr'#13 + - 'German=de'#13 + - 'Italian=it'#13 + - 'Spanish=es'#13 + - 'Russian=ru'#13 + - 'Polish=pl'#13 + - 'Japanese=ja'#13 + - 'Portugese=pt'#13 + - 'Chinese=zh'; + +slLanguageMap := TStringList.Create; +slLanguageMap.Text := 'English=en'#13 + 'French=fr'#13 + 'German=de'#13 + + 'Italian=it'#13 + 'Spanish=es'#13 + 'Russian=ru'#13 + 'Polish=pl'#13 + + 'Japanese=ja'#13 + 'Portugese=pt'#13 + 'Chinese=zh'; finalization - slLanguageMap.Free; + +slLanguageMap.Free; end. diff --git a/frontend/msOptionsForm.dfm b/frontend/msOptionsForm.dfm old mode 100644 new mode 100755 index 301c791..1aaed27 --- a/frontend/msOptionsForm.dfm +++ b/frontend/msOptionsForm.dfm @@ -2,7 +2,7 @@ object OptionsForm: TOptionsForm Left = 0 Top = 0 Caption = 'Settings' - ClientHeight = 447 + ClientHeight = 446 ClientWidth = 584 Color = clBtnFace Constraints.MaxHeight = 485 @@ -31,6 +31,10 @@ object OptionsForm: TOptionsForm TabWidth = 80 object GeneralTabSheet: TTabSheet Caption = 'General' + ExplicitLeft = 0 + ExplicitTop = 0 + ExplicitWidth = 0 + ExplicitHeight = 0 object gbStyle: TGroupBox Left = 6 Top = 69 @@ -107,6 +111,8 @@ object OptionsForm: TOptionsForm ImageIndex = 1 ExplicitLeft = 0 ExplicitTop = 28 + ExplicitWidth = 0 + ExplicitHeight = 0 object gbGeneral: TGroupBox Left = 3 Top = 3 @@ -259,6 +265,10 @@ object OptionsForm: TOptionsForm object AdvancedTabSheet: TTabSheet Caption = 'Advanced' ImageIndex = 2 + ExplicitLeft = 0 + ExplicitTop = 0 + ExplicitWidth = 0 + ExplicitHeight = 0 object gbLogging: TGroupBox Left = 6 Top = 72 @@ -514,7 +524,7 @@ object OptionsForm: TOptionsForm Left = 16 Top = 400 Bitmap = { - 494C0101010008007C0110001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 494C010101000800040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 0000000000003600000028000000400000001000000001002000000000000010 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 diff --git a/frontend/msOptionsForm.pas b/frontend/msOptionsForm.pas old mode 100644 new mode 100755 index bdea1bc..0e47dd8 --- a/frontend/msOptionsForm.pas +++ b/frontend/msOptionsForm.pas @@ -8,63 +8,63 @@ interface // mte units mteHelpers, RttiTranslation, // mp units - msConfiguration; + msConfiguration, System.ImageList; type TOptionsForm = class(TForm) [FormPrefix('mpOpt')] - SettingsPageControl: TPageControl; - btnCancel: TButton; - btnOK: TButton; - IconList: TImageList; - [FormSection('General Tab')] - GeneralTabSheet: TTabSheet; - gbLanguage: TGroupBox; - lblLanguage: TLabel; - gbStyle: TGroupBox; - kbSimpleDictionary: TCheckBox; - kbSimplePlugins: TCheckBox; - [FormSection('DontTranslate')] - cbLanguage: TComboBox; - [FormSection('Patching Tab')] - PatchingTabSheet: TTabSheet; - gbGeneral: TGroupBox; - edPatchDirectory: TEdit; - lblDestinationDirectory: TLabel; - btnBrowsePatchDirectory: TSpeedButton; - gbDebug: TGroupBox; - kbDebugPatchStatus: TCheckBox; - kbDebugMasters: TCheckBox; - kbDebugArrays: TCheckBox; - kbDebugSkips: TCheckBox; - kbDebugTraversal: TCheckBox; - kbDebugTypes: TCheckBox; - kbDebugChanges: TCheckBox; - kbDebugSingle: TCheckBox; - kbDebugLinks: TCheckBox; - gbOther: TGroupBox; - kbBuildRefs: TCheckBox; - kbPreserveITPOs: TCheckBox; - [FormSection('Advanced Tab')] - AdvancedTabSheet: TTabSheet; - lblCurrentProfile: TLabel; - gbLogging: TGroupBox; - lblClientColor: TLabel; - cbClientColor: TColorBox; - lblGeneralColor: TLabel; - cbGeneralColor: TColorBox; - lblLoadColor: TLabel; - cbLoadColor: TColorBox; - lblPluginColor: TLabel; - cbPluginColor: TColorBox; - lblErrorColor: TLabel; - cbErrorColor: TColorBox; - lblTemplate: TLabel; - meTemplate: TMemo; - lblSample: TLabel; - [FormSection('DontTranslate')] - lblCurrentProfileName: TLabel; - lblSampleValue: TLabel; + SettingsPageControl: TPageControl; + btnCancel: TButton; + btnOK: TButton; + IconList: TImageList; + [FormSection('General Tab')] + GeneralTabSheet: TTabSheet; + gbLanguage: TGroupBox; + lblLanguage: TLabel; + gbStyle: TGroupBox; + kbSimpleDictionary: TCheckBox; + kbSimplePlugins: TCheckBox; + [FormSection('DontTranslate')] + cbLanguage: TComboBox; + [FormSection('Patching Tab')] + PatchingTabSheet: TTabSheet; + gbGeneral: TGroupBox; + edPatchDirectory: TEdit; + lblDestinationDirectory: TLabel; + btnBrowsePatchDirectory: TSpeedButton; + gbDebug: TGroupBox; + kbDebugPatchStatus: TCheckBox; + kbDebugMasters: TCheckBox; + kbDebugArrays: TCheckBox; + kbDebugSkips: TCheckBox; + kbDebugTraversal: TCheckBox; + kbDebugTypes: TCheckBox; + kbDebugChanges: TCheckBox; + kbDebugSingle: TCheckBox; + kbDebugLinks: TCheckBox; + gbOther: TGroupBox; + kbBuildRefs: TCheckBox; + kbPreserveITPOs: TCheckBox; + [FormSection('Advanced Tab')] + AdvancedTabSheet: TTabSheet; + lblCurrentProfile: TLabel; + gbLogging: TGroupBox; + lblClientColor: TLabel; + cbClientColor: TColorBox; + lblGeneralColor: TLabel; + cbGeneralColor: TColorBox; + lblLoadColor: TLabel; + cbLoadColor: TColorBox; + lblPluginColor: TLabel; + cbPluginColor: TColorBox; + lblErrorColor: TLabel; + cbErrorColor: TColorBox; + lblTemplate: TLabel; + meTemplate: TMemo; + lblSample: TLabel; + [FormSection('DontTranslate')] + lblCurrentProfileName: TLabel; + lblSampleValue: TLabel; procedure FormCreate(Sender: TObject); procedure LoadLanguageOptions; @@ -95,7 +95,8 @@ procedure TOptionsForm.btnBrowsePatchDirectoryClick(Sender: TObject); procedure TOptionsForm.btnOKClick(Sender: TObject); begin // check if we need to update patch status afterwards - ProgramStatus.bUpdatePatchStatus := settings.patchDirectory <> edPatchDirectory.Text; + ProgramStatus.bUpdatePatchStatus := settings.patchDirectory <> + edPatchDirectory.Text; // General > Language settings.language := cbLanguage.Text; @@ -119,10 +120,10 @@ procedure TOptionsForm.btnOKClick(Sender: TObject); settings.preserveITPOs := kbPreserveITPOs.Checked; // Advanced > Logging - settings.clientMessageColor := cbClientColor.Selected ; + settings.clientMessageColor := cbClientColor.Selected; settings.generalMessageColor := cbGeneralColor.Selected; settings.loadMessageColor := cbLoadColor.Selected; - //settings.patchMessageColor := cbPatchColor.Selected; + // settings.patchMessageColor := cbPatchColor.Selected; settings.pluginMessageColor := cbPluginColor.Selected; settings.errorMessageColor := cbErrorColor.Selected; settings.logMessageTemplate := meTemplate.Lines.Text; @@ -215,7 +216,7 @@ procedure TOptionsForm.FormCreate(Sender: TObject); cbClientColor.Selected := TColor(settings.clientMessageColor); cbGeneralColor.Selected := TColor(settings.generalMessageColor); cbLoadColor.Selected := TColor(settings.loadMessageColor); - //cbPatchColor.Selected := TColor(settings.patchMessageColor); + // cbPatchColor.Selected := TColor(settings.patchMessageColor); cbPluginColor.Selected := TColor(settings.pluginMessageColor); cbErrorColor.Selected := TColor(settings.errorMessageColor); meTemplate.Lines.Text := settings.logMessageTemplate; diff --git a/frontend/msPluginSelectionForm.dfm b/frontend/msPluginSelectionForm.dfm old mode 100644 new mode 100755 diff --git a/frontend/msPluginSelectionForm.pas b/frontend/msPluginSelectionForm.pas old mode 100644 new mode 100755 index ce3c98a..2607e30 --- a/frontend/msPluginSelectionForm.pas +++ b/frontend/msPluginSelectionForm.pas @@ -44,7 +44,8 @@ procedure TMiniPluginSelectionForm.btnOKClick(Sender: TObject); i: Integer; begin selectionList.Clear; - for i := 0 to Pred(CheckListBox.Items.Count) do begin + for i := 0 to Pred(CheckListBox.Items.Count) do + begin if CheckListBox.Checked[i] then selectionList.Add(CheckListBox.Items[i]); end; @@ -57,16 +58,18 @@ procedure TMiniPluginSelectionForm.CheckListBoxClick(Sender: TObject); i: Integer; begin btnOK.Enabled := false; - for i := 0 to Pred(CheckListBox.Items.Count) do begin - if CheckListBox.Checked[i] then begin + for i := 0 to Pred(CheckListBox.Items.Count) do + begin + if CheckListBox.Checked[i] then + begin btnOK.Enabled := true; break; end; end; end; -procedure TMiniPluginSelectionForm.CheckListBoxKeyUp(Sender: TObject; var Key: Word; - Shift: TShiftState); +procedure TMiniPluginSelectionForm.CheckListBoxKeyUp(Sender: TObject; + var Key: Word; Shift: TShiftState); begin CheckListBoxClick(nil); end; @@ -76,7 +79,8 @@ procedure TMiniPluginSelectionForm.FormShow(Sender: TObject); i, index: Integer; begin CheckListBox.Items.Text := pluginsList.Text; - for i := 0 to Pred(selectionList.Count) do begin + for i := 0 to Pred(selectionList.Count) do + begin index := pluginsList.IndexOf(selectionList[i]); if index > -1 then CheckListBox.Checked[index] := true; diff --git a/frontend/msProfileForm.pas b/frontend/msProfileForm.pas index 44459f0..8640ac4 100755 --- a/frontend/msProfileForm.pas +++ b/frontend/msProfileForm.pas @@ -37,12 +37,12 @@ TProfileForm = class(TForm) procedure SelectionChanged(Sender: TObject); procedure DeleteClicked(Sender: TObject); procedure DeleteProfileItemClick(Sender: TObject); - function ProfileNameTaken(name: string): boolean; + function ProfileNameTaken(name: string): Boolean; procedure NewProfileImageClick(Sender: TObject); procedure NewProfilePanelClick(Sender: TObject); procedure NewProfileLabelClick(Sender: TObject); - procedure NewProfilePanelMouseMove(Sender: TObject; Shift: TShiftState; X, - Y: Integer); + procedure NewProfilePanelMouseMove(Sender: TObject; Shift: TShiftState; + X, Y: Integer); private FOldWndProc: TWndMethod; FMouseInPanel: Boolean; @@ -63,15 +63,16 @@ implementation procedure TProfileForm.DeleteProfileItemClick(Sender: TObject); var - bApproved: boolean; + bApproved: Boolean; aProfile: TProfile; begin // get user verification aProfile := MouseOverProfile.GetProfile; - bApproved := MessageDlg('Are you sure you want to delete '+ - aProfile.name + '?', mtConfirmation, mbOKCancel, 0) = mrOk; + bApproved := MessageDlg('Are you sure you want to delete ' + aProfile.name + + '?', mtConfirmation, mbOKCancel, 0) = mrOk; - if not (bApproved and Assigned(MouseOverProfile)) then exit; + if not(bApproved and Assigned(MouseOverProfile)) then + exit; ProfilePanels.Delete(ProfilePanels.IndexOf(MouseOverProfile)); aProfile.Delete; MouseOverProfile.Free; @@ -89,7 +90,8 @@ procedure TProfileForm.RealignPanels; // adjust tops NewProfilePanel.Top := 100 * pCount - vPos; - for i := Pred(pCount) downto 0 do begin + for i := Pred(pCount) downto 0 do + begin p := TProfilePanel(ProfilePanels[i]); p.SetTop(100 * i - vPos); end; @@ -97,7 +99,8 @@ procedure TProfileForm.RealignPanels; // adjust widths NewProfilePanel.Width := ScrollBox.ClientWidth; - for i := Pred(pCount) downto 0 do begin + for i := Pred(pCount) downto 0 do + begin p := TProfilePanel(ProfilePanels[i]); p.SetWidth(ScrollBox.ClientWidth); end; @@ -110,7 +113,8 @@ procedure TProfileForm.FormClose(Sender: TObject; var Action: TCloseAction); aProfile: TProfile; begin // save all profiles - for i := 0 to Pred(ProfilePanels.Count) do begin + for i := 0 to Pred(ProfilePanels.Count) do + begin p := TProfilePanel(ProfilePanels[i]); aProfile := p.GetProfile; try @@ -122,10 +126,13 @@ procedure TProfileForm.FormClose(Sender: TObject; var Action: TCloseAction); end; // set profile if user clicked OK - if ModalResult = mrOK then begin - for i := 0 to Pred(ProfilePanels.Count) do begin + if ModalResult = mrOk then + begin + for i := 0 to Pred(ProfilePanels.Count) do + begin p := TProfilePanel(ProfilePanels[i]); - if p.Selected then begin + if p.Selected then + begin CurrentProfile := TProfile.Create(''); CurrentProfile.Clone(p.GetProfile); break; @@ -151,7 +158,7 @@ procedure TProfileForm.FormCreate(Sender: TObject); procedure TProfileForm.FormDestroy(Sender: TObject); begin - NewProfilePanel.WindowProc:= FOldWndProc; + NewProfilePanel.WindowProc := FOldWndProc; end; procedure TProfileForm.LoadProfiles; @@ -169,14 +176,15 @@ procedure TProfileForm.LoadProfiles; exit; // add found profiles repeat - if IsDotFile(info.Name) then + if IsDotFile(info.name) then continue; - settingsPath := path + info.Name + '\settings.ini'; + settingsPath := path + info.name + '\settings.ini'; if not FileExists(settingsPath) then continue; aSettings := TSettings.Create; TRttiIni.Load(settingsPath, aSettings); - if aSettings.profile <> '' then begin + if aSettings.profile <> '' then + begin p := CreateNewProfile(aSettings.profile); p.SetGame(aSettings.gameMode); p.SetPath(aSettings.gamePath); @@ -191,9 +199,11 @@ function TProfileForm.ProfileExists(gameMode: Integer): Boolean; profile: TProfile; begin Result := False; - for i := 0 to Pred(ProfilePanels.Count) do begin + for i := 0 to Pred(ProfilePanels.Count) do + begin profile := TProfilePanel(ProfilePanels[i]).GetProfile; - if profile.gameMode = gameMode then begin + if profile.gameMode = gameMode then + begin Result := True; break; end; @@ -206,11 +216,14 @@ procedure TProfileForm.CreateDefaultProfiles; path, name: string; p: TProfilePanel; begin - for i := Low(GameArray) to High(GameArray) do begin - if ProfileExists(i) then continue; + for i := Low(GameArray) to High(GameArray) do + begin + if ProfileExists(i) then + continue; path := GetGamePath(GameArray[i]); name := GameArray[i].appName; - if path <> '' then begin + if path <> '' then + begin p := CreateNewProfile(name); p.SetGame(i); p.SetPath(path); @@ -258,16 +271,18 @@ procedure TProfileForm.NewProfilePanelClick(Sender: TObject); NewProfileItemClick(nil); end; -function TProfileForm.ProfileNameTaken(name: string): boolean; +function TProfileForm.ProfileNameTaken(name: string): Boolean; var i: Integer; pName: string; begin - Result := false; - for i := 0 to Pred(ProfilePanels.Count) do begin + Result := False; + for i := 0 to Pred(ProfilePanels.Count) do + begin pName := TProfilePanel(ProfilePanels[i]).GetProfile.name; - if SameText(pName, name) then begin - Result := true; + if SameText(pName, name) then + begin + Result := True; break; end; end; @@ -294,10 +309,11 @@ procedure TProfileForm.SelectionChanged(Sender: TObject); var i: Integer; p: TProfilePanel; - bSelected: boolean; + bSelected: Boolean; begin // deselect all panels except the sender - for i := 0 to Pred(ProfilePanels.Count) do begin + for i := 0 to Pred(ProfilePanels.Count) do + begin p := TProfilePanel(ProfilePanels[i]); if p <> TProfilePanel(Sender) then p.Deselect @@ -306,8 +322,10 @@ procedure TProfileForm.SelectionChanged(Sender: TObject); // enable and focus ok button if profile panel is selected bSelected := TProfilePanel(Sender).Selected; btnOk.Enabled := bSelected; - if bSelected then self.FocusControl(btnOk) - else self.FocusControl(btnCancel); + if bSelected then + self.FocusControl(btnOk) + else + self.FocusControl(btnCancel); end; procedure TProfileForm.DeleteClicked(Sender: TObject); @@ -316,26 +334,28 @@ procedure TProfileForm.DeleteClicked(Sender: TObject); DeleteProfileItemClick(nil); end; -procedure TProfileForm.NewProfilePanelMouseMove(Sender: TObject; Shift: TShiftState; X, - Y: Integer); +procedure TProfileForm.NewProfilePanelMouseMove(Sender: TObject; + Shift: TShiftState; X, Y: Integer); var mEvnt: TTrackMouseEvent; begin - if not FMouseInPanel then begin + if not FMouseInPanel then + begin mEvnt.cbSize := SizeOf(mEvnt); mEvnt.dwFlags := TME_LEAVE; mEvnt.hwndTrack := NewProfilePanel.Handle; TrackMouseEvent(mEvnt); - NewProfilePanel.Color:= $f0e8d8; - FMouseInPanel:= True; + NewProfilePanel.Color := $F0E8D8; + FMouseInPanel := True; end; end; procedure TProfileForm.PanelWndProc(var Message: TMessage); begin - if Message.Msg = WM_MOUSELEAVE then begin - NewProfilePanel.Color:= clBtnFace; - FMouseInPanel:= False; + if Message.Msg = WM_MOUSELEAVE then + begin + NewProfilePanel.Color := clBtnFace; + FMouseInPanel := False; end; FOldWndProc(Message); end; diff --git a/frontend/msProfilePanel.pas b/frontend/msProfilePanel.pas index bd167bd..d83f6ff 100755 --- a/frontend/msProfilePanel.pas +++ b/frontend/msProfilePanel.pas @@ -26,7 +26,7 @@ TProfilePanel = class(TPanel) function GetProfile: TProfile; procedure SetSelectCallback(callback: TNotifyEvent); procedure SetDeleteCallback(callback: TNotifyEvent); - procedure SetGame(i: integer); + procedure SetGame(i: Integer); procedure SetPath(path: string); private aProfile: TProfile; @@ -54,33 +54,27 @@ TProfilePanel = class(TPanel) implementation - -{******************************************************************************} +{ ****************************************************************************** } { TProfilePanel A GUI component for interacting with a profile. } -{******************************************************************************} +{ ****************************************************************************** } constructor TProfilePanel.ICreate(AOwner: TComponent; GameIcons: TImageList; GeneralIcons: TImageList; name: string); const GameItems = 'The Elder Scrolls V: Skyrim'#13#10 + - 'The Elder Scrolls IV: Oblivion'#13#10 + - 'Fallout: New Vegas'#13#10 + - 'Fallout 3'#13#10 + - 'Fallout 4'#13#10 + - 'Skyrim: Special Edition'#13#10 + - 'Skyrim: VR'#13#10 + - 'Enderal'#13#10 + - 'Enderal: Special Edition'; + 'The Elder Scrolls IV: Oblivion'#13#10 + 'Fallout: New Vegas'#13#10 + + 'Fallout 3'#13#10 + 'Fallout 4'#13#10 + 'Skyrim: Special Edition'#13#10 + + 'Skyrim: VR'#13#10 + 'Enderal'#13#10 + 'Enderal: Special Edition'; begin // set up panel inherited Create(AOwner); Parent := AOwner as TWinControl; - Width := (AOwner as TWinControl).ClientWidth; + width := (AOwner as TWinControl).ClientWidth; Height := 100; Left := 0; - Top := 0; + top := 0; ParentBackground := false; ParentColor := false; ParentDoubleBuffered := false; @@ -92,9 +86,9 @@ constructor TProfilePanel.ICreate(AOwner: TComponent; GameIcons: TImageList; aProfile := TProfile.Create(name); self.GameIcons := GameIcons; Selected := false; - ColorInvalid := $d8d8f0; - ColorValid := $d8f0d8; - ColorSelected := $f0e8d8; + ColorInvalid := $D8D8F0; + ColorValid := $D8F0D8; + ColorSelected := $F0E8D8; // create components GameImage := TImage.Create(self); @@ -109,10 +103,10 @@ constructor TProfilePanel.ICreate(AOwner: TComponent; GameIcons: TImageList; // set up GameImage GameImage.Parent := self; - GameImage.Top := 2; + GameImage.top := 2; GameImage.Left := 2; GameImage.Height := 96; - GameImage.Width := 96; + GameImage.width := 96; GameImage.Cursor := crDefault; GameImage.Transparent := true; GameImage.Align := alCustom; @@ -120,7 +114,7 @@ constructor TProfilePanel.ICreate(AOwner: TComponent; GameIcons: TImageList; // set up lblName lblName.Parent := self; - lblName.Top := 11; + lblName.top := 11; lblName.Left := 112; lblName.Caption := 'Name'; lblName.Align := alCustom; @@ -128,7 +122,7 @@ constructor TProfilePanel.ICreate(AOwner: TComponent; GameIcons: TImageList; // set up lblGame lblGame.Parent := self; - lblGame.Top := 38; + lblGame.top := 38; lblGame.Left := 112; lblGame.Caption := 'Game'; lblGame.Align := alCustom; @@ -136,7 +130,7 @@ constructor TProfilePanel.ICreate(AOwner: TComponent; GameIcons: TImageList; // set up lblPath lblPath.Parent := self; - lblPath.Top := 65; + lblPath.top := 65; lblPath.Left := 112; lblPath.Caption := 'Path'; lblPath.Align := alCustom; @@ -144,18 +138,18 @@ constructor TProfilePanel.ICreate(AOwner: TComponent; GameIcons: TImageList; // set up edName edName.Parent := self; - edName.Top := 8; + edName.top := 8; edName.Left := 177; - edName.Width := 227; + edName.width := 227; edName.Text := name; edName.Align := alCustom; edName.Anchors := [akLeft, akTop]; // set up cbGame cbGame.Parent := self; - cbGame.Top := 35; + cbGame.top := 35; cbGame.Left := 177; - cbGame.Width := 227; + cbGame.width := 227; cbGame.Style := csDropDownList; cbGame.Items.Text := GameItems; cbGame.ItemIndex := 0; @@ -164,17 +158,17 @@ constructor TProfilePanel.ICreate(AOwner: TComponent; GameIcons: TImageList; // set up edPath edPath.Parent := self; - edPath.Top := 62; + edPath.top := 62; edPath.Left := 177; - edPath.Width := 227; + edPath.width := 227; edPath.Align := alCustom; edPath.Anchors := [akLeft, akTop]; // set up btnBrowse btnBrowse.Parent := self; - btnBrowse.Top := 61; + btnBrowse.top := 61; btnBrowse.Left := 410; - btnBrowse.Width := 22; + btnBrowse.width := 22; btnBrowse.Height := 23; btnBrowse.Flat := true; btnBrowse.Transparent := true; @@ -184,9 +178,9 @@ constructor TProfilePanel.ICreate(AOwner: TComponent; GameIcons: TImageList; // set up btnDelete btnDelete.Parent := self; - btnDelete.Top := 4; + btnDelete.top := 4; btnDelete.Left := 410; - btnDelete.Width := 22; + btnDelete.width := 22; btnDelete.Height := 23; btnDelete.Flat := true; btnDelete.Transparent := true; @@ -229,9 +223,14 @@ destructor TProfilePanel.Destroy; { EVENT HANDLING } procedure TProfilePanel.ToggleSelect(Sender: TObject); begin - if Cursor = crHandPoint then begin - if Selected then Deselect else Select; - if Assigned(SelectCallback) then SelectCallback(self); + if Cursor = crHandPoint then + begin + if Selected then + Deselect + else + Select; + if Assigned(SelectCallback) then + SelectCallback(self); end; end; @@ -260,13 +259,15 @@ procedure TProfilePanel.Browse(Sender: TObject); procedure TProfilePanel.Delete(Sender: TObject); begin - if Assigned(DeleteCallback) then DeleteCallback(self); + if Assigned(DeleteCallback) then + DeleteCallback(self); end; procedure TProfilePanel.NameChanged(Sender: TObject); begin if FileNameValid(edName.Text) and - (not DirectoryExists(PathList.Values['ProgramPath'] + 'profiles\' + edName.Text)) then + (not DirectoryExists(PathList.Values['ProgramPath'] + 'profiles\' + + edName.Text)) then aProfile.Rename(edName.Text); end; @@ -289,13 +290,15 @@ procedure TProfilePanel.PathChanged(Sender: TObject); aProfile.gamePath := AppendIfMissing(edPath.Text, '\'); // reflect validity in the GUI - if GamePathValid(aProfile.gamePath, aProfile.gameMode) then begin + if GamePathValid(aProfile.gamePath, aProfile.gamemode) then + begin Valid := true; Cursor := crHandPoint; GameImage.Cursor := crHandPoint; Color := ColorValid; end - else begin + else + begin Valid := false; Cursor := crDefault; GameImage.Cursor := crDefault; diff --git a/frontend/msSettingsManager.dfm b/frontend/msSettingsManager.dfm old mode 100644 new mode 100755 index 2e8dadc..f7af668 --- a/frontend/msSettingsManager.dfm +++ b/frontend/msSettingsManager.dfm @@ -352,7 +352,7 @@ object SettingsManager: TSettingsManager Left = 752 Top = 504 Bitmap = { - 494C010104000800000111001100FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 494C010104000800040011001100FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 0000000000003600000028000000440000002200000001002000000000002024 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 @@ -664,7 +664,7 @@ object SettingsManager: TSettingsManager Left = 824 Top = 504 Bitmap = { - 494C0101050008004C0110001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 494C010105000800040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 0000000000003600000028000000400000002000000001002000000000000020 00000000000000000000000000000000000000000000D1D1D12E4F4F4FB01B1B 1BE42B2B2BD48282827DF7F7F708000000000000000000000000000000000000 diff --git a/frontend/msSettingsManager.pas b/frontend/msSettingsManager.pas old mode 100644 new mode 100755 index 112e076..be4eeea --- a/frontend/msSettingsManager.pas +++ b/frontend/msSettingsManager.pas @@ -11,74 +11,75 @@ interface // mte units mteHelpers, mteLogger, mteProgressForm, mteBase, RttiTranslation, // ms units - msCore, msConfiguration, msPluginSelectionForm, msConflictForm, msThreads; + msCore, msConfiguration, msPluginSelectionForm, msConflictForm, msThreads, + System.ImageList; type TSettingsManager = class(TForm) [FormPrefix('msSet')] - Splitter: TSplitter; - [FormSection('Settings')] - pnlEntries: TPanel; - lvSettings: TListView; - [FormSection('Settings Popup Menu')] - SettingsPopupMenu: TPopupMenu; - NewSettingItem: TMenuItem; - DeleteSettingItem: TMenuItem; - CloneSettingItem: TMenuItem; - CombineSettingsItem: TMenuItem; - [FormSection('Details')] - pnlDetails: TPanel; - lblName: TLabel; - edName: TEdit; - lblColor: TLabel; - cbColor: TColorBox; - lblHash: TLabel; - edHash: TEdit; - lblDescription: TLabel; - meDescription: TMemo; - btnSave: TButton; - btnDiscard: TButton; - [FormSection('Tree')] - lblTree: TLabel; - edSearch: TEdit; - tvRecords: TTreeView; - StateImages: TImageList; - FlagIcons: TImageList; - [FormSection('TreePopupMenu')] - TreePopupMenu: TPopupMenu; - LinkItem: TMenuItem; - PruneItem: TMenuItem; - BuildItem: TMenuItem; - ToggleItem: TMenuItem; - AddItem: TMenuItem; - AddAllRecordsItem: TMenuItem; - BuildFromPluginsItem: TMenuItem; - AutosetItem: TMenuItem; - SelectSimilarNodesItem: TMenuItem; - ToggleNodesItem: TMenuItem; - PreserveDeletionsItem: TMenuItem; - OverrideDeletionsItem: TMenuItem; - SingleEntityItem: TMenuItem; - ForceValueItem: TMenuItem; - ChainNodesItem: TMenuItem; - LinkNodeToItem: TMenuItem; - UnlinkNodeItem: TMenuItem; - AutoPruneItem: TMenuItem; - PruneNodesItem: TMenuItem; + Splitter: TSplitter; + [FormSection('Settings')] + pnlEntries: TPanel; + lvSettings: TListView; + [FormSection('Settings Popup Menu')] + SettingsPopupMenu: TPopupMenu; + NewSettingItem: TMenuItem; + DeleteSettingItem: TMenuItem; + CloneSettingItem: TMenuItem; + CombineSettingsItem: TMenuItem; + [FormSection('Details')] + pnlDetails: TPanel; + lblName: TLabel; + edName: TEdit; + lblColor: TLabel; + cbColor: TColorBox; + lblHash: TLabel; + edHash: TEdit; + lblDescription: TLabel; + meDescription: TMemo; + btnSave: TButton; + btnDiscard: TButton; + [FormSection('Tree')] + lblTree: TLabel; + edSearch: TEdit; + tvRecords: TTreeView; + StateImages: TImageList; + FlagIcons: TImageList; + [FormSection('TreePopupMenu')] + TreePopupMenu: TPopupMenu; + LinkItem: TMenuItem; + PruneItem: TMenuItem; + BuildItem: TMenuItem; + ToggleItem: TMenuItem; + AddItem: TMenuItem; + AddAllRecordsItem: TMenuItem; + BuildFromPluginsItem: TMenuItem; + AutosetItem: TMenuItem; + SelectSimilarNodesItem: TMenuItem; + ToggleNodesItem: TMenuItem; + PreserveDeletionsItem: TMenuItem; + OverrideDeletionsItem: TMenuItem; + SingleEntityItem: TMenuItem; + ForceValueItem: TMenuItem; + ChainNodesItem: TMenuItem; + LinkNodeToItem: TMenuItem; + UnlinkNodeItem: TMenuItem; + AutoPruneItem: TMenuItem; + PruneNodesItem: TMenuItem; // TREE METHODS procedure DrawFlag(Canvas: TCanvas; var x, y: Integer; id: Integer); - procedure tvRecordsCustomDrawItem(Sender: TCustomTreeView; - Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean); + procedure tvRecordsCustomDrawItem(Sender: TCustomTreeView; Node: TTreeNode; + State: TCustomDrawState; var DefaultDraw: Boolean); procedure tvRecordsKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); procedure tvRecordsMouseDown(Sender: TObject; Button: TMouseButton; - Shift: TShiftState; X, Y: Integer); + Shift: TShiftState; x, y: Integer); procedure tvRecordsCollapsing(Sender: TObject; Node: TTreeNode; var AllowCollapse: Boolean); procedure tvRecordsKeyPress(Sender: TObject; var Key: Char); - procedure tvRecordsMouseMove(Sender: TObject; Shift: TShiftState; X, - Y: Integer); + procedure tvRecordsMouseMove(Sender: TObject; Shift: TShiftState; + x, y: Integer); procedure LinkNodeItemClick(Sender: TObject); procedure TreePopupMenuPopup(Sender: TObject); procedure AddItemClick(Sender: TObject); @@ -94,11 +95,11 @@ TSettingsManager = class(TForm) procedure UnlinkNodeItemClick(Sender: TObject); procedure LinkNodes(node1, node2: TTreeNode); procedure ChainNodesItemClick(Sender: TObject); - function DumpElement(node: TTreeNode): ISuperObject; + function DumpElement(Node: TTreeNode): ISuperObject; procedure DumpTree; procedure DeleteNodes(var aList: TList); - procedure DeleteChildren(node: TTreeNode); - function CanPruneRecords: boolean; + procedure DeleteChildren(Node: TTreeNode); + function CanPruneRecords: Boolean; procedure AutoPrune; procedure AutoPruneItemClick(Sender: TObject); procedure Autoset(parentNode: TTreeNode); @@ -158,7 +159,8 @@ implementation procedure TSettingsManager.edSearchClick(Sender: TObject); begin // On search field click set bSearchActive to false - if (bSearchActive) and (MessageDlg('Start new search?', mtConfirmation, [mbyes, mbno], 0) = mrYes) then + if (bSearchActive) and (MessageDlg('Start new search?', mtConfirmation, + [mbyes, mbno], 0) = mrYes) then bSearchActive := False; // Empties the search field when clicked and a search is active if not bSearchActive then @@ -168,7 +170,7 @@ procedure TSettingsManager.edSearchClick(Sender: TObject); procedure TSettingsManager.edSearchKeyPress(Sender: TObject; var Key: Char); var i: Integer; - node: TTreeNode; + Node: TTreeNode; begin // Exit if no records are available if tvRecords.Items.Count = 0 then @@ -177,21 +179,24 @@ procedure TSettingsManager.edSearchKeyPress(Sender: TObject; var Key: Char); if Key <> #13 then exit; // Tell the user to enter search term - if (edSearch.Text = 'Search...') or (edSearch.Text = '') then begin + if (edSearch.Text = 'Search...') or (edSearch.Text = '') then + begin ShowMessage('Please enter a search term!'); exit; end; // Do a search when bSearchActive is false - if not bSearchActive then begin + if not bSearchActive then + begin // Clear old results slSearchResults.Clear; - for i := 0 to Pred(tvRecords.Items.Count) do begin - node := tvRecords.Items[i]; + for i := 0 to Pred(tvRecords.Items.Count) do + begin + Node := tvRecords.Items[i]; // Check if search-string is contained in node-text - if ContainsText(node.Text, edSearch.Text) then - slSearchResults.AddObject(node.Text,TObject(node)); + if ContainsText(Node.Text, edSearch.Text) then + slSearchResults.AddObject(Node.Text, TObject(Node)); end; - bSearchActive := True; + bSearchActive := true; // Show result NextSearchResult; Key := #0; @@ -200,10 +205,11 @@ procedure TSettingsManager.edSearchKeyPress(Sender: TObject; var Key: Char); procedure TSettingsManager.NextSearchResult(); var - node: TTreeNode; + Node: TTreeNode; begin // Notify the user of an unsuccessful search and reset search - if slSearchResults.Count = 0 then begin + if slSearchResults.Count = 0 then + begin ShowMessage('No results could be found!'); ResetSearch; exit; @@ -214,18 +220,20 @@ procedure TSettingsManager.NextSearchResult(); exit; // Increase the SearchIndex - Searchindex := Searchindex + 1; + SearchIndex := SearchIndex + 1; // Display the amount of results and the current position in the search field - edSearch.Text := ('Result: ' + InttoStr(Searchindex+1) + ' / ' + InttoStr(slSearchResults.Count+1)); + edSearch.Text := ('Result: ' + InttoStr(SearchIndex + 1) + ' / ' + + InttoStr(slSearchResults.Count + 1)); // Go back to the beginning if end is reached - if Searchindex > Pred(slSearchResults.Count) then begin - Searchindex := 0; + if SearchIndex > Pred(slSearchResults.Count) then + begin + SearchIndex := 0; end; // select the node and set focus - node := TTreeNode(slSearchResults.Objects[Searchindex]); + Node := TTreeNode(slSearchResults.Objects[SearchIndex]); tvRecords.SetFocus; - node.Selected := true; - node.Focused := true; + Node.Selected := true; + Node.Focused := true; end; procedure TSettingsManager.ResetSearch(); @@ -235,7 +243,8 @@ procedure TSettingsManager.ResetSearch(); end; { Tree methods } -procedure TSettingsManager.DrawFlag(Canvas: TCanvas; var x, y: Integer; id: Integer); +procedure TSettingsManager.DrawFlag(Canvas: TCanvas; var x, y: Integer; + id: Integer); var icon: TIcon; begin @@ -259,8 +268,9 @@ procedure TSettingsManager.tvRecordsCustomDrawItem(Sender: TCustomTreeView; R: TRect; x, y: Integer; begin - if Assigned(node.Data) then begin - e := TElementData(node.Data); + if Assigned(Node.Data) then + begin + e := TElementData(Node.Data); R := Node.DisplayRect(true); x := R.Right + 6; y := R.Top; @@ -288,7 +298,8 @@ procedure TSettingsManager.tvRecordsKeyDown(Sender: TObject; var Key: Word; var i: Integer; begin - if (Key = VK_SPACE) then begin + if (Key = VK_SPACE) then + begin for i := 0 to Pred(tvRecords.SelectionCount) do CheckboxManager(tvRecords.Selections[i]); // repaint tree view in case a single entity flag was unset @@ -300,24 +311,26 @@ procedure TSettingsManager.tvRecordsKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then NextSearchResult; - Key := #0; + Key := #0; if Key = ' ' then Key := #0; end; -procedure TSettingsManager.tvRecordsMouseDown(Sender: TObject; Button: TMouseButton; - Shift: TShiftState; X, Y: Integer); +procedure TSettingsManager.tvRecordsMouseDown(Sender: TObject; + Button: TMouseButton; Shift: TShiftState; x, y: Integer); var HT: THitTests; - node: TTreeNode; + Node: TTreeNode; begin // this allows right clicking to be used to select nodes - if Button = mbRight then begin - node := tvRecords.GetNodeAt(X, Y); - if Assigned(node) and not node.Selected then begin - tvRecords.ClearSelection(false); - tvRecords.Select(node); + if Button = mbRight then + begin + Node := tvRecords.GetNodeAt(x, y); + if Assigned(Node) and not Node.Selected then + begin + tvRecords.ClearSelection(False); + tvRecords.Select(Node); end; end; @@ -330,36 +343,37 @@ procedure TSettingsManager.tvRecordsMouseDown(Sender: TObject; Button: TMouseBut // seconds if Now - LastCollapseTime < collapseHitTestDelay then exit; - HT := tvRecords.GetHitTestInfoAt(X, Y); + HT := tvRecords.GetHitTestInfoAt(x, y); if (HT - [htOnStateIcon] <> HT) then - CheckBoxManager(tvRecords.Selected); + CheckboxManager(tvRecords.Selected); // repaint tree view in case a single entity flag was unset tvRecords.Repaint; end; procedure TSettingsManager.tvRecordsMouseMove(Sender: TObject; - Shift: TShiftState; X, Y: Integer); + Shift: TShiftState; x, y: Integer); var - node: TTreeNode; + Node: TTreeNode; e: TElementData; sHint: string; begin // hide hint and exit if shift is down - if (ssShift in Shift) then begin + if (ssShift in Shift) then + begin Application.HideHint; exit; end; // draw hint if on a node - node := tvRecords.GetNodeAt(X, Y); - if not Assigned(node) then + Node := tvRecords.GetNodeAt(x, y); + if not Assigned(Node) then exit; - e := TElementData(node.Data); + e := TElementData(Node.Data); if not Assigned(e) then exit; // get hint - sHint := node.Text + #13#10'Type: '+stToString(e.smashType); + sHint := Node.Text + #13#10'Type: ' + stToString(e.smashType); if e.singleEntity then sHint := sHint + #13#10'Treated as a single entity'; if e.forceValue then @@ -367,26 +381,29 @@ procedure TSettingsManager.tvRecordsMouseMove(Sender: TObject; if e.preserveDeletions then sHint := sHint + #13#10'Preserving deletions'; if e.linkTo <> '' then - sHint := sHint + #13#10'Linked to: '+e.linkTo; + sHint := sHint + #13#10'Linked to: ' + e.linkTo; if e.linkFrom <> '' then - sHint := sHint + #13#10'Linked from: '+e.linkFrom; + sHint := sHint + #13#10'Linked from: ' + e.linkFrom; // display hint if it isn't the last hint we displayed - if sHint <> lastHint then begin + if sHint <> lastHint then + begin tvRecords.Hint := sHint; Application.ActivateHint(Mouse.CursorPos); lastHint := sHint; end; end; -function GetSiblingNode(node: TTreeNode; text: string): TTreeNode; +function GetSiblingNode(Node: TTreeNode; Text: string): TTreeNode; var aNode: TTreeNode; begin Result := nil; - aNode := node.Parent.getFirstChild; - while Assigned(aNode) do begin - if aNode.Text = text then begin + aNode := Node.Parent.getFirstChild; + while Assigned(aNode) do + begin + if aNode.Text = Text then + begin Result := aNode; exit; end; @@ -394,23 +411,27 @@ function GetSiblingNode(node: TTreeNode; text: string): TTreeNode; end; end; -procedure UnlinkNode(node: TTreeNode; bTo, bFrom: boolean); +procedure UnlinkNode(Node: TTreeNode; bTo, bFrom: Boolean); var linkedNode: TTreeNode; e, le: TElementData; begin - e := TElementData(node.Data); - if bTo and (e.linkTo <> '') then begin - linkedNode := GetSiblingNode(node, e.linkTo); - if Assigned(linkedNode) then begin + e := TElementData(Node.Data); + if bTo and (e.linkTo <> '') then + begin + linkedNode := GetSiblingNode(Node, e.linkTo); + if Assigned(linkedNode) then + begin le := TElementData(linkedNode.Data); le.linkFrom := ''; end; e.linkTo := ''; end; - if bFrom and (e.linkFrom <> '') then begin - linkedNode := GetSiblingNode(node, e.linkFrom); - if Assigned(linkedNode) then begin + if bFrom and (e.linkFrom <> '') then + begin + linkedNode := GetSiblingNode(Node, e.linkFrom); + if Assigned(linkedNode) then + begin le := TElementData(linkedNode.Data); le.linkTo := ''; end; @@ -421,12 +442,13 @@ procedure UnlinkNode(node: TTreeNode; bTo, bFrom: boolean); procedure TSettingsManager.UnlinkNodeItemClick(Sender: TObject); var i: Integer; - node: TTreeNode; + Node: TTreeNode; begin // unset link element data attribute for each selected node - for i := 0 to Pred(tvRecords.SelectionCount) do begin - node := tvRecords.Selections[i]; - UnlinkNode(node, true, true); + for i := 0 to Pred(tvRecords.SelectionCount) do + begin + Node := tvRecords.Selections[i]; + UnlinkNode(Node, true, true); end; // update gui @@ -442,8 +464,8 @@ procedure TSettingsManager.LinkNodes(node1, node2: TTreeNode); exit; // unlink nodes as necessary - UnlinkNode(node1, true, false); - UnlinkNode(node2, false, true); + UnlinkNode(node1, true, False); + UnlinkNode(node2, False, true); // link nodes e := TElementData(node1.Data); @@ -455,18 +477,19 @@ procedure TSettingsManager.LinkNodes(node1, node2: TTreeNode); procedure TSettingsManager.ChainNodesItemClick(Sender: TObject); var i: Integer; - prevNode, node: TTreeNode; + prevNode, Node: TTreeNode; begin - node := tvRecords.Selections[0]; - for i := 1 to Pred(tvRecords.SelectionCount) do begin - prevNode := node; - node := tvRecords.Selections[i]; - LinkNodes(prevNode, node); + Node := tvRecords.Selections[0]; + for i := 1 to Pred(tvRecords.SelectionCount) do + begin + prevNode := Node; + Node := tvRecords.Selections[i]; + LinkNodes(prevNode, Node); end; // link last node to first node - prevNode := node; - node := tvRecords.Selections[0]; - LinkNodes(prevNode, node); + prevNode := Node; + Node := tvRecords.Selections[0]; + LinkNodes(prevNode, Node); // repaint tvRecords.Repaint; @@ -474,20 +497,20 @@ procedure TSettingsManager.ChainNodesItemClick(Sender: TObject); procedure TSettingsManager.LinkNodeItemClick(Sender: TObject); var - item: TMenuItem; + Item: TMenuItem; targetNodeText: string; - node, targetNode: TTreeNode; + Node, targetNode: TTreeNode; begin // get the target node to link to from the menu item clicked - node := tvRecords.Selections[0]; - item := TMenuItem(Sender); - targetNodeText := StringReplace(item.Caption, '&', '', [rfReplaceAll]); - targetNode := GetSiblingNode(node, targetNodeText); + Node := tvRecords.Selections[0]; + Item := TMenuItem(Sender); + targetNodeText := StringReplace(Item.Caption, '&', '', [rfReplaceAll]); + targetNode := GetSiblingNode(Node, targetNodeText); if not Assigned(targetNode) then exit; // link the nodes - LinkNodes(node, targetNode); + LinkNodes(Node, targetNode); // update gui tvRecords.Repaint; @@ -496,9 +519,9 @@ procedure TSettingsManager.LinkNodeItemClick(Sender: TObject); procedure TSettingsManager.TreePopupMenuPopup(Sender: TObject); var bHasSelection, bTreeSelected, bHasMultiSelection, bSubrecordSelected, - bHasChildren, bRecordsSelected, bSomeUnChecked, bIsContainer: boolean; + bHasChildren, bRecordsSelected, bSomeUnChecked, bIsContainer: Boolean; i: Integer; - node: TTreeNode; + Node: TTreeNode; MenuItem: TMenuItem; begin // clear link node submenu @@ -506,20 +529,23 @@ procedure TSettingsManager.TreePopupMenuPopup(Sender: TObject); // get selection booleans bHasSelection := tvRecords.SelectionCount > 0; - bTreeSelected := (tvRecords.SelectionCount = 1) - and (tvRecords.Selections[0].Level = 0); + bTreeSelected := (tvRecords.SelectionCount = 1) and + (tvRecords.Selections[0].Level = 0); bHasMultiSelection := tvRecords.SelectionCount > 1; - bSubrecordSelected := (tvRecords.SelectionCount = 1) - and (tvRecords.Selections[0].Level > 1); + bSubrecordSelected := (tvRecords.SelectionCount = 1) and + (tvRecords.Selections[0].Level > 1); // get multiselection booleans - bHasChildren := false; + bHasChildren := False; bRecordsSelected := true; - bSomeUnChecked := false; - for i := 0 to Pred(tvRecords.SelectionCount) do begin + bSomeUnChecked := False; + for i := 0 to Pred(tvRecords.SelectionCount) do + begin bHasChildren := bHasChildren or tvRecords.Selections[i].HasChildren; - bRecordsSelected := bRecordsSelected and (tvRecords.Selections[i].Level = 1); - bSomeUnChecked := bSomeUnChecked or (tvRecords.Selections[i].StateIndex = csUnChecked); + bRecordsSelected := bRecordsSelected and + (tvRecords.Selections[i].Level = 1); + bSomeUnChecked := bSomeUnChecked or + (tvRecords.Selections[i].StateIndex = csUnChecked); end; // enable/disable menu items @@ -531,44 +557,49 @@ procedure TSettingsManager.TreePopupMenuPopup(Sender: TObject); SingleEntityItem.Enabled := bIsContainer and not bRecordsSelected; ForceValueItem.Enabled := bHasSelection and bRecordsSelected; AutoPruneItem.Enabled := CanPruneRecords; - PruneNodesItem.Enabled := bHasSelection and bRecordsSelected and bSomeUnChecked; + PruneNodesItem.Enabled := bHasSelection and bRecordsSelected and + bSomeUnChecked; UnlinkNodeItem.Enabled := bHasSelection and not bTreeSelected; ChainNodesItem.Enabled := bHasMultiSelection and not bTreeSelected; LinkNodeToItem.Enabled := bSubrecordSelected and not bTreeSelected; // build LinkNodeToItem submenu - if bSubrecordSelected then begin - node := tvRecords.Selected.Parent.getFirstChild; - while Assigned(node) do begin - if node = tvRecords.Selections[0] then begin - node := node.getNextSibling; + if bSubrecordSelected then + begin + Node := tvRecords.Selected.Parent.getFirstChild; + while Assigned(Node) do + begin + if Node = tvRecords.Selections[0] then + begin + Node := Node.getNextSibling; continue; end; MenuItem := TMenuItem.Create(LinkNodeToItem); - MenuItem.Caption := node.Text; + MenuItem.Caption := Node.Text; MenuItem.OnClick := LinkNodeItemClick; LinkNodeToItem.Add(MenuItem); - node := node.getNextSibling; + Node := Node.getNextSibling; end; end; end; procedure TSettingsManager.AddItemClick(Sender: TObject); var - item: TMenuItem; + Item: TMenuItem; groupName: string; recObj: ISuperObject; begin - item := (Sender as TMenuItem); - groupName := StringReplace(item.Caption, '&', '', [rfReplaceAll]); + Item := (Sender as TMenuItem); + groupName := StringReplace(Item.Caption, '&', '', [rfReplaceAll]); recObj := GetRecordObj(currentSetting.tree, groupName); // build record def if it isn't already present - if not Assigned(recObj) then begin + if not Assigned(recObj) then + begin if not BuildRecordDef(groupName, recObj) then exit; currentSetting.tree.A['records'].Add(recObj); - LoadElement(tvRecords, tvRecords.Items[0], recObj, false); + LoadElement(tvRecords, tvRecords.Items[0], recObj, False); end; // update gui @@ -591,14 +622,15 @@ procedure TSettingsManager.BuildFromPluginsItemClick(Sender: TObject); // build list of plugin filenames slPlugins := TStringList.Create; slSelection := TStringList.Create; - for i := 0 to Pred(PluginsList.Count) do begin + for i := 0 to Pred(PluginsList.Count) do + begin plugin := TPlugin(PluginsList[i]); slPlugins.Add(plugin.filename); end; // prompt user for plugin selectcion selectionForm := TMiniPluginSelectionForm.Create(self); - selectionForm.pluginsList := slPlugins; + selectionForm.PluginsList := slPlugins; selectionForm.selectionList := slSelection; mr := selectionForm.ShowModal; if mr = mrOK then @@ -613,7 +645,7 @@ procedure TSettingsManager.BuildFromPluginsItemClick(Sender: TObject); procedure TSettingsManager.SelectSimilarNodesItemClick(Sender: TObject); var i, index: Integer; - node: TTreeNode; + Node: TTreeNode; reqSmashType, currentSmashType: TSmashtype; slSelection: TStringList; begin @@ -622,24 +654,27 @@ procedure TSettingsManager.SelectSimilarNodesItemClick(Sender: TObject); try // Add "Text" and "SmashType" of selected nodes to StringList // Note: "SmashType" has to be converted to be used in a StringList - for i := 0 to Pred(tvRecords.SelectionCount) do begin - node := tvRecords.Selections[i]; - reqSmashType := TElementData(node.Data).smashType; + for i := 0 to Pred(tvRecords.SelectionCount) do + begin + Node := tvRecords.Selections[i]; + reqSmashType := TElementData(Node.Data).smashType; // "SmashType" converted into TObject - slSelection.AddObject(node.Text, TObject(reqSmashType)); + slSelection.AddObject(Node.Text, TObject(reqSmashType)); end; // Go through all nodes and check if their "Text" is in StringList - for i := 0 to Pred(tvRecords.Items.Count) do begin - node := tvRecords.Items[i]; - currentSmashType := TElementData(node.Data).smashType; - index := slSelection.IndexOf(node.Text); + for i := 0 to Pred(tvRecords.Items.Count) do + begin + Node := tvRecords.Items[i]; + currentSmashType := TElementData(Node.Data).smashType; + index := slSelection.IndexOf(Node.Text); // If a "Text" is found, get associated "SmashType" from StringList - if (index > -1) then begin + if (index > -1) then + begin // Convert "SmashType" back to TSmashType - reqSmashType := TSmashType(slSelection.Objects[index]); - // Check if node's and saved "SmashType" match and if node is selected - if (currentSmashType = reqSmashType) and not node.Selected then - tvRecords.Select(node, [ssCtrl]); + reqSmashType := TSmashtype(slSelection.Objects[index]); + // Check if node's and saved "SmashType" match and if node is selected + if (currentSmashType = reqSmashType) and not Node.Selected then + tvRecords.Select(Node, [ssCtrl]); end; end; finally @@ -659,14 +694,15 @@ procedure TSettingsManager.ToggleNodesItemClick(Sender: TObject); procedure TSettingsManager.PreserveDeletionsItemClick(Sender: TObject); var i: Integer; - node: TTreeNode; + Node: TTreeNode; e: TElementData; begin - for i := 0 to Pred(tvRecords.SelectionCount) do begin - node := tvRecords.Selections[i]; - if not node.hasChildren then + for i := 0 to Pred(tvRecords.SelectionCount) do + begin + Node := tvRecords.Selections[i]; + if not Node.HasChildren then continue; - e := TElementData(node.Data); + e := TElementData(Node.Data); e.preserveDeletions := not e.preserveDeletions; end; tvRecords.Repaint; @@ -675,14 +711,15 @@ procedure TSettingsManager.PreserveDeletionsItemClick(Sender: TObject); procedure TSettingsManager.OverrideDeletionsItemClick(Sender: TObject); var i: Integer; - node: TTreeNode; + Node: TTreeNode; e: TElementData; begin - for i := 0 to Pred(tvRecords.SelectionCount) do begin - node := tvRecords.Selections[i]; - if not node.hasChildren then + for i := 0 to Pred(tvRecords.SelectionCount) do + begin + Node := tvRecords.Selections[i]; + if not Node.HasChildren then continue; - e := TElementData(node.Data); + e := TElementData(Node.Data); e.overrideDeletions := not e.overrideDeletions; end; tvRecords.Repaint; @@ -691,27 +728,29 @@ procedure TSettingsManager.OverrideDeletionsItemClick(Sender: TObject); procedure TSettingsManager.SingleEntityItemClick(Sender: TObject); var i, expectedLevel: Integer; - node: TTreeNode; + Node: TTreeNode; e: TElementData; begin expectedLevel := 0; - for i := 0 to Pred(tvRecords.SelectionCount) do begin - node := tvRecords.Selections[i]; + for i := 0 to Pred(tvRecords.SelectionCount) do + begin + Node := tvRecords.Selections[i]; if expectedLevel = 0 then - expectedLevel := node.Level; - if not node.hasChildren then + expectedLevel := Node.Level; + if not Node.HasChildren then continue; - if expectedLevel <> node.Level then + if expectedLevel <> Node.Level then continue; - e := TElementData(node.Data); + e := TElementData(Node.Data); e.singleEntity := not e.singleEntity; if e.singleEntity then - node.StateIndex := csPartiallyChecked - else begin - SetChildren(node, csChecked); - node.StateIndex := csChecked; + Node.StateIndex := csPartiallyChecked + else + begin + SetChildren(Node, csChecked); + Node.StateIndex := csChecked; end; - UpdateParent(node.Parent); + UpdateParent(Node.Parent); end; tvRecords.Repaint; end; @@ -719,12 +758,13 @@ procedure TSettingsManager.SingleEntityItemClick(Sender: TObject); procedure TSettingsManager.ForceValueItemClick(Sender: TObject); var i: Integer; - node: TTreeNode; + Node: TTreeNode; e: TElementData; begin - for i := 0 to Pred(tvRecords.SelectionCount) do begin - node := tvRecords.Selections[i]; - e := TElementData(node.Data); + for i := 0 to Pred(tvRecords.SelectionCount) do + begin + Node := tvRecords.Selections[i]; + e := TElementData(Node.Data); e.forceValue := not e.forceValue; end; tvRecords.Repaint; @@ -737,97 +777,96 @@ procedure TSettingsManager.AutoPruneItemClick(Sender: TObject); procedure TSettingsManager.Autoset(parentNode: TTreeNode); const - disabledElements: array[0..2] of string = ( - 'Record Header', - 'Unused', - 'Unknown' - ); - disabledRecords: array[0..5] of string = ( - 'DOBJ', - 'LCTN', - 'IDLE', - 'NAVM', - 'NAVI', - 'RACE' - ); + disabledElements: array [0 .. 2] of string = ('Record Header', 'Unused', + 'Unknown'); + disabledRecords: array [0 .. 5] of string = ('DOBJ', 'LCTN', 'IDLE', 'NAVM', + 'NAVI', 'RACE'); var i: Integer; - node, nextNode: TTreeNode; + Node, nextNode: TTreeNode; e: TElementData; - bParentIsRoot, bParentIsRecord: boolean; + bParentIsRoot, bParentIsRecord: Boolean; begin // get parent booleans bParentIsRoot := parentNode.Level = 0; bParentIsRecord := parentNode.Level = 1; // loop through children - node := parentNode.getFirstChild; - while Assigned(node) do begin - node.StateIndex := csChecked; - e := TElementData(node.Data); - - if Assigned(e) then begin + Node := parentNode.getFirstChild; + while Assigned(Node) do + begin + Node.StateIndex := csChecked; + e := TElementData(Node.Data); + + if Assigned(e) then + begin // if parent is root, preserve deletions if bParentIsRoot then e.preserveDeletions := true; // if parent is record, perform case statement on type - if bParentIsRecord then begin + if bParentIsRecord then + begin case Ord(e.smashType) of - Ord(stStruct): begin - e.singleEntity := true; - node.StateIndex := csPartiallyChecked; - end; - Ord(stUnsortedStructArray): begin - e.singleEntity := true; - e.preserveDeletions := true; - node.StateIndex := csPartiallyChecked; - end; - Ord(stSortedArray), - Ord(stSortedStructArray): + Ord(stStruct): + begin + e.singleEntity := true; + Node.StateIndex := csPartiallyChecked; + end; + Ord(stUnsortedStructArray): + begin + e.singleEntity := true; + e.preserveDeletions := true; + Node.StateIndex := csPartiallyChecked; + end; + Ord(stSortedArray), Ord(stSortedStructArray): e.preserveDeletions := true; Ord(stByteArray): - node.StateIndex := csUnChecked; + Node.StateIndex := csUnChecked; end; end; end; // if we're not on the root, disable elements that match // a string in the disableElements array - if not bParentIsRoot then begin + if not bParentIsRoot then + begin for i := Low(disabledElements) to High(disabledElements) do - if Pos(disabledElements[i], node.Text) > 0 then begin - node.StateIndex := csUnChecked; - e.singleEntity := false; - e.preserveDeletions := false; + if Pos(disabledElements[i], Node.Text) > 0 then + begin + Node.StateIndex := csUnChecked; + e.singleEntity := False; + e.preserveDeletions := False; end; end // else disable records that match a string in the // disabledRecords array - else begin + else + begin for i := Low(disabledRecords) to High(disabledRecords) do - if Pos(disabledRecords[i], node.Text) = 1 then begin - node.StateIndex := csUnChecked; - e.singleEntity := false; - e.preserveDeletions := false; + if Pos(disabledRecords[i], Node.Text) = 1 then + begin + Node.StateIndex := csUnChecked; + e.singleEntity := False; + e.preserveDeletions := False; end; end; // disable count elements - if bParentIsRecord then begin - nextNode := node.getNextSibling; - if Assigned(nextNode) - and (TElementData(nextNode.Data).smashType in stArrays) - and (Pos('Count', node.Text) > 0) then - node.StateIndex := csUnChecked; + if bParentIsRecord then + begin + nextNode := Node.getNextSibling; + if Assigned(nextNode) and (TElementData(nextNode.Data).smashType + in stArrays) and (Pos('Count', Node.Text) > 0) then + Node.StateIndex := csUnChecked; end; // recurse - if (node.HasChildren) and (node.StateIndex <> csUnChecked) then - Autoset(node); + if (Node.HasChildren) and (Node.StateIndex <> csUnChecked) then + Autoset(Node); // go to next sibling - node := node.getNextSibling; + Node := Node.getNextSibling; end; // update parent node @@ -845,9 +884,10 @@ procedure TSettingsManager.AutosetItemClick(Sender: TObject); begin // confirm with the user that this is what they // really want to do - mr := MessageDlg(msg, mtConfirmation, [mbYes, mbNo], 0); - if mr = mrYes then begin - Enabled := false; + mr := MessageDlg(msg, mtConfirmation, [mbyes, mbno], 0); + if mr = mrYes then + begin + Enabled := False; Autoset(tvRecords.Items[0]); Enabled := true; end; @@ -856,21 +896,22 @@ procedure TSettingsManager.AutosetItemClick(Sender: TObject); procedure TSettingsManager.PruneNodesItemClick(Sender: TObject); var i: Integer; - node: TTreeNode; + Node: TTreeNode; nodesToPrune: TList; begin nodesToPrune := TList.Create; - for i := 0 to Pred(tvRecords.SelectionCount) do begin - node := tvRecords.Selections[i]; - if (node.Level = 1) and (node.StateIndex = csUnChecked) then - nodesToPrune.Add(node); + for i := 0 to Pred(tvRecords.SelectionCount) do + begin + Node := tvRecords.Selections[i]; + if (Node.Level = 1) and (Node.StateIndex = csUnChecked) then + nodesToPrune.Add(Node); end; DeleteNodes(nodesToPrune); nodesToPrune.Free; UpdateParent(tvRecords.Items[0].getFirstChild); end; -function TSettingsManager.DumpElement(node: TTreeNode): ISuperObject; +function TSettingsManager.DumpElement(Node: TTreeNode): ISuperObject; var obj: ISuperObject; child: TTreeNode; @@ -879,35 +920,37 @@ function TSettingsManager.DumpElement(node: TTreeNode): ISuperObject; begin obj := SO; // get name - obj.S['n'] := node.Text; + obj.S['n'] := Node.Text; // get data properties - e := TElementData(node.Data); + e := TElementData(Node.Data); if (e.priority > 0) then - obj.I['r'] := e.priority; - if (node.StateIndex <> csUnChecked) then - obj.I['p'] := 1; + obj.i['r'] := e.priority; + if (Node.StateIndex <> csUnChecked) then + obj.i['p'] := 1; if (e.preserveDeletions) then - obj.I['d'] := 1; + obj.i['d'] := 1; if (e.overrideDeletions) then - obj.I['o'] := 1; + obj.i['o'] := 1; if (e.singleEntity) then - obj.I['s'] := 1; + obj.i['s'] := 1; if (e.forceValue) then - obj.I['f'] := 1; + obj.i['f'] := 1; if (e.smashType <> stUnknown) then - obj.I['t'] := Ord(e.smashType); + obj.i['t'] := Ord(e.smashType); if (e.linkTo <> '') then obj.S['lt'] := e.linkTo; if (e.linkFrom <> '') then obj.S['lf'] := e.linkFrom; // exit if no children to dump - if node.hasChildren then begin + if Node.HasChildren then + begin // dump subrecords (children) obj.O['c'] := SA([]); - child := node.getFirstChild; + child := Node.getFirstChild; i := 0; - while Assigned(child) do begin + while Assigned(child) do + begin obj.A['c'].O[i] := DumpElement(child); child := child.getNextSibling; Inc(i); @@ -921,19 +964,20 @@ procedure TSettingsManager.DumpTree; var i: Integer; obj: ISuperObject; - node, rootNode: TTreeNode; + Node, rootNode: TTreeNode; begin obj := SO; obj.O['records'] := SA([]); rootNode := tvRecords.Items[0]; // loop through records - node := rootNode.getFirstChild; + Node := rootNode.getFirstChild; i := 0; - while Assigned(node) do begin - obj.A['records'].O[i] := DumpElement(node); + while Assigned(Node) do + begin + obj.A['records'].O[i] := DumpElement(Node); Inc(i); - node := node.getNextSibling; + Node := Node.getNextSibling; end; currentSetting.tree := obj; @@ -950,26 +994,28 @@ procedure TSettingsManager.edNameChange(Sender: TObject); procedure TSettingsManager.DeleteNodes(var aList: TList); var i: Integer; - node: TTreeNode; + Node: TTreeNode; begin // delete nodes in reverse order - for i := Pred(aList.Count) downto 0 do begin - node := TTreeNode(aList[i]); - if node.HasChildren then - DeleteChildren(node); - tvRecords.Items.Delete(node); + for i := Pred(aList.Count) downto 0 do + begin + Node := TTreeNode(aList[i]); + if Node.HasChildren then + DeleteChildren(Node); + tvRecords.Items.Delete(Node); end; end; -procedure TSettingsManager.DeleteChildren(node: TTreeNode); +procedure TSettingsManager.DeleteChildren(Node: TTreeNode); var nodesToDelete: TList; child: TTreeNode; begin nodesToDelete := TList.Create; - child := node.getFirstChild; + child := Node.getFirstChild; // get nodes to prune - while Assigned(child) do begin + while Assigned(child) do + begin nodesToDelete.Add(child); child := child.getNextSibling; end; @@ -982,18 +1028,20 @@ procedure TSettingsManager.AutoPrune; var mr: Integer; nodesToPrune: TList; - node: TTreeNode; + Node: TTreeNode; begin - mr := MessageDlg('Your setting tree has records that can be pruned. '+ - 'Would you like to prune them?', mtConfirmation, [mbYes, mbNo], 0); - if mr = mrYes then begin + mr := MessageDlg('Your setting tree has records that can be pruned. ' + + 'Would you like to prune them?', mtConfirmation, [mbyes, mbno], 0); + if mr = mrYes then + begin nodesToPrune := TList.Create; - node := tvRecords.Items[0].getFirstChild; + Node := tvRecords.Items[0].getFirstChild; // get nodes to prune - while Assigned(node) do begin - if node.StateIndex = csUnChecked then - nodesToPrune.Add(node); - node := node.getNextSibling; + while Assigned(Node) do + begin + if Node.StateIndex = csUnChecked then + nodesToPrune.Add(Node); + Node := Node.getNextSibling; end; // prune nodes DeleteNodes(nodesToPrune); @@ -1001,36 +1049,40 @@ procedure TSettingsManager.AutoPrune; end; end; -function TSettingsManager.CanPruneRecords: boolean; +function TSettingsManager.CanPruneRecords: Boolean; var - node: TTreeNode; + Node: TTreeNode; begin - Result := false; - node := tvRecords.Items[0].getFirstChild; - while Assigned(node) do begin - if node.StateIndex = csUnChecked then begin + Result := False; + Node := tvRecords.Items[0].getFirstChild; + while Assigned(Node) do + begin + if Node.StateIndex = csUnChecked then + begin Result := true; break; end; - node := node.getNextSibling; + Node := Node.getNextSibling; end; end; - -{******************************************************************************} +{ ****************************************************************************** } { Settings Manager Events } -{******************************************************************************} +{ ****************************************************************************** } -function TSettingsManager.GetGroup(name: string; var group: TListGroup): Boolean; +function TSettingsManager.GetGroup(name: string; var group: TListGroup) + : Boolean; var i: Integer; begin - Result := false; + Result := False; // get the group - for i := 0 to Pred(lvSettings.Groups.Count) do begin + for i := 0 to Pred(lvSettings.Groups.Count) do + begin group := lvSettings.Groups[i]; - if SameText(group.Header, name) then begin + if SameText(group.Header, name) then + begin Result := true; break; end; @@ -1041,32 +1093,33 @@ procedure TSettingsManager.AddSettingItem(aSetting: TSmashSetting; bSelect: Boolean = true); var index: Integer; - item: TListItem; + Item: TListItem; sGroupName: string; group: TListGroup; begin // add item to list view - item := lvSettings.Items.Add; - item.Caption := aSetting.name; - item.SubItems.Add(aSetting.records); + Item := lvSettings.Items.Add; + Item.Caption := aSetting.name; + Item.SubItems.Add(aSetting.records); // get group sGroupName := 'Ungrouped'; index := Pos('.', aSetting.name); if index > 0 then sGroupName := Copy(aSetting.name, 1, index - 1); - if not GetGroup(sGroupName, group) then begin + if not GetGroup(sGroupName, group) then + begin group := lvSettings.Groups.Add; group.Header := sGroupName; group.State := [lgsCollapsible]; end; // assign group - item.GroupID := group.ID; + Item.GroupID := group.id; // set selected item to the new setting if bSelect then - SelectSetting(item.Index); + SelectSetting(Item.index); end; procedure TSettingsManager.FormCreate(Sender: TObject); @@ -1087,9 +1140,10 @@ procedure TSettingsManager.FormCreate(Sender: TObject); lvSettings.Items.Count := SmashSettings.Count; // prepare groups and load items - for i := 0 to Pred(SmashSettings.Count) do begin + for i := 0 to Pred(SmashSettings.Count) do + begin aSetting := TSmashSetting(SmashSettings[i]); - AddSettingItem(aSetting, false); + AddSettingItem(aSetting, False); end; // Create the StringList for the Search @@ -1114,8 +1168,8 @@ procedure TSettingsManager.FormShow(Sender: TObject); TVS_NOTOOLTIPS = $0080; begin // disable tool tips on tree view - SetWindowLong(tvRecords.Handle, GWL_STYLE, - GetWindowLong(tvRecords.Handle, GWL_STYLE) or TVS_NOTOOLTIPS); + SetWindowLong(tvRecords.Handle, GWL_STYLE, GetWindowLong(tvRecords.Handle, + GWL_STYLE) or TVS_NOTOOLTIPS); // build AddItem submenu PopulateAddList(AddItem, AddItemClick); @@ -1138,18 +1192,19 @@ procedure TSettingsManager.lvSettingsChange(Sender: TObject; Item: TListItem; Change: TItemChange); begin tvRecords.Items.Clear; - if (lvSettings.ItemIndex = -1) then begin + if (lvSettings.ItemIndex = -1) then + begin currentSetting := nil; edName.Text := ''; - edName.Enabled := false; + edName.Enabled := False; cbColor.Selected := clBlack; - cbColor.Enabled := false; + cbColor.Enabled := False; edHash.Text := '$00000000'; meDescription.Text := ''; - meDescription.Enabled := false; - tvRecords.Enabled := false; - btnSave.Enabled := false; - btnDiscard.Enabled := false; + meDescription.Enabled := False; + tvRecords.Enabled := False; + btnSave.Enabled := False; + btnDiscard.Enabled := False; exit; end; @@ -1198,7 +1253,8 @@ procedure TSettingsManager.btnSaveClick(Sender: TObject); // we can prune records, // then dump the records tree index := NewSettings.IndexOf(currentSetting); - if (index > -1) then begin + if (index > -1) then + begin if CanPruneRecords then AutoPrune; NewSettings.Delete(index); @@ -1213,7 +1269,7 @@ procedure TSettingsManager.btnSaveClick(Sender: TObject); // adjust the current setting in the list view GetGroup(currentSetting.name, group); - currentSettingItem.GroupID := group.ID; + currentSettingItem.GroupID := group.id; currentSettingItem.Caption := currentSetting.name; currentSettingItem.SubItems[0] := currentSetting.records; @@ -1224,48 +1280,50 @@ procedure TSettingsManager.btnSaveClick(Sender: TObject); procedure TSettingsManager.lvSettingsDrawItem(Sender: TCustomListView; Item: TListItem; Rect: TRect; State: TOwnerDrawState); var - i, x, y: integer; + i, x, y: Integer; lv: TListView; aSetting: TSmashSetting; begin lv := TListView(Sender); // get color - aSetting := TSmashSetting(SmashSettings[Item.Index]); - lv.Canvas.Font.Color := aSetting.color; + aSetting := TSmashSetting(SmashSettings[Item.index]); + lv.Canvas.Font.color := aSetting.color; lv.Canvas.Font.Style := [fsBold]; lv.Canvas.Refresh; // draw selected rect - if Item.Selected then begin - lv.Canvas.Brush.Color := $FFEEDD; + if Item.Selected then + begin + lv.Canvas.Brush.color := $FFEEDD; lv.Canvas.FillRect(Rect); end; // draw item x := Rect.Left; y := (Rect.Bottom - Rect.Top - lv.Canvas.TextHeight('Hg')) div 2 + Rect.Top; - lv.Canvas.TextOut(x, y, ' '+Item.Caption); + lv.Canvas.TextOut(x, y, ' ' + Item.Caption); // draw subitems - for i := 0 to Item.SubItems.Count - 1 do begin - Inc(x, ListView_GetColumnWidth(lv.Handle, lv.Columns[i].Index)); - lv.Canvas.TextOut(x, y, ' '+Item.SubItems[i]); + for i := 0 to Item.SubItems.Count - 1 do + begin + Inc(x, ListView_GetColumnWidth(lv.Handle, lv.Columns[i].index)); + lv.Canvas.TextOut(x, y, ' ' + Item.SubItems[i]); end; end; -{******************************************************************************} +{ ****************************************************************************** } { SettingPopupMenu methods Methods for dealing with the popup menu for the settings list view. - NewSettingItemClick - EditSettingItemClick - DeleteSettingItemClick } -{******************************************************************************} +{ ****************************************************************************** } procedure TSettingsManager.SettingsPopupMenuPopup(Sender: TObject); var - bHasSelection, bHasMultiSelection: boolean; + bHasSelection, bHasMultiSelection: Boolean; begin bHasSelection := Assigned(lvSettings.Selected); bHasMultiSelection := lvSettings.SelCount > 1; @@ -1290,7 +1348,8 @@ procedure TSettingsManager.DeleteSettingItemClick(Sender: TObject); i, index: Integer; setting: TSmashSetting; begin - for i := Pred(lvSettings.Items.Count) downto 0 do begin + for i := Pred(lvSettings.Items.Count) downto 0 do + begin if not lvSettings.Items[i].Selected then continue; lvSettings.Items.Delete(i); @@ -1312,7 +1371,7 @@ procedure TSettingsManager.CloneSettingItemClick(Sender: TObject); setting, clonedSetting: TSmashSetting; begin clonedSetting := TSmashSetting.Create; - setting := TSmashSetting(SmashSettings[lvSettings.Selected.Index]); + setting := TSmashSetting(SmashSettings[lvSettings.Selected.index]); clonedSetting.Clone(setting); SmashSettings.Add(clonedSetting); // add setting to list view @@ -1337,7 +1396,8 @@ procedure TSettingsManager.CombineSettingsItemClick(Sender: TObject); try // add selected settings to the settingsToCombine list - for i := 0 to Pred(lvSettings.Items.Count) do begin + for i := 0 to Pred(lvSettings.Items.Count) do + begin ListItem := lvSettings.Items[i]; if not ListItem.Selected then continue; @@ -1348,19 +1408,22 @@ procedure TSettingsManager.CombineSettingsItemClick(Sender: TObject); // build a list of the record objects in the settings // if conflicts found, have user resolve them - if CombineSettingTrees(settingsToCombine, slRecords) then begin + if CombineSettingTrees(settingsToCombine, slRecords) then + begin cForm := TConflictForm.Create(self); cForm.slConflicts := slRecords; if cForm.ShowModal = mrOK then CreateCombinedSetting(slRecords, sl.DelimitedText); end // else just create the combined setting - else begin + else + begin CreateCombinedSetting(slRecords, sl.DelimitedText); end; finally // update lvSettings if we created a new setting - if SmashSettings.Count > lvSettings.Items.Count then begin + if SmashSettings.Count > lvSettings.Items.Count then + begin setting := TSmashSetting(SmashSettings[Pred(SmashSettings.Count)]); AddSettingItem(setting); end; diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 88849fb..ad9223f 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -13,8 +13,8 @@ interface // xEdit units wbInterface, wbImplementation; - procedure BuildPatch(var patch: TPatch); - procedure RebuildPatch(var patch: TPatch); +procedure BuildPatch(var patch: TPatch); +procedure RebuildPatch(var patch: TPatch); implementation @@ -23,10 +23,11 @@ procedure BuildPluginsList(var patch: TPatch; var lst: TList); i: Integer; plugin: TPlugin; begin - for i := 0 to Pred(patch.plugins.Count) do begin + for i := 0 to Pred(patch.plugins.Count) do + begin plugin := PluginByFileName(patch.plugins[i]); if not Assigned(plugin) then - raise Exception.Create('Couldn''t find plugin '+patch.plugins[i]); + raise Exception.Create('Couldn''t find plugin ' + patch.plugins[i]); lst.Add(plugin); end; end; @@ -39,9 +40,11 @@ procedure SetPatchAttributes(var patch: TPatch); patchFile := patch.plugin._File; fileHeader := patchFile.Elements[0] as IwbMainRecord; // set author - fileHeader.ElementEditValues['CNAM'] := 'Mator Smash v' + ProgramStatus.Version; + fileHeader.ElementEditValues['CNAM'] := 'Mator Smash v' + + ProgramStatus.Version; // set description - fileHeader.ElementEditValues['SNAM'] := 'Smashed patch:'#13#10 + patch.plugins.Text; + fileHeader.ElementEditValues['SNAM'] := 'Smashed patch:'#13#10 + + patch.plugins.Text; // set ESL flag fileHeader.IsESL := settings.flagESL; end; @@ -55,28 +58,33 @@ function GetPatchFile(var patch: TPatch; var lst: TList): IwbFile; begin // get plugin if it exists // else create it - plugin := PluginByFilename(patch.filename); + plugin := PluginByFileName(patch.filename); patch.plugin := nil; - if Assigned(plugin) then begin + if Assigned(plugin) then + begin bUsedExistingFile := true; patch.plugin := plugin; end - else begin + else + begin bUsedExistingFile := false; patch.plugin := CreateNewPlugin(patch.filename); end; // don't patch if patchFile not assigned - if not Assigned(patch.plugin) then + if not Assigned(patch.plugin) then raise Exception.Create('Couldn''t assign patch file'); // don't patch if patchFile is at an invalid load order position relative // to the plugins being patched - if bUsedExistingFile then begin - for i := 0 to Pred(lst.Count) do begin + if bUsedExistingFile then + begin + for i := 0 to Pred(lst.Count) do + begin plugin := TPlugin(lst[i]); if PluginsList.IndexOf(plugin) > PluginsList.IndexOf(patch.plugin) then - raise Exception.Create(Format('%s is at a lower load order position than %s', + raise Exception.Create + (Format('%s is at a lower load order position than %s', [plugin.filename, patch.filename])); end; @@ -89,18 +97,18 @@ function GetPatchFile(var patch: TPatch; var lst: TList): IwbFile; // set result Result := patch.plugin._File; Tracker.Write(' '); - Tracker.Write('Patch is using plugin: '+patch.plugin.filename); + Tracker.Write('Patch is using plugin: ' + patch.plugin.filename); end; function CompareLoadOrder(List: TStringList; Index1, Index2: Integer): Integer; begin - if Index1 = Index2 then begin + if Index1 = Index2 then + begin Result := 0; Exit; end; - Result := CmpI32( - IwbFile(Pointer(List.Objects[Index1])).LoadOrder, + Result := CmpI32(IwbFile(Pointer(List.Objects[Index1])).LoadOrder, IwbFile(Pointer(List.Objects[Index2])).LoadOrder); end; @@ -110,39 +118,45 @@ procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); i, j: Integer; begin slMasters := TStringList.Create; - slMasters.Sorted := True; + slMasters.Sorted := true; slMasters.Duplicates := dupIgnore; try try el.ReportRequiredMasters(slMasters, false, true, false); if settings.debugMasters then - Tracker.Write('Element '+el.Name+' from '+el._File.Filename+' requires masters: ' + slMasters.CommaText); - + Tracker.Write('Element ' + el.Name + ' from ' + el._File.filename + + ' requires masters: ' + slMasters.CommaText); for i := 0 to Pred(aFile.MasterCount[true]) do - if slMasters.Find(aFile.Masters[i, true].FileName, j) then + if slMasters.Find(aFile.Masters[i, true].filename, j) then slMasters.Delete(j); - if slMasters.Find(aFile.FileName, j) then + if slMasters.Find(aFile.filename, j) then slMasters.Delete(j); - if slMasters.Count > 0 then begin + if slMasters.Count > 0 then + begin for i := 0 to Pred(slMasters.Count) do - if IwbFile(Pointer(slMasters.Objects[i])).LoadOrder >= aFile.LoadOrder then - raise Exception.Create('The required master "' + slMasters[i] + '" can not be added to "' + aFile.FileName + '" as it has a higher load order'); + if IwbFile(Pointer(slMasters.Objects[i])).LoadOrder >= aFile.LoadOrder + then + raise Exception.Create('The required master "' + slMasters[i] + + '" can not be added to "' + aFile.filename + + '" as it has a higher load order'); - slMasters.Sorted := False; + slMasters.Sorted := false; slMasters.CustomSort(CompareLoadOrder); if (aFile.MasterCount[true] + slMasters.Count >= 253) then aFile.CleanMasters; aFile.AddMasters(slMasters); - Logger.Write('PATCH', 'MASTERS', 'Added masters: ' + slMasters.CommaText); + Logger.Write('PATCH', 'MASTERS', 'Added masters: ' + + slMasters.CommaText); if settings.debugMasters then Tracker.Write('Adding masters: ' + slMasters.CommaText); end; except - on x: Exception do begin + on x: Exception do + begin Tracker.Write('Critical exception adding masters!'); Tracker.Write(x.Message); raise x; @@ -159,31 +173,39 @@ procedure ListParents(const rec: IwbMainRecord; var parents: TInterfaceList); var grup: IwbGroupRecord; begin - if Supports(rec.Container, IwbGroupRecord, grup) and Assigned(grup.ChildrenOf) then begin - if parents.IndexOf(grup.ChildrenOf) = -1 then begin + if Supports(rec.Container, IwbGroupRecord, grup) and Assigned(grup.ChildrenOf) + then + begin + if parents.IndexOf(grup.ChildrenOf) = -1 then + begin parents.Insert(0, grup.ChildrenOf); ListParents(grup.ChildrenOf, parents); end end; end; - procedure AddParents(var patch: TPatch; const rec: IwbElement); var grup: IwbGroupRecord; begin - if Supports(rec.Container, IwbGroupRecord, grup) and Assigned(grup.ChildrenOf) then begin - if not Assigned(patch.plugin._File.RecordByFormID[grup.ChildrenOf.FormID, true, true]) then begin + if Supports(rec.Container, IwbGroupRecord, grup) and Assigned(grup.ChildrenOf) + then + begin + if not Assigned(patch.plugin._File.RecordByFormID[grup.ChildrenOf.FormID, + true, true]) then + begin AddParents(patch, grup.ChildrenOf); - Tracker.Write(Format('Copying parent record %s of %s', [grup.ChildrenOf.Name, rec.Name])); + Tracker.Write(Format('Copying parent record %s of %s', + [grup.ChildrenOf.Name, rec.Name])); AddRequiredMasters(patch.plugin._File, grup.ChildrenOf); - grup.ChildrenOf.CopyInto(patch.plugin._File, false, false, '', '', '', ''); + grup.ChildrenOf.CopyInto(patch.plugin._File, false, false, '', + '', '', ''); end end; end; procedure BuildOverridesList(var patch: TPatch; var lst: TList; - var records: TInterfaceList); + var Records: TInterfaceList); var i, j, recCount: Integer; plugin: TPlugin; @@ -194,8 +216,10 @@ procedure BuildOverridesList(var patch: TPatch; var lst: TList; begin Tracker.Write(' '); Tracker.Write('Processing files'); - for i := 0 to Pred(lst.Count) do begin - if Tracker.Cancel then break; + for i := 0 to Pred(lst.Count) do + begin + if Tracker.Cancel then + break; plugin := TPlugin(lst[i]); // get file and setting for later use @@ -203,10 +227,12 @@ procedure BuildOverridesList(var patch: TPatch; var lst: TList; aSetting := plugin.smashSetting; // loop through file records - Tracker.Write('Processing '+plugin._File.Name); + Tracker.Write('Processing ' + plugin._File.Name); recCount := Pred(aFile.RecordCount); - for j := 0 to recCount do begin - if Tracker.Cancel then break; + for j := 0 to recCount do + begin + if Tracker.Cancel then + break; rec := aFile.Records[j]; if j mod 500 = 499 then Tracker.UpdateProgress(500); @@ -224,20 +250,21 @@ procedure BuildOverridesList(var patch: TPatch; var lst: TList; recObj := aSetting.GetRecordDef(rec.Signature); if not Assigned(recObj) then continue; - if (recObj.I['p'] <> 1) then + if (recObj.i['p'] <> 1) then continue; // skip non-conflicting records if ConflictAllForMainRecord(rec) < caConflict then continue; // add parent record(s) to list first so they get smashed first? - ListParents(rec, records); + ListParents(rec, Records); // add record to overrides list - if records.IndexOf(rec) = -1 then - records.Add(rec); + if Records.IndexOf(rec) = -1 then + Records.Add(rec); except - on x: Exception do begin + on x: Exception do + begin Tracker.Write(' Error processing ' + rec.Name + ', ' + x.Message); continue; end; @@ -251,45 +278,48 @@ procedure BuildOverridesList(var patch: TPatch; var lst: TList; procedure UpdateCounts(var rec: IwbMainRecord); var - container, arrayContainer: IwbContainerElementRef; + Container, arrayContainer: IwbContainerElementRef; i: Integer; element, nextElement: IwbElement; begin // if reocrd is not editable, exit if not rec.IsEditable then - exit; + Exit; // if record can't be treated as a container, exit - if not Supports(rec, IwbContainerElementRef, container) then - exit; + if not Supports(rec, IwbContainerElementRef, Container) then + Exit; // loop through top-level elements - for i := 0 to container.ElementCount - 2 do begin - element := container.Elements[i]; - nextElement := container.Elements[i + 1]; + for i := 0 to Container.ElementCount - 2 do + begin + element := Container.Elements[i]; + nextElement := Container.Elements[i + 1]; if not Supports(nextElement, IwbContainerElementRef, arrayContainer) then continue; // if next element is an array element and current element has the // word count in its name update the count to be the number of elements // in the array - if (GetSmashType(nextElement) in stArrays) - and (GetSmashType(element) = stInteger) and (Pos('Count', element.Name) > 0) then try - element.NativeValue := arrayContainer.ElementCount; - except - on x: Exception do - Tracker.Write(' Exception updating count at '+element.Path); - end; + if (GetSmashType(nextElement) in stArrays) and + (GetSmashType(element) = stInteger) and (Pos('Count', element.Name) > 0) + then + try + element.NativeValue := arrayContainer.ElementCount; + except + on x: Exception do + Tracker.Write(' Exception updating count at ' + element.Path); + end; end; end; -function HasPartialFormFlag(rec: IwbMainRecord): Boolean; +function HasPartialFormFlag(rec: IwbMainRecord): boolean; begin Result := ((rec.Signature = 'QUST') or (rec.Signature = 'LCTN')) and (rec.Flags._Flags and $00004000 <> 0); end; -procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); +procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); var i, j: Integer; incProgress, currentProgress: Real; @@ -307,27 +337,31 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); // loop through records to smash currentProgress := Tracker.GetProgress; - incProgress := (Tracker.GetMaxProgress - Tracker.GetProgress) / records.Count; - for i := 0 to Pred(records.Count) do begin - if Tracker.Cancel then break; - if not Supports(records[i], IwbMainRecord, rec) then - exit; + incProgress := (Tracker.GetMaxProgress - Tracker.GetProgress) / Records.Count; + for i := 0 to Pred(Records.Count) do + begin + if Tracker.Cancel then + break; + if not Supports(Records[i], IwbMainRecord, rec) then + Exit; Tracker.StatusMessage(Format('Smashing records (%d/%d)', - [i + 1, records.Count])); + [i + 1, Records.Count])); currentProgress := currentProgress + incProgress; Tracker.SetProgress(Round(currentProgress)); // loop through record's overrides patchRec := nil; forceFile := nil; - for j := 0 to Pred(rec.OverrideCount) do begin - if Tracker.Cancel then break; + for j := 0 to Pred(rec.OverrideCount) do + begin + if Tracker.Cancel then + break; ovr := rec.Overrides[j]; f := ovr._File; // skip overrides that are in plugins we aren't patching - if patch.plugins.IndexOf(f.FileName) = -1 then + if patch.plugins.IndexOf(f.filename) = -1 then continue; - plugin := PluginByFileName(f.FileName); + plugin := PluginByFileName(f.filename); if not Assigned(plugin) then continue; // skip ctIdenticalToMaster overrides @@ -343,11 +377,13 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); recObj := aSetting.GetRecordDef(ovr.Signature); if not Assigned(recObj) then continue; - if (recObj.I['p'] <> 1) then + if (recObj.i['p'] <> 1) then continue; - bForce := recObj.I['f'] = 1; - if bForce then begin - if Assigned(patchRec) then begin + bForce := recObj.i['f'] = 1; + if bForce then + begin + if Assigned(patchRec) then + begin patchRec.Remove; patchRec := nil; end; @@ -355,50 +391,59 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); end; // copy record to smashed patch if it hasn't been copied yet - if not Assigned(patchRec) then try - if bForce then - e := ovr - else - e := WinningOverrideInFiles(rec, patch.plugins); - // be sure we include the parent? - AddParents(patch, e); - Tracker.Write(Format(' [%d] Copying record %s from %s', [i + 1, e.Name, e._File.Name])); - AddRequiredMasters(patchFile, e); - eCopy := e.CopyInto(patchFile, false, false, '', '', '', ''); - patchRec := eCopy as IwbMainRecord; - if bForce then continue; - except - on x: Exception do begin - Tracker.Write(' Exception copying record '+e.Name+' from file '+e._File.Filename+': '+x.Message); - patch.fails.Add('Exception copying record '+ovr.Name+' : '+x.Message); - continue; + if not Assigned(patchRec) then + try + if bForce then + e := ovr + else + e := WinningOverrideInFiles(rec, patch.plugins); + // be sure we include the parent? + AddParents(patch, e); + Tracker.Write(Format(' [%d] Copying record %s from %s', + [i + 1, e.Name, e._File.Name])); + AddRequiredMasters(patchFile, e); + eCopy := e.CopyInto(patchFile, false, false, '', '', '', ''); + patchRec := eCopy as IwbMainRecord; + if bForce then + continue; + except + on x: Exception do + begin + Tracker.Write(' Exception copying record ' + e.Name + + ' from file ' + e._File.filename + ': ' + x.Message); + patch.fails.Add('Exception copying record ' + ovr.Name + ' : ' + + x.Message); + continue; + end; end; - end; // skip if we're forcing and plugin doesn't require forceFile - if Assigned(forceFile) and not bForce - and (plugin.masters.IndexOf(forceFile.FileName) = -1) then + if Assigned(forceFile) and not bForce and + (plugin.Masters.IndexOf(forceFile.filename) = -1) then continue; // finally, recursively copy overridden elements try - bDeletions := recObj.I['d'] = 1; + bDeletions := recObj.i['d'] = 1; if (wbGameMode = gmFO4) and HasPartialFormFlag(ovr) then - bDeletions := False; - bOverride := recObj.I['o'] = 1; + bDeletions := false; + bOverride := recObj.i['o'] = 1; if bForce then mst := e as IwbMainRecord else - mst := WinningOverrideInFiles(rec, plugin.masters); + mst := WinningOverrideInFiles(rec, plugin.Masters); Tracker.Write(Format(' Smashing override of %s from: %s, master: %s', - [ovr.Name, f.FileName, mst._File.FileName])); + [ovr.Name, f.filename, mst._File.filename])); AddRequiredMasters(patch.plugin._File, ovr); rcore(IwbElement(ovr), IwbElement(mst), IwbElement(patchRec), patchRec, recObj, false, bDeletions, bOverride); except - on x: Exception do begin - Tracker.Write(' Exception smashing record: '+ovr.Name+' : '+x.Message); - patch.fails.Add('Exception smashing record: '+ovr.Name+' : '+x.Message); + on x: Exception do + begin + Tracker.Write(' Exception smashing record: ' + ovr.Name + ' : ' + + x.Message); + patch.fails.Add('Exception smashing record: ' + ovr.Name + ' : ' + + x.Message); end; end; @@ -408,9 +453,9 @@ procedure SmashRecords(var patch: TPatch; var records: TInterfaceList); end; end; -function IsChildGroup(group: IwbGroupRecord): Boolean; +function IsChildGroup(group: IwbGroupRecord): boolean; begin - Result := group.GroupType in [1,6,7]; + Result := group.GroupType in [1, 6, 7]; end; function NativeContainer(element: IwbElement): IwbContainer; @@ -427,29 +472,29 @@ function NativeContainer(element: IwbElement): IwbContainer; procedure RemoveEmptyContainers(aContainer: IwbContainer); var - container, nextContainer: IwbContainer; + Container, nextContainer: IwbContainer; rec: IwbMainRecord; - bITM, bITPO: Boolean; + bITM, bITPO: boolean; begin - container := aContainer; + Container := aContainer; // traverse up container until we find an IwbMainRecord - while Assigned(container) and - not Supports(container, IwbMainRecord, rec) do begin + while Assigned(Container) and not Supports(Container, IwbMainRecord, rec) do + begin // break if container still has elements in it - if container.ElementCount > 0 then - exit; + if Container.ElementCount > 0 then + Exit; // else remove it and traverse up to next container - nextContainer := NativeContainer(container); - container.Remove; - container := nextContainer; + nextContainer := NativeContainer(Container); + Container.Remove; + Container := nextContainer; end; // exit if record is not ITM or ITPO bITM := IsITM(rec); bITPO := IsITPO(rec); - if not (bITM or bITPO) then - exit; + if not(bITM or bITPO) then + Exit; // else remove MainRecord and recurse if bITM then @@ -461,22 +506,21 @@ procedure RemoveEmptyContainers(aContainer: IwbContainer); RemoveEmptyContainers(nextContainer); end; - -function FindITPO(e: IwbMainRecord): Boolean; +function FindITPO(e: IwbMainRecord): boolean; begin // skip master records if e.IsMaster then - Exit(False); + Exit(false); // skip records that have elements in child group (WRLD, CELL, DIAL) if Assigned(e.ChildGroup) and (e.ChildGroup.ElementCount > 0) then - Exit(False); + Exit(false); // remove record if no conflicts if not IsITPO(e) then - Exit(False); + Exit(false); - Result := True; + Result := true; Tracker.Write(' Removing ITPO: ' + e.Name); end; @@ -492,7 +536,7 @@ TITPOThread = class(TThread) constructor TITPOThread.Create; begin - inherited Create(False); + inherited Create(false); Fe := e; end; @@ -508,7 +552,7 @@ procedure RemoveITPOs(aFile: IwbFile); var i, CountITPO: Integer; e: IwbMainRecord; - container: IwbContainer; + Container: IwbContainer; ITPOs: TDynMainRecords; ThreadRefs: array of TITPOThread; ThreadHandles: array of THandle; @@ -517,13 +561,16 @@ procedure RemoveITPOs(aFile: IwbFile); Tracker.Write('Removing ITPO records from patch'); CountITPO := 0; - if settings.multiThreadedSmash then begin + if settings.multiThreadedSmash then + begin SetLength(ThreadRefs, aFile.RecordCount); SetLength(ThreadHandles, aFile.RecordCount); // loop through file's records - for i := Pred(aFile.RecordCount) downto 0 do begin - if Tracker.Cancel then break; + for i := Pred(aFile.RecordCount) downto 0 do + begin + if Tracker.Cancel then + break; e := aFile.Records[i]; ThreadRefs[i] := TITPOThread.Create(e); @@ -531,24 +578,31 @@ procedure RemoveITPOs(aFile: IwbFile); end; // Wait for Threads - WaitForMultipleObjects(Length(ThreadRefs), Pointer(ThreadHandles), True, INFINITE); + WaitForMultipleObjects(Length(ThreadRefs), Pointer(ThreadHandles), true, + INFINITE); // loop through threads and get results - for i := Pred(Length(ThreadRefs)) downto 0 do begin + for i := Pred(Length(ThreadRefs)) downto 0 do + begin // remove record if no conflicts - if ThreadRefs[i].ReturnValue = 1 then begin + if ThreadRefs[i].ReturnValue = 1 then + begin // add ITPO to list of records to remove SetLength(ITPOs, CountITPO + 1); ITPOs[CountITPO] := e; Inc(CountITPO); end; end; - end else begin + end + else + begin // loop through file's records - for i := Pred(aFile.RecordCount) downto 0 do begin + for i := Pred(aFile.RecordCount) downto 0 do + begin e := aFile.Records[i]; - - if FindITPO(e) then begin + + if FindITPO(e) then + begin // add ITPO to list of records to remove SetLength(ITPOs, CountITPO + 1); ITPOs[CountITPO] := e; @@ -558,15 +612,17 @@ procedure RemoveITPOs(aFile: IwbFile); end; // remove the records - for i := Pred(Length(ITPOs)) downto 0 do begin + for i := Pred(Length(ITPOs)) downto 0 do + begin e := ITPOs[i]; - container := e.Container; + Container := e.Container; e.Remove; try - RemoveEmptyContainers(container); + RemoveEmptyContainers(Container); except on x: Exception do - Tracker.Write(' Exception removing empty containers: '+x.Message); + Tracker.Write(' Exception removing empty containers: ' + + x.Message); end; end; @@ -580,7 +636,6 @@ procedure CleanPatch(var patch: TPatch); begin patchFile := patch.plugin._File; - try // remove ITPOs if not settings.preserveITPOs then @@ -589,11 +644,11 @@ procedure CleanPatch(var patch: TPatch); // patchFIle.CleanMasters; except on x: Exception do - Tracker.Write(' Exception removing ITPOs: '+x.Message); + Tracker.Write(' Exception removing ITPOs: ' + x.Message); end; - //Tracker.Write('Sorting patch masters according to current load order'); - //patchFile.SortMasters; + // Tracker.Write('Sorting patch masters according to current load order'); + // patchFile.SortMasters; end; procedure SavePatchFiles(var patch: TPatch); @@ -614,8 +669,8 @@ procedure SavePatchFiles(var patch: TPatch); // save files, fails, plugins patchFilePrefix := patchPath + ChangeFileExt(patch.filename, ''); - patch.fails.SaveToFile(patchFilePrefix+'_fails.txt'); - patch.plugins.SaveToFile(patchFilePrefix+'_plugins.txt'); + patch.fails.SaveToFile(patchFilePrefix + '_fails.txt'); + patch.plugins.SaveToFile(patchFilePrefix + '_plugins.txt'); end; procedure BuildPatch(var patch: TPatch); @@ -627,7 +682,7 @@ procedure BuildPatch(var patch: TPatch); msg: string; begin // initialize - Tracker.Write('Building patch: '+patch.name); + Tracker.Write('Building patch: ' + patch.Name); time := Now; patch.fails.Clear; pluginsToPatch := TList.Create; @@ -637,14 +692,14 @@ procedure BuildPatch(var patch: TPatch); // build list of plugins to patch BuildPluginsList(patch, pluginsToPatch); HandleCanceled(msg); - + // identify or create patch file patchFile := GetPatchFile(patch, pluginsToPatch); SetPatchAttributes(patch); // add masters to patch file - //AddRequiredMasters(patch, pluginsToPatch); - //HandleCanceled(msg); + // AddRequiredMasters(patch, pluginsToPatch); + // HandleCanceled(msg); // build list of overrides recordsList := TInterfaceList.Create; @@ -653,7 +708,7 @@ procedure BuildPatch(var patch: TPatch); // stop smashing if no records to smash if recordsList.Count = 0 then - raise Exception.create('No records to patch!'); + raise Exception.Create('No records to patch!'); // smash records SmashRecords(patch, recordsList); @@ -674,11 +729,12 @@ procedure BuildPatch(var patch: TPatch); time := (Now - time) * 86400; patch.dateBuilt := Now; patch.status := psUpToDate; - Tracker.Write(Format('Done smashing %s (%.3f)', [patch.name, Real(time)])); + Tracker.Write(Format('Done smashing %s (%.3f)', [patch.Name, Real(time)])); except - on x: Exception do begin + on x: Exception do + begin patch.status := psFailed; - Tracker.Write(Format('Failed to patch %s, %s', [patch.name, x.Message])); + Tracker.Write(Format('Failed to patch %s, %s', [patch.Name, x.Message])); end; end; diff --git a/frontend/msSmashForm.pas b/frontend/msSmashForm.pas index 42e79b0..938a99d 100755 --- a/frontend/msSmashForm.pas +++ b/frontend/msSmashForm.pas @@ -23,78 +23,78 @@ interface type TSmashForm = class(TForm) [FormPrefix('msMain')] - XPManifest: TXPManifest; - IconList: TImageList; - TaskTimer: TTimer; - [FormSection('QuickBar')] - QuickBar: TPanel; - QuickButton: TSpeedButton; - NewButton: TSpeedButton; - BuildButton: TSpeedButton; - ManageButton: TSpeedButton; - OptionsButton: TSpeedButton; - bhQuick: TBalloonHint; - bhNew: TBalloonHint; - bhBuild: TBalloonHint; - bhManage: TBalloonHint; - bhOptions: TBalloonHint; - [FormSection('Main Panel')] - MainPanel: TPanel; - Splitter: TSplitter; - PageControl: TPageControl; - DetailsPanel: TPanel; - [FormSection('Details Panel')] - DetailsLabel: TLabel; - DetailsGrid: TStringGrid; - DetailsPopupMenu: TPopupMenu; - DetailsCopyToClipboardItem: TMenuItem; - [FormSection('Plugins Tab')] - PluginsTabSheet: TTabSheet; - PluginsListView: TListView; - [FormSection('Plugins Popup Menu')] - PluginsPopupMenu: TPopupMenu; - AddToPatchItem: TMenuItem; - RemoveFromPatchItem: TMenuItem; - TagsItem: TMenuItem; - ManageTagsItem: TMenuItem; - ApplySettingTagsItem: TMenuItem; - ClearTagsItem: TMenuItem; - OpenPluginLocationItem: TMenuItem; - SmashSettingItem: TMenuItem; - [FormSection('Patches Tab')] - PatchesTabSheet: TTabSheet; - PatchesListView: TListView; - [FormSection('Patches Popup Menu')] - PatchesPopupMenu: TPopupMenu; - ToggleRebuildItem: TMenuItem; - OpenInExplorerItem: TMenuItem; - BuildPatchItem: TMenuItem; - EditPatchItem: TMenuItem; - RemoveUnloadedPluginsItem: TMenuItem; - DeletePatchItem: TMenuItem; - [FormSection('Move Submenu')] - MoveItem: TMenuItem; - UpItem: TMenuItem; - DownItem: TMenuItem; - ToTopItem: TMenuItem; - ToBottomItem: TMenuItem; - [FormSection('Log Tab')] - LogTabSheet: TTabSheet; - LogListView: TListView; - [FormSection('Log Popup Menu')] - LogPopupMenu: TPopupMenu; - FilterGroupItem: TMenuItem; - FilterLabelItem: TMenuItem; - CopyToClipboardItem: TMenuItem; - SaveAndClearItem: TMenuItem; - ToggleAutoScrollItem: TMenuItem; - [FormSection('Status Bar')] - StatusPanel: TPanel; - StatusPanelMessage: TPanel; - StatusPanelLanguage: TPanel; - StatusPanelVersion: TPanel; - ImageBuild: TImage; - bhLoadException: TBalloonHint; + XPManifest: TXPManifest; + IconList: TImageList; + TaskTimer: TTimer; + [FormSection('QuickBar')] + QuickBar: TPanel; + QuickButton: TSpeedButton; + NewButton: TSpeedButton; + BuildButton: TSpeedButton; + ManageButton: TSpeedButton; + OptionsButton: TSpeedButton; + bhQuick: TBalloonHint; + bhNew: TBalloonHint; + bhBuild: TBalloonHint; + bhManage: TBalloonHint; + bhOptions: TBalloonHint; + [FormSection('Main Panel')] + MainPanel: TPanel; + Splitter: TSplitter; + PageControl: TPageControl; + DetailsPanel: TPanel; + [FormSection('Details Panel')] + DetailsLabel: TLabel; + DetailsGrid: TStringGrid; + DetailsPopupMenu: TPopupMenu; + DetailsCopyToClipboardItem: TMenuItem; + [FormSection('Plugins Tab')] + PluginsTabSheet: TTabSheet; + PluginsListView: TListView; + [FormSection('Plugins Popup Menu')] + PluginsPopupMenu: TPopupMenu; + AddToPatchItem: TMenuItem; + RemoveFromPatchItem: TMenuItem; + TagsItem: TMenuItem; + ManageTagsItem: TMenuItem; + ApplySettingTagsItem: TMenuItem; + ClearTagsItem: TMenuItem; + OpenPluginLocationItem: TMenuItem; + SmashSettingItem: TMenuItem; + [FormSection('Patches Tab')] + PatchesTabSheet: TTabSheet; + PatchesListView: TListView; + [FormSection('Patches Popup Menu')] + PatchesPopupMenu: TPopupMenu; + ToggleRebuildItem: TMenuItem; + OpenInExplorerItem: TMenuItem; + BuildPatchItem: TMenuItem; + EditPatchItem: TMenuItem; + RemoveUnloadedPluginsItem: TMenuItem; + DeletePatchItem: TMenuItem; + [FormSection('Move Submenu')] + MoveItem: TMenuItem; + UpItem: TMenuItem; + DownItem: TMenuItem; + ToTopItem: TMenuItem; + ToBottomItem: TMenuItem; + [FormSection('Log Tab')] + LogTabSheet: TTabSheet; + LogListView: TListView; + [FormSection('Log Popup Menu')] + LogPopupMenu: TPopupMenu; + FilterGroupItem: TMenuItem; + FilterLabelItem: TMenuItem; + CopyToClipboardItem: TMenuItem; + SaveAndClearItem: TMenuItem; + ToggleAutoScrollItem: TMenuItem; + [FormSection('Status Bar')] + StatusPanel: TPanel; + StatusPanelMessage: TPanel; + StatusPanelLanguage: TPanel; + StatusPanelVersion: TPanel; + ImageBuild: TImage; + bhLoadException: TBalloonHint; // SMASH FORM EVENTS procedure UpdateLog; @@ -106,7 +106,7 @@ TSmashForm = class(TForm) procedure LoaderStatus(s: string); procedure LoaderDone; procedure FormDestroy(Sender: TObject); - procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); + procedure FormCloseQuery(Sender: TObject; var CanClose: boolean); procedure SaveDone; procedure ProgressDone; function ShouldDisplay(bh: TBalloonHint): boolean; @@ -132,7 +132,8 @@ TSmashForm = class(TForm) Rect: TRect; State: TGridDrawState); // PLUGINS LIST VIEW EVENTS procedure UpdatePluginDetails; - procedure AddPluginToPatch(var plugin: TPlugin; var patch: TPatch; i: Integer); + procedure AddPluginToPatch(var plugin: TPlugin; var patch: TPatch; + i: Integer); procedure AddPluginsToPatch(var patch: TPatch); procedure ChangePatchSetting(aSetting: TSmashSetting); procedure PluginsListViewChange(Sender: TObject; Item: TListItem; @@ -179,7 +180,8 @@ TSmashForm = class(TForm) procedure ToBottomItemClick(Sender: TObject); // LOG LIST VIEW EVENTS procedure LogListViewData(Sender: TObject; Item: TListItem); - procedure LogListViewDrawItem(Sender: TCustomListView; Item: TListItem; Rect: TRect; State: TOwnerDrawState); + procedure LogListViewDrawItem(Sender: TCustomListView; Item: TListItem; + Rect: TRect; State: TOwnerDrawState); // LOG POPUP MENU EVENTS procedure LogPopupMenuPopup(Sender: TObject); procedure ToggleGroupFilter(Sender: TObject); @@ -222,9 +224,7 @@ TSmashForm = class(TForm) implementation {$R *.dfm} - - -{******************************************************************************} +{ ****************************************************************************** } { Patch Form Events Events for the Patch Form. - UpdateLog @@ -235,7 +235,7 @@ implementation - LoaderDone - FormClose } -{******************************************************************************} +{ ****************************************************************************** } procedure TSmashForm.UpdateLog; var @@ -244,9 +244,10 @@ procedure TSmashForm.UpdateLog; LogListView.Items.Count := Log.Count; bLogActive := PageControl.ActivePage = LogTabSheet; // autoscroll if active - if bAutoScroll and bLogActive then begin - //LogListView.ClearSelection; - //LogListView.Items[Pred(LogListView.Items.Count)].MakeVisible(false); + if bAutoScroll and bLogActive then + begin + // LogListView.ClearSelection; + // LogListView.Items[Pred(LogListView.Items.Count)].MakeVisible(false); SendMessage(LogListView.Handle, WM_VSCROLL, SB_LINEDOWN, 0); end; // correct width if active @@ -259,14 +260,13 @@ procedure TSmashForm.LogMessage(const group, &label, text: string); var msg: TLogMessage; begin - msg := TLogMessage.Create( - FormatDateTime('hh:nn:ss', Now), - FormatDateTime('hh:nn:ss', Now - AppStartTime), - group, &label, text); + msg := TLogMessage.Create(FormatDateTime('hh:nn:ss', Now), + FormatDateTime('hh:nn:ss', Now - AppStartTime), group, &label, text); BaseLog.Add(msg); // if message is enabled, add to log - if MessageEnabled(msg) then begin + if MessageEnabled(msg) then + begin Log.Add(msg); // if patch form is created, update log list view if bCreated then @@ -332,7 +332,7 @@ procedure TSmashForm.FormCreate(Sender: TObject); AppStartTime := Now; InitLog; Logger.OnLogEvent := LogMessage; - //bAutoScroll := true; + // bAutoScroll := true; InitializeTaskbarAPI; SetTaskbarProgressState(tbpsIndeterminate); xEditLogGroup := 'LOAD'; @@ -340,7 +340,8 @@ procedure TSmashForm.FormCreate(Sender: TObject); _wbProgressCallback := ProgressMessage; StatusCallback := LoaderStatus; - if not InitBase then begin + if not InitBase then + begin ProgramStatus.bClose := true; exit; end; @@ -391,7 +392,8 @@ procedure TSmashForm.ToggleFormState(bEnabled: boolean); procedure TSmashForm.WMSize(var AMessage: TMessage); begin - if bCreated and (Now - LastMessageTime > MessageDelay) then begin + if bCreated and (Now - LastMessageTime > MessageDelay) then + begin LastMessageTime := Now; if (AMessage.WParam <> SIZE_MINIMIZED) then DisplayHints; @@ -401,7 +403,8 @@ procedure TSmashForm.WMSize(var AMessage: TMessage); procedure TSmashForm.WMMove(var AMessage: TMessage); begin - if bCreated and (Now - LastMessageTime > MessageDelay) then begin + if bCreated and (Now - LastMessageTime > MessageDelay) then + begin LastMessageTime := Now; if (AMessage.WParam <> SIZE_MINIMIZED) then DisplayHints; @@ -411,7 +414,8 @@ procedure TSmashForm.WMMove(var AMessage: TMessage); procedure TSmashForm.WMActivateApp(var AMessage: TMessage); begin - if bCreated and (Now - LastMessageTime > MessageDelay) then begin + if bCreated and (Now - LastMessageTime > MessageDelay) then + begin LastMessageTime := Now; if AMessage.WParam = 1 then DisplayHints @@ -430,18 +434,23 @@ procedure TSmashForm.InitDone; procedure TSmashForm.FormShow(Sender: TObject); begin // CLOSE IF PLUGIN SELECTION CANCELED - if ProgramStatus.bClose then begin + if ProgramStatus.bClose then + begin bClosing := true; Close; exit; end; // DISABLE GUI IF INITIALIZATION EXCEPTION - if ProgramStatus.bInitException then begin + if ProgramStatus.bInitException then + begin StatusPanelMessage.Caption := 'The application failed to initialize'; - Logger.Write('ERROR', 'Load', 'There was an exception initializing the application'); - Logger.Write('ERROR', 'Load', 'Review your log messages to resolve the issue'); - Logger.Write('ERROR', 'Load', 'You can also change the program''s settings, if necessary'); + Logger.Write('ERROR', 'Load', + 'There was an exception initializing the application'); + Logger.Write('ERROR', 'Load', + 'Review your log messages to resolve the issue'); + Logger.Write('ERROR', 'Load', + 'You can also change the program''s settings, if necessary'); PluginsTabSheet.Enabled := false; PluginsTabSheet.TabVisible := false; PatchesTabSheet.Enabled := false; @@ -473,9 +482,10 @@ procedure TSmashForm.FormShow(Sender: TObject); UpdatePatches; UpdatePluginsPopupMenu; UpdateStatusBar; - UpdateQuickBar; + UpdateQuickbar; - if not ProgramStatus.bInitException then begin + if not ProgramStatus.bInitException then + begin // START BACKGROUND LOADER LoaderCallback := LoaderDone; SetTaskbarProgressState(tbpsIndeterminate); @@ -494,7 +504,8 @@ procedure TSmashForm.FormShow(Sender: TObject); // initialize task handler TaskHandler := TTaskHandler.Create; bLogTasks := false; - TaskHandler.AddTask(TTask.Create('Disable Hints', 12.0 * seconds, DisableHints)); + TaskHandler.AddTask(TTask.Create('Disable Hints', 12.0 * seconds, + DisableHints)); TaskHandler.AddTask(TTask.Create('Refresh GUI', 3.0 * seconds, RefreshGUI)); TaskTimer.Enabled := true; end; @@ -519,21 +530,22 @@ procedure TSmashForm.LoaderDone; SetTaskbarProgressState(tbpsNone); xEditLogGroup := 'GENERAL'; xEditLogLabel := 'xEdit'; - FlashWindow(Application.Handle, True); + FlashWindow(Application.Handle, true); UpdateQuickbar; end; -procedure TSmashForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); +procedure TSmashForm.FormCloseQuery(Sender: TObject; var CanClose: boolean); begin CanClose := ProgramStatus.bClose; - if not bClosing then begin + if not bClosing then + begin bClosing := true; Enabled := false; // show progress form - pForm := TProgressForm.Create(Self); + pForm := TProgressForm.Create(self); pForm.pfLogPath := LogPath + 'save\'; - pForm.PopupParent := Self; + pForm.PopupParent := self; pForm.Caption := GetLanguageString('msProg_Closing'); pForm.SetMaxProgress(PluginsList.Count + PatchesList.Count + 2); pForm.Show; @@ -554,10 +566,12 @@ procedure TSmashForm.SaveDone; // restart program if update applied if ProgramStatus.bInstallUpdate then - ShellExecute(Application.Handle, 'runas', PChar(ParamStr(0)), '', '', SW_SHOWNORMAL); + ShellExecute(Application.Handle, 'runas', PChar(ParamStr(0)), '', '', + SW_SHOWNORMAL); // restart program if user wants patch profile change if ProgramStatus.bChangeProfile then - ShellExecute(Application.Handle, 'runas', PChar(ParamStr(0)), '', '', SW_SHOWNORMAL); + ShellExecute(Application.Handle, 'runas', PChar(ParamStr(0)), '', '', + SW_SHOWNORMAL); // allow close and close SaveLog(BaseLog); @@ -570,7 +584,7 @@ procedure TSmashForm.ProgressDone; xEditLogGroup := 'GENERAL'; pForm.SaveLog; pForm.Visible := false; - FlashWindow(Application.Handle, True); + FlashWindow(Application.Handle, true); pForm.ShowModal; pForm.Free; Enabled := true; @@ -578,9 +592,12 @@ procedure TSmashForm.ProgressDone; SetForegroundWindow(Application.Handle); // free lists - if Assigned(timeCosts) then timeCosts.Free; - if Assigned(pluginsToHandle) then pluginsToHandle.Free; - if Assigned(patchesToBuild) then patchesToBuild.Free; + if Assigned(timeCosts) then + timeCosts.Free; + if Assigned(pluginsToHandle) then + pluginsToHandle.Free; + if Assigned(patchesToBuild) then + patchesToBuild.Free; // update patches and gui UpdateListViews; @@ -609,7 +626,8 @@ procedure TSmashForm.DisplayHints; var pt: TPoint; begin - if ProgramStatus.bLoadException and ShouldDisplay(bhLoadException) then begin + if ProgramStatus.bLoadException and ShouldDisplay(bhLoadException) then + begin pt.X := 126; pt.Y := 16; pt := MainPanel.ClientToScreen(pt); @@ -619,7 +637,8 @@ procedure TSmashForm.DisplayHints; procedure TSmashForm.RefreshGUI; begin - if not bClosing then UpdateStatusBar; + if not bClosing then + UpdateStatusBar; end; procedure TSmashForm.OnTaskTimer(Sender: TObject); @@ -636,11 +655,13 @@ procedure TSmashForm.UpdateStatusBar; procedure TSmashForm.UpdateListViews; begin - if PageControl.ActivePage = PluginsTabSheet then begin + if PageControl.ActivePage = PluginsTabSheet then + begin UpdatePluginDetails; PluginsListView.Repaint; end; - if PageControl.ActivePage = PatchesTabSheet then begin + if PageControl.ActivePage = PatchesTabSheet then + begin UpdatePatchDetails; PatchesListView.Repaint; end; @@ -648,7 +669,7 @@ procedure TSmashForm.UpdateListViews; LogListView.Repaint; end; -{******************************************************************************} +{ ****************************************************************************** } { Details Editor Events Methods for helping with the DetailsGrid control. Methods include: - AddDetailsItem @@ -656,10 +677,10 @@ procedure TSmashForm.UpdateListViews; - PageControlChange - UpdateApplicationDetails } -{******************************************************************************} +{ ****************************************************************************** } { - Adds a ListItem to DetailsView with @name and @value + Adds a ListItem to DetailsView with @name and @value } procedure TSmashForm.AddDetailsItem(name, value: string); begin @@ -672,9 +693,10 @@ procedure TSmashForm.AddDetailsItem(name, value: string); } procedure TSmashForm.AddDetailsList(name: string; sl: TStringList); var - i: integer; + i: Integer; begin - if sl.Count > 0 then begin + if sl.Count > 0 then + begin for i := 0 to Pred(sl.Count) do slDetails.Add(Format('%s[%d]=%s', [name, i, sl[i]])); end @@ -687,22 +709,25 @@ procedure TSmashForm.AddDetailsList(name: string; sl: TStringList); } procedure TSmashForm.PageControlChange(Sender: TObject); var - ndx: integer; + ndx: Integer; begin ndx := TPageControl(Sender).ActivePageIndex; case ndx of - 0: begin - UpdatePluginDetails; - ListView_CorrectWidth(PluginsListView); - end; - 1: begin - UpdatePatchDetails; - ListView_CorrectWidth(PatchesListView); - end; - 2: begin - UpdateApplicationDetails; - ListView_CorrectWidth(LogListView); - end; + 0: + begin + UpdatePluginDetails; + ListView_CorrectWidth(PluginsListView); + end; + 1: + begin + UpdatePatchDetails; + ListView_CorrectWidth(PatchesListView); + end; + 2: + begin + UpdateApplicationDetails; + ListView_CorrectWidth(LogListView); + end; end; end; @@ -716,21 +741,30 @@ procedure TSmashForm.UpdateApplicationDetails; AddDetailsItem(GetLanguageString('msMain_Application'), 'Mator Smash'); AddDetailsItem(GetLanguageString('msMain_Author'), 'matortheeternal'); AddDetailsItem(GetLanguageString('msMain_Version'), ProgramStatus.Version); - AddDetailsItem(GetLanguageString('msMain_DateBuilt'), DateTimeToStr(GetLastModified(ParamStr(0)))); + AddDetailsItem(GetLanguageString('msMain_DateBuilt'), + DateTimeToStr(GetLastModified(ParamStr(0)))); AddDetailsItem(' ', ' '); AddDetailsItem(GetLanguageString('msMain_GameMode'), wbGameName); AddDetailsItem(GetLanguageString('msMain_Language'), settings.language); AddDetailsItem(' ', ' '); - AddDetailsItem(GetLanguageString('msMain_TimesRun'), IntToStr(statistics.timesRun + sessionStatistics.timesRun)); - AddDetailsItem(GetLanguageString('msMain_PatchesBuilt'), IntToStr(statistics.patchesBuilt + sessionStatistics.patchesBuilt)); - AddDetailsItem(GetLanguageString('msMain_PluginsSmashed'), IntToStr(statistics.pluginsPatched + sessionStatistics.pluginsPatched)); - AddDetailsItem(GetLanguageString('msMain_SettingsSubmitted'), IntToStr(statistics.settingsSubmitted + sessionStatistics.settingsSubmitted)); - AddDetailsItem(GetLanguageString('msMain_RecsSubmitted'), IntToStr(statistics.recsSubmitted + sessionStatistics.recsSubmitted)); + AddDetailsItem(GetLanguageString('msMain_TimesRun'), + IntToStr(statistics.timesRun + sessionStatistics.timesRun)); + AddDetailsItem(GetLanguageString('msMain_PatchesBuilt'), + IntToStr(statistics.patchesBuilt + sessionStatistics.patchesBuilt)); + AddDetailsItem(GetLanguageString('msMain_PluginsSmashed'), + IntToStr(statistics.pluginsPatched + sessionStatistics.pluginsPatched)); + AddDetailsItem(GetLanguageString('msMain_SettingsSubmitted'), + IntToStr(statistics.settingsSubmitted + + sessionStatistics.settingsSubmitted)); + AddDetailsItem(GetLanguageString('msMain_RecsSubmitted'), + IntToStr(statistics.recsSubmitted + sessionStatistics.recsSubmitted)); AddDetailsItem(' ', ' '); AddDetailsItem(GetLanguageString('msMain_Website'), '-'); - AddDetailsItem(GetLanguageString('msMain_ApiCredits'), 'superobject, TurboPower Abbrevia, xEdit'); + AddDetailsItem(GetLanguageString('msMain_ApiCredits'), + 'superobject, TurboPower Abbrevia, xEdit'); AddDetailsItem(GetLanguageString('msMain_xEditVersion'), xEditVersion); - AddDetailsItem(GetLanguageString('msMain_xEditCredits'), 'zilav, hlp, Sharlikran, ElminsterAU'); + AddDetailsItem(GetLanguageString('msMain_xEditCredits'), + 'zilav, hlp, Sharlikran, ElminsterAU'); AddDetailsItem(GetLanguageString('msMain_Testers'), ProgramTesters); AddDetailsItem(GetLanguageString('msMain_Translators'), ProgramTranslators); @@ -752,26 +786,29 @@ procedure TSmashForm.DetailsCopyToClipboardItemClick(Sender: TObject); // empty names and empty values name := ' '; value := ' '; - for i := 0 to Pred(slDetails.Count) do begin + for i := 0 to Pred(slDetails.Count) do + begin previousName := name; name := slDetails.Names[i]; previousValue := value; value := slDetails.ValueFromIndex[i]; if (name <> ' ') then sl.Add(Format('%s: %s', [name, value])) - else if (value <> ' ') then begin - if (previousName <> ' ') then begin + else if (value <> ' ') then + begin + if (previousName <> ' ') then + begin sl[sl.Count - 1] := previousName + ':'; - sl.Add('- '+previousValue); + sl.Add('- ' + previousValue); end; - sl.Add('- '+value); + sl.Add('- ' + value); end else sl.Add(' '); end; // copy to clipboard - Clipboard.AsText := sl.Text; + Clipboard.AsText := sl.text; sl.Free; end; @@ -785,7 +822,7 @@ procedure TSmashForm.DetailsPanelResize(Sender: TObject); procedure TSmashForm.DetailsGridMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var - ACol, ARow: integer; + ACol, ARow: Integer; value: string; begin // don't change cursor if in help mode @@ -794,7 +831,8 @@ procedure TSmashForm.DetailsGridMouseMove(Sender: TObject; Shift: TShiftState; DetailsGrid.MouseToCell(X, Y, ACol, ARow); // use default cursor on cells in column 0, or at an invalid cell - if (ACol = 0) or (ARow > Pred(slDetails.Count)) then begin + if (ACol = 0) or (ARow > Pred(slDetails.Count)) then + begin Screen.Cursor := crDefault; exit; end; @@ -811,7 +849,7 @@ procedure TSmashForm.DetailsGridMouseMove(Sender: TObject; Shift: TShiftState; procedure TSmashForm.DetailsGridMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var - ACol, ARow: integer; + ACol, ARow: Integer; value: string; begin // only process left clicks @@ -825,7 +863,8 @@ procedure TSmashForm.DetailsGridMouseUp(Sender: TObject; Button: TMouseButton; try value := slDetails.ValueFromIndex[ARow]; - if IsURL(value) and ((Now - LastURLTime) * 86400 > 1.0) then begin + if IsURL(value) and ((Now - LastURLTime) * 86400 > 1.0) then + begin ShellExecute(0, 'open', PChar(value), '', '', SW_SHOWNORMAL); LastURLTime := Now; end; @@ -849,8 +888,9 @@ procedure TSmashForm.DetailsGridDrawCell(Sender: TObject; ACol, ARow: Integer; DetailsGrid.Font.Color := clBlack; // draw name - if ACol = 0 then begin - DetailsGrid.Canvas.Brush.Color := TColor($00f6f4f3); + if ACol = 0 then + begin + DetailsGrid.Canvas.Brush.Color := TColor($00F6F4F3); DetailsGrid.Canvas.Rectangle(Rect); DetailsGrid.Canvas.Brush.Color := clWindow; DetailsGrid.Canvas.Rectangle(Rect.Left, Rect.Top, Rect.Right, iHalfBottom); @@ -863,26 +903,31 @@ procedure TSmashForm.DetailsGridDrawCell(Sender: TObject; ACol, ARow: Integer; exit; DetailsGrid.Canvas.Brush.Style := bsClear; - DetailsGrid.Canvas.TextOut(Rect.Left + 4, Rect.Top + (iPadding div 2), sText); + DetailsGrid.Canvas.TextOut(Rect.Left + 4, + Rect.Top + (iPadding div 2), sText); end // draw value - else if ACol = 1 then begin + else if ACol = 1 then + begin DetailsGrid.Canvas.Brush.Color := clWindow; DetailsGrid.Canvas.Rectangle(Rect); if Assigned(slDetails) and (slDetails.Count > ARow) then sText := slDetails.ValueFromIndex[ARow]; // handle special drawing of urls and master files - if (Pred(slDetails.Count) > ARow) then begin + if (Pred(slDetails.Count) > ARow) then + begin sNextVal := slDetails.ValueFromIndex[ARow + 1]; sNextName := slDetails.Names[ARow + 1]; // urls blue and underlined - if IsURL(sNextVal) then begin + if IsURL(sNextVal) then + begin DetailsGrid.Font.Style := [fsUnderline]; DetailsGrid.Font.Color := clBlue; end // esps and esms red if not loaded - else if Pos('Plugins[', sNextName) = 1 then begin + else if Pos('Plugins[', sNextName) = 1 then + begin if not Assigned(PluginByFileName(sNextVal)) then DetailsGrid.Font.Color := clRed; end; @@ -890,11 +935,12 @@ procedure TSmashForm.DetailsGridDrawCell(Sender: TObject; ACol, ARow: Integer; // draw text DetailsGrid.Canvas.Brush.Style := bsClear; - DetailsGrid.Canvas.TextOut(Rect.Left + 4, Rect.Top + (iPadding div 2), sText); + DetailsGrid.Canvas.TextOut(Rect.Left + 4, + Rect.Top + (iPadding div 2), sText); end; end; -{******************************************************************************} +{ ****************************************************************************** } { PluginsListView Events Events involving the PluginsListView control. Events include: - UpdatePluginDetails @@ -906,12 +952,12 @@ procedure TSmashForm.DetailsGridDrawCell(Sender: TObject; ACol, ARow: Integer; - PluginsListViewDrawItem - PluginsListViewMouseMove } -{******************************************************************************} +{ ****************************************************************************** } procedure TSmashForm.UpdatePluginDetails; var plugin: TPlugin; - index: integer; + index: Integer; begin // don't do anything if no item selected if not Assigned(PluginsListView.Selected) then @@ -924,17 +970,21 @@ procedure TSmashForm.UpdatePluginDetails; // get plugin information index := PluginsListView.ItemIndex; plugin := TPlugin(PluginsList[index]); - if not plugin.hasData then plugin.GetData(PluginsList); + if not plugin.hasData then + plugin.GetData(PluginsList); // add details items AddDetailsItem(GetLanguageString('msMain_Filename'), plugin.filename); AddDetailsItem(GetLanguageString('msMain_Hash'), '$' + plugin.hash); - AddDetailsItem(GetLanguageString('msMain_FileSize'), FormatByteSize(plugin.fileSize)); + AddDetailsItem(GetLanguageString('msMain_FileSize'), + FormatByteSize(plugin.fileSize)); AddDetailsItem(GetLanguageString('msMain_DateModified'), plugin.dateModified); - AddDetailsItem(GetLanguageString('msMain_NumRecords'), IntToStr(plugin.numRecords)); - AddDetailsItem(GetLanguageString('msMain_NumOverrides'), IntToStr(plugin.numOverrides)); + AddDetailsItem(GetLanguageString('msMain_NumRecords'), + IntToStr(plugin.numRecords)); + AddDetailsItem(GetLanguageString('msMain_NumOverrides'), + IntToStr(plugin.numOverrides)); AddDetailsItem(GetLanguageString('msMain_Author'), plugin.author); - AddDetailsList(GetLanguageString('msMain_Description'), plugin.description); + AddDetailsList(GetLanguageString('msMain_Description'), plugin.Description); AddDetailsList(GetLanguageString('msMain_Masters'), plugin.masters); // update gui @@ -950,7 +1000,8 @@ procedure TSmashForm.ChangePatchSetting(aSetting: TSmashSetting); plugin: TPlugin; begin // loop through plugins list, adding selected plugins to patch - for i := 0 to Pred(PluginsListView.Items.Count) do begin + for i := 0 to Pred(PluginsListView.Items.Count) do + begin ListItem := PluginsListView.Items[i]; if not ListItem.Selected then continue; @@ -966,9 +1017,11 @@ procedure TSmashForm.ChangePatchSetting(aSetting: TSmashSetting); UpdateStatusBar; end; -procedure TSmashForm.AddPluginToPatch(var plugin: TPlugin; var patch: TPatch; i: Integer); +procedure TSmashForm.AddPluginToPatch(var plugin: TPlugin; var patch: TPatch; + i: Integer); begin - Logger.Write('PLUGIN', 'Patch', 'Added '+plugin.filename+' to patch '+patch.name); + Logger.Write('PLUGIN', 'Patch', 'Added ' + plugin.filename + ' to patch ' + + patch.name); if not plugin.hasData then plugin.GetData(PluginsList); if plugin.patch = patch.name then @@ -979,12 +1032,13 @@ procedure TSmashForm.AddPluginToPatch(var plugin: TPlugin; var patch: TPatch; i: procedure TSmashForm.AddPluginsToPatch(var patch: TPatch); var - i: integer; + i: Integer; ListItem: TListItem; plugin: TPlugin; begin // loop through plugins list, adding selected plugins to patch - for i := 0 to Pred(PluginsListView.Items.Count) do begin + for i := 0 to Pred(PluginsListView.Items.Count) do + begin ListItem := PluginsListView.Items[i]; if not ListItem.Selected then continue; @@ -1011,48 +1065,53 @@ procedure TSmashForm.PluginsListViewData(Sender: TObject; Item: TListItem); var plugin: TPlugin; begin - if Item.Index > Pred(PluginsList.Count) then + if Item.index > Pred(PluginsList.Count) then exit; - plugin := TPlugin(PluginsList[Item.Index]); - Item.Caption := IntToHex(Item.Index, 2); + plugin := TPlugin(PluginsList[Item.index]); + Item.Caption := IntToHex(Item.index, 2); Item.SubItems.Add(plugin.filename); Item.SubItems.Add(plugin.setting); Item.SubItems.Add(plugin.patch); if Assigned(plugin.smashSetting) then - PluginsListView.Canvas.Font.Color := plugin.smashSetting.color + PluginsListView.Canvas.Font.Color := plugin.smashSetting.Color else PluginsListView.Canvas.Font.Color := clGray; - PluginsListView.Canvas.Font.Style := PluginsListView.Canvas.Font.Style + [fsBold]; + PluginsListView.Canvas.Font.Style := PluginsListView.Canvas.Font.Style + + [fsBold]; end; procedure TSmashForm.PluginsListViewDrawItem(Sender: TCustomListView; Item: TListItem; Rect: TRect; State: TOwnerDrawState); var - i, x, y: integer; + i, X, Y: Integer; ListView: TListView; R: TRect; begin ListView := TListView(Sender); - if Item.Selected then begin + if Item.Selected then + begin ListView.Canvas.Brush.Color := $FFEEDD; ListView.Canvas.FillRect(Rect); end; R := Rect; R.Right := R.Left + ListView.Columns[0].Width - 3; - x := Rect.Left + 3; - y := (Rect.Bottom - Rect.Top - ListView.Canvas.TextHeight('Hg')) div 2 + Rect.Top; - ListView.Canvas.TextRect(R, x, y, Item.Caption); - for i := 0 to Item.SubItems.Count - 1 do begin + X := Rect.Left + 3; + Y := (Rect.Bottom - Rect.Top - ListView.Canvas.TextHeight('Hg')) div 2 + + Rect.Top; + ListView.Canvas.TextRect(R, X, Y, Item.Caption); + for i := 0 to Item.SubItems.Count - 1 do + begin R.Left := R.Right + 3; // fixes drawing bug - R.Right := R.Left + ListView_GetColumnWidth(ListView.Handle, ListView.Columns[i + 1].Index); - x := R.Left; - ListView.Canvas.TextRect(R, x, y, Item.SubItems[i]); + R.Right := R.Left + ListView_GetColumnWidth(ListView.Handle, + ListView.Columns[i + 1].index); + X := R.Left; + ListView.Canvas.TextRect(R, X, Y, Item.SubItems[i]); end; end; -{******************************************************************************} +{ ****************************************************************************** } { Plugins Popup Menu methods Methods for dealing with the popup menu for the PluginsListView. - PluginsPopupMenuPopup @@ -1062,11 +1121,11 @@ procedure TSmashForm.PluginsListViewDrawItem(Sender: TCustomListView; - CheckForErrorsClick - RemoveFromPatchClick } -{******************************************************************************} +{ ****************************************************************************** } procedure TSmashForm.PluginsPopupMenuPopup(Sender: TObject); var - i: integer; + i: Integer; bPluginInPatch, bHasSelection, bAllPluginsInPatch, bAllHaveTags: boolean; ListItem: TListItem; plugin: TPlugin; @@ -1078,7 +1137,8 @@ procedure TSmashForm.PluginsPopupMenuPopup(Sender: TObject); bAllHaveTags := true; // loop through selection - for i := 0 to Pred(PluginsListView.Items.Count) do begin + for i := 0 to Pred(PluginsListView.Items.Count) do + begin ListItem := PluginsListView.Items[i]; if not ListItem.Selected then continue; @@ -1118,7 +1178,8 @@ procedure TSmashForm.UpdatePluginsPopupMenu; AddToPatchItem.Add(MenuItem); // add patches to submenu - for i := 0 to Pred(PatchesList.Count) do begin + for i := 0 to Pred(PatchesList.Count) do + begin patch := TPatch(PatchesList[i]); MenuItem := TMenuItem.Create(AddToPatchItem); MenuItem.Caption := patch.name; @@ -1127,7 +1188,8 @@ procedure TSmashForm.UpdatePluginsPopupMenu; end; // add smash settings to submenu - for i := 0 to Pred(SmashSettings.Count) do begin + for i := 0 to Pred(SmashSettings.Count) do + begin aSetting := TSmashSetting(SmashSettings[i]); // parse setting group @@ -1138,7 +1200,8 @@ procedure TSmashForm.UpdatePluginsPopupMenu; // get group menu item or create it if missing GroupItem := SmashSettingItem.Find(sGroup); - if not Assigned(GroupItem) then begin + if not Assigned(GroupItem) then + begin GroupItem := TMenuItem.Create(SmashSettingItem); GroupItem.Caption := sGroup; SmashSettingItem.Add(GroupItem); @@ -1163,9 +1226,10 @@ procedure TSmashForm.AddToPatchClick(Sender: TObject); patch := TPatchHelpers.PatchByName(PatchesList, name); if Assigned(patch) then AddPluginsToPatch(patch) - else begin + else + begin ToggleFormState(false); - ShowMessage('Error: Could not find patch '+name); + ShowMessage('Error: Could not find patch ' + name); ToggleFormState(true); end; @@ -1182,9 +1246,10 @@ procedure TSmashForm.ChangeSettingClick(Sender: TObject); aSetting := TSettingHelpers.SettingByName(name); if Assigned(aSetting) then ChangePatchSetting(aSetting) - else begin + else + begin ToggleFormState(false); - ShowMessage('Error: Could not find setting '+name); + ShowMessage('Error: Could not find setting ' + name); ToggleFormState(true); end; end; @@ -1200,12 +1265,13 @@ procedure TSmashForm.AddToNewPatchClick(Sender: TObject); procedure TSmashForm.ManageTagsItemClick(Sender: TObject); var - i: integer; + i: Integer; ListItem: TListItem; tmForm: TTagManager; plugin: TPlugin; begin - for i := 0 to Pred(PluginsListView.Items.Count) do begin + for i := 0 to Pred(PluginsListView.Items.Count) do + begin // only process selected list items ListItem := PluginsListView.Items[i]; if not ListItem.Selected then @@ -1231,11 +1297,12 @@ procedure TSmashForm.ManageTagsItemClick(Sender: TObject); procedure TSmashForm.ApplySettingTagsItemClick(Sender: TObject); var - i: integer; + i: Integer; ListItem: TListItem; plugin: TPlugin; begin - for i := 0 to Pred(PluginsListView.Items.Count) do begin + for i := 0 to Pred(PluginsListView.Items.Count) do + begin // only process selected list items ListItem := PluginsListView.Items[i]; if not ListItem.Selected then @@ -1256,12 +1323,12 @@ procedure TSmashForm.ApplySettingTagsItemClick(Sender: TObject); procedure TSmashForm.ClearTagsItemClick(Sender: TObject); var - i: integer; + i: Integer; ListItem: TListItem; pluginNames: String; plugin: TPlugin; pluginsToClear: TList; - bApproved: Boolean; + bApproved: boolean; frmDialog: TForm; begin // initialize variables @@ -1272,9 +1339,11 @@ procedure TSmashForm.ClearTagsItemClick(Sender: TObject); // use a try-finally to make certain the list is freed try // add selected list items to the list - for i := 0 to Pred(PluginsListView.Items.Count) do begin + for i := 0 to Pred(PluginsListView.Items.Count) do + begin ListItem := PluginsListView.Items[i]; - if ListItem.Selected then begin + if ListItem.Selected then + begin plugin := TPlugin(PluginsList[i]); pluginsToClear.Add(plugin); pluginNames := pluginNames + #13#10' - ' + plugin.filename; @@ -1282,7 +1351,8 @@ procedure TSmashForm.ClearTagsItemClick(Sender: TObject); end; // prompt user if a plugin was selected - if pluginsToClear.Count > 0 then begin + if pluginsToClear.Count > 0 then + begin frmDialog := CreateMessageDialog(GetLanguageString('msMain_ClearTags') + pluginNames, mtConfirmation, mbOKCancel, mbOk); frmDialog.PopupParent := self; @@ -1296,10 +1366,11 @@ procedure TSmashForm.ClearTagsItemClick(Sender: TObject); exit; // clear tags on plugins in the list - for i := 0 to Pred(pluginsToClear.Count) do begin + for i := 0 to Pred(pluginsToClear.Count) do + begin plugin := TPlugin(pluginsToClear[i]); - Logger.Write('PLUGIN', 'Tags', 'Clearing tags on '+plugin.filename); - plugin.description.Text := ClearTags(plugin.description.Text); + Logger.Write('PLUGIN', 'Tags', 'Clearing tags on ' + plugin.filename); + plugin.Description.text := ClearTags(plugin.Description.text); plugin.GetSettingTag; plugin.WriteDescription; // plugin.Save; @@ -1318,13 +1389,14 @@ procedure TSmashForm.ClearTagsItemClick(Sender: TObject); { Remove from Patch } procedure TSmashForm.RemoveFromPatchItemClick(Sender: TObject); var - i: integer; + i: Integer; ListItem: TListItem; pluginName, patchName: string; patch: TPatch; plugin: TPlugin; begin - for i := 0 to Pred(PluginsListView.Items.Count) do begin + for i := 0 to Pred(PluginsListView.Items.Count) do + begin // only process selected list items ListItem := PluginsListView.Items[i]; if not ListItem.Selected then @@ -1334,7 +1406,8 @@ procedure TSmashForm.RemoveFromPatchItemClick(Sender: TObject); plugin := TPlugin(PluginsList[i]); pluginName := plugin.filename; patchName := plugin.patch; - if patchName <> ' ' then begin + if patchName <> ' ' then + begin patch := TPatchHelpers.PatchByName(PatchesList, patchName); if Assigned(patch) then patch.plugins.Delete(patch.plugins.IndexOf(pluginName)); @@ -1351,11 +1424,12 @@ procedure TSmashForm.RemoveFromPatchItemClick(Sender: TObject); procedure TSmashForm.OpenPluginLocationItemClick(Sender: TObject); var - i: integer; - listItem: TListItem; + i: Integer; + ListItem: TListItem; plugin: TPlugin; begin - for i := 0 to Pred(PluginsListView.Items.Count) do begin + for i := 0 to Pred(PluginsListView.Items.Count) do + begin // only process selected list items ListItem := PluginsListView.Items[i]; if not ListItem.Selected then @@ -1368,7 +1442,7 @@ procedure TSmashForm.OpenPluginLocationItemClick(Sender: TObject); end; end; -{******************************************************************************} +{ ****************************************************************************** } { Patch List View Events Events involving the PatchesListView control. Events include: - UpdatePatchDetails @@ -1378,7 +1452,7 @@ procedure TSmashForm.OpenPluginLocationItemClick(Sender: TObject); - PatchesListViewDrawItem - SavePatchEdit } -{******************************************************************************} +{ ****************************************************************************** } procedure TSmashForm.UpdatePatchDetails; var @@ -1396,17 +1470,21 @@ procedure TSmashForm.UpdatePatchDetails; // get patch information patch := PatchesList[PatchesListView.ItemIndex]; - AddDetailsItem(GetLanguageString('msMain_Status'), StatusArray[Ord(patch.status)].desc); + AddDetailsItem(GetLanguageString('msMain_Status'), + StatusArray[Ord(patch.status)].desc); AddDetailsItem(GetLanguageString('msMain_PatchName'), patch.name); AddDetailsItem(GetLanguageString('msMain_Filename'), patch.filename); - AddDetailsItem(GetLanguageString('msMain_PluginCount'), IntToStr(patch.plugins.Count)); - AddDetailsItem(GetLanguageString('msMain_DateBuilt'), DateBuiltString(patch.dateBuilt)); + AddDetailsItem(GetLanguageString('msMain_PluginCount'), + IntToStr(patch.plugins.Count)); + AddDetailsItem(GetLanguageString('msMain_DateBuilt'), + DateBuiltString(patch.dateBuilt)); AddDetailsList(GetLanguageString('msMain_Plugins'), patch.plugins); AddDetailsItem(' ', ' '); if patch.fails.Count < 250 then AddDetailsList(GetLanguageString('msMain_Fails'), patch.fails) else - AddDetailsItem(GetLanguageString('msMain_Fails'), GetLanguageString('msMain_TooManyFails')); + AddDetailsItem(GetLanguageString('msMain_Fails'), + GetLanguageString('msMain_TooManyFails')); // update gui StringGrid_CorrectWidth(DetailsGrid); @@ -1416,19 +1494,20 @@ procedure TSmashForm.UpdatePatchDetails; procedure TSmashForm.UpdatePatches; var - i: integer; + i: Integer; patch: TPatch; begin // update patch count PatchesListView.Items.Count := PatchesList.Count; - for i := 0 to Pred(PatchesList.Count) do begin + for i := 0 to Pred(PatchesList.Count) do + begin patch := TPatch(PatchesList[i]); // sort plugins in patch patch.SortPlugins; // get status of each patch - if not ((patch.status in ForcedStatuses) - or (patch.status in FailedStatuses)) then + if not((patch.status in ForcedStatuses) or (patch.status in FailedStatuses)) + then patch.GetStatus; end; end; @@ -1442,11 +1521,12 @@ function TSmashForm.NewPatch: TPatch; patch := TPatchHelpers.CreateNewPatch(PatchesList); // edit patch immediately after its creation - EditPatch := TEditForm.Create(Self); + EditPatch := TEditForm.Create(self); EditPatch.patch := patch; - if EditPatch.ShowModal = mrOk then begin + if EditPatch.ShowModal = mrOk then + begin patch := EditPatch.patch; - LogMessage('PATCH', 'New', 'Created new patch '+patch.name); + LogMessage('PATCH', 'New', 'Created new patch ' + patch.name); // add patch to list and update views PatchesList.Add(patch); UpdatePatches; @@ -1470,58 +1550,62 @@ procedure TSmashForm.PatchesListViewData(Sender: TObject; Item: TListItem); var patch: TPatch; begin - if Item.Index > Pred(PatchesList.Count) then + if Item.index > Pred(PatchesList.Count) then exit; - patch := TPatch(PatchesList[Item.Index]); - Item.Caption := IntToHex(Item.Index, 2); + patch := TPatch(PatchesList[Item.index]); + Item.Caption := IntToHex(Item.index, 2); Item.SubItems.Add(patch.name); Item.SubItems.Add(patch.filename); - Item.SubItems.Add(IntToStr(patch.plugins.count)); + Item.SubItems.Add(IntToStr(patch.plugins.Count)); Item.SubItems.Add(DateBuiltString(patch.dateBuilt)); - PatchesListView.Canvas.Font.Color := StatusArray[Ord(patch.status)].color; - PatchesListView.Canvas.Font.Style := PatchesListView.Canvas.Font.Style + [fsBold]; + PatchesListView.Canvas.Font.Color := StatusArray[Ord(patch.status)].Color; + PatchesListView.Canvas.Font.Style := PatchesListView.Canvas.Font.Style + + [fsBold]; end; procedure TSmashForm.PatchesListViewDrawItem(Sender: TCustomListView; Item: TListItem; Rect: TRect; State: TOwnerDrawState); var - i, x, y: integer; + i, X, Y: Integer; ListView: TListView; R: TRect; begin ListView := TListView(Sender); - if Item.Selected then begin + if Item.Selected then + begin ListView.Canvas.Brush.Color := $FFEEDD; ListView.Canvas.FillRect(Rect); end; R := Rect; R.Right := R.Left + ListView.Columns[0].Width - 3; - x := Rect.Left + 3; - y := (Rect.Bottom - Rect.Top - ListView.Canvas.TextHeight('Hg')) div 2 + Rect.Top; - ListView.Canvas.TextRect(R, x, y, Item.Caption); - for i := 0 to Item.SubItems.Count - 1 do begin + X := Rect.Left + 3; + Y := (Rect.Bottom - Rect.Top - ListView.Canvas.TextHeight('Hg')) div 2 + + Rect.Top; + ListView.Canvas.TextRect(R, X, Y, Item.Caption); + for i := 0 to Item.SubItems.Count - 1 do + begin R.Left := R.Right + 3; // fixes drawing error - R.Right := R.Left + ListView_GetColumnWidth(ListView.Handle, ListView.Columns[i + 1].Index); - x := R.Left; - ListView.Canvas.TextRect(R, x, y, Item.SubItems[i]); + R.Right := R.Left + ListView_GetColumnWidth(ListView.Handle, + ListView.Columns[i + 1].index); + X := R.Left; + ListView.Canvas.TextRect(R, X, Y, Item.SubItems[i]); end; end; - -{******************************************************************************} +{ ****************************************************************************** } { LogListView methods } -{******************************************************************************} +{ ****************************************************************************** } procedure TSmashForm.LogListViewData(Sender: TObject; Item: TListItem); var msg: TLogMessage; begin - if (Item.Index > Pred(Log.Count)) then + if (Item.index > Pred(Log.Count)) then exit; - msg := TLogMessage(Log[Item.Index]); + msg := TLogMessage(Log[Item.index]); Item.Caption := msg.time; Item.SubItems.Add(msg.appTime); Item.SubItems.Add(msg.group); @@ -1546,14 +1630,15 @@ procedure TSmashForm.LogListViewData(Sender: TObject; Item: TListItem); procedure TSmashForm.LogListViewDrawItem(Sender: TCustomListView; Item: TListItem; Rect: TRect; State: TOwnerDrawState); var - i, x, y: integer; + i, X, Y: Integer; ListView: TListView; R: TRect; msg: string; map: TStringList; begin ListView := TListView(Sender); - if Item.Selected then begin + if Item.Selected then + begin ListView.Canvas.Brush.Color := $FFEEDD; ListView.Canvas.FillRect(Rect); end; @@ -1567,19 +1652,19 @@ procedure TSmashForm.LogListViewDrawItem(Sender: TCustomListView; // prepare text rect R := Rect; R.Right := R.Left + ListView.Width - 3; - x := Rect.Left + 3; - y := (Rect.Bottom - Rect.Top - ListView.Canvas.TextHeight('Hg')) div 2 + Rect.Top; + X := Rect.Left + 3; + Y := (Rect.Bottom - Rect.Top - ListView.Canvas.TextHeight('Hg')) div 2 + + Rect.Top; // draw message msg := ApplyTemplate(settings.logMessageTemplate, map); - ListView.Canvas.TextRect(R, x, y, msg); + ListView.Canvas.TextRect(R, X, Y, msg); // clean up map.Free; end; - -{******************************************************************************} +{ ****************************************************************************** } { Log Popup Menu events - LogPopupMenuPopup - FilterInitItemClick @@ -1590,55 +1675,61 @@ procedure TSmashForm.LogListViewDrawItem(Sender: TCustomListView; - CopyToClipboardItemClick - SaveAndClearItemClick } -{******************************************************************************} +{ ****************************************************************************** } function EnableStr(var b: boolean): string; begin - Result := IfThen(not b, GetLanguageString('msMain_Enable'), GetLanguageString('msMain_Disable')); + Result := IfThen(not b, GetLanguageString('msMain_Enable'), + GetLanguageString('msMain_Disable')); end; procedure TSmashForm.LogPopupMenuPopup(Sender: TObject); var i: Integer; - item: TMenuItem; + Item: TMenuItem; filter: TFilter; begin // rebuild group filter items FilterGroupItem.Clear; - for i := 0 to Pred(GroupFilters.Count) do begin + for i := 0 to Pred(GroupFilters.Count) do + begin filter := TFilter(GroupFilters[i]); - item := TMenuItem.Create(FilterGroupItem); - item.Caption := EnableStr(filter.enabled) + ' ' + filter.group; - item.OnClick := ToggleGroupFilter; - FilterGroupItem.Add(item); + Item := TMenuItem.Create(FilterGroupItem); + Item.Caption := EnableStr(filter.Enabled) + ' ' + filter.group; + Item.OnClick := ToggleGroupFilter; + FilterGroupItem.Add(Item); end; // rebuild label filter items FilterLabelItem.Clear; - for i := 0 to Pred(LabelFilters.Count) do begin + for i := 0 to Pred(LabelFilters.Count) do + begin filter := TFilter(LabelFilters[i]); - item := TMenuItem.Create(FilterLabelItem); - item.Caption := Format('%s %s, %s', [EnableStr(filter.enabled), filter.group, filter.&label]); - item.OnClick := ToggleLabelFilter; - FilterLabelItem.Add(item); + Item := TMenuItem.Create(FilterLabelItem); + Item.Caption := Format('%s %s, %s', [EnableStr(filter.Enabled), + filter.group, filter.&label]); + Item.OnClick := ToggleLabelFilter; + FilterLabelItem.Add(Item); end; // toggle copy to clipboard item based on whether or not log items are selected CopyToClipboardItem.Enabled := Assigned(LogListView.Selected); // rename toggle auto scroll item based on whether or not auto scroll is enabled - ToggleAutoScrollItem.Caption := Format('%s %s', [EnableStr(bAutoScroll), GetLanguageString('msMain_AutoScroll')]); + ToggleAutoScrollItem.Caption := + Format('%s %s', [EnableStr(bAutoScroll), + GetLanguageString('msMain_AutoScroll')]); end; // toggles a group filter for the LogListView procedure TSmashForm.ToggleGroupFilter(Sender: TObject); var - index: integer; + index: Integer; filter: TFilter; begin index := FilterGroupItem.IndexOf(TMenuItem(Sender)); filter := GroupFilters[index]; - filter.enabled := not filter.enabled; + filter.Enabled := not filter.Enabled; LogListView.Items.Count := 0; RebuildLog; LogListView.Items.Count := Log.Count; @@ -1648,12 +1739,12 @@ procedure TSmashForm.ToggleGroupFilter(Sender: TObject); // toggles a label filter for the LogListView procedure TSmashForm.ToggleLabelFilter(Sender: TObject); var - index: integer; + index: Integer; filter: TFilter; begin index := FilterLabelItem.IndexOf(TMenuItem(Sender)); filter := LabelFilters[index]; - filter.enabled := not filter.enabled; + filter.Enabled := not filter.Enabled; LogListView.Items.Count := 0; RebuildLog; LogListView.Items.Count := Log.Count; @@ -1675,16 +1766,18 @@ procedure TSmashForm.CopyToClipboardItemClick(Sender: TObject); sl := TStringList.Create; // put selected messages in stringlist - for i := 0 to Pred(Log.Count) do begin + for i := 0 to Pred(Log.Count) do + begin if not LogListView.Items[i].Selected then continue; msg := TLogMessage(Log[i]); - sl.Add(Format('[%s] (%s) %s: %s', [msg.time, msg.group, msg.&label, msg.text])); + sl.Add(Format('[%s] (%s) %s: %s', [msg.time, msg.group, msg.&label, + msg.text])); end; // put stringlist in clipboard, then free - Clipboard.AsText := sl.Text; + Clipboard.AsText := sl.text; sl.Free; end; @@ -1697,8 +1790,7 @@ procedure TSmashForm.SaveAndClearItemClick(Sender: TObject); LogMessage('GENERAL', 'Log', 'Saved and cleared log.'); end; - -{******************************************************************************} +{ ****************************************************************************** } { PatchesPopupMenu methods Methods for dealing with the popup menu for the PatchesListView. - PatchesPopupMenuPopup @@ -1713,12 +1805,12 @@ procedure TSmashForm.SaveAndClearItemClick(Sender: TObject); - PatchesListViewDblClick - PatchesListViewKeyDown } -{******************************************************************************} +{ ****************************************************************************** } procedure TSmashForm.PatchesPopupMenuPopup(Sender: TObject); var - bNeverBuilt, bHasBuildStatus, bHasUpToDateStatus, bHasSelection, - bIsNotTop, bIsNotBottom: boolean; + bNeverBuilt, bHasBuildStatus, bHasUpToDateStatus, bHasSelection, bIsNotTop, + bIsNotBottom: boolean; patch: TPatch; i, patchesSelected: Integer; sBuild, sRebuild: string; @@ -1731,17 +1823,21 @@ procedure TSmashForm.PatchesPopupMenuPopup(Sender: TObject); patchesSelected := 0; // loop through list view to find selection - for i := 0 to Pred(PatchesListView.Items.Count) do begin + for i := 0 to Pred(PatchesListView.Items.Count) do + begin if not PatchesListView.Items[i].Selected then continue; patch := TPatch(PatchesList[i]); Inc(patchesSelected); // update booleans - if i = 0 then bIsNotTop := false; - if i = Pred(PatchesList.Count) then bIsNotBottom := false; + if i = 0 then + bIsNotTop := false; + if i = Pred(PatchesList.Count) then + bIsNotBottom := false; bNeverBuilt := bNeverBuilt or (patch.dateBuilt = 0); bHasBuildStatus := bHasBuildStatus or (patch.status in BuildStatuses); - bHasUpToDateStatus := bHasUpToDateStatus or (patch.status in UpToDateStatuses); + bHasUpToDateStatus := bHasUpToDateStatus or + (patch.status in UpToDateStatuses); end; bHasSelection := (patchesSelected > 0); @@ -1760,11 +1856,13 @@ procedure TSmashForm.PatchesPopupMenuPopup(Sender: TObject); ToBottomItem.Enabled := bHasSelection and bIsNotBottom; // one or multiple patchs? - if (patchesSelected = 1) then begin + if (patchesSelected = 1) then + begin sBuild := 'msMain_BuildPatch'; sRebuild := 'msMain_RebuildPatch'; end - else begin + else + begin sBuild := 'msMain_BuildPatches'; sRebuild := 'msMain_RebuildPatches'; end; @@ -1773,7 +1871,8 @@ procedure TSmashForm.PatchesPopupMenuPopup(Sender: TObject); BuildPatchItem.Caption := GetLanguageString(sBuild) else if bHasBuildStatus then BuildPatchItem.Caption := GetLanguageString(sRebuild) - else begin + else + begin BuildPatchItem.Enabled := false; BuildPatchItem.Caption := GetLanguageString(sRebuild); end; @@ -1782,24 +1881,27 @@ procedure TSmashForm.PatchesPopupMenuPopup(Sender: TObject); procedure TSmashForm.EditPatchItemClick(Sender: TObject); var EditPatch: TEditForm; - i, j: integer; + i, j: Integer; plugin: TPlugin; patch: TPatch; begin // loop through patches - for i := 0 to Pred(PatchesListView.Items.Count) do begin + for i := 0 to Pred(PatchesListView.Items.Count) do + begin if not PatchesListView.Items[i].Selected then continue; patch := TPatch(PatchesList[i]); - Logger.Write('PATCH', 'Edit', 'Editing '+patch.name); + Logger.Write('PATCH', 'Edit', 'Editing ' + patch.name); // create EditForm - EditPatch := TEditForm.Create(Self); + EditPatch := TEditForm.Create(self); EditPatch.patch := patch; - if EditPatch.ShowModal = mrOk then begin + if EditPatch.ShowModal = mrOk then + begin patch := EditPatch.patch; // update plugin.patch properties - for j := 0 to Pred(patch.plugins.Count) do begin - plugin := PluginByFilename(patch.plugins[j]); + for j := 0 to Pred(patch.plugins.Count) do + begin + plugin := PluginByFileName(patch.plugins[j]); if Assigned(plugin) then plugin.patch := patch.name; end; @@ -1817,16 +1919,17 @@ procedure TSmashForm.EditPatchItemClick(Sender: TObject); procedure TSmashForm.UpItemClick(Sender: TObject); var - i, max: Integer; + i, Max: Integer; begin - max := Pred(PatchesListView.Items.Count); + Max := Pred(PatchesListView.Items.Count); // if patch at index 0 is selected, exit // we can't move it up! if PatchesListView.Items[0].Selected then exit; // loop through patches - for i := 0 to max do begin + for i := 0 to Max do + begin if not PatchesListView.Items[i].Selected then continue; PatchesList.Move(i, i - 1); @@ -1840,17 +1943,18 @@ procedure TSmashForm.UpItemClick(Sender: TObject); procedure TSmashForm.DownItemClick(Sender: TObject); var - i, max: Integer; + i, Max: Integer; begin - max := Pred(PatchesListView.Items.Count); + Max := Pred(PatchesListView.Items.Count); // if patch at max index is selected, exit // we can't move it down! - if PatchesListView.Items[max].Selected then + if PatchesListView.Items[Max].Selected then exit; // loop through patches in reverse so we don't move the same patch // multiple times - for i := max downto 0 do begin + for i := Max downto 0 do + begin if not PatchesListView.Items[i].Selected then continue; PatchesList.Move(i, i + 1); @@ -1864,10 +1968,10 @@ procedure TSmashForm.DownItemClick(Sender: TObject); procedure TSmashForm.ToTopItemClick(Sender: TObject); var - i, max, iIndex: Integer; + i, Max, iIndex: Integer; tempList: TList; begin - max := Pred(PatchesListView.Items.Count); + Max := Pred(PatchesListView.Items.Count); // if patch at index 0 is selected, exit // we can't move it up! if PatchesListView.Items[0].Selected then @@ -1878,11 +1982,14 @@ procedure TSmashForm.ToTopItemClick(Sender: TObject); // loop through patches to build new list iIndex := 0; - for i := 0 to max do begin - if not PatchesListView.Items[i].Selected then begin + for i := 0 to Max do + begin + if not PatchesListView.Items[i].Selected then + begin tempList.Add(PatchesList[i]); end - else begin + else + begin tempList.Insert(iIndex, PatchesList[i]); Inc(iIndex); end; @@ -1890,11 +1997,12 @@ procedure TSmashForm.ToTopItemClick(Sender: TObject); // set PatchesList to tempList PatchesList.Clear; - for i := 0 to max do PatchesList.Add(tempList[i]); + for i := 0 to Max do + PatchesList.Add(tempList[i]); tempList.Free; // update selection - for i := 0 to max do + for i := 0 to Max do PatchesListView.Items[i].Selected := i < iIndex; // update gui @@ -1903,13 +2011,13 @@ procedure TSmashForm.ToTopItemClick(Sender: TObject); procedure TSmashForm.ToBottomItemClick(Sender: TObject); var - i, max, iIndex: Integer; + i, Max, iIndex: Integer; tempList: TList; begin - max := Pred(PatchesListView.Items.Count); + Max := Pred(PatchesListView.Items.Count); // if patch at max index is selected, exit // we can't move it down! - if PatchesListView.Items[max].Selected then + if PatchesListView.Items[Max].Selected then exit; // create tempList @@ -1917,23 +2025,27 @@ procedure TSmashForm.ToBottomItemClick(Sender: TObject); // loop through patches to build new list iIndex := 0; - for i := 0 to max do begin - if not PatchesListView.Items[i].Selected then begin + for i := 0 to Max do + begin + if not PatchesListView.Items[i].Selected then + begin tempList.Insert(iIndex, PatchesList[i]); Inc(iIndex); end - else begin + else + begin tempList.Add(PatchesList[i]); end; end; // set PatchesList to tempList PatchesList.Clear; - for i := 0 to max do PatchesList.Add(tempList[i]); + for i := 0 to Max do + PatchesList.Add(tempList[i]); tempList.Free; // update selection - for i := 0 to max do + for i := 0 to Max do PatchesListView.Items[i].Selected := i >= iIndex; // update gui @@ -1943,21 +2055,25 @@ procedure TSmashForm.ToBottomItemClick(Sender: TObject); { Remove unloaded plugins and plugins with errors } procedure TSmashForm.RemovePluginsItemClick(Sender: TObject); var - i, j: integer; + i, j: Integer; plugin: TPlugin; patch: TPatch; begin // loop through patches - for i := 0 to Pred(PatchesListView.Items.Count) do begin + for i := 0 to Pred(PatchesListView.Items.Count) do + begin if not PatchesListView.Items[i].Selected then continue; patch := TPatch(PatchesList[i]); - Logger.Write('PATCH', 'Plugins', 'Removing plugins from '+patch.name); + Logger.Write('PATCH', 'Plugins', 'Removing plugins from ' + patch.name); // remove plugins that aren't loaded or have errors - for j := Pred(patch.plugins.Count) downto 0 do begin - plugin := PluginByFilename(patch.plugins[j]); - if not Assigned(plugin) then begin - Logger.Write('PATCH', 'Plugins', 'Removing '+patch.plugins[j]+', plugin not loaded'); + for j := Pred(patch.plugins.Count) downto 0 do + begin + plugin := PluginByFileName(patch.plugins[j]); + if not Assigned(plugin) then + begin + Logger.Write('PATCH', 'Plugins', 'Removing ' + patch.plugins[j] + + ', plugin not loaded'); patch.plugins.Delete(j); continue; end; @@ -1969,16 +2085,20 @@ procedure TSmashForm.RemovePluginsItemClick(Sender: TObject); UpdateListViews; end; -procedure TSmashform.RemoveUnloadedPlugins(patch: TPatch); +procedure TSmashForm.RemoveUnloadedPlugins(patch: TPatch); var - i: integer; + i: Integer; plugin: TPlugin; begin - Logger.Write('PATCH', 'Plugins', 'Removing unloaded plugins from '+patch.name); - for i := Pred(patch.plugins.Count) downto 0 do begin - plugin := PluginByFilename(patch.plugins[i]); - if not Assigned(plugin) then begin - Logger.Write('PATCH', 'Plugins', 'Removing '+patch.plugins[i]+', plugin not loaded'); + Logger.Write('PATCH', 'Plugins', 'Removing unloaded plugins from ' + + patch.name); + for i := Pred(patch.plugins.Count) downto 0 do + begin + plugin := PluginByFileName(patch.plugins[i]); + if not Assigned(plugin) then + begin + Logger.Write('PATCH', 'Plugins', 'Removing ' + patch.plugins[i] + + ', plugin not loaded'); patch.plugins.Delete(i); end; end; @@ -1986,11 +2106,12 @@ procedure TSmashform.RemoveUnloadedPlugins(patch: TPatch); procedure TSmashForm.RemoveUnloadedPluginsItemClick(Sender: TObject); var - i: integer; + i: Integer; patch: TPatch; begin // loop through patches - for i := 0 to Pred(PatchesListView.Items.Count) do begin + for i := 0 to Pred(PatchesListView.Items.Count) do + begin if not PatchesListView.Items[i].Selected then continue; patch := TPatch(PatchesList[i]); @@ -2018,7 +2139,8 @@ procedure TSmashForm.DeletePatchItemClick(Sender: TObject); patchesToDelete := TList.Create; patchNames := ''; for i := 0 to Pred(PatchesListView.Items.Count) do - if PatchesListView.Items[i].Selected then begin + if PatchesListView.Items[i].Selected then + begin patch := TPatch(PatchesList[i]); patchesToDelete.Add(patch); PatchesListView.Items[i].Selected := false; @@ -2026,7 +2148,8 @@ procedure TSmashForm.DeletePatchItemClick(Sender: TObject); end; // show multi-patch prompt if multiple patches selected - if patchesToDelete.Count > 0 then begin + if patchesToDelete.Count > 0 then + begin frmDialog := CreateMessageDialog(GetLanguageString('msMain_DeletePatches') + patchNames, mtConfirmation, mbOKCancel, mbOk); frmDialog.PopupParent := self; @@ -2037,19 +2160,21 @@ procedure TSmashForm.DeletePatchItemClick(Sender: TObject); // exit if user didn't approve deletion if not bApproved then - Exit; + exit; // clear details grid slDetails.Clear; // loop through patches - for i := Pred(patchesToDelete.Count) downto 0 do begin + for i := Pred(patchesToDelete.Count) downto 0 do + begin patch := TPatch(patchesToDelete[i]); - Logger.Write('PATCH', 'Delete', 'Deleting patch '+patch.name); + Logger.Write('PATCH', 'Delete', 'Deleting patch ' + patch.name); PatchesListView.Items.Count := PatchesListView.Items.Count - 1; // remove patch from plugin patch properties - for j := 0 to Pred(PluginsList.Count) do begin + for j := 0 to Pred(PluginsList.Count) do + begin plugin := TPlugin(PluginsList[j]); if plugin.patch = patch.name then plugin.patch := ' '; @@ -2077,22 +2202,24 @@ procedure TSmashForm.BuildPatchItemClick(Sender: TObject); patchesToBuild := TList.Create; // get timecosts - for i := 0 to Pred(PatchesListView.Items.Count) do begin + for i := 0 to Pred(PatchesListView.Items.Count) do + begin if not PatchesListView.Items[i].Selected then continue; patch := TPatch(PatchesList[i]); - if not (patch.status in BuildStatuses) then + if not(patch.status in BuildStatuses) then continue; // else calculate time cost and build patch - Logger.Write('PATCH', 'Build', 'Building '+patch.name); + Logger.Write('PATCH', 'Build', 'Building ' + patch.name); timeCost := patch.GetTimeCost * 2; timeCosts.Add(IntToStr(timeCost)); patchesToBuild.Add(patch); end; // free and exit if no patches to check for errors - if patchesToBuild.Count = 0 then begin + if patchesToBuild.Count = 0 then + begin timeCosts.Free; patchesToBuild.Free; exit; @@ -2101,9 +2228,9 @@ procedure TSmashForm.BuildPatchItemClick(Sender: TObject); // Show progress form self.Enabled := false; xEditLogGroup := 'PATCH'; - pForm := TProgressForm.Create(Self); + pForm := TProgressForm.Create(self); pForm.pfLogPath := LogPath + 'patch\'; - pForm.PopupParent := Self; + pForm.PopupParent := self; pForm.Caption := GetLanguageString('msProg_Smashing'); pForm.SetMaxProgress(IntegerListSum(timeCosts, Pred(timeCosts.Count))); pForm.Show; @@ -2120,7 +2247,8 @@ procedure TSmashForm.OpenInExplorerItemClick(Sender: TObject); patch: TPatch; begin // loop through patches - for i := 0 to Pred(PatchesListView.Items.Count) do begin + for i := 0 to Pred(PatchesListView.Items.Count) do + begin if not PatchesListView.Items[i].Selected then continue; patch := TPatch(PatchesList[i]); @@ -2138,29 +2266,30 @@ procedure TSmashForm.ToggleRebuildItemClick(Sender: TObject); patch: TPatch; begin // loop through patches - for i := 0 to Pred(PatchesListView.Items.Count) do begin + for i := 0 to Pred(PatchesListView.Items.Count) do + begin if not PatchesListView.Items[i].Selected then continue; patch := TPatch(PatchesList[i]); - Logger.Write('PATCH', 'Status', 'Toggled rebuild status on '+patch.name); + Logger.Write('PATCH', 'Status', 'Toggled rebuild status on ' + patch.name); // if forced up to date, set to Ready to be rebuilt if patch.status = psUpToDateForced then patch.status := psRebuildReady - // if normal up to date, set to Ready to rebuilt [forced] + // if normal up to date, set to Ready to rebuilt [forced] else if patch.status = psUpToDate then - patch.Status := psRebuildReadyForced - // if force rebuild, set to Up to date + patch.status := psRebuildReadyForced + // if force rebuild, set to Up to date else if patch.status = psRebuildReadyForced then patch.status := psUpToDate - // if normal rebuild, set to Up to date [Forced] + // if normal rebuild, set to Up to date [Forced] else if patch.status = psRebuildReady then - patch.Status := psUpToDateForced; + patch.status := psUpToDateForced; end; // update UpdatePatches; UpdateListViews; - UpdateQuickBar; + UpdateQuickbar; end; { Double click to edit patch } @@ -2177,7 +2306,7 @@ procedure TSmashForm.PatchesListViewKeyDown(Sender: TObject; var Key: Word; DeletePatchItemClick(nil); end; -{******************************************************************************} +{ ****************************************************************************** } { QuickBar Button Events Events involving buttons on the QuickBar. Events include: - CreatePatchButtonClick @@ -2188,7 +2317,7 @@ procedure TSmashForm.PatchesListViewKeyDown(Sender: TObject; var Key: Word; - UpdateButtonClick - HelpButtonClick } -{******************************************************************************} +{ ****************************************************************************** } procedure TSmashForm.UpdateQuickbar; var @@ -2197,7 +2326,8 @@ procedure TSmashForm.UpdateQuickbar; sTitle: string; begin // DISABLE ALL BUTTONS IF INITIALIZATION EXCEPTION - if ProgramStatus.bInitException then begin + if ProgramStatus.bInitException then + begin QuickButton.Enabled := false; NewButton.Enabled := false; BuildButton.Enabled := false; @@ -2209,7 +2339,8 @@ procedure TSmashForm.UpdateQuickbar; // BUILD BUTTON bPatchesToBuild := false; bPatchesToCheck := false; - for i := 0 to Pred(PatchesList.Count) do begin + for i := 0 to Pred(PatchesList.Count) do + begin patch := TPatch(PatchesList[i]); if (patch.status in BuildStatuses) then bPatchesToBuild := true; @@ -2231,10 +2362,11 @@ procedure TSmashForm.UpdateQuickbar; function TSmashForm.GetSmashedPatch: TPatch; begin - Result := TPatchHelpers.PatchByName(PatchesList, 'Smashed Patch'); + Result := TPatchHelpers.PatchByName(PatchesList, 'Smashed Patch'); if Assigned(Result) then RemoveUnloadedPlugins(Result) - else begin + else + begin Result := TPatchHelpers.CreateNewPatch(PatchesList); Result.name := 'Smashed Patch'; Result.filename := 'Smashed Patch.esp'; @@ -2247,10 +2379,10 @@ procedure TSmashForm.StartPatching; // make and show progress form self.Enabled := false; xEditLogGroup := 'PATCH'; - pForm := TProgressForm.Create(Self); + pForm := TProgressForm.Create(self); pForm.pfLogPath := LogPath + 'patch\'; pForm.bDetailsVisible := false; - pForm.PopupParent := Self; + pForm.PopupParent := self; pForm.Caption := GetLanguageString('msProg_Smashing'); pForm.SetMaxProgress(IntegerListSum(timeCosts, Pred(timeCosts.Count))); pForm.Show; @@ -2271,14 +2403,16 @@ procedure TSmashForm.QuickButtonClick(Sender: TObject); smashAll := TSettingHelpers.SettingByName('Smash.All'); // STEP 2: if Smash.All setting not found, exit - if not Assigned(smashAll) then exit; + if not Assigned(smashAll) then + exit; // STEP 3: find and clear or create smashed patch smashedPatch := GetSmashedPatch; // STEP 5: apply Smash.All to all loaded plugins except game ESM // STEP 6: add all loaded plugins except game ESM to smashed patch - for i := 0 to Pred(PluginsList.Count) do begin + for i := 0 to Pred(PluginsList.Count) do + begin plugin := TPlugin(PluginsList[i]); if SameText(plugin.filename, wbGameName + '.esm') then continue; @@ -2296,11 +2430,11 @@ procedure TSmashForm.QuickButtonClick(Sender: TObject); // check/fix smashed patch status if smashedPatch.status = psUpToDate then smashedPatch.status := psRebuildReadyForced; - if not (smashedPatch.status in BuildStatuses) then + if not(smashedPatch.status in BuildStatuses) then exit; // STEP 7: build smashed patch - Logger.Write('PATCH', 'Build', 'Building '+smashedPatch.name); + Logger.Write('PATCH', 'Build', 'Building ' + smashedPatch.name); patchesToBuild := TList.Create; timeCosts := TStringList.Create; patchesToBuild.Add(smashedPatch); @@ -2319,13 +2453,15 @@ procedure TSmashForm.BuildButtonClick(Sender: TObject); patch: TPatch; begin // exit if the loader isn't done - if not wbLoaderDone then begin + if not wbLoaderDone then + begin Logger.Write('ERROR', 'Patch', 'Loader not done, can''t patch yet!'); exit; end; // exit if there are no patches - if PatchesList.Count = 0 then begin + if PatchesList.Count = 0 then + begin Logger.Write('ERROR', 'Patch', 'There are no patches!'); exit; end; @@ -2333,18 +2469,20 @@ procedure TSmashForm.BuildButtonClick(Sender: TObject); // calculate time costs, prepare patches timeCosts := TStringList.Create; patchesToBuild := TList.Create; - for i := 0 to Pred(PatchesList.Count) do begin + for i := 0 to Pred(PatchesList.Count) do + begin patch := TPatch(PatchesList[i]); - if not (patch.status in BuildStatuses) then + if not(patch.status in BuildStatuses) then continue; - Logger.Write('PATCH', 'Build', 'Building '+patch.name); + Logger.Write('PATCH', 'Build', 'Building ' + patch.name); timeCost := patch.GetTimeCost; patchesToBuild.Add(patch); timeCosts.Add(IntToStr(timeCost)); end; // exit if no patches to build - if timeCosts.Count = 0 then begin + if timeCosts.Count = 0 then + begin Logger.Write('ERROR', 'Patch', 'No patches to build!'); timeCosts.Free; patchesToBuild.Free; @@ -2380,7 +2518,7 @@ procedure TSmashForm.OptionsButtonClick(Sender: TObject); begin prevLanguage := settings.language; // Create and show options form - OptionsForm := TOptionsForm.Create(Self); + OptionsForm := TOptionsForm.Create(self); OptionsForm.ShowModal; OptionsForm.Free; @@ -2391,7 +2529,8 @@ procedure TSmashForm.OptionsButtonClick(Sender: TObject); RebuildLog; // if user changed language, update language displayed - if settings.language <> prevLanguage then begin + if settings.language <> prevLanguage then + begin LoadLanguage; TRttiTranslation.Load(language, self); end; @@ -2399,7 +2538,7 @@ procedure TSmashForm.OptionsButtonClick(Sender: TObject); // update gui UpdatePatches; UpdateListViews; - UpdateQuickBar; + UpdateQuickbar; UpdateStatusBar; // if user selected to change game mode, close application diff --git a/frontend/msSplashForm.dfm b/frontend/msSplashForm.dfm old mode 100644 new mode 100755 diff --git a/frontend/msSplashForm.pas b/frontend/msSplashForm.pas old mode 100644 new mode 100755 index 8382718..28e80f7 --- a/frontend/msSplashForm.pas +++ b/frontend/msSplashForm.pas @@ -34,14 +34,14 @@ implementation procedure TSplashForm.ProgressMessage(const s: string); begin - lblProgress.Caption := ' '+s; + lblProgress.Caption := ' ' + s; Application.ProcessMessages; end; procedure TSplashForm.FormCreate(Sender: TObject); begin Tracker.OnLogEvent := ProgressMessage; - lblVersion.Caption := 'v'+GetVersionMem; + lblVersion.Caption := 'v' + GetVersionMem; if settings.simpleSplash then lblProgress.GlowSize := 0; diff --git a/frontend/msTagHelper.dfm b/frontend/msTagHelper.dfm old mode 100644 new mode 100755 diff --git a/frontend/msTagHelper.pas b/frontend/msTagHelper.pas old mode 100644 new mode 100755 index bba6bf7..6b32919 --- a/frontend/msTagHelper.pas +++ b/frontend/msTagHelper.pas @@ -40,7 +40,8 @@ procedure TTagHelper.FormClose(Sender: TObject; var Action: TCloseAction); begin slTags.Clear; if ModalResult = mrOK then - for i := 0 to Pred(CheckList.Items.Count) do begin + for i := 0 to Pred(CheckList.Items.Count) do + begin if CheckList.Checked[i] then slTags.Add(CheckList.Items[i]); end; @@ -60,14 +61,16 @@ procedure TTagHelper.FormShow(Sender: TObject); begin // update lblPrompt case iMode of - -1: begin - Caption := GetLanguageString('msTagH_RemoveTags'); - lblPrompt.Caption := GetLanguageString('msTagH_PromptRemove'); - end; - 1: begin - Caption := GetLanguageString('msTagH_AddTags'); - lblPrompt.Caption := GetLanguageString('msTagH_PromptAdd'); - end; + - 1: + begin + Caption := GetLanguageString('msTagH_RemoveTags'); + lblPrompt.Caption := GetLanguageString('msTagH_PromptRemove'); + end; + 1: + begin + Caption := GetLanguageString('msTagH_AddTags'); + lblPrompt.Caption := GetLanguageString('msTagH_PromptAdd'); + end; end; // populate checklist diff --git a/frontend/msTagManager.dfm b/frontend/msTagManager.dfm old mode 100644 new mode 100755 diff --git a/frontend/msTagManager.pas b/frontend/msTagManager.pas old mode 100644 new mode 100755 index 97ba8e4..c873102 --- a/frontend/msTagManager.pas +++ b/frontend/msTagManager.pas @@ -111,7 +111,8 @@ procedure TTagManager.FormShow(Sender: TObject); procedure TTagManager.FormClose(Sender: TObject; var Action: TCloseAction); begin - if ModalResult = mrOK then begin + if ModalResult = mrOK then + begin plugin.description.Text := meDescription.Lines.Text; if kbCombine.Checked then plugin.GetSettingTag; diff --git a/frontend/msThreads.pas b/frontend/msThreads.pas index a530582..81a1b3f 100755 --- a/frontend/msThreads.pas +++ b/frontend/msThreads.pas @@ -14,23 +14,26 @@ interface // xedit units wbBSA, wbHardcoded, wbInterface, wbImplementation, wbLoadOrder; - type // THREADS AND CALLBACKS TCallback = procedure of object; TStatusCallback = procedure(s: string) of object; + TInitThread = class(TThread) protected procedure Execute; override; end; + TLoaderThread = class(TThread) protected procedure Execute; override; end; + TPatchThread = class(TThread) protected procedure Execute; override; end; + TSaveThread = class(TThread) protected procedure Execute; override; @@ -38,13 +41,12 @@ TSaveThread = class(TThread) var InitCallback, LoaderCallback, ErrorCheckCallback, ErrorFixCallback, - PatchCallback, SaveCallback: TCallback; + PatchCallback, SaveCallback: TCallback; StatusCallback: TStatusCallback; implementation - -{******************************************************************************} +{ ****************************************************************************** } { THREAD METHODS These are threads that the program will run for various large jobs which need to be decoupled from general program operation and the GUI. @@ -57,7 +59,7 @@ implementation - TPatchThread.Execute - TSaveThread.Execute } -{******************************************************************************} +{ ****************************************************************************** } { TInitThread } procedure TInitThread.Execute; @@ -71,7 +73,7 @@ procedure TInitThread.Execute; try // PRINT LOAD ORDER TO LOG for i := 0 to Pred(slPlugins.Count) do - Logger.Write('LOAD', 'Order', '['+IntToHex(i, 2)+'] '+slPlugins[i]); + Logger.Write('LOAD', 'Order', '[' + IntToHex(i, 2) + '] ' + slPlugins[i]); // LOAD RESOURCES Tracker.Write('Loading Resources'); @@ -79,36 +81,42 @@ procedure TInitThread.Execute; LoadBSAs; // LOAD PLUGINS - for i := 0 to Pred(slPlugins.Count) do begin - Tracker.Write('Loading '+slPlugins[i]); + for i := 0 to Pred(slPlugins.Count) do + begin + Tracker.Write('Loading ' + slPlugins[i]); try plugin := TPlugin.Create; plugin.filename := slPlugins[i]; - //aModule := wbModuleByName(slPlugins[i]); + // aModule := wbModuleByName(slPlugins[i]); plugin._File := wbFile(slPlugins[i], i); plugin._File._AddRef; plugin.GetMsData; PluginsList.Add(Pointer(plugin)); except - on x: Exception do begin - Logger.Write('ERROR', 'Load', 'Exception loading '+slPlugins[i]); + on x: Exception do + begin + Logger.Write('ERROR', 'Load', 'Exception loading ' + slPlugins[i]); Logger.Write('ERROR', 'Load', x.Message); ProgramStatus.bLoadException := true; end; end; // load hardcoded dat - if i = 0 then try - b := TwbHardCodedContainer.GetHardCodedDat; - aFile := wbFile(wbGameExeName, 0, '', [fsIsHardcoded], b); - aFile._AddRef; - except - on x: Exception do begin - Logger.Write('ERROR', 'Load', 'Exception loading '+wbGameName+' hardcoded dat'); - Logger.Write('ERROR', 'Load', 'Please download and install this dat file!'); - raise x; + if i = 0 then + try + b := TwbHardCodedContainer.GetHardCodedDat; + aFile := wbFile(wbGameExeName, 0, '', [fsIsHardcoded], b); + aFile._AddRef; + except + on x: Exception do + begin + Logger.Write('ERROR', 'Load', 'Exception loading ' + wbGameName + + ' hardcoded dat'); + Logger.Write('ERROR', 'Load', + 'Please download and install this dat file!'); + raise x; + end; end; - end; end; // LOAD RESOURCES @@ -125,7 +133,8 @@ procedure TInitThread.Execute; // CLEAN UP slPlugins.Free; except - on x: Exception do begin + on x: Exception do + begin if Assigned(slPlugins) then slPlugins.Free; ProgramStatus.bInitException := true; @@ -148,7 +157,7 @@ procedure LoaderProgress(const s: string); procedure TLoaderThread.Execute; var - i: Integer; + i: integer; f: IwbFile; plugin: TPlugin; begin @@ -156,23 +165,27 @@ procedure TLoaderThread.Execute; StatusCallback(Format('%s (%d/%d)', [GetLanguageString('msMain_LoaderInProgress'), 1, PluginsList.Count])); try - for i := 0 to Pred(PluginsList.Count) do begin + for i := 0 to Pred(PluginsList.Count) do + begin StatusCallback(Format('%s (%d/%d)', - [GetLanguageString('msMain_LoaderInProgress'), i + 1, PluginsList.Count])); + [GetLanguageString('msMain_LoaderInProgress'), i + 1, + PluginsList.Count])); plugin := TPlugin(PluginsList[i]); f := plugin._File; if SameText(plugin.filename, wbGameName + '.esm') then continue; LoaderProgress('[' + plugin.filename + '] Building reference info.'); f.BuildRef; - if ProgramStatus.bForceTerminate then begin + if ProgramStatus.bForceTerminate then + begin LoaderProgress('Aborted.'); break; end; end; except - on E: Exception do begin - LoaderProgress('Fatal: <' + e.ClassName + ': ' + e.Message + '>'); + on E: Exception do + begin + LoaderProgress('Fatal: <' + E.ClassName + ': ' + E.Message + '>'); wbLoaderError := true; ProgramStatus.bInitException := true; end; @@ -191,11 +204,14 @@ procedure PlaySmashSound; PWav: Pointer; begin HResource := FindResource(HInstance, PChar('SMASH'), 'WAV'); - if HResource = 0 then exit; + if HResource = 0 then + exit; HResData := LoadResource(HInstance, HResource); - if HResData = 0 then exit; + if HResData = 0 then + exit; PWav := LockResource(HResData); - if not Assigned(PWav) then exit; + if not Assigned(PWav) then + exit; sndPlaySound(nil, SND_NODEFAULT); sndPlaySound(PWav, SND_ASYNC or SND_MEMORY); end; @@ -207,18 +223,22 @@ procedure TPatchThread.Execute; begin FreeOnTerminate := true; // build patches - for i := 0 to Pred(patchesToBuild.Count) do begin - if Tracker.Cancel then break; + for i := 0 to Pred(patchesToBuild.Count) do + begin + if Tracker.Cancel then + break; patch := TPatch(patchesToBuild[i]); StatusCallback(Format('%s "%s" (%d/%d)', - [GetLanguageString('msProg_Smashing'), patch.name, i + 1, patchesToBuild.Count])); + [GetLanguageString('msProg_Smashing'), patch.name, i + 1, + patchesToBuild.Count])); try if (patch.status in RebuildStatuses) then RebuildPatch(patch) else BuildPatch(patch); except - on x : Exception do begin + on x: Exception do + begin patch.status := psFailed; Tracker.Write('Exception: ' + x.Message); end; @@ -232,10 +252,12 @@ procedure TPatchThread.Execute; end; // say thread is done if it wasn't cancelled - if not Tracker.Cancel then begin + if not Tracker.Cancel then + begin Tracker.Write('All done!'); try - if settings.smashSound then PlaySmashSound; + if settings.smashSound then + PlaySmashSound; except on x: Exception do Tracker.Write('Failed to play Smash sound.'); @@ -255,13 +277,14 @@ procedure TSaveThread.Execute; FreeOnTerminate := true; // save ESPs only if it's safe to do so - if not ProgramStatus.bInitException then begin + if not ProgramStatus.bInitException then + begin // Save plugin errors try SavePluginInfo; except on x: Exception do - Tracker.Write('Exception saving plugin errors '+x.Message); + Tracker.Write('Exception saving plugin errors ' + x.Message); end; Tracker.SetProgress(PluginsList.Count + 1); diff --git a/lib/mte/CRC32.pas b/lib/mte/CRC32.pas old mode 100644 new mode 100755 index a7eaff5..51255df --- a/lib/mte/CRC32.pas +++ b/lib/mte/CRC32.pas @@ -1,6 +1,7 @@ unit CRC32; interface + type Long = record LoWord: Word; @@ -8,16 +9,17 @@ Long = record end; // exported functions - function FileCRC32(FileName: string): string; - function StrCRC32(input: string): string; +function FileCRC32(FileName: string): string; +function StrCRC32(input: string): string; const CRCPOLY = $EDB88320; var - CRCTable: array[0..512] Of Longint; + CRCTable: array [0 .. 512] Of Longint; implementation + {$WARNINGS OFF} uses @@ -38,20 +40,21 @@ procedure BuildCRCTable; else r := r shr 1; CRCTable[i] := r; - end; + end; end; function RecountCRC(b: byte; CrcOld: Longint): Longint; begin - RecountCRC := CRCTable[byte(CrcOld xor Longint(b))] xor ((CrcOld shr 8) and $00FFFFFF) + RecountCRC := CRCTable[byte(CrcOld xor Longint(b)) + ] xor ((CrcOld shr 8) and $00FFFFFF) end; function HextW(w: Word): string; const - h: array[0..15] Of char = '0123456789ABCDEF'; + h: array [0 .. 15] Of char = '0123456789ABCDEF'; begin HextW := ''; - HextW := h[Hi(w) shr 4] + h[Hi(w) and $F] + h[Lo(w) shr 4]+h[Lo(w) and $F]; + HextW := h[Hi(w) shr 4] + h[Hi(w) and $F] + h[Lo(w) shr 4] + h[Lo(w) and $F]; end; function HextL(l: Longint): string; @@ -63,8 +66,8 @@ function HextL(l: Longint): string; function FileCRC32(FileName: string): string; var Buffer: PChar; - F: File of Byte; - B: array[0..255] of Byte; + F: File of byte; + b: array [0 .. 255] of byte; CRC: Longint; e, i: Integer; begin @@ -73,14 +76,14 @@ function FileCRC32(FileName: string): string; AssignFile(F, FileName); FileMode := 0; Reset(F); - GetMem(Buffer, SizeOf(B)); + GetMem(Buffer, SizeOf(b)); repeat - FillChar(B, SizeOf(B), 0); - BlockRead(F, B, SizeOf(B), e); - for i := 0 to (e-1) do + FillChar(b, SizeOf(b), 0); + BlockRead(F, b, SizeOf(b), e); + for i := 0 to (e - 1) do CRC := RecountCRC(b[i], CRC); until (e < 255) or (IOresult <> 0); - FreeMem(Buffer, SizeOf(B)); + FreeMem(Buffer, SizeOf(b)); CloseFile(F); CRC := Not CRC; Result := HextL(CRC); @@ -88,15 +91,15 @@ function FileCRC32(FileName: string): string; function StrCRC32(input: string): string; var - B: TArray; + b: TArray; CRC: Longint; i: Integer; begin BuildCRCTable; CRC := $FFFFFFFF; - B := TEncoding.UTF8.GetBytes(input); - for i := 0 to Pred(Length(B)) do - CRC := RecountCRC(B[i], CRC); + b := TEncoding.UTF8.GetBytes(input); + for i := 0 to Pred(Length(b)) do + CRC := RecountCRC(b[i], CRC); CRC := Not CRC; Result := HextL(CRC); end; diff --git a/lib/mte/RttiIni.pas b/lib/mte/RttiIni.pas old mode 100644 new mode 100755 index 033b689..a96aea2 --- a/lib/mte/RttiIni.pas +++ b/lib/mte/RttiIni.pas @@ -14,16 +14,16 @@ IniSectionAttribute = class(TCustomAttribute) property Section: string read FSection write FSection; end; - TRttiIni = class (TObject) + TRttiIni = class(TObject) private - class function ReadValue(section: string; var ini: TMemIniFile; + class function ReadValue(Section: string; var ini: TMemIniFile; field: TRttiField): TValue; - class procedure WriteValue(section: string; var ini: TMemIniFile; + class procedure WriteValue(Section: string; var ini: TMemIniFile; field: TRttiField; aValue: TValue); class function GetIniAttribute(Obj: TRttiObject): IniSectionAttribute; public - class procedure Load(filename: string; obj: TObject); - class procedure Save(filename: string; obj: TObject); + class procedure Load(filename: string; Obj: TObject); + class procedure Save(filename: string; Obj: TObject); end; implementation @@ -37,113 +37,116 @@ constructor IniSectionAttribute.Create(const aSection: String); { TIniPersist } class function TRttiIni.GetIniAttribute(Obj: TRttiObject): IniSectionAttribute; var - Attr: TCustomAttribute; + Attr: TCustomAttribute; begin - for Attr in Obj.GetAttributes do begin + for Attr in Obj.GetAttributes do + begin if Attr is IniSectionAttribute then exit(IniSectionAttribute(Attr)); end; result := nil; end; -class procedure TRttiIni.Load(filename: string; obj: TObject); +class procedure TRttiIni.Load(filename: string; Obj: TObject); var ctx: TRttiContext; objType: TRttiType; - Field: TRttiField; + field: TRttiField; IniSection: IniSectionAttribute; - Ini: TMemIniFile; + ini: TMemIniFile; CurrentSection: string; value: TValue; begin ctx := TRttiContext.Create; try - Ini := TMemIniFile.Create(FileName); + ini := TMemIniFile.Create(filename); try objType := ctx.GetType(Obj.ClassInfo); - for Field in objType.GetFields do begin - IniSection := GetIniAttribute(Field); + for field in objType.GetFields do + begin + IniSection := GetIniAttribute(field); if Assigned(IniSection) then CurrentSection := IniSection.Section; - value := ReadValue(CurrentSection, ini, Field); + value := ReadValue(CurrentSection, ini, field); if not value.IsEmpty then - field.SetValue(obj, value); + field.SetValue(Obj, value); end; finally - Ini.Free; + ini.Free; end; finally ctx.Free; end; end; -class function TRttiIni.ReadValue(section: string; var ini: TMemIniFile; +class function TRttiIni.ReadValue(Section: string; var ini: TMemIniFile; field: TRttiField): TValue; var fieldType: string; begin - Result := TValue.Empty; - fieldType := field.FieldType.Name; + result := TValue.Empty; + fieldType := field.fieldType.Name; // exit if value doesn't exist in ini being loaded // this allows us to use default values from the object's constructor - if not ini.ValueExists(section, field.Name) then + if not ini.ValueExists(Section, field.Name) then exit; // load string, Integer, and Boolean fields from ini if fieldType = 'string' then - Result := TValue.From(ini.ReadString(section, field.Name, '')) + result := TValue.From(ini.ReadString(Section, field.Name, '')) else if fieldType = 'Integer' then - Result := TValue.From(ini.ReadInteger(section, field.Name, 0)) + result := TValue.From(ini.ReadInteger(Section, field.Name, 0)) else if fieldType = 'Int64' then - Result := TValue.From(ini.ReadInteger(section, field.Name, 0)) + result := TValue.From(ini.ReadInteger(Section, field.Name, 0)) else if fieldType = 'TDateTime' then - Result := TValue.From(ini.ReadFloat(section, field.Name, 0)) + result := TValue.From(ini.ReadFloat(Section, field.Name, 0)) else if fieldType = 'Boolean' then - Result := TValue.From(ini.ReadBool(section, field.Name, false)); + result := TValue.From(ini.ReadBool(Section, field.Name, false)); end; -class procedure TRttiIni.WriteValue(section: string; var ini: TMemIniFile; +class procedure TRttiIni.WriteValue(Section: string; var ini: TMemIniFile; field: TRttiField; aValue: TValue); var fieldType: string; begin - fieldType := field.FieldType.Name; + fieldType := field.fieldType.Name; if fieldType = 'string' then - ini.WriteString(section, field.Name, aValue.AsString) + ini.WriteString(Section, field.Name, aValue.AsString) else if fieldType = 'Integer' then - ini.WriteInteger(section, field.Name, aValue.AsInteger) + ini.WriteInteger(Section, field.Name, aValue.AsInteger) else if fieldType = 'Int64' then - ini.WriteInteger(section, field.Name, aValue.AsInt64) + ini.WriteInteger(Section, field.Name, aValue.AsInt64) else if fieldType = 'TDateTime' then - ini.WriteFloat(section, field.Name, aValue.AsType) + ini.WriteFloat(Section, field.Name, aValue.AsType) else if fieldType = 'Boolean' then - ini.WriteBool(section, field.Name, aValue.AsBoolean) + ini.WriteBool(Section, field.Name, aValue.AsBoolean) end; -class procedure TRttiIni.Save(filename: string; obj: TObject); +class procedure TRttiIni.Save(filename: string; Obj: TObject); var - ctx: TRttiContext; - objType: TRttiType; - field: TRttiField; - IniSection: IniSectionAttribute; - ini: TMemIniFile; - CurrentSection: string; + ctx: TRttiContext; + objType: TRttiType; + field: TRttiField; + IniSection: IniSectionAttribute; + ini: TMemIniFile; + CurrentSection: string; begin ctx := TRttiContext.Create; try - ini := TMemIniFile.Create(FileName); + ini := TMemIniFile.Create(filename); try objType := ctx.GetType(Obj.ClassInfo); - for field in objType.GetFields do begin - IniSection := GetIniAttribute(Field); + for field in objType.GetFields do + begin + IniSection := GetIniAttribute(field); if Assigned(IniSection) then CurrentSection := IniSection.Section; - WriteValue(CurrentSection, ini, field, Field.GetValue(obj)); + WriteValue(CurrentSection, ini, field, field.GetValue(Obj)); end; finally - Ini.UpdateFile; - Ini.Free; + ini.UpdateFile; + ini.Free; end; finally ctx.Free; diff --git a/lib/mte/RttiJson.pas b/lib/mte/RttiJson.pas old mode 100644 new mode 100755 index c2c6fcf..84ff6c7 --- a/lib/mte/RttiJson.pas +++ b/lib/mte/RttiJson.pas @@ -6,9 +6,9 @@ interface SysUtils, Rtti, // superobject json library superobject; - + type - TRttiJson = class (TObject) + TRttiJson = class(TObject) public class function ToJson(obj: TObject): string; class function FromJson(json: string; classType: TClass): TObject; @@ -25,17 +25,19 @@ class function TRttiJson.ToJson(obj: TObject): string; date: TDateTime; begin jsonObj := SO; - rtype := TRTTIContext.Create.GetType(obj.ClassType); + rtype := TRTTIContext.Create.GetType(obj.classType); // loop through fields - for field in rType.GetFields do begin - fieldType := field.FieldType.ToString; + for field in rtype.GetFields do + begin + fieldType := field.fieldType.ToString; // handle datatypes I use if (fieldType = 'string') then jsonObj.S[field.Name] := field.GetValue(obj).ToString else if (fieldType = 'Integer') then jsonObj.I[field.Name] := field.GetValue(obj).AsInteger - else if (fieldType = 'TDateTime') then begin + else if (fieldType = 'TDateTime') then + begin date := StrToFloat(field.GetValue(obj).ToString); jsonObj.S[field.Name] := DateTimeToStr(date); end; @@ -63,14 +65,16 @@ class function TRttiJson.FromJson(json: string; classType: TClass): TObject; Result := classType.Create; // loop through fields - for field in rType.GetFields do begin - fieldType := field.FieldType.ToString; + for field in rtype.GetFields do + begin + fieldType := field.fieldType.ToString; // handle datatypes I use if (fieldType = 'string') then field.SetValue(Result, jsonObj.S[field.Name]) else if (fieldType = 'Integer') then field.SetValue(Result, jsonObj.I[field.Name]) - else if (fieldType = 'TDateTime') then begin + else if (fieldType = 'TDateTime') then + begin date := StrToDateTime(jsonObj.S[field.Name]); field.SetValue(Result, TValue.From(date)); end; @@ -79,4 +83,4 @@ Result := classType.Create; context.Free; end; -end. \ No newline at end of file +end. diff --git a/lib/mte/RttiTranslation.pas b/lib/mte/RttiTranslation.pas old mode 100644 new mode 100755 index d1391ef..4b22e78 --- a/lib/mte/RttiTranslation.pas +++ b/lib/mte/RttiTranslation.pas @@ -22,18 +22,18 @@ FormSectionAttribute = class(TCustomAttribute) property Section: string read FSection write FSection; end; - TRttiTranslation = class (TObject) + TRttiTranslation = class(TObject) private - class function ReadValue(section: string; var sl: TStringList; + class function ReadValue(Section: string; var sl: TStringList; field: TRttiField; subfield: string): string; - class procedure WriteValue(section: string; value: string; var sl: TStringList; - field: TRttiField; subfield: string); + class procedure WriteValue(Section: string; value: string; + var sl: TStringList; field: TRttiField; subfield: string); class function GetPrefixAttribute(Obj: TRttiObject): FormPrefixAttribute; class function GetSectionAttribute(Obj: TRttiObject): FormSectionAttribute; public - class procedure Load(filename: string; obj: TObject); overload; - class procedure Load(var sl: TStringList; obj: TObject); overload; - class procedure Save(filename: string; obj: TObject); + class procedure Load(filename: string; Obj: TObject); overload; + class procedure Load(var sl: TStringList; Obj: TObject); overload; + class procedure Save(filename: string; Obj: TObject); end; implementation @@ -51,46 +51,50 @@ constructor FormSectionAttribute.Create(const aSection: String); end; { TRttiTranslation } -class function TRttiTranslation.GetPrefixAttribute(Obj: TRttiObject): FormPrefixAttribute; +class function TRttiTranslation.GetPrefixAttribute(Obj: TRttiObject) + : FormPrefixAttribute; var Attr: TCustomAttribute; begin - for Attr in Obj.GetAttributes do begin + for Attr in Obj.GetAttributes do + begin if Attr is FormPrefixAttribute then exit(FormPrefixAttribute(Attr)); end; result := nil; end; -class function TRttiTranslation.GetSectionAttribute(Obj: TRttiObject): FormSectionAttribute; +class function TRttiTranslation.GetSectionAttribute(Obj: TRttiObject) + : FormSectionAttribute; var Attr: TCustomAttribute; begin - for Attr in Obj.GetAttributes do begin + for Attr in Obj.GetAttributes do + begin if Attr is FormSectionAttribute then exit(FormSectionAttribute(Attr)); end; result := nil; end; -class procedure TRttiTranslation.Load(filename: string; obj: TObject); +class procedure TRttiTranslation.Load(filename: string; Obj: TObject); var sl: TStringList; begin sl := TStringList.Create; try sl.LoadFromFile(filename); - TRttiTranslation.Load(sl, obj); + TRttiTranslation.Load(sl, Obj); finally sl.Free; end; end; -class procedure TRttiTranslation.Load(var sl: TStringList; obj: TObject); +class procedure TRttiTranslation.Load(var sl: TStringList; Obj: TObject); var ctx: TRttiContext; objType: TRttiType; - Field: TRttiField; + field: TRttiField; FormPrefix: FormPrefixAttribute; FormSection: FormSectionAttribute; CurrentPrefix, CurrentSection, FieldName, value: string; @@ -109,10 +113,12 @@ class procedure TRttiTranslation.Load(var sl: TStringList; obj: TObject); ctx := TRttiContext.Create; try objType := ctx.GetType(Obj.ClassInfo); - for Field in objType.GetFields do begin + for field in objType.GetFields do + begin // START BY FINDING FORM PREFIX, SKIP FIELDS UNTIL FOUND - if not Assigned(FormPrefix) then begin - FormPrefix := GetPrefixAttribute(Field); + if not Assigned(FormPrefix) then + begin + FormPrefix := GetPrefixAttribute(field); if Assigned(FormPrefix) then CurrentPrefix := FormPrefix.Prefix else @@ -120,7 +126,7 @@ class procedure TRttiTranslation.Load(var sl: TStringList; obj: TObject); end; // IF FORM SECTION, DUMP SECTION - FormSection := GetSectionAttribute(Field); + FormSection := GetSectionAttribute(field); if Assigned(FormSection) then CurrentSection := FormSection.Section; @@ -129,89 +135,124 @@ class procedure TRttiTranslation.Load(var sl: TStringList; obj: TObject); continue; // LOAD VALUES - FieldName := Field.FieldType.Name; - if FieldName = 'TCheckBox' then begin - aCheckBox := TCheckBox(field.GetValue(obj).AsType); - if Assigned(aCheckBox) then begin - value := ReadValue(CurrentPrefix, sl, Field, 'Caption'); - if value <> '' then aCheckBox.Caption := value; - value := ReadValue(CurrentPrefix, sl, Field, 'Hint'); + FieldName := field.FieldType.Name; + if FieldName = 'TCheckBox' then + begin + aCheckBox := TCheckBox(field.GetValue(Obj).AsType); + if Assigned(aCheckBox) then + begin + value := ReadValue(CurrentPrefix, sl, field, 'Caption'); + if value <> '' then + aCheckBox.Caption := value; + value := ReadValue(CurrentPrefix, sl, field, 'Hint'); aCheckBox.ShowHint := value <> ''; - if aCheckBox.ShowHint then aCheckBox.Hint := value; + if aCheckBox.ShowHint then + aCheckBox.Hint := value; end; end - else if FieldName = 'TButton' then begin - aButton := TButton(field.GetValue(obj).AsType); - if Assigned(aButton) then begin - value := ReadValue(CurrentPrefix, sl, Field, 'Caption'); - if value <> '' then aButton.Caption := value; - value := ReadValue(CurrentPrefix, sl, Field, 'Hint'); + else if FieldName = 'TButton' then + begin + aButton := TButton(field.GetValue(Obj).AsType); + if Assigned(aButton) then + begin + value := ReadValue(CurrentPrefix, sl, field, 'Caption'); + if value <> '' then + aButton.Caption := value; + value := ReadValue(CurrentPrefix, sl, field, 'Hint'); aButton.ShowHint := value <> ''; - if aButton.ShowHint then aButton.Hint := value; + if aButton.ShowHint then + aButton.Hint := value; end; end - else if FieldName = 'TLabel' then begin - aLabel := TLabel(field.GetValue(obj).AsType); - if Assigned(aLabel) then begin - value := ReadValue(CurrentPrefix, sl, Field, 'Caption'); - if value <> '' then aLabel.Caption := value; - value := ReadValue(CurrentPrefix, sl, Field, 'Hint'); + else if FieldName = 'TLabel' then + begin + aLabel := TLabel(field.GetValue(Obj).AsType); + if Assigned(aLabel) then + begin + value := ReadValue(CurrentPrefix, sl, field, 'Caption'); + if value <> '' then + aLabel.Caption := value; + value := ReadValue(CurrentPrefix, sl, field, 'Hint'); aLabel.ShowHint := value <> ''; - if aLabel.ShowHint then aLabel.Hint := value; + if aLabel.ShowHint then + aLabel.Hint := value; end; end - else if FieldName = 'TTabSheet' then begin - aTabSheet := TTabSheet(field.GetValue(obj).AsType); - if Assigned(aTabSheet) then begin - value := ReadValue(CurrentPrefix, sl, Field, 'Caption'); - if value <> '' then aTabSheet.Caption := value; - value := ReadValue(CurrentPrefix, sl, Field, 'Hint'); + else if FieldName = 'TTabSheet' then + begin + aTabSheet := TTabSheet(field.GetValue(Obj).AsType); + if Assigned(aTabSheet) then + begin + value := ReadValue(CurrentPrefix, sl, field, 'Caption'); + if value <> '' then + aTabSheet.Caption := value; + value := ReadValue(CurrentPrefix, sl, field, 'Hint'); aTabSheet.ShowHint := value <> ''; - if aTabSheet.ShowHint then aTabSheet.Hint := value; + if aTabSheet.ShowHint then + aTabSheet.Hint := value; end; end - else if FieldName = 'TGroupBox' then begin - aGroupBox := TGroupBox(field.GetValue(obj).AsType); - if Assigned(aGroupBox) then begin - value := ReadValue(CurrentPrefix, sl, Field, 'Caption'); - if value <> '' then aGroupBox.Caption := value; - value := ReadValue(CurrentPrefix, sl, Field, 'Hint'); + else if FieldName = 'TGroupBox' then + begin + aGroupBox := TGroupBox(field.GetValue(Obj).AsType); + if Assigned(aGroupBox) then + begin + value := ReadValue(CurrentPrefix, sl, field, 'Caption'); + if value <> '' then + aGroupBox.Caption := value; + value := ReadValue(CurrentPrefix, sl, field, 'Hint'); aGroupBox.ShowHint := value <> ''; - if aGroupBox.ShowHint then aGroupBox.Hint := value; + if aGroupBox.ShowHint then + aGroupBox.Hint := value; end; end - else if FieldName = 'TSpeedButton' then begin - aSpeedButton := TSpeedButton(field.GetValue(obj).AsType); - if Assigned(aSpeedButton) then begin - value := ReadValue(CurrentPrefix, sl, Field, 'Hint'); + else if FieldName = 'TSpeedButton' then + begin + aSpeedButton := TSpeedButton(field.GetValue(Obj).AsType); + if Assigned(aSpeedButton) then + begin + value := ReadValue(CurrentPrefix, sl, field, 'Hint'); aSpeedButton.ShowHint := value <> ''; - if aSpeedButton.ShowHint then aSpeedButton.Hint := value; + if aSpeedButton.ShowHint then + aSpeedButton.Hint := value; end; end - else if FieldName = 'TMenuItem' then begin - aMenuItem := TMenuItem(field.GetValue(obj).AsType); - if Assigned(aMenuItem) then begin - value := ReadValue(CurrentPrefix, sl, Field, 'Caption'); - if value <> '' then aMenuItem.Caption := value; + else if FieldName = 'TMenuItem' then + begin + aMenuItem := TMenuItem(field.GetValue(Obj).AsType); + if Assigned(aMenuItem) then + begin + value := ReadValue(CurrentPrefix, sl, field, 'Caption'); + if value <> '' then + aMenuItem.Caption := value; end; end - else if FieldName = 'TComboBox' then begin - aComboBox := TComboBox(field.GetValue(obj).AsType); - if Assigned(aComboBox) then begin - for i := 0 to Pred(aComboBox.Items.Count) do begin - value := ReadValue(CurrentPrefix, sl, Field, 'Item'+IntToStr(i)); - if value <> '' then aComboBox.Items[i] := value; + else if FieldName = 'TComboBox' then + begin + aComboBox := TComboBox(field.GetValue(Obj).AsType); + if Assigned(aComboBox) then + begin + for i := 0 to Pred(aComboBox.Items.Count) do + begin + value := ReadValue(CurrentPrefix, sl, field, 'Item' + IntToStr(i)); + if value <> '' then + aComboBox.Items[i] := value; end; end; end - else if FieldName = 'TListView' then begin - aListView := TListView(field.GetValue(obj).AsType); - if Assigned(aListView) then begin + else if FieldName = 'TListView' then + begin + aListView := TListView(field.GetValue(Obj).AsType); + if Assigned(aListView) then + begin if not aListView.ShowColumnHeaders then continue; - for i := 0 to Pred(aListView.Columns.Count) do begin - value := ReadValue(CurrentPrefix, sl, Field, 'Column'+IntToStr(i)); - if value <> '' then aListView.Columns[i].Caption := value; + for i := 0 to Pred(aListView.Columns.Count) do + begin + value := ReadValue(CurrentPrefix, sl, field, + 'Column' + IntToStr(i)); + if value <> '' then + aListView.Columns[i].Caption := value; end; end; end; @@ -221,32 +262,32 @@ class procedure TRttiTranslation.Load(var sl: TStringList; obj: TObject); end; end; -class function TRttiTranslation.ReadValue(section: string; var sl: TStringList; +class function TRttiTranslation.ReadValue(Section: string; var sl: TStringList; field: TRttiField; subfield: string): string; var - name: string; + Name: string; begin // load value from stringlist - name := Format('%s_%s_%s', [section, field.Name, subfield]); - Result := StringReplace(sl.Values[name], '#13#10', #13#10, [rfReplaceAll]); + name := Format('%s_%s_%s', [Section, field.Name, subfield]); + result := StringReplace(sl.Values[name], '#13#10', #13#10, [rfReplaceAll]); end; -class procedure TRttiTranslation.WriteValue(section: string; value: string; var sl: TStringList; - field: TRttiField; subfield: string); +class procedure TRttiTranslation.WriteValue(Section: string; value: string; + var sl: TStringList; field: TRttiField; subfield: string); var - name: string; + Name: string; begin if value = '' then exit; - name := Format('%s_%s_%s', [section, field.Name, subfield]); + name := Format('%s_%s_%s', [Section, field.Name, subfield]); sl.Values[name] := StringReplace(value, #13#10, '#13#10', [rfReplaceAll]); end; -class procedure TRttiTranslation.Save(filename: string; obj: TObject); +class procedure TRttiTranslation.Save(filename: string; Obj: TObject); var ctx: TRttiContext; objType: TRttiType; - Field: TRttiField; + field: TRttiField; FormPrefix: FormPrefixAttribute; FormSection: FormSectionAttribute; sl: TStringList; @@ -272,16 +313,19 @@ class procedure TRttiTranslation.Save(filename: string; obj: TObject); sl.LoadFromFile(filename); // ADD HEADER IF NEW OBJECT - Header := Format('{ %s }', [obj.ClassName]); + Header := Format('{ %s }', [Obj.ClassName]); bNewObject := sl.IndexOf(Header) = -1; - if bNewObject then sl.Add(Header); + if bNewObject then + sl.Add(Header); try objType := ctx.GetType(Obj.ClassInfo); - for Field in objType.GetFields do begin + for field in objType.GetFields do + begin // START BY FINDING FORM PREFIX, SKIP FIELDS UNTIL FOUND - if not Assigned(FormPrefix) then begin - FormPrefix := GetPrefixAttribute(Field); + if not Assigned(FormPrefix) then + begin + FormPrefix := GetPrefixAttribute(field); if Assigned(FormPrefix) then CurrentPrefix := FormPrefix.Prefix else @@ -289,13 +333,15 @@ class procedure TRttiTranslation.Save(filename: string; obj: TObject); end; // IF FORM SECTION, DUMP SECTION - FormSection := GetSectionAttribute(Field); - if Assigned(FormSection) then begin + FormSection := GetSectionAttribute(field); + if Assigned(FormSection) then + begin CurrentSection := FormSection.Section; if CurrentSection = 'DontTranslate' then continue; Header := Format('{ ## %s ## }', [FormSection.Section]); - if (sl.IndexOf(Header) = -1) then sl.Add(Header); + if (sl.IndexOf(Header) = -1) then + sl.Add(Header); end; // SKIP ALL ITEMS IN 'DontTranslate' SECTION @@ -303,83 +349,104 @@ class procedure TRttiTranslation.Save(filename: string; obj: TObject); continue; // HANDLE COMPONENTS - FieldName := Field.FieldType.Name; + FieldName := field.FieldType.Name; // Handle TCheckBox - if FieldName = 'TCheckBox' then begin - aCheckBox := TCheckBox(field.GetValue(obj).AsType); - if Assigned(aCheckBox) then begin + if FieldName = 'TCheckBox' then + begin + aCheckBox := TCheckBox(field.GetValue(Obj).AsType); + if Assigned(aCheckBox) then + begin WriteValue(CurrentPrefix, aCheckBox.Caption, sl, field, 'Caption'); WriteValue(CurrentPrefix, aCheckBox.Hint, sl, field, 'Hint'); end; end // Handle TButton - else if FieldName = 'TButton' then begin - aButton := TButton(field.GetValue(obj).AsType); - if Assigned(aButton) then begin + else if FieldName = 'TButton' then + begin + aButton := TButton(field.GetValue(Obj).AsType); + if Assigned(aButton) then + begin WriteValue(CurrentPrefix, aButton.Caption, sl, field, 'Caption'); WriteValue(CurrentPrefix, aButton.Hint, sl, field, 'Hint'); end; end // Handle TLabel - else if FieldName = 'TLabel' then begin - aLabel := TLabel(field.GetValue(obj).AsType); - if Assigned(aLabel) then begin + else if FieldName = 'TLabel' then + begin + aLabel := TLabel(field.GetValue(Obj).AsType); + if Assigned(aLabel) then + begin WriteValue(CurrentPrefix, aLabel.Caption, sl, field, 'Caption'); WriteValue(CurrentPrefix, aLabel.Hint, sl, field, 'Hint'); end; end // Handle TTabSheet - else if FieldName = 'TTabSheet' then begin - aTabSheet := TTabSheet(field.GetValue(obj).AsType); - if Assigned(aTabSheet) then begin + else if FieldName = 'TTabSheet' then + begin + aTabSheet := TTabSheet(field.GetValue(Obj).AsType); + if Assigned(aTabSheet) then + begin WriteValue(CurrentPrefix, aTabSheet.Caption, sl, field, 'Caption'); WriteValue(CurrentPrefix, aTabSheet.Hint, sl, field, 'Hint'); end; end // Handle TGroupBox - else if FieldName = 'TGroupBox' then begin - aGroupBox := TGroupBox(field.GetValue(obj).AsType); - if Assigned(aGroupBox) then begin + else if FieldName = 'TGroupBox' then + begin + aGroupBox := TGroupBox(field.GetValue(Obj).AsType); + if Assigned(aGroupBox) then + begin WriteValue(CurrentPrefix, aGroupBox.Caption, sl, field, 'Caption'); WriteValue(CurrentPrefix, aGroupBox.Hint, sl, field, 'Hint'); end; end // Handle TSpeedButton - else if FieldName = 'TSpeedButton' then begin - aSpeedButton := TSpeedButton(field.GetValue(obj).AsType); - if Assigned(aSpeedButton) then begin - WriteValue(CurrentPrefix, aSpeedButton.Caption, sl, field, 'Caption'); + else if FieldName = 'TSpeedButton' then + begin + aSpeedButton := TSpeedButton(field.GetValue(Obj) + .AsType); + if Assigned(aSpeedButton) then + begin + WriteValue(CurrentPrefix, aSpeedButton.Caption, sl, field, + 'Caption'); WriteValue(CurrentPrefix, aSpeedButton.Hint, sl, field, 'Hint'); end; end // Handle TMenuItem - else if FieldName = 'TMenuItem' then begin - aMenuItem := TMenuItem(field.GetValue(obj).AsType); + else if FieldName = 'TMenuItem' then + begin + aMenuItem := TMenuItem(field.GetValue(Obj).AsType); if Assigned(aMenuItem) then WriteValue(CurrentPrefix, aMenuItem.Caption, sl, field, 'Caption'); end // Handle TComboBox - else if FieldName = 'TComboBox' then begin - aComboBox := TComboBox(field.GetValue(obj).AsType); + else if FieldName = 'TComboBox' then + begin + aComboBox := TComboBox(field.GetValue(Obj).AsType); if Assigned(aComboBox) then for i := 0 to Pred(aComboBox.Items.Count) do - WriteValue(CurrentPrefix, aComboBox.Items[i], sl, field, 'Item'+IntToStr(i)); + WriteValue(CurrentPrefix, aComboBox.Items[i], sl, field, + 'Item' + IntToStr(i)); end // Handle TListView - else if FieldName = 'TListView' then begin - aListView := TListView(field.GetValue(obj).AsType); - if Assigned(aListView) then begin + else if FieldName = 'TListView' then + begin + aListView := TListView(field.GetValue(Obj).AsType); + if Assigned(aListView) then + begin if not aListView.ShowColumnHeaders then continue; for i := 0 to Pred(aListView.Columns.Count) do - WriteValue(CurrentPrefix, aListView.Columns[i].Caption, sl, field, 'Column'+IntToStr(i)); + WriteValue(CurrentPrefix, aListView.Columns[i].Caption, sl, field, + 'Column' + IntToStr(i)); end; end; end; finally - if bNewObject then sl.Add(' '); + if bNewObject then + sl.Add(' '); ForceDirectories(ExtractFilePath(filename)); - sl.SaveToFile(fileName); + sl.SaveToFile(filename); sl.Free; end; finally diff --git a/lib/mte/W7Taskbar.pas b/lib/mte/W7Taskbar.pas old mode 100644 new mode 100755 index 339cf89..b5e8d27 --- a/lib/mte/W7Taskbar.pas +++ b/lib/mte/W7Taskbar.pas @@ -9,10 +9,12 @@ interface TTaskBarProgressState = (tbpsNone, tbpsIndeterminate, tbpsNormal, tbpsError, tbpsPaused); - function InitializeTaskbarAPI: boolean; - function SetTaskbarProgressState(const AState: TTaskBarProgressState): boolean; - function SetTaskbarProgressValue(const ACurrent: UInt64; const AMax: UInt64): boolean; - function SetTaskbarOverlayIcon(const AIcon: THandle; const ADescription: String): boolean; +function InitializeTaskbarAPI: boolean; +function SetTaskbarProgressState(const AState: TTaskBarProgressState): boolean; +function SetTaskbarProgressValue(const ACurrent: UInt64; + const AMax: UInt64): boolean; +function SetTaskbarOverlayIcon(const AIcon: THandle; + const ADescription: String): boolean; implementation @@ -26,37 +28,49 @@ implementation type ITaskBarList3 = interface(IUnknown) - ['{EA1AFB91-9E28-4B86-90E9-9E9F8A5EEFAF}'] + ['{EA1AFB91-9E28-4B86-90E9-9E9F8A5EEFAF}'] function HrInit(): HRESULT; stdcall; function AddTab(hwnd: THandle): HRESULT; stdcall; function DeleteTab(hwnd: THandle): HRESULT; stdcall; function ActivateTab(hwnd: THandle): HRESULT; stdcall; function SetActiveAlt(hwnd: THandle): HRESULT; stdcall; - function MarkFullscreenWindow(hwnd: THandle; fFullscreen: Boolean): HRESULT; stdcall; - function SetProgressValue(hwnd: THandle; ullCompleted: UInt64; ullTotal: UInt64): HRESULT; stdcall; - function SetProgressState(hwnd: THandle; tbpFlags: Cardinal): HRESULT; stdcall; + function MarkFullscreenWindow(hwnd: THandle; fFullscreen: boolean) + : HRESULT; stdcall; + function SetProgressValue(hwnd: THandle; ullCompleted: UInt64; + ullTotal: UInt64): HRESULT; stdcall; + function SetProgressState(hwnd: THandle; tbpFlags: Cardinal) + : HRESULT; stdcall; function RegisterTab(hwnd: THandle; hwndMDI: THandle): HRESULT; stdcall; function UnregisterTab(hwndTab: THandle): HRESULT; stdcall; - function SetTabOrder(hwndTab: THandle; hwndInsertBefore: THandle): HRESULT; stdcall; - function SetTabActive(hwndTab: THandle; hwndMDI: THandle; tbatFlags: Cardinal): HRESULT; stdcall; - function ThumbBarAddButtons(hwnd: THandle; cButtons: Cardinal; pButtons: Pointer): HRESULT; stdcall; - function ThumbBarUpdateButtons(hwnd: THandle; cButtons: Cardinal; pButtons: Pointer): HRESULT; stdcall; - function ThumbBarSetImageList(hwnd: THandle; himl: THandle): HRESULT; stdcall; - function SetOverlayIcon(hwnd: THandle; hIcon: THandle; pszDescription: PChar): HRESULT; stdcall; - function SetThumbnailTooltip(hwnd: THandle; pszDescription: PChar): HRESULT; stdcall; - function SetThumbnailClip(hwnd: THandle; var prcClip: TRect): HRESULT; stdcall; + function SetTabOrder(hwndTab: THandle; hwndInsertBefore: THandle) + : HRESULT; stdcall; + function SetTabActive(hwndTab: THandle; hwndMDI: THandle; + tbatFlags: Cardinal): HRESULT; stdcall; + function ThumbBarAddButtons(hwnd: THandle; cButtons: Cardinal; + pButtons: Pointer): HRESULT; stdcall; + function ThumbBarUpdateButtons(hwnd: THandle; cButtons: Cardinal; + pButtons: Pointer): HRESULT; stdcall; + function ThumbBarSetImageList(hwnd: THandle; himl: THandle) + : HRESULT; stdcall; + function SetOverlayIcon(hwnd: THandle; hIcon: THandle; + pszDescription: PChar): HRESULT; stdcall; + function SetThumbnailTooltip(hwnd: THandle; pszDescription: PChar) + : HRESULT; stdcall; + function SetThumbnailClip(hwnd: THandle; var prcClip: TRect) + : HRESULT; stdcall; end; var TaskBarInterface: ITaskBarList3; -function InitializeTaskbarAPI: Boolean; +function InitializeTaskbarAPI: boolean; var Unknown: IInterface; Temp: ITaskBarList3; begin // return true and exit if already initialized - if Assigned(TaskBarInterface) then begin + if Assigned(TaskBarInterface) then + begin Result := True; Exit; end; @@ -64,7 +78,8 @@ function InitializeTaskbarAPI: Boolean; // create COM object for taskbar CID try Unknown := CreateComObject(TASKBAR_CID); - if Assigned(Unknown) then begin + if Assigned(Unknown) then + begin Temp := Unknown as ITaskBarList3; if Temp.HrInit() = S_OK then TaskBarInterface := Temp; @@ -91,14 +106,18 @@ function SetTaskbarProgressState(const AState: TTaskBarProgressState): boolean; // exit if api not initialized if not CheckAPI then - exit; + Exit; // check if state is valid, else use no progress case AState of - tbpsIndeterminate: Flag := TBPF_INDETERMINATE; - tbpsNormal: Flag := TBPF_NORMAL; - tbpsError: Flag := TBPF_ERROR; - tbpsPaused: Flag := TBPF_PAUSED; + tbpsIndeterminate: + Flag := TBPF_INDETERMINATE; + tbpsNormal: + Flag := TBPF_NORMAL; + tbpsError: + Flag := TBPF_ERROR; + tbpsPaused: + Flag := TBPF_PAUSED; else Flag := TBPF_NOPROGRESS; end; @@ -107,34 +126,40 @@ function SetTaskbarProgressState(const AState: TTaskBarProgressState): boolean; Result := TaskBarInterface.SetProgressState(Application.Handle, Flag) = S_OK; end; -function SetTaskbarProgressValue(const ACurrent:UInt64; const AMax: UInt64): boolean; +function SetTaskbarProgressValue(const ACurrent: UInt64; + const AMax: UInt64): boolean; begin Result := False; // exit if api not initialized if not CheckAPI then - exit; + Exit; // set progress value - Result := TaskBarInterface.SetProgressValue(Application.Handle, ACurrent, AMax) = S_OK; + Result := TaskBarInterface.SetProgressValue(Application.Handle, ACurrent, + AMax) = S_OK; end; -function SetTaskbarOverlayIcon(const AIcon: THandle; const ADescription: String): boolean; +function SetTaskbarOverlayIcon(const AIcon: THandle; + const ADescription: String): boolean; begin Result := False; // exit if api not initialized if not CheckAPI then - exit; + Exit; // set icon - Result := TaskBarInterface.SetOverlayIcon(Application.Handle, AIcon, PWideChar(ADescription)) = S_OK; + Result := TaskBarInterface.SetOverlayIcon(Application.Handle, AIcon, + PWideChar(ADescription)) = S_OK; end; initialization - TaskBarInterface := nil; + +TaskBarInterface := nil; finalization - TaskBarInterface := nil; + +TaskBarInterface := nil; end. diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index ed83cc4..b304ab8 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -12,9 +12,10 @@ interface wbHelpers, wbLoadOrder, wbInterface, wbImplementation; type - TSmashType = ( stUnknown, stRecord, stString, stInteger, stFlag, stFloat, + TSmashType = (stUnknown, stRecord, stString, stInteger, stFlag, stFloat, stStruct, stUnsortedArray, stUnsortedStructArray, stSortedArray, - stSortedStructArray, stByteArray, stUnion ); + stSortedStructArray, stByteArray, stUnion); + TBasePlugin = class(TObject) public _File: IwbFile; @@ -37,74 +38,85 @@ TBasePlugin = class(TObject) procedure GetHash; function GetFormIndex: Integer; end; + TPluginHelpers = class - class function CreateNewBasePlugin(var list: TList; filename: string): TBasePlugin; - class function BasePluginByFilename(var list: TList; filename: string): TBasePlugin; - class function BasePluginLoadOrder(var list: TList; filename: string): integer; + class function CreateNewBasePlugin(var list: TList; filename: string) + : TBasePlugin; + class function BasePluginByFilename(var list: TList; filename: string) + : TBasePlugin; + class function BasePluginLoadOrder(var list: TList; + filename: string): Integer; end; + THeaderHelpers = class class procedure LoadPluginHeaders(var sl: TStringList); class procedure GetPluginMasters(filename: string; var sl: TStringList); - class procedure GetPluginDependencies(filename: string; var sl: TStringList); + class procedure GetPluginDependencies(filename: string; + var sl: TStringList); end; { General Helper Functions } - function etToString(et: TwbElementType): string; - function dtToString(dt: TwbDefType): string; - function ctToString(ct: TConflictThis): string; - function stToString(st: TSmashType): string; - function SmashType(def: IwbNamedDef): TSmashtype; - function GetSmashType(element: IwbElement): TSmashType; - function ElementByIndexedPath(e: IwbElement; ip: string): IwbElement; - function IndexedPath(e: IwbElement): string; - function GetAllValues(e: IwbElement): string; - function IsSortedDef(def: IwbNamedDef): boolean; - function IsSorted(e: IwbElement): boolean; - function HasStructChildren(e: IwbElement): boolean; - function HasStructChildrenDef(def: IwbNamedDef): boolean; - function WinningOverrideInFiles(rec: IwbMainRecord; - var sl: TStringList): IwbMainRecord; - function IsOverride(aRecord: IwbMainRecord): boolean; - function ExtractFormID(filename: string): string; - function RemoveFileIndex(formID: string): string; - function LocalFormID(aRecord: IwbMainRecord): integer; - function LoadOrderPrefix(aRecord: IwbMainRecord): integer; - function CountOverrides(aFile: IwbFile): integer; - function OverrideCountInFiles(rec: IwbMainRecord; var files: TStringList): Integer; - procedure AddRequiredBy(var lst: TList; filename: string; - var masters: TStringList); - procedure GetMasters(aFile: IwbFile; var sl: TStringList); - procedure AddMasters(aFile: IwbFile; var sl: TStringList); - function RemoveSelfOrContainer(const aElement: IwbElement): boolean; - procedure UndeleteAndDisable(const aRecord: IwbMainRecord); - function LoadOrderCompare(List: TStringList; Index1, Index2: Integer): Integer; - - { Record Prototyping Functions } - function GetElementObj(var obj: ISuperObject; name: string): ISuperObject; - function CreateRecordObj(var tree: ISuperObject; rec: IwbMainRecord): ISuperObject; - function GetRecordObj(var tree: ISuperObject; name: string): ISuperObject; - function GetRecordDef(sig: TwbSignature): TwbRecordDefEntry; - function BuildDef(def: IwbNamedDef; name: string): ISuperObject; - function BuildRecordDef(sName: string; mrDef: IwbRecordDef; out recObj: ISuperObject): boolean; overload; - function BuildRecordDef(sName: string; out recObj: ISuperObject): boolean; overload; - function GetEditableFileContainer: IwbContainerElementRef; - - { Plugin Error Functions } - function FixErrors(const aElement: IwbElement; lastRecord: IwbMainRecord; - var errors: TStringList): IwbMainRecord; - function CheckForErrors(const aElement: IwbElement; lastRecord: IwbMainRecord; - var errors: TStringList): IwbMainRecord; - - { Asset Handling Functions } - procedure ExtractBSA(ContainerName, folder, destination: string); overload; - procedure ExtractBSA(ContainerName, destination: string; var ignore: TStringList); overload; - function BSAExists(filename: string): boolean; - function INIExists(filename: string): boolean; - function TranslationExists(filename: string): boolean; - function FaceDataExists(filename: string): boolean; - function VoiceDataExists(filename: string): boolean; - function FragmentsExist(f: IwbFile): boolean; - function ReferencesSelf(f: IwbFile): boolean; +function etToString(et: TwbElementType): string; +function dtToString(dt: TwbDefType): string; +function ctToString(ct: TConflictThis): string; +function stToString(st: TSmashType): string; +function SmashType(def: IwbNamedDef): TSmashType; +function GetSmashType(element: IwbElement): TSmashType; +function ElementByIndexedPath(e: IwbElement; ip: string): IwbElement; +function IndexedPath(e: IwbElement): string; +function GetAllValues(e: IwbElement): string; +function IsSortedDef(def: IwbNamedDef): boolean; +function IsSorted(e: IwbElement): boolean; +function HasStructChildren(e: IwbElement): boolean; +function HasStructChildrenDef(def: IwbNamedDef): boolean; +function WinningOverrideInFiles(rec: IwbMainRecord; var sl: TStringList) + : IwbMainRecord; +function IsOverride(aRecord: IwbMainRecord): boolean; +function ExtractFormID(filename: string): string; +function RemoveFileIndex(formID: string): string; +function LocalFormID(aRecord: IwbMainRecord): Integer; +function LoadOrderPrefix(aRecord: IwbMainRecord): Integer; +function CountOverrides(aFile: IwbFile): Integer; +function OverrideCountInFiles(rec: IwbMainRecord; + var files: TStringList): Integer; +procedure AddRequiredBy(var lst: TList; filename: string; + var masters: TStringList); +procedure GetMasters(aFile: IwbFile; var sl: TStringList); +procedure AddMasters(aFile: IwbFile; var sl: TStringList); +function RemoveSelfOrContainer(const aElement: IwbElement): boolean; +procedure UndeleteAndDisable(const aRecord: IwbMainRecord); +function LoadOrderCompare(list: TStringList; Index1, Index2: Integer): Integer; + +{ Record Prototyping Functions } +function GetElementObj(var obj: ISuperObject; name: string): ISuperObject; +function CreateRecordObj(var tree: ISuperObject; rec: IwbMainRecord) + : ISuperObject; +function GetRecordObj(var tree: ISuperObject; name: string): ISuperObject; +function GetRecordDef(sig: TwbSignature): TwbRecordDefEntry; +function BuildDef(def: IwbNamedDef; name: string): ISuperObject; +function BuildRecordDef(sName: string; mrDef: IwbRecordDef; + out recObj: ISuperObject): boolean; overload; +function BuildRecordDef(sName: string; out recObj: ISuperObject) + : boolean; overload; +function GetEditableFileContainer: IwbContainerElementRef; + +{ Plugin Error Functions } +function FixErrors(const aElement: IwbElement; lastRecord: IwbMainRecord; + var errors: TStringList): IwbMainRecord; +function CheckForErrors(const aElement: IwbElement; lastRecord: IwbMainRecord; + var errors: TStringList): IwbMainRecord; + +{ Asset Handling Functions } +procedure ExtractBSA(ContainerName, folder, destination: string); overload; +procedure ExtractBSA(ContainerName, destination: string; + var ignore: TStringList); overload; +function BSAExists(filename: string): boolean; +function INIExists(filename: string): boolean; +function TranslationExists(filename: string): boolean; +function FaceDataExists(filename: string): boolean; +function VoiceDataExists(filename: string): boolean; +function FragmentsExist(f: IwbFile): boolean; +function ReferencesSelf(f: IwbFile): boolean; var PluginsList: TList; @@ -141,13 +153,14 @@ procedure TBasePlugin.GetData(var lst: TList); hasData := true; // get data - filename := _File.FileName; + filename := _File.filename; Container := _File as IwbContainer; Container := Container.Elements[0] as IwbContainer; author := Container.GetElementEditValue('CNAM - Author'); // we have to subtract 1 because this count includes the // file header for some reason - numRecords := Container.GetElementNativeValue('HEDR - Header\Number of Records') - 1; + numRecords := Container.GetElementNativeValue + ('HEDR - Header\Number of Records') - 1; // get masters, required by GetMasters(_File, masters); @@ -179,24 +192,25 @@ function TBasePlugin.GetFormIndex: Integer; Result := 0; Container := self._File as IwbContainer; Container := Container.Elements[0] as IwbContainer; - if Container.ElementExists['Master Files'] then begin + if Container.ElementExists['Master Files'] then + begin MasterFiles := Container.ElementByPath['Master Files'] as IwbContainer; Result := MasterFiles.ElementCount; end; end; - -{*****************************************************************************} +{ ***************************************************************************** } { PLUGIN HELPERS Helper methods for dealing with TBasePlugins. } -{*****************************************************************************} +{ ***************************************************************************** } { Create a new plugin } -class function TPluginHelpers.CreateNewBasePlugin(var list: TList; filename: string): TBasePlugin; +class function TPluginHelpers.CreateNewBasePlugin(var list: TList; + filename: string): TBasePlugin; var aFile: IwbFile; - LoadOrder: integer; + LoadOrder: Integer; plugin: TBasePlugin; begin Result := nil; @@ -215,15 +229,18 @@ class function TPluginHelpers.CreateNewBasePlugin(var list: TList; filename: str end; { Gets the load order of the plugin matching the given name } -class function TPluginHelpers.BasePluginLoadOrder(var list: TList; filename: string): integer; +class function TPluginHelpers.BasePluginLoadOrder(var list: TList; + filename: string): Integer; var - i: integer; + i: Integer; plugin: TBasePlugin; begin Result := -1; - for i := 0 to Pred(list.Count) do begin + for i := 0 to Pred(list.Count) do + begin plugin := TBasePlugin(list[i]); - if plugin.filename = filename then begin + if plugin.filename = filename then + begin Result := i; exit; end; @@ -231,15 +248,18 @@ class function TPluginHelpers.BasePluginLoadOrder(var list: TList; filename: str end; { Gets a plugin matching the given name. } -class function TPluginHelpers.BasePluginByFilename(var list: TList; filename: string): TBasePlugin; +class function TPluginHelpers.BasePluginByFilename(var list: TList; + filename: string): TBasePlugin; var - i: integer; + i: Integer; plugin: TBasePlugin; begin Result := nil; - for i := 0 to Pred(list.count) do begin + for i := 0 to Pred(list.Count) do + begin plugin := TBasePlugin(list[i]); - if plugin.filename = filename then begin + if plugin.filename = filename then + begin Result := plugin; exit; end; @@ -256,19 +276,22 @@ class procedure THeaderHelpers.LoadPluginHeaders(var sl: TStringList); HeaderList := TList.Create; // load plugin headers for each plugin in @sl - for i := 0 to Pred(sl.Count) do try - aFile := wbFile(sl[i], -1, '', [fsOnlyHeader]); - plugin := TBasePlugin.Create; - plugin._File := aFile; - HeaderList.Add(plugin); - except - on x: Exception do begin - Tracker.Write('Failed to load '+sl[i]); + for i := 0 to Pred(sl.Count) do + try + aFile := wbFile(sl[i], -1, '', [fsOnlyHeader]); + plugin := TBasePlugin.Create; + plugin._File := aFile; + HeaderList.Add(plugin); + except + on x: Exception do + begin + Tracker.Write('Failed to load ' + sl[i]); + end; end; - end; // get data for each plugin in the header list - for i := 0 to Pred(HeaderList.Count) do begin + for i := 0 to Pred(HeaderList.Count) do + begin plugin := TBasePlugin(HeaderList[i]); plugin.GetData(HeaderList); end; @@ -278,14 +301,17 @@ class procedure THeaderHelpers.GetPluginMasters(filename: string; var sl: TStringList); var plugin: TBasePlugin; - i: integer; + i: Integer; begin // get plugin plugin := TPluginHelpers.BasePluginByFilename(HeaderList, filename); - if not Assigned(plugin) then exit; + if not Assigned(plugin) then + exit; // add its masters to @sl - for i := 0 to Pred(plugin.masters.Count) do begin - if sl.IndexOf(plugin.masters[i]) > -1 then continue; + for i := 0 to Pred(plugin.masters.Count) do + begin + if sl.IndexOf(plugin.masters[i]) > -1 then + continue; sl.Add(plugin.masters[i]); GetPluginMasters(plugin.masters[i], sl); end; @@ -295,21 +321,23 @@ class procedure THeaderHelpers.GetPluginDependencies(filename: string; var sl: TStringList); var plugin: TBasePlugin; - i: integer; + i: Integer; begin // get plugin plugin := TPluginHelpers.BasePluginByFilename(HeaderList, filename); - if not Assigned(plugin) then exit; + if not Assigned(plugin) then + exit; // add its required by to @sl - for i := 0 to Pred(plugin.requiredBy.Count) do begin - if sl.IndexOf(plugin.requiredBy[i]) > -1 then continue; + for i := 0 to Pred(plugin.requiredBy.Count) do + begin + if sl.IndexOf(plugin.requiredBy[i]) > -1 then + continue; sl.Add(plugin.requiredBy[i]); GetPluginDependencies(plugin.requiredBy[i], sl); end; end; - -{******************************************************************************} +{ ****************************************************************************** } { General Helper Functions Set of functions that read bethesda plugin files for various attributes. @@ -327,7 +355,7 @@ class procedure THeaderHelpers.GetPluginDependencies(filename: string; - WinningOverrideInFiles - IsOverride - LocalFormID - -LoadOrderPrefix + -LoadOrderPrefix - CountOverrides - GetMasters - AddMasters @@ -342,25 +370,38 @@ class procedure THeaderHelpers.GetPluginDependencies(filename: string; - PluginsModified - CreatSEQFile } -{*****************************************************************************} +{ ***************************************************************************** } { Converts a TwbElementType to a string } function etToString(et: TwbElementType): string; begin case Ord(et) of - Ord(etFile): Result := 'etFile'; - Ord(etMainRecord): Result := 'etMainRecord'; - Ord(etGroupRecord): Result := 'etGroupRecord'; - Ord(etSubRecord): Result := 'etSubRecord'; - Ord(etSubRecordStruct): Result := 'etSubRecordStruct'; - Ord(etSubRecordArray): Result := 'etSubRecordArray'; - Ord(etSubRecordUnion): Result := 'etSubRecordUnion'; - Ord(etArray): Result := 'etArray'; - Ord(etStruct): Result := 'etStruct'; - Ord(etValue): Result := 'etValue'; - Ord(etFlag): Result := 'etFlag'; - Ord(etStringListTerminator): Result := 'etStringListTerminator'; - Ord(etUnion): Result := 'etUnion'; + Ord(etFile): + Result := 'etFile'; + Ord(etMainRecord): + Result := 'etMainRecord'; + Ord(etGroupRecord): + Result := 'etGroupRecord'; + Ord(etSubRecord): + Result := 'etSubRecord'; + Ord(etSubRecordStruct): + Result := 'etSubRecordStruct'; + Ord(etSubRecordArray): + Result := 'etSubRecordArray'; + Ord(etSubRecordUnion): + Result := 'etSubRecordUnion'; + Ord(etArray): + Result := 'etArray'; + Ord(etStruct): + Result := 'etStruct'; + Ord(etValue): + Result := 'etValue'; + Ord(etFlag): + Result := 'etFlag'; + Ord(etStringListTerminator): + Result := 'etStringListTerminator'; + Ord(etUnion): + Result := 'etUnion'; end; end; @@ -368,107 +409,170 @@ function etToString(et: TwbElementType): string; function dtToString(dt: TwbDefType): string; begin case Ord(dt) of - Ord(dtRecord): Result := 'dtRecord'; - Ord(dtSubRecord): Result := 'dtSubRecord'; - Ord(dtSubRecordArray): Result := 'dtSubRecordArray'; - Ord(dtSubRecordStruct): Result := 'dtSubRecordStruct'; - Ord(dtSubRecordUnion): Result := 'dtSubRecordUnion'; - Ord(dtString): Result := 'dtString'; - Ord(dtLString): Result := 'dtLString'; - Ord(dtLenString): Result := 'dtLenString'; - Ord(dtByteArray): Result := 'dtByteArray'; - Ord(dtInteger): Result := 'dtInteger'; - Ord(dtIntegerFormater): Result := 'dtIntegerFormatter'; - Ord(dtFloat): Result := 'dtFloat'; - Ord(dtArray): Result := 'dtArray'; - Ord(dtStruct): Result := 'dtStruct'; - Ord(dtUnion): Result := 'dtUnion'; - Ord(dtEmpty): Result := 'dtEmpty'; + Ord(dtRecord): + Result := 'dtRecord'; + Ord(dtSubRecord): + Result := 'dtSubRecord'; + Ord(dtSubRecordArray): + Result := 'dtSubRecordArray'; + Ord(dtSubRecordStruct): + Result := 'dtSubRecordStruct'; + Ord(dtSubRecordUnion): + Result := 'dtSubRecordUnion'; + Ord(dtString): + Result := 'dtString'; + Ord(dtLString): + Result := 'dtLString'; + Ord(dtLenString): + Result := 'dtLenString'; + Ord(dtByteArray): + Result := 'dtByteArray'; + Ord(dtInteger): + Result := 'dtInteger'; + Ord(dtIntegerFormater): + Result := 'dtIntegerFormatter'; + Ord(dtFloat): + Result := 'dtFloat'; + Ord(dtArray): + Result := 'dtArray'; + Ord(dtStruct): + Result := 'dtStruct'; + Ord(dtUnion): + Result := 'dtUnion'; + Ord(dtEmpty): + Result := 'dtEmpty'; end; end; function ctToString(ct: TConflictThis): string; begin case Ord(ct) of - Ord(ctUnknown): Result := 'ctUnknown'; - Ord(ctIgnored): Result := 'ctIgnored'; - Ord(ctNotDefined): Result := 'ctNotDefined'; - Ord(ctIdenticalToMaster): Result := 'ctIdenticalToMaster'; - Ord(ctOnlyOne): Result := 'ctOnlyOne'; - Ord(ctHiddenByModGroup): Result := 'ctHiddenByModGroup'; - Ord(ctMaster): Result := 'ctMaster'; - Ord(ctConflictBenign): Result := 'ctConflictBenign'; - Ord(ctOverride): Result := 'ctOverride'; - Ord(ctIdenticalToMasterWinsConflict): Result := 'ctIdenticalToMasterWinsConflict'; - Ord(ctConflictWins): Result := 'ctConflictWins'; - Ord(ctConflictLoses): Result := 'ctConflictLoses'; + Ord(ctUnknown): + Result := 'ctUnknown'; + Ord(ctIgnored): + Result := 'ctIgnored'; + Ord(ctNotDefined): + Result := 'ctNotDefined'; + Ord(ctIdenticalToMaster): + Result := 'ctIdenticalToMaster'; + Ord(ctOnlyOne): + Result := 'ctOnlyOne'; + Ord(ctHiddenByModGroup): + Result := 'ctHiddenByModGroup'; + Ord(ctMaster): + Result := 'ctMaster'; + Ord(ctConflictBenign): + Result := 'ctConflictBenign'; + Ord(ctOverride): + Result := 'ctOverride'; + Ord(ctIdenticalToMasterWinsConflict): + Result := 'ctIdenticalToMasterWinsConflict'; + Ord(ctConflictWins): + Result := 'ctConflictWins'; + Ord(ctConflictLoses): + Result := 'ctConflictLoses'; end; end; function stToString(st: TSmashType): string; begin case Ord(st) of - Ord(stUnknown): Result := 'Unknown'; - Ord(stRecord): Result := 'Record'; - Ord(stString): Result := 'String'; - Ord(stInteger): Result := 'Integer'; - Ord(stFlag): Result := 'Flag'; - Ord(stFloat): Result := 'Float'; - Ord(stStruct): Result := 'Struct'; - Ord(stUnsortedArray): Result := 'Unsorted Array'; - Ord(stUnsortedStructArray): Result := 'Unsorted Struct Array'; - Ord(stSortedArray): Result := 'Sorted Array'; - Ord(stSortedStructArray): Result := 'Sorted Struct Array'; - Ord(stByteArray): Result := 'Byte Array'; - Ord(stUnion): Result := 'Union'; - else Result := 'Unknown'; + Ord(stUnknown): + Result := 'Unknown'; + Ord(stRecord): + Result := 'Record'; + Ord(stString): + Result := 'String'; + Ord(stInteger): + Result := 'Integer'; + Ord(stFlag): + Result := 'Flag'; + Ord(stFloat): + Result := 'Float'; + Ord(stStruct): + Result := 'Struct'; + Ord(stUnsortedArray): + Result := 'Unsorted Array'; + Ord(stUnsortedStructArray): + Result := 'Unsorted Struct Array'; + Ord(stSortedArray): + Result := 'Sorted Array'; + Ord(stSortedStructArray): + Result := 'Sorted Struct Array'; + Ord(stByteArray): + Result := 'Byte Array'; + Ord(stUnion): + Result := 'Union'; + else + Result := 'Unknown'; end; end; -function SmashType(def: IwbNamedDef): TSmashtype; +function SmashType(def: IwbNamedDef): TSmashType; var subDef: IwbSubRecordDef; dt: TwbDefType; bIsSorted, bHasStructChildren: boolean; begin dt := def.DefType; - if Supports(def, IwbSubrecordDef, subDef) then + if Supports(def, IwbSubRecordDef, subDef) then dt := subDef.GetValue.DefType; case Ord(dt) of - Ord(dtRecord): Result := stRecord; - Ord(dtSubRecord): Result := stUnknown; - Ord(dtSubRecordStruct): Result := stStruct; - Ord(dtSubRecordUnion): Result := stUnion; - Ord(dtString): Result := stString; - Ord(dtLString): Result := stString; - Ord(dtLenString): Result := stString; - Ord(dtByteArray): Result := stByteArray; - Ord(dtInteger): Result := stInteger; - Ord(dtIntegerFormater): Result := stInteger; - Ord(dtIntegerFormaterUnion): Result := stInteger; - Ord(dtFlag): Result := stFlag; - Ord(dtFloat): Result := stFloat; - Ord(dtSubRecordArray), Ord(dtArray): begin - bIsSorted := IsSortedDef(def); - bHasStructChildren := HasStructChildrenDef(def); - if bIsSorted then begin - if bHasStructChildren then - Result := stSortedStructArray - else - Result := stSortedArray; - end - else begin - if bHasStructChildren then - Result := stUnsortedStructArray + Ord(dtRecord): + Result := stRecord; + Ord(dtSubRecord): + Result := stUnknown; + Ord(dtSubRecordStruct): + Result := stStruct; + Ord(dtSubRecordUnion): + Result := stUnion; + Ord(dtString): + Result := stString; + Ord(dtLString): + Result := stString; + Ord(dtLenString): + Result := stString; + Ord(dtByteArray): + Result := stByteArray; + Ord(dtInteger): + Result := stInteger; + Ord(dtIntegerFormater): + Result := stInteger; + Ord(dtIntegerFormaterUnion): + Result := stInteger; + Ord(dtFlag): + Result := stFlag; + Ord(dtFloat): + Result := stFloat; + Ord(dtSubRecordArray), Ord(dtArray): + begin + bIsSorted := IsSortedDef(def); + bHasStructChildren := HasStructChildrenDef(def); + if bIsSorted then + begin + if bHasStructChildren then + Result := stSortedStructArray + else + Result := stSortedArray; + end else - Result := stUnsortedArray; + begin + if bHasStructChildren then + Result := stUnsortedStructArray + else + Result := stUnsortedArray; + end; end; - end; - Ord(dtStruct): Result := stStruct; - Ord(dtUnion): Result := stUnion; - Ord(dtEmpty): Result := stUnknown; - Ord(dtStructChapter): Result := stStruct; - else Result := stUnknown; + Ord(dtStruct): + Result := stStruct; + Ord(dtUnion): + Result := stUnion; + Ord(dtEmpty): + Result := stUnknown; + Ord(dtStructChapter): + Result := stStruct; + else + Result := stUnknown; end; end; @@ -477,12 +581,12 @@ function GetSmashType(element: IwbElement): TSmashType; if Assigned(element.ResolvedValueDef) then Result := SmashType(element.ResolvedValueDef) else - Result := SmashType(element.Def); + Result := SmashType(element.def); end; function ElementByIndexedPath(e: IwbElement; ip: string): IwbElement; var - i, index: integer; + i, index: Integer; path: TStringList; c: IwbContainerElementRef; begin @@ -500,14 +604,17 @@ function ElementByIndexedPath(e: IwbElement; ip: string): IwbElement; exit; // traverse path - for i := 0 to Pred(path.count) do begin - if Pos('[', path[i]) > 0 then begin + for i := 0 to Pred(path.Count) do + begin + if Pos('[', path[i]) > 0 then + begin index := StrToInt(GetTextIn(path[i], '[', ']')); e := c.Elements[index]; if not Supports(e, IwbContainerElementRef, c) then exit; end - else begin + else + begin e := c.ElementByPath[path[i]]; if not Supports(e, IwbContainerElementRef, c) then exit; @@ -524,11 +631,12 @@ function IndexedPath(e: IwbElement): string; a: string; begin c := e.Container; - while (e.ElementType <> etMainRecord) do begin + while (e.ElementType <> etMainRecord) do + begin if c.ElementType = etSubRecordArray then - a := '['+IntToStr(c.IndexOf(e))+']' + a := '[' + IntToStr(c.IndexOf(e)) + ']' else - a := e.Name; + a := e.name; if Result <> '' then Result := a + '\' + Result else @@ -541,7 +649,7 @@ function IndexedPath(e: IwbElement): string; { Returns a string hash of all of the values contained in an element } function GetAllValues(e: IwbElement): string; var - i: integer; + i: Integer; c: IwbContainerElementRef; begin Result := e.EditValue; @@ -549,7 +657,8 @@ function GetAllValues(e: IwbElement): string; exit; // loop through children elements - for i := 0 to Pred(c.ElementCount) do begin + for i := 0 to Pred(c.ElementCount) do + begin if (Result <> '') then Result := Result + ';' + GetAllValues(c.Elements[i]) else @@ -564,7 +673,7 @@ function IsSortedDef(def: IwbNamedDef): boolean; begin Result := false; if Supports(def, IwbSubRecordArrayDef, sraDef) then - Result := Supports(sraDef.Element, IwbHasSortKeyDef) + Result := Supports(sraDef.element, IwbHasSortKeyDef) else if Supports(def, IwbArrayDef, arDef) then Result := arDef.Sorted; end; @@ -590,23 +699,25 @@ function HasStructChildren(e: IwbElement): boolean; Container: IwbContainerElementRef; begin Result := false; - if Supports(e, IwbContainerElementRef, Container) - and (Container.ElementCount > 0) then + if Supports(e, IwbContainerElementRef, Container) and + (Container.ElementCount > 0) then Result := GetSmashType(Container.Elements[0]) = stStruct; end; { Returns the most-winning override of @rec from the files listed in @sl } -function WinningOverrideInFiles(rec: IwbMainRecord; - var sl: TStringList): IwbMainRecord; +function WinningOverrideInFiles(rec: IwbMainRecord; var sl: TStringList) + : IwbMainRecord; var i: Integer; ovr: IwbMainRecord; begin Result := rec; - for i := Pred(rec.OverrideCount) downto 0 do begin + for i := Pred(rec.OverrideCount) downto 0 do + begin ovr := rec.Overrides[i]; - if sl.IndexOf(ovr._file.FileName) > -1 then begin + if sl.IndexOf(ovr._File.filename) > -1 then + begin Result := ovr; exit; end; @@ -621,20 +732,22 @@ function IsOverride(aRecord: IwbMainRecord): boolean; function ExtractFormID(filename: string): string; const - HexChars = ['0'..'9', 'A'..'F', 'a'..'f']; + HexChars = ['0' .. '9', 'A' .. 'F', 'a' .. 'f']; var i, counter: Integer; begin counter := 0; // we loop from the back because the formID is usually at the // end of the filename - for i := Length(filename) downto 1 do begin + for i := Length(filename) downto 1 do + begin if (filename[i] in HexChars) then Inc(counter) else counter := 0; // set result and exit if counter has reached 8 - if counter = 8 then begin + if counter = 8 then + begin Result := Copy(filename, i, 8); exit; end; @@ -649,25 +762,26 @@ function RemoveFileIndex(formID: string): string; end; { Gets the local formID of a record (so no load order prefix) } -function LocalFormID(aRecord: IwbMainRecord): integer; +function LocalFormID(aRecord: IwbMainRecord): Integer; begin Result := aRecord.LoadOrderFormID.ToCardinal and $00FFFFFF; end; { Gets the load order prefix from the FormID of a record } -function LoadOrderPrefix(aRecord: IwbMainRecord): integer; +function LoadOrderPrefix(aRecord: IwbMainRecord): Integer; begin Result := aRecord.LoadOrderFormID.ToCardinal and $FF000000; end; { Returns the number of override records in a file } -function CountOverrides(aFile: IwbFile): integer; +function CountOverrides(aFile: IwbFile): Integer; var i: Integer; aRecord: IwbMainRecord; begin Result := 0; - for i := 0 to Pred(aFile.GetRecordCount) do begin + for i := 0 to Pred(aFile.GetRecordCount) do + begin aRecord := aFile.GetRecord(i); if IsOverride(aRecord) then Inc(Result); @@ -675,15 +789,17 @@ function CountOverrides(aFile: IwbFile): integer; end; { Returns the number of overrides of the specified record in the specified file set } -function OverrideCountInFiles(rec: IwbMainRecord; var files: TStringList): Integer; +function OverrideCountInFiles(rec: IwbMainRecord; + var files: TStringList): Integer; var i: Integer; ovr: IwbMainRecord; begin Result := 0; - for i := 0 to Pred(rec.OverrideCount) do begin + for i := 0 to Pred(rec.OverrideCount) do + begin ovr := rec.Overrides[i]; - if files.IndexOf(ovr._File.FileName) > -1 then + if files.IndexOf(ovr._File.filename) > -1 then Inc(Result); end; end; @@ -696,7 +812,8 @@ procedure AddRequiredBy(var lst: TList; filename: string; i: Integer; plugin: TBasePlugin; begin - for i := 0 to Pred(masters.Count) do begin + for i := 0 to Pred(masters.Count) do + begin plugin := TPluginHelpers.BasePluginByFilename(lst, masters[i]); if not Assigned(plugin) then continue; @@ -708,17 +825,20 @@ procedure AddRequiredBy(var lst: TList; filename: string; procedure GetMasters(aFile: IwbFile; var sl: TStringList); var Container, MasterFiles, MasterFile: IwbContainer; - i, iLoadOrder: integer; + i, iLoadOrder: Integer; filename: string; begin Container := aFile as IwbContainer; Container := Container.Elements[0] as IwbContainer; - if Container.ElementExists['Master Files'] then begin + if Container.ElementExists['Master Files'] then + begin MasterFiles := Container.ElementByPath['Master Files'] as IwbContainer; - for i := 0 to MasterFiles.ElementCount - 1 do begin + for i := 0 to MasterFiles.ElementCount - 1 do + begin MasterFile := MasterFiles.Elements[i] as IwbContainer; filename := MasterFile.GetElementEditValue('MAST - Filename'); - if sl.IndexOf(filename) = -1 then begin + if sl.IndexOf(filename) = -1 then + begin iLoadOrder := TPluginHelpers.BasePluginLoadOrder(PluginsList, filename); sl.AddObject(filename, TObject(iLoadOrder)); end; @@ -729,10 +849,11 @@ procedure GetMasters(aFile: IwbFile; var sl: TStringList); { Gets the masters in an IwbFile and puts them into a stringlist } procedure AddMasters(aFile: IwbFile; var sl: TStringList); var - i: integer; + i: Integer; begin - for i := 0 to Pred(sl.Count) do begin - if Lowercase(aFile.FileName) = Lowercase(sl[i]) then + for i := 0 to Pred(sl.Count) do + begin + if Lowercase(aFile.filename) = Lowercase(sl[i]) then continue; aFile.AddMasterIfMissing(sl[i]); end; @@ -745,7 +866,8 @@ function BSAExists(filename: string): boolean; begin Result := false; bsaFilename := ChangeFileExt(filename, '.bsa'); - if FileExists(wbDataPath + bsaFilename) then begin + if FileExists(wbDataPath + bsaFilename) then + begin ContainerName := wbDataPath + bsaFilename; if not wbContainerHandler.ContainerExists(ContainerName) then wbContainerHandler.AddBSA(ContainerName); @@ -769,9 +891,11 @@ function MatchingFileExists(path: string; filename: string): boolean; begin Result := false; filename := Lowercase(filename); - if FindFirst(path, faAnyFile, info) = 0 then begin + if FindFirst(path, faAnyFile, info) = 0 then + begin repeat - if Pos(filename, Lowercase(info.Name)) > 0 then begin + if Pos(filename, Lowercase(info.name)) > 0 then + begin Result := true; exit; end; @@ -788,14 +912,17 @@ function TranslationExists(filename: string): boolean; begin searchPath := wbDataPath + 'Interface\translations\*'; Result := MatchingFileExists(searchPath, ChangeFileExt(filename, '')); - if Result then exit; + if Result then + exit; // check in BSA - if BSAExists(filename) then begin + if BSAExists(filename) then + begin bsaFilename := ChangeFileExt(filename, '.bsa'); ContainerName := wbDataPath + bsaFilename; ResourceList := TStringList.Create; - wbContainerHandler.ContainerResourceList(ContainerName, ResourceList, 'Interface\translations'); + wbContainerHandler.ContainerResourceList(ContainerName, ResourceList, + 'Interface\translations'); Result := ResourceList.Count > 0; end; end; @@ -812,15 +939,19 @@ function FaceDataExists(filename: string): boolean; facetint := DirectoryExists(wbDataPath + facetintDir); facegeom := DirectoryExists(wbDataPath + facegeomDir); Result := facetint or facegeom; - if Result then exit; + if Result then + exit; // check in BSA - if BSAExists(filename) then begin + if BSAExists(filename) then + begin bsaFilename := ChangeFileExt(filename, '.bsa'); ContainerName := wbDataPath + bsaFilename; ResourceList := TStringList.Create; - wbContainerHandler.ContainerResourceList(ContainerName, ResourceList, facetintDir); - wbContainerHandler.ContainerResourceList(ContainerName, ResourceList, facegeomDir); + wbContainerHandler.ContainerResourceList(ContainerName, ResourceList, + facetintDir); + wbContainerHandler.ContainerResourceList(ContainerName, ResourceList, + facegeomDir); Result := ResourceList.Count > 0; end; end; @@ -833,14 +964,17 @@ function VoiceDataExists(filename: string): boolean; begin voiceDir := 'sound\voice\' + filename; Result := DirectoryExists(wbDataPath + voiceDir); - if Result then exit; + if Result then + exit; // check in BSA - if BSAExists(filename) then begin + if BSAExists(filename) then + begin bsaFilename := ChangeFileExt(filename, '.bsa'); ContainerName := wbDataPath + bsaFilename; ResourceList := TStringList.Create; - wbContainerHandler.ContainerResourceList(ContainerName, ResourceList, voiceDir); + wbContainerHandler.ContainerResourceList(ContainerName, ResourceList, + voiceDir); Result := ResourceList.Count > 0; end; end; @@ -848,11 +982,12 @@ function VoiceDataExists(filename: string): boolean; { Returns true if Topic Info Fragments exist in @f } function TopicInfoFragmentsExist(f: IwbFile): boolean; const - infoFragmentsPath = 'VMAD - Virtual Machine Adapter\Data\Info VMAD\Script Fragments Info'; + infoFragmentsPath = + 'VMAD - Virtual Machine Adapter\Data\Info VMAD\Script Fragments Info'; var rec: IwbMainRecord; group: IwbGroupRecord; - subgroup, container: IwbContainer; + subgroup, Container: IwbContainer; element, fragments: IwbElement; i, j: Integer; begin @@ -863,19 +998,21 @@ function TopicInfoFragmentsExist(f: IwbFile): boolean; // find all DIAL records group := f.GroupBySignature['DIAL']; - for i := 0 to Pred(group.ElementCount) do begin + for i := 0 to Pred(group.ElementCount) do + begin element := group.Elements[i]; // find all INFO records if not Supports(element, IwbContainer, subgroup) then continue; - for j := 0 to Pred(subgroup.ElementCount) do begin + for j := 0 to Pred(subgroup.ElementCount) do + begin if not Supports(subgroup.Elements[j], IwbMainRecord, rec) then continue; if not rec.IsMaster then continue; - if not Supports(rec, IwbContainer, container) then + if not Supports(rec, IwbContainer, Container) then continue; - fragments := container.ElementByPath[infoFragmentsPath]; + fragments := Container.ElementByPath[infoFragmentsPath]; if not Assigned(fragments) then continue; Result := true; @@ -886,11 +1023,12 @@ function TopicInfoFragmentsExist(f: IwbFile): boolean; { Returns true if Quest Fragments exist in @f } function QuestFragmentsExist(f: IwbFile): boolean; const - questFragmentsPath = 'VMAD - Virtual Machine Adapter\Data\Quest VMAD\Script Fragments Quest'; + questFragmentsPath = + 'VMAD - Virtual Machine Adapter\Data\Quest VMAD\Script Fragments Quest'; var rec: IwbMainRecord; group: IwbGroupRecord; - container: IwbContainer; + Container: IwbContainer; fragments: IwbElement; i: Integer; begin @@ -901,14 +1039,15 @@ function QuestFragmentsExist(f: IwbFile): boolean; // find all QUST records group := f.GroupBySignature['QUST']; - for i := 0 to Pred(group.ElementCount) do begin + for i := 0 to Pred(group.ElementCount) do + begin if not Supports(group.Elements[i], IwbMainRecord, rec) then continue; if not rec.IsMaster then continue; - if not Supports(rec, IwbContainer, container) then + if not Supports(rec, IwbContainer, Container) then continue; - fragments := container.ElementByPath[questFragmentsPath]; + fragments := Container.ElementByPath[questFragmentsPath]; if not Assigned(fragments) then continue; Result := true; @@ -918,11 +1057,12 @@ function QuestFragmentsExist(f: IwbFile): boolean; { Returns true if Quest Fragments exist in @f } function SceneFragmentsExist(f: IwbFile): boolean; const - sceneFragmentsPath = 'VMAD - Virtual Machine Adapter\Data\Quest VMAD\Script Fragments Quest'; + sceneFragmentsPath = + 'VMAD - Virtual Machine Adapter\Data\Quest VMAD\Script Fragments Quest'; var rec: IwbMainRecord; group: IwbGroupRecord; - container: IwbContainer; + Container: IwbContainer; fragments: IwbElement; i: Integer; begin @@ -933,14 +1073,15 @@ function SceneFragmentsExist(f: IwbFile): boolean; // find all SCEN records group := f.GroupBySignature['SCEN']; - for i := 0 to Pred(group.ElementCount) do begin + for i := 0 to Pred(group.ElementCount) do + begin if not Supports(group.Elements[i], IwbMainRecord, rec) then continue; if not rec.IsMaster then continue; - if not Supports(rec, IwbContainer, container) then + if not Supports(rec, IwbContainer, Container) then continue; - fragments := container.ElementByPath[sceneFragmentsPath]; + fragments := Container.ElementByPath[sceneFragmentsPath]; if not Assigned(fragments) then continue; Result := true; @@ -950,8 +1091,8 @@ function SceneFragmentsExist(f: IwbFile): boolean; { Returns true if file-specific Script Fragments for @f are found } function FragmentsExist(f: IwbFile): boolean; begin - Result := TopicInfoFragmentsExist(f) or QuestFragmentsExist(f) - or SceneFragmentsExist(f); + Result := TopicInfoFragmentsExist(f) or QuestFragmentsExist(f) or + SceneFragmentsExist(f); end; { References self } @@ -960,7 +1101,7 @@ function ReferencesSelf(f: IwbFile): boolean; i: Integer; filename, source: string; scripts: IwbGroupRecord; - container: IwbContainerElementRef; + Container: IwbContainerElementRef; rec: IwbMainRecord; begin // exit if has no script records in file @@ -969,15 +1110,17 @@ function ReferencesSelf(f: IwbFile): boolean; exit; // get scripts, and check them all for self-reference - filename := f.FileName; + filename := f.filename; scripts := f.GroupBySignature['SCPT']; - if not Supports(scripts, IwbContainerElementRef, container) then + if not Supports(scripts, IwbContainerElementRef, Container) then exit; - for i := 0 to Pred(container.ElementCount) do begin - if not Supports(container.Elements[i], IwbMainRecord, rec) then + for i := 0 to Pred(Container.ElementCount) do + begin + if not Supports(Container.Elements[i], IwbMainRecord, rec) then continue; source := rec.ElementEditValues['SCTX - Script Source']; - if Pos(filename, source) > 0 then begin + if Pos(filename, source) > 0 then + begin Result := true; break; end; @@ -990,62 +1133,76 @@ procedure ExtractBSA(ContainerName, folder, destination: string); ResourceList: TStringList; i: Integer; begin - if not wbContainerHandler.ContainerExists(ContainerName) then begin - Tracker.Write(' '+ContainerName+' not loaded.'); + if not wbContainerHandler.ContainerExists(ContainerName) then + begin + Tracker.Write(' ' + ContainerName + ' not loaded.'); exit; end; ResourceList := TStringList.Create; wbContainerHandler.ContainerResourceList(ContainerName, ResourceList, folder); for i := 0 to Pred(ResourceList.Count) do - wbContainerHandler.ResourceCopy(ContainerName, ResourceList[i], destination); + wbContainerHandler.ResourceCopy(ContainerName, ResourceList[i], + destination); end; { Extracts assets from the BSA @filename to @destination, ignoring assets matching items in @ignore } -procedure ExtractBSA(ContainerName, destination: string; var ignore: TStringList); +procedure ExtractBSA(ContainerName, destination: string; + var ignore: TStringList); var ResourceList: TStringList; i, j: Integer; skip: boolean; begin - if not wbContainerHandler.ContainerExists(ContainerName) then begin - Tracker.Write(' '+ContainerName+' not loaded.'); + if not wbContainerHandler.ContainerExists(ContainerName) then + begin + Tracker.Write(' ' + ContainerName + ' not loaded.'); exit; end; ResourceList := TStringList.Create; wbContainerHandler.ContainerResourceList(ContainerName, ResourceList, ''); - for i := 0 to Pred(ResourceList.Count) do begin + for i := 0 to Pred(ResourceList.Count) do + begin skip := false; - for j := 0 to Pred(ignore.Count) do begin + for j := 0 to Pred(ignore.Count) do + begin skip := Pos(ignore[j], ResourceList[i]) > 0; - if skip then break; + if skip then + break; end; - if skip then continue; - wbContainerHandler.ResourceCopy(ContainerName, ResourceList[i], destination); + if skip then + continue; + wbContainerHandler.ResourceCopy(ContainerName, ResourceList[i], + destination); end; end; -function RemoveSelfOrContainer(const aElement: IwbElement): Boolean; +function RemoveSelfOrContainer(const aElement: IwbElement): boolean; var cElement: IwbElement; begin Result := false; - if aElement.IsRemoveable then begin + if aElement.IsRemoveable then + begin aElement.Remove; Result := true; end - else begin - if not Assigned(aElement.Container) then begin + else + begin + if not Assigned(aElement.Container) then + begin Tracker.Write(' Element has no container!'); exit; end; // if element isn't removable, try removing its container - if Supports(aElement.Container, IwbMainRecord) then begin + if Supports(aElement.Container, IwbMainRecord) then + begin Tracker.Write(' Reached main record, cannot remove element'); exit; end; - Tracker.Write(' Failed to remove '+aElement.Path+', removing container'); + Tracker.Write(' Failed to remove ' + aElement.path + + ', removing container'); if Supports(aElement.Container, IwbElement, cElement) then Result := RemoveSelfOrContainer(cElement); end; @@ -1055,7 +1212,7 @@ procedure UndeleteAndDisable(const aRecord: IwbMainRecord); var xesp: IwbElement; sig: string; - container: IwbContainerElementRef; + Container: IwbContainerElementRef; begin try sig := aRecord.Signature; @@ -1065,13 +1222,13 @@ procedure UndeleteAndDisable(const aRecord: IwbMainRecord); aRecord.IsDeleted := false; // set persistence flag depending on game - if (wbGameMode in [gmFO3,gmFNV,gmTES5]) - and ((sig = 'ACHR') or (sig = 'ACRE')) then + if (wbGameMode in [gmFO3, gmFNV, gmTES5]) and + ((sig = 'ACHR') or (sig = 'ACRE')) then aRecord.IsPersistent := true else if wbGameMode = gmTES4 then aRecord.IsPersistent := false; - // place it below the ground + // place it below the ground if not aRecord.IsPersistent then aRecord.ElementNativeValues['DATA\Position\Z'] := -30000; @@ -1080,21 +1237,21 @@ procedure UndeleteAndDisable(const aRecord: IwbMainRecord); aRecord.RemoveElement('XTEL'); // add enabled opposite of player (true - silent) - xesp := aRecord.Add('XESP', True); - if Assigned(xesp) and Supports(xesp, IwbContainerElementRef, container) then begin - container.ElementNativeValues['Reference'] := $14; // Player ref - container.ElementNativeValues['Flags'] := 1; // opposite of parent flag + xesp := aRecord.Add('XESP', true); + if Assigned(xesp) and Supports(xesp, IwbContainerElementRef, Container) then + begin + Container.ElementNativeValues['Reference'] := $14; // Player ref + Container.ElementNativeValues['Flags'] := 1; // opposite of parent flag end; // set to disable aRecord.IsInitiallyDisabled := true; except on x: Exception do - Tracker.Write(' Exception: '+x.Message); + Tracker.Write(' Exception: ' + x.Message); end; end; - function FixErrors(const aElement: IwbElement; lastRecord: IwbMainRecord; var errors: TStringList): IwbMainRecord; const @@ -1114,38 +1271,48 @@ function FixErrors(const aElement: IwbElement; lastRecord: IwbMainRecord; Tracker.UpdateProgress(1); Error := aElement.Check; - if Error <> '' then begin + if Error <> '' then + begin Result := aElement.ContainingMainRecord; // fix record marked as deleted errors (UDRs) - if Pos(cUDR, Error) = 1 then begin - if Assigned(Result) then begin - Tracker.Write(' Fixing UDR: '+Result.Name); + if Pos(cUDR, Error) = 1 then + begin + if Assigned(Result) then + begin + Tracker.Write(' Fixing UDR: ' + Result.name); UndeleteAndDisable(Result); end; end - else begin + else + begin // fix unresolved FormID errors by NULLing them out - if Pos(cUnresolved, Error) > 0 then begin - Tracker.Write(' Fixing Unresolved FormID: '+aElement.Path); + if Pos(cUnresolved, Error) > 0 then + begin + Tracker.Write(' Fixing Unresolved FormID: ' + aElement.path); aElement.NativeValue := 0; // we may end up with an invalid NULL reference, so we Check again Error := aElement.Check; - if Error = '' then exit; + if Error = '' then + exit; end; // fix invalid NULL references by removal - if Pos(cNULL, Error) = 1 then begin - Tracker.Write(' Removing NULL reference: '+aElement.Path); - if RemoveSelfOrContainer(aElement) then exit; + if Pos(cNULL, Error) = 1 then + begin + Tracker.Write(' Removing NULL reference: ' + aElement.path); + if RemoveSelfOrContainer(aElement) then + exit; end; // unhandled error - Tracker.Write(Format(' Unhandled error: %s -> %s', [aElement.Path, error])); - if Assigned(Result) and (lastRecord <> Result) then begin + Tracker.Write(Format(' Unhandled error: %s -> %s', + [aElement.path, Error])); + if Assigned(Result) and (lastRecord <> Result) then + begin lastRecord := Result; - errors.Add(Result.Name); + errors.Add(Result.name); end; - errors.Add(' '+aElement.Path + ' -> ' + Error); + errors.Add(' ' + aElement.path + ' -> ' + Error); end; end; @@ -1154,10 +1321,12 @@ function FixErrors(const aElement: IwbElement; lastRecord: IwbMainRecord; exit; // recurse through children elements - for i := Pred(Container.ElementCount) downto 0 do begin + for i := Pred(Container.ElementCount) downto 0 do + begin Result := FixErrors(Container.Elements[i], Result, errors); // break if container got deleted - if not Assigned(Container) then break; + if not Assigned(Container) then + break; end; end; @@ -1177,14 +1346,16 @@ function CheckForErrors(const aElement: IwbElement; lastRecord: IwbMainRecord; Error := aElement.Check; // log errors - if Error <> '' then begin + if Error <> '' then + begin Result := aElement.ContainingMainRecord; - if Assigned(Result) and (Result <> LastRecord) then begin - Tracker.Write(' '+Result.Name); - errors.Add(Result.Name); + if Assigned(Result) and (Result <> lastRecord) then + begin + Tracker.Write(' ' + Result.name); + errors.Add(Result.name); end; - msg := ' '+aElement.Path + ' -> ' + Error; - Tracker.Write(' '+msg); + msg := ' ' + aElement.path + ' -> ' + Error; + Tracker.Write(' ' + msg); errors.Add(msg); end; @@ -1195,17 +1366,16 @@ function CheckForErrors(const aElement: IwbElement; lastRecord: IwbMainRecord; end; { Comparator for sorting plugins } -function LoadOrderCompare(List: TStringList; Index1, Index2: Integer): Integer; +function LoadOrderCompare(list: TStringList; Index1, Index2: Integer): Integer; var LO1, LO2: Integer; begin - LO1 := Integer(List.Objects[Index1]); - LO2 := Integer(List.Objects[Index2]); + LO1 := Integer(list.Objects[Index1]); + LO2 := Integer(list.Objects[Index2]); Result := LO1 - LO2; end; - -{******************************************************************************} +{ ****************************************************************************** } { Record Prototyping Functions - GetElementObj - CreateRecordObj @@ -1215,7 +1385,7 @@ function LoadOrderCompare(List: TStringList; Index1, Index2: Integer): Integer; - BuildRecordDef - GetEditableFileContainer } -{******************************************************************************} +{ ****************************************************************************** } { GetElementObj: @@ -1232,22 +1402,25 @@ function GetElementObj(var obj: ISuperObject; name: string): ISuperObject; exit; if not Assigned(obj['c']) then exit; - for item in obj['c'] do begin - if item.S['n'] = name then begin + for item in obj['c'] do + begin + if item.s['n'] = name then + begin Result := item; exit; end; end; end; -function CreateRecordObj(var tree: ISuperObject; rec: IwbMainRecord): ISuperObject; +function CreateRecordObj(var tree: ISuperObject; rec: IwbMainRecord) + : ISuperObject; var item: ISuperObject; begin item := SO; - item.S['n'] := rec.Signature; - item.I['t'] := Ord(stRecord); - tree.A['records'].Add(item); + item.s['n'] := rec.Signature; + item.i['t'] := Ord(stRecord); + tree.a['records'].Add(item); Result := item; end; @@ -1258,8 +1431,9 @@ function GetRecordObj(var tree: ISuperObject; name: string): ISuperObject; begin Result := nil; aSignature := StrToSignature(name); - for item in tree['records'] do begin - if StrToSignature(item.S['n']) = aSignature then + for item in tree['records'] do + begin + if StrToSignature(item.s['n']) = aSignature then Result := item; end; end; @@ -1269,9 +1443,11 @@ function GetRecordDef(sig: TwbSignature): TwbRecordDefEntry; i: Integer; def: TwbRecordDefEntry; begin - for i := Low(wbRecordDefs) to High(wbRecordDefs) do begin + for i := Low(wbRecordDefs) to High(wbRecordDefs) do + begin def := wbRecordDefs[i]; - if def.rdeSignature = sig then begin + if def.rdeSignature = sig then + begin Result := def; exit; end; @@ -1280,48 +1456,52 @@ function GetRecordDef(sig: TwbSignature): TwbRecordDefEntry; function BuildElementDef(element: IwbElement): ISuperObject; var - container: IwbContainerElementRef; + Container: IwbContainerElementRef; i: Integer; childElement: IwbElement; begin // release object if something goes wrong Result := SO; try - Result.S['n'] := element.Name; - Result.I['t'] := Ord(GetSmashType(element)); + Result.s['n'] := element.name; + Result.i['t'] := Ord(GetSmashType(element)); // populate element children, if it supports them - if not Supports(element, IwbContainerElementRef, container) then + if not Supports(element, IwbContainerElementRef, Container) then exit; // assign to container if it doesn't have element but can hold them - if (container.ElementCount = 0) - and container.CanAssign(High(Integer), nil, false) then try - container.Assign(High(Integer), nil, false); - except - // oops, container assignment failed - // this catches an assertion error when assigning to a DOBJ record - on x: Exception do - exit; - end; + if (Container.ElementCount = 0) and Container.CanAssign(High(Integer), nil, + false) then + try + Container.Assign(High(Integer), nil, false); + except + // oops, container assignment failed + // this catches an assertion error when assigning to a DOBJ record + on x: Exception do + exit; + end; // if we have children, make children array and recurse - if container.ElementCount > 0 then begin + if Container.ElementCount > 0 then + begin Result.O['c'] := SA([]); // traverse children - for i := 0 to Pred(container.ElementCount) do begin - childElement := container.Elements[i]; - Result.A['c'].Add(BuildElementDef(childElement)); + for i := 0 to Pred(Container.ElementCount) do + begin + childElement := Container.Elements[i]; + Result.a['c'].Add(BuildElementDef(childElement)); end; end; except - on x: Exception do begin + on x: Exception do + begin Result._Release; raise x; end; end; end; -function IsUnionDef(def: IwbNamedDef; out unionDef: IwbUnionDef): Boolean; +function IsUnionDef(def: IwbNamedDef; out unionDef: IwbUnionDef): boolean; var subDef: IwbSubRecordDef; begin @@ -1331,14 +1511,15 @@ function IsUnionDef(def: IwbNamedDef; out unionDef: IwbUnionDef): Boolean; Result := Supports(def, IwbUnionDef, unionDef); end; -function HasDef(recObj: ISuperObject; name: String): Boolean; +function HasDef(recObj: ISuperObject; name: String): boolean; var i: Integer; begin - Result := False; - for i := 0 to Pred(recObj.A['c'].Length) do - if recObj.A['c'].O[i].S['n'] = name then begin - Result := True; + Result := false; + for i := 0 to Pred(recObj.a['c'].Length) do + if recObj.a['c'].O[i].s['n'] = name then + begin + Result := true; exit; end; end; @@ -1346,7 +1527,7 @@ function HasDef(recObj: ISuperObject; name: String): Boolean; procedure AddDefIfMissing(recObj: ISuperObject; def: IwbNamedDef; name: String); begin if not HasDef(recObj, name) then - recObj.A['c'].Add(BuildDef(def, name)); + recObj.a['c'].Add(BuildDef(def, name)); end; function SigToStr(sig: TwbSignature): String; @@ -1367,23 +1548,29 @@ procedure BuildChildDef(def: IwbNamedDef; recObj: ISuperObject); recDef: IwbRecordDef; name: String; begin - if IsUnionDef(def, unionDef) then begin + if IsUnionDef(def, unionDef) then + begin for i := 0 to Pred(unionDef.MemberCount) do BuildChildDef(unionDef.Members[i] as IwbNamedDef, recObj); end - else if Supports(def, IwbSubRecordUnionDef) and Supports(def, IwbRecordDef, recDef) then begin + else if Supports(def, IwbSubRecordUnionDef) and + Supports(def, IwbRecordDef, recDef) then + begin for i := 0 to Pred(recDef.MemberCount) do BuildChildDef(recDef.Members[i] as IwbNamedDef, recObj); end - else if (def.DefType = dtSubRecordStruct) or (def.DefType = dtSubRecordArray) then begin - AddDefIfMissing(recObj, def, def.Name); + else if (def.DefType = dtSubRecordStruct) or (def.DefType = dtSubRecordArray) + then + begin + AddDefIfMissing(recObj, def, def.name); end - else if Supports(def, IwbSignatureDef, sigDef) then begin - name := SigToStr(sigDef.DefaultSignature) + ' - ' + sigDef.Name; + else if Supports(def, IwbSignatureDef, sigDef) then + begin + name := SigToStr(sigDef.DefaultSignature) + ' - ' + sigDef.name; AddDefIfMissing(recObj, def, name); end else - AddDefIfMissing(recObj, def, def.Name); + AddDefIfMissing(recObj, def, def.name); end; procedure BuildChildDefs(obj: ISuperObject; def: IwbNamedDef); @@ -1402,52 +1589,66 @@ procedure BuildChildDefs(obj: ISuperObject; def: IwbNamedDef); // try SubRecordDef ValueDef if Supports(def, IwbSubRecordDef, subDef) then BuildChildDefs(obj, subDef.GetValue as IwbNamedDef) - // try IwbFlagsDef - else if Supports(def, IwbIntegerDef, iDef) and Supports(iDef.Formater[nil], IwbFlagsDef, fDef) then begin - if fDef.FlagCount = 0 then exit; + // try IwbFlagsDef + else if Supports(def, IwbIntegerDef, iDef) and Supports(iDef.Formater[nil], + IwbFlagsDef, fDef) then + begin + if fDef.FlagCount = 0 then + exit; obj.O['c'] := SA([]); for i := 0 to Pred(fDef.FlagCount) do BuildChildDef(fDef.FlagDef[i] as IwbNamedDef, obj); end // try IwbRecordDef - else if Supports(def, IwbRecordDef, recDef) then begin - if recDef.MemberCount = 0 then exit; + else if Supports(def, IwbRecordDef, recDef) then + begin + if recDef.MemberCount = 0 then + exit; obj.O['c'] := SA([]); for i := 0 to Pred(recDef.MemberCount) do BuildChildDef(recDef.Members[i] as IwbNamedDef, obj); end // try IwbUnionDef - else if Supports(def, IwbUnionDef, unionDef) then begin - if unionDef.MemberCount = 0 then exit; + else if Supports(def, IwbUnionDef, unionDef) then + begin + if unionDef.MemberCount = 0 then + exit; obj.O['c'] := SA([]); for i := 0 to Pred(unionDef.MemberCount) do BuildChildDef(unionDef.Members[i] as IwbNamedDef, obj); end // try IwbStructDef - else if Supports(def, IwbStructDef, structDef) then begin - if structDef.MemberCount = 0 then exit; + else if Supports(def, IwbStructDef, structDef) then + begin + if structDef.MemberCount = 0 then + exit; obj.O['c'] := SA([]); for i := 0 to Pred(structDef.MemberCount) do BuildChildDef(structDef.Members[i] as IwbNamedDef, obj); end // try IwbIntegerDefFormaterUnion - else if Supports(def, IwbIntegerDefFormaterUnion, intDef) then begin - if intDef.MemberCount = 0 then exit; + else if Supports(def, IwbIntegerDefFormaterUnion, intDef) then + begin + if intDef.MemberCount = 0 then + exit; obj.O['c'] := SA([]); for i := 0 to Pred(intDef.MemberCount) do BuildChildDef(intDef.Members[i] as IwbNamedDef, obj); end // try IwbSubRecordArrayDef - else if Supports(def, IwbSubRecordArrayDef, sraDef) then begin + else if Supports(def, IwbSubRecordArrayDef, sraDef) then + begin obj.O['c'] := SA([]); - BuildChildDef(sraDef.Element as IwbNamedDef, obj); + BuildChildDef(sraDef.element as IwbNamedDef, obj); end // try IwbArrayDef - else if Supports(def, IwbArrayDef, aDef) then begin - if aDef.ElementCount = 0 then exit; + else if Supports(def, IwbArrayDef, aDef) then + begin + if aDef.ElementCount = 0 then + exit; obj.O['c'] := SA([]); for i := 0 to Pred(aDef.ElementCount) do - AddDefIfMissing(obj, aDef.Element as IwbNamedDef, aDef.ElementLabel[i]); + AddDefIfMissing(obj, aDef.element as IwbNamedDef, aDef.ElementLabel[i]); end; end; @@ -1456,30 +1657,33 @@ function BuildDef(def: IwbNamedDef; name: string): ISuperObject; // release object if something goes wrong Result := SO; try - Result.S['n'] := name; - Result.I['t'] := Ord(SmashType(def)); + Result.s['n'] := name; + Result.i['t'] := Ord(SmashType(def)); BuildChildDefs(Result, def); except - on x: Exception do begin + on x: Exception do + begin Result._Release; raise x; end; end; end; -function BuildRecordDef(sName: string; mrDef: IwbRecordDef; out recObj: ISuperObject): boolean; overload; +function BuildRecordDef(sName: string; mrDef: IwbRecordDef; + out recObj: ISuperObject): boolean; overload; var i: Integer; begin recObj := SO; try - recObj.S['n'] := sName; - recObj.I['t'] := Ord(stRecord); + recObj.s['n'] := sName; + recObj.i['t'] := Ord(stRecord); recObj.O['c'] := SA([]); for i := 0 to Pred(mrDef.MemberCount) do BuildChildDef(mrDef.Members[i] as IwbNamedDef, recObj); except - on x: Exception do begin + on x: Exception do + begin recObj._Release; raise x; end; @@ -1530,41 +1734,45 @@ procedure PopulateAddList(var AddItem: TMenuItem; Event: TNotifyEvent); item: TMenuItem; begin // populate wbGroupOrder to additem - with TStringList.Create do try - Sorted := True; - Duplicates := dupIgnore; - - // initialize list contents - AddStrings(wbGroupOrder); - Sorted := False; - - // get record def names, if available - for i := Pred(Count) downto 0 do - if wbFindRecordDef(AnsiString(Strings[i]), RecordDef) then - Strings[i] := Strings[i] + ' - ' + RecordDef.Name - else - Delete(i); - - // populate menu items - for i := 0 to Pred(Count) do begin - if Length(Strings[i]) < 4 then - continue; - item := TMenuItem.Create(AddItem); - item.Caption := Strings[i]; - item.OnClick := Event; - AddItem.Add(item); + with TStringList.Create do + try + Sorted := true; + Duplicates := dupIgnore; + + // initialize list contents + AddStrings(wbGroupOrder); + Sorted := false; + + // get record def names, if available + for i := Pred(Count) downto 0 do + if wbFindRecordDef(AnsiString(Strings[i]), RecordDef) then + Strings[i] := Strings[i] + ' - ' + RecordDef.name + else + Delete(i); + + // populate menu items + for i := 0 to Pred(Count) do + begin + if Length(Strings[i]) < 4 then + continue; + item := TMenuItem.Create(AddItem); + item.Caption := Strings[i]; + item.OnClick := Event; + AddItem.Add(item); + end; + finally + Free; end; - finally - Free; - end; end; initialization + begin PluginsList := TList.Create; end; finalization + begin FreeList(PluginsList); end; diff --git a/lib/mte/mteChangeLogForm.dfm b/lib/mte/mteChangeLogForm.dfm old mode 100644 new mode 100755 diff --git a/lib/mte/mteChangeLogForm.pas b/lib/mte/mteChangeLogForm.pas old mode 100644 new mode 100755 index 5e8ffa8..d79bb56 --- a/lib/mte/mteChangeLogForm.pas +++ b/lib/mte/mteChangeLogForm.pas @@ -11,10 +11,10 @@ interface type TChangeLogForm = class(TForm) [FormPrefix('mpCha')] - ScrollBox: TScrollBox; - LabelPrompt: TLabel; - ButtonInstall: TButton; - ButtonSkip: TButton; + ScrollBox: TScrollBox; + LabelPrompt: TLabel; + ButtonInstall: TButton; + ButtonSkip: TButton; procedure FormCreate(Sender: TObject); procedure CreateVersionLabel(line: string; var top: Integer); @@ -27,7 +27,7 @@ TChangeLogForm = class(TForm) end; // public entry point - function ChangeLogPrompt(AOwner: TComponent): boolean; +function ChangeLogPrompt(AOwner: TComponent): boolean; const spacing = 5; @@ -44,12 +44,12 @@ implementation procedure TChangeLogForm.FormCreate(Sender: TObject); begin - {// do a translation dump? - if bTranslationDump then + { // do a translation dump? + if bTranslationDump then TRttiTranslation.Save('lang\english.lang', self); - // load translation - TRttiTranslation.Load(language, self);} + // load translation + TRttiTranslation.Load(language, self); } // display changelog DisplayChangelog; @@ -68,7 +68,7 @@ procedure TChangeLogForm.CreateVersionLabel(line: string; var top: Integer); lbl := TLabel.Create(ScrollBox); lbl.Parent := ScrollBox; lbl.Autosize := true; - lbl.Top := top; + lbl.top := top; lbl.Left := 8; lbl.Caption := line; lbl.Font.Style := [fsBold]; @@ -84,9 +84,9 @@ procedure TChangeLogForm.CreateLabel(line: string; var top: Integer); // make label lbl := TLabel.Create(ScrollBox); lbl.Parent := ScrollBox; - lbl.AutoSize := true; + lbl.Autosize := true; lbl.WordWrap := true; - lbl.Top := top; + lbl.top := top; lbl.Left := 20; lbl.Width := ScrollBox.ClientWidth - 36; lbl.Caption := Trim(line); @@ -104,14 +104,16 @@ procedure TChangeLogForm.DisplayChangelog; start := 0; if not Assigned(clChangelog) then exit; - for i := 0 to Pred(clChangelog.Count) do begin + for i := 0 to Pred(clChangelog.Count) do + begin line := clChangelog[i]; if not IsVersionLine(line) then continue; // identify start of changelog as first version newer than current version lineVersion := Copy(line, 9, Length(line)); - if VersionCompare(clProgramVersion, lineVersion) then begin + if VersionCompare(clProgramVersion, lineVersion) then + begin start := i; break; end; @@ -120,7 +122,8 @@ procedure TChangeLogForm.DisplayChangelog; // loop through the changelog, creating labels in scrollbox // as necessary to render text top := 8; - for i := start to Pred(clChangelog.Count) do begin + for i := start to Pred(clChangelog.Count) do + begin line := clChangelog[i]; if IsVersionLine(line) then CreateVersionLabel(line, top) @@ -136,7 +139,8 @@ procedure LoadChangelog(var changelog: TStringList); changelog := TStringList.Create; // don't attempt to load changelog if it doesn't exist - if not FileExists('changelog.txt') then begin + if not FileExists('changelog.txt') then + begin Logger.Write('GENERAL', 'Changelog', 'No changelog found'); exit; end; diff --git a/lib/mte/mteHelpers.pas b/lib/mte/mteHelpers.pas old mode 100644 new mode 100755 index 8213ef9..9c48dcd --- a/lib/mte/mteHelpers.pas +++ b/lib/mte/mteHelpers.pas @@ -7,75 +7,78 @@ interface type TCallback = procedure of object; + TAppHelpers = class class procedure GetHelp(var Msg: TMsg; var Handled: Boolean); - class function HandleHelp(Command: Word; Data: Integer; var CallHelp: Boolean): Boolean; + class function HandleHelp(Command: Word; Data: Integer; + var CallHelp: Boolean): Boolean; end; { General functions } - function ShortenVersion(vs: string; numClauses: Integer): string; - function IfThenInt(AValue: boolean; ATrue: Integer = 1; AFalse: Integer = 0): Integer; - function TitleCase(sText: String): String; - function SentenceCase(sText: string): string; - function csvText(s: string): string; - function CopyFromTo(str: string; first, last: Integer): string; - function GetTextIn(str: string; open, close: char): string; - function FormatByteSize(const bytes: Int64): string; - function DateBuiltString(date: TDateTime): string; - function DateTimeToSQL(date: TDateTime): string; - function SQLToDateTime(date: string): TDateTime; - function RateStr(date: TDateTime): string; - function TimeStr(date: TDateTime): string; - function AppendIfMissing(str, substr: string): string; - function StrEndsWith(s1, s2: string): boolean; - function RemoveFromEnd(s1, s2: string): string; - function IntegerListSum(list: TStringList; maxIndex: integer): integer; - function Wordwrap(s: string; charCount: integer): string; - function ExtractPath(path: string; levels: integer): string; - function ContainsMatch(var sl: TStringList; const s: string): boolean; - procedure DeleteMatchingItems(item: string; var sl: TStringList); - function IsURL(s: string): boolean; - function IsDotFile(fn: string): boolean; - procedure SaveStringToFile(s: string; fn: string); - function ApplyTemplate(const template: string; var map: TStringList): string; - function VersionCompare(v1, v2: string): boolean; - procedure TryToFree(obj: TObject); - procedure FreeList(var lst: TList); - { Windows API functions } - procedure ForceForeground(hWnd: THandle); - function GetDriveList: TStringDynArray; - function DOSDrive(const sDrive: String ): Integer; - function DriveReady(const sDrive: String): Boolean; - function TryRegistryKeys(var keys: TStringList): string; - function FileNameValid(filename: string): boolean; - function DirectoryValid(dir: string): boolean; - function UpDirectory(sPath: string): string; - function DeleteToRecycleBin(const path: string; Confirm: Boolean): Boolean; - procedure ExecNewProcess(ProgramName: string; synchronous: Boolean); - procedure BrowseForFile(var ed: TEdit; filter, initDir: string); - procedure BrowseForFolder(var ed: TEdit; initDir: string); - function GetCSIDLShellFolder(CSIDLFolder: integer): string; - function GetFileSize(const aFilename: String): Int64; - function GetLastModified(const aFileName: String): TDateTime; - function SearchPathsForFile(sPaths, sFileName: string): string; - function MultFileSearch(paths, filenames, ignore: array of string; - maxDepth: integer): string; - function RecursiveFileSearch(aPath: string; filenames, ignore: array of string; - maxDepth: integer): string; - procedure CopyDirectory(src, dst: string; fIgnore, dIgnore: TStringList); - procedure GetFilesList(path: string; var fIgnore, dIgnore, list: TStringList); - procedure CopyFiles(src, dst: string; var list: TStringList); - function GetVersionMem: string; - function FileVersion(const FileName: string): String; - procedure DeleteDirectory(const path: string); - procedure PerformFileSystemTests(sBasePath: string); - { GUI Helper Functions } - procedure StringGrid_CorrectWidth(var sg: TStringGrid); - procedure ListView_CorrectWidth(var lv: TListView); - function ListView_NextMatch(ListView: TListView; sSearch: string; - iIndex: Integer): Integer; - procedure ListView_HandleMatch(ListView: TListView; iFoundIndex: Integer; - var sBuffer: string; sTempBuffer: string); +function ShortenVersion(vs: string; numClauses: Integer): string; +function IfThenInt(AValue: Boolean; ATrue: Integer = 1; + AFalse: Integer = 0): Integer; +function TitleCase(sText: String): String; +function SentenceCase(sText: string): string; +function csvText(s: string): string; +function CopyFromTo(str: string; first, last: Integer): string; +function GetTextIn(str: string; open, close: char): string; +function FormatByteSize(const bytes: Int64): string; +function DateBuiltString(date: TDateTime): string; +function DateTimeToSQL(date: TDateTime): string; +function SQLToDateTime(date: string): TDateTime; +function RateStr(date: TDateTime): string; +function TimeStr(date: TDateTime): string; +function AppendIfMissing(str, substr: string): string; +function StrEndsWith(s1, s2: string): Boolean; +function RemoveFromEnd(s1, s2: string): string; +function IntegerListSum(list: TStringList; maxIndex: Integer): Integer; +function Wordwrap(s: string; charCount: Integer): string; +function ExtractPath(path: string; levels: Integer): string; +function ContainsMatch(var sl: TStringList; const s: string): Boolean; +procedure DeleteMatchingItems(item: string; var sl: TStringList); +function IsURL(s: string): Boolean; +function IsDotFile(fn: string): Boolean; +procedure SaveStringToFile(s: string; fn: string); +function ApplyTemplate(const template: string; var map: TStringList): string; +function VersionCompare(v1, v2: string): Boolean; +procedure TryToFree(obj: TObject); +procedure FreeList(var lst: TList); +{ Windows API functions } +procedure ForceForeground(hWnd: THandle); +function GetDriveList: TStringDynArray; +function DOSDrive(const sDrive: String): Integer; +function DriveReady(const sDrive: String): Boolean; +function TryRegistryKeys(var keys: TStringList): string; +function FileNameValid(filename: string): Boolean; +function DirectoryValid(dir: string): Boolean; +function UpDirectory(sPath: string): string; +function DeleteToRecycleBin(const path: string; Confirm: Boolean): Boolean; +procedure ExecNewProcess(ProgramName: string; synchronous: Boolean); +procedure BrowseForFile(var ed: TEdit; filter, initDir: string); +procedure BrowseForFolder(var ed: TEdit; initDir: string); +function GetCSIDLShellFolder(CSIDLFolder: Integer): string; +function GetFileSize(const aFilename: String): Int64; +function GetLastModified(const aFilename: String): TDateTime; +function SearchPathsForFile(sPaths, sFileName: string): string; +function MultFileSearch(paths, filenames, ignore: array of string; + maxDepth: Integer): string; +function RecursiveFileSearch(aPath: string; filenames, ignore: array of string; + maxDepth: Integer): string; +procedure CopyDirectory(src, dst: string; fIgnore, dIgnore: TStringList); +procedure GetFilesList(path: string; var fIgnore, dIgnore, list: TStringList); +procedure CopyFiles(src, dst: string; var list: TStringList); +function GetVersionMem: string; +function FileVersion(const filename: string): String; +procedure DeleteDirectory(const path: string); +procedure PerformFileSystemTests(sBasePath: string); +{ GUI Helper Functions } +procedure StringGrid_CorrectWidth(var sg: TStringGrid); +procedure ListView_CorrectWidth(var lv: TListView); +function ListView_NextMatch(ListView: TListView; sSearch: string; + iIndex: Integer): Integer; +procedure ListView_HandleMatch(ListView: TListView; iFoundIndex: Integer; + var sBuffer: string; sTempBuffer: string); const wndBorderSide = 8; @@ -88,7 +91,7 @@ TAppHelpers = class seconds = minutes / 60.0; var - bAllowHelp: boolean; + bAllowHelp: Boolean; enFormatSettings: TFormatSettings; implementation @@ -97,30 +100,33 @@ implementation Controls, Masks, Dialogs, StrUtils, FileCtrl, ShellApi, Messages, CommCtrl, DateUtils, shlObj, IOUtils, Registry; - -{******************************************************************************} +{ ****************************************************************************** } { Application Helpers General helpers for applications } -{******************************************************************************} +{ ****************************************************************************** } class procedure TAppHelpers.GetHelp(var Msg: TMsg; var Handled: Boolean); var control: TControl; sKeyword: string; begin - if (Msg.message = WM_KEYDOWN) and (LoWord(Msg.wParam) = VK_F1) then begin + if (Msg.message = WM_KEYDOWN) and (LoWord(Msg.wParam) = VK_F1) then + begin Screen.Cursor := crHelp; Handled := true; end - else if (Msg.message = WM_LBUTTONDOWN) and (Screen.Cursor = crHelp) then begin + else if (Msg.message = WM_LBUTTONDOWN) and (Screen.Cursor = crHelp) then + begin // get control the user clicked on control := FindVCLWindow(Mouse.CursorPos); // if we found a control, jump to help keyword for that control - if Assigned(control) then begin + if Assigned(control) then + begin bAllowHelp := true; sKeyword := control.HelpKeyword; - while (sKeyword = '') and Assigned(control.Parent) do begin + while (sKeyword = '') and Assigned(control.Parent) do + begin control := control.Parent; sKeyword := control.HelpKeyword; end; @@ -139,8 +145,7 @@ class function TAppHelpers.HandleHelp(Command: Word; Data: Integer; Result := true; end; - -{******************************************************************************} +{ ****************************************************************************** } { General functions Set of functions that help with converting data types and handling strings. @@ -169,7 +174,7 @@ class function TAppHelpers.HandleHelp(Command: Word; Data: Integer; - SaveStringToFile - ApplyTemplate } -{*****************************************************************************} +{ ***************************************************************************** } function ShortenVersion(vs: string; numClauses: Integer): string; var @@ -177,7 +182,8 @@ function ShortenVersion(vs: string; numClauses: Integer): string; begin Result := ''; numDots := 0; - for i := 1 to Pred(Length(vs)) do begin + for i := 1 to Pred(Length(vs)) do + begin if vs[i] = '.' then Inc(numDots); if numDots = numClauses then @@ -188,7 +194,8 @@ function ShortenVersion(vs: string; numClauses: Integer): string; { Returns one of two integers based on a boolean argument. Like IfThen from StrUtils, but returns an Integer. } -function IfThenInt(AValue: boolean; ATrue: Integer = 1; AFalse: Integer = 0): Integer; +function IfThenInt(AValue: Boolean; ATrue: Integer = 1; + AFalse: Integer = 0): Integer; begin if AValue then Result := ATrue @@ -199,13 +206,14 @@ function IfThenInt(AValue: boolean; ATrue: Integer = 1; AFalse: Integer = 0): In { Capitalizes the first letter of each word } function TitleCase(sText: String): String; const - cDelimiters = [#9, #10, #13, ' ', ',', '.', ':', ';', '"', - '\', '/', '(', ')', '[', ']', '{', '}']; + cDelimiters = [#9, #10, #13, ' ', ',', '.', ':', ';', '"', '\', '/', '(', ')', + '[', ']', '{', '}']; var iLoop: Integer; begin Result := sText; - if (Result <> '') then begin + if (Result <> '') then + begin Result := LowerCase(Result); Result[1] := UpCase(Result[1]); @@ -221,15 +229,17 @@ function SentenceCase(sText: string): string; cTerminators = ['!', '.', '?']; var iLoop: Integer; - bTerminated: boolean; + bTerminated: Boolean; begin Result := sText; - if (Result <> '') then begin + if (Result <> '') then + begin Result := LowerCase(Result); Result[1] := UpCase(Result[1]); bTerminated := false; - for iLoop := 2 to Length(Result) do begin + for iLoop := 2 to Length(Result) do + begin if (Result[iLoop - 1] in cTerminators) then bTerminated := true; if bTerminated and (Result[iLoop] <> ' ') then @@ -241,7 +251,7 @@ function SentenceCase(sText: string): string; { Replaces newlines with a comma and space } function csvText(s: string): string; begin - result := StringReplace(Trim(s), #13, ', ', [rfReplaceAll]); + Result := StringReplace(Trim(s), #13, ', ', [rfReplaceAll]); end; { Copies a substring in a string between two indexes } @@ -253,18 +263,21 @@ function CopyFromTo(str: string; first, last: Integer): string; { Returns a substring of @str between characters @open and @close } function GetTextIn(str: string; open, close: char): string; var - i, openIndex: integer; - bOpen: boolean; + i, openIndex: Integer; + bOpen: Boolean; begin Result := ''; bOpen := false; openIndex := 0; - for i := 0 to Length(str) do begin - if not bOpen and (str[i] = open) then begin + for i := 0 to Length(str) do + begin + if not bOpen and (str[i] = open) then + begin openIndex := i; bOpen := true; end; - if bOpen and (str[i] = close) then begin + if bOpen and (str[i] = close) then + begin Result := CopyFromTo(str, openIndex + 1, i - 1); break; end; @@ -274,24 +287,21 @@ function GetTextIn(str: string; open, close: char): string; { Format file byte size } function FormatByteSize(const bytes: Int64): string; const - B = 1; //byte - KB = 1024 * B; //kilobyte - MB = 1024 * KB; //megabyte - GB = 1024 * MB; //gigabyte + B = 1; // byte + KB = 1024 * B; // kilobyte + MB = 1024 * KB; // megabyte + GB = 1024 * MB; // gigabyte begin if bytes > GB then - result := FormatFloat('#.## GB', bytes / GB) + Result := FormatFloat('#.## GB', bytes / GB) + else if bytes > MB then + Result := FormatFloat('#.## MB', bytes / MB) + else if bytes > KB then + Result := FormatFloat('#.## KB', bytes / KB) + else if bytes > 0 then + Result := FormatFloat('#.## bytes', bytes) else - if bytes > MB then - result := FormatFloat('#.## MB', bytes / MB) - else - if bytes > KB then - result := FormatFloat('#.## KB', bytes / KB) - else - if bytes > 0 then - result := FormatFloat('#.## bytes', bytes) - else - result := '0 bytes'; + Result := '0 bytes'; end; { Converts a TDateTime to a string, with 0 being the string 'Never' } @@ -299,7 +309,8 @@ function DateBuiltString(date: TDateTime): string; begin if date = 0 then Result := 'Never' - else begin + else + begin Result := DateTimeToStr(date); end; end; @@ -347,17 +358,18 @@ function TimeStr(date: TDateTime): string; Example usage: s := 'This is a sample string.'; if StrEndsWith(s, 'string.') then - AddMessage('It works!'); + AddMessage('It works!'); } -function StrEndsWith(s1, s2: string): boolean; +function StrEndsWith(s1, s2: string): Boolean; var - n1, n2: integer; + n1, n2: Integer; begin Result := false; n1 := Length(s1); n2 := Length(s2); - if n1 < n2 then exit; + if n1 < n2 then + exit; Result := (Copy(s1, n1 - n2 + 1, n2) = s2); end; @@ -394,32 +406,34 @@ function RemoveFromEnd(s1, s2: string): string; end; { Calculates the integer sum of all values in a TStringList to maxIndex } -function IntegerListSum(list: TStringList; maxIndex: integer): integer; +function IntegerListSum(list: TStringList; maxIndex: Integer): Integer; var i: Integer; begin Result := 0; for i := 0 to maxIndex do - Inc(result, StrToInt(list[i])); + Inc(Result, StrToInt(list[i])); end; { Inserts line breaks in string @s before @charCount has been exceeded } -function Wordwrap(s: string; charCount: integer): string; +function Wordwrap(s: string; charCount: Integer): string; var i, lastSpace, counter: Integer; begin counter := 0; lastSpace := 0; - for i := 1 to Length(s) - 1 do begin + for i := 1 to Length(s) - 1 do + begin Inc(counter); if (s[i] = ' ') or (s[i] = ',') then lastSpace := i; - if (s[i] = #13) or (s[i] = #10) - or (s[i + 1] = #13) or (s[i + 1] = #10) then begin + if (s[i] = #13) or (s[i] = #10) or (s[i + 1] = #13) or (s[i + 1] = #10) then + begin lastSpace := 0; counter := 0; end; - if (counter = charCount) and (lastSpace > 0) then begin + if (counter = charCount) and (lastSpace > 0) then + begin Insert(#13#10, s, lastSpace + 1); lastSpace := 0; counter := 0; @@ -438,13 +452,14 @@ function Wordwrap(s: string; charCount: integer): string; ShowMessage(ExtractPath(path, 1)); // 'C:\Program Files (x86)\' ShowMessage(ExtractPath(path, 2)); // 'C:\' } -function ExtractPath(path: string; levels: integer): string; +function ExtractPath(path: string; levels: Integer): string; var - i, n: integer; + i, n: Integer; begin n := 0; for i := Length(path) downto 1 do - if IsPathDelimiter(path, i) then begin + if IsPathDelimiter(path, i) then + begin if n = levels then break else @@ -454,13 +469,14 @@ function ExtractPath(path: string; levels: integer): string; end; { Checks to see if any mask in @sl matches the string @s } -function ContainsMatch(var sl: TStringList; const s: string): boolean; +function ContainsMatch(var sl: TStringList; const s: string): Boolean; var i: Integer; begin Result := false; for i := 0 to Pred(sl.Count) do - if MatchesMask(s, sl[i]) then begin + if MatchesMask(s, sl[i]) then + begin Result := true; break; end; @@ -471,20 +487,21 @@ procedure DeleteMatchingItems(item: string; var sl: TStringList); var i: Integer; begin - for i := Pred(sl.Count) downto 0 do begin + for i := Pred(sl.Count) downto 0 do + begin if sl[i] = item then sl.Delete(i); end; end; { Returns true if the string is an http:// or https:// url } -function IsURL(s: string): boolean; +function IsURL(s: string): Boolean; begin Result := (Pos('http://', s) = 1) or (Pos('https://', s) = 1); end; { Returns true if @fn is . or .. } -function IsDotFile(fn: string): boolean; +function IsDotFile(fn: string): Boolean; begin Result := (fn = '.') or (fn = '..'); end; @@ -509,17 +526,19 @@ function ApplyTemplate(const template: string; var map: TStringList): string; name, value: string; begin Result := template; - for i := 0 to Pred(map.Count) do begin + for i := 0 to Pred(map.Count) do + begin name := map.Names[i]; value := map.ValueFromIndex[i]; - Result := StringReplace(Result, openTag + name + closeTag, value, [rfReplaceAll]); + Result := StringReplace(Result, openTag + name + closeTag, value, + [rfReplaceAll]); end; end; -function VersionCompare(v1, v2: string): boolean; +function VersionCompare(v1, v2: string): Boolean; var sl1, sl2: TStringList; - i, c1, c2: integer; + i, c1, c2: Integer; begin Result := false; @@ -533,14 +552,17 @@ function VersionCompare(v1, v2: string): boolean; // look through each version clause and perform comparisons i := 0; - while (i < sl1.Count) and (i < sl2.Count) do begin + while (i < sl1.Count) and (i < sl2.Count) do + begin c1 := StrToInt(sl1[i]); c2 := StrToInt(sl2[i]); - if (c1 < c2) then begin + if (c1 < c2) then + begin Result := true; break; end - else if (c1 > c2) then begin + else if (c1 > c2) then + begin Result := false; break; end; @@ -554,11 +576,12 @@ function VersionCompare(v1, v2: string): boolean; procedure TryToFree(obj: TObject); begin - if Assigned(obj) then try - obj.Free; - except - on x: Exception do // nothing - end; + if Assigned(obj) then + try + obj.Free; + except + on x: Exception do // nothing + end; end; procedure FreeList(var lst: TList); @@ -566,15 +589,15 @@ procedure FreeList(var lst: TList); i: Integer; obj: TObject; begin - for i := Pred(lst.Count) downto 0 do begin + for i := Pred(lst.Count) downto 0 do + begin obj := TObject(lst[i]); TryToFree(obj); end; lst.Free; end; - -{******************************************************************************} +{ ****************************************************************************** } { Windows API functions Set of functions that help deal with the Windows File System. @@ -598,7 +621,7 @@ procedure FreeList(var lst: TList); - FileVersion - DeleteDirectory } -{******************************************************************************} +{ ****************************************************************************** } { ForceForeground: @@ -606,8 +629,10 @@ procedure FreeList(var lst: TList); } procedure ForceForeground(hWnd: THandle); begin - SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOACTIVATE or SWP_NOMOVE); - SetWindowPos(hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOACTIVATE or SWP_NOMOVE); + SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOACTIVATE or + SWP_NOMOVE); + SetWindowPos(hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOACTIVATE or + SWP_NOMOVE); end; { @@ -618,7 +643,7 @@ procedure ForceForeground(hWnd: THandle); function GetDriveList: TStringDynArray; var - Buff: array[0..128] of Char; + Buff: array [0 .. 128] of char; ptr: PChar; Idx: Integer; begin @@ -644,7 +669,7 @@ function GetDriveList: TStringDynArray; Converts a drive letter into the integer drive # required by DiskSize(). } -function DOSDrive( const sDrive: String ): Integer; +function DOSDrive(const sDrive: String): Integer; begin if (Length(sDrive) < 1) then Result := -1 @@ -680,28 +705,31 @@ function TryRegistryKeys(var keys: TStringList): string; path, name: string; begin Result := ''; - with TRegistry.Create do try - RootKey := HKEY_LOCAL_MACHINE; - - // try all keys - for i := 0 to Pred(keys.Count) do begin - path := ExtractFilePath(keys[i]); - name := ExtractFileName(keys[i]); - if OpenKeyReadOnly(path) then begin - Result := ReadString(name); - break; + with TRegistry.Create do + try + RootKey := HKEY_LOCAL_MACHINE; + + // try all keys + for i := 0 to Pred(keys.Count) do + begin + path := ExtractFilePath(keys[i]); + name := ExtractFileName(keys[i]); + if OpenKeyReadOnly(path) then + begin + Result := ReadString(name); + break; + end; end; + finally + Free; end; - finally - Free; - end; end; { DirectoryValid: Returns true if the input directory path is valid. } -function DirectoryValid(dir: string): boolean; +function DirectoryValid(dir: string): Boolean; begin Result := false; if (dir = '') then @@ -734,10 +762,10 @@ function UpDirectory(sPath: string): string; FileNameValid: Returns true if the input filename is valid. } -function FileNameValid(filename: string): boolean; +function FileNameValid(filename: string): Boolean; begin - Result := (Length(Trim(filename)) > 0) and - TPath.HasValidFileNameChars(filename, false); + Result := (Length(Trim(filename)) > 0) and TPath.HasValidFileNameChars + (filename, false); end; { @@ -746,25 +774,26 @@ function FileNameValid(filename: string): boolean; } procedure ExecNewProcess(ProgramName: string; synchronous: Boolean); var - StartInfo : TStartupInfo; - ProcInfo : TProcessInformation; - CreateOK : Boolean; + StartInfo: TStartupInfo; + ProcInfo: TProcessInformation; + CreateOK: Boolean; begin { fill with known state } FillChar(StartInfo, SizeOf(TStartupInfo), #0); FillChar(ProcInfo, SizeOf(TProcessInformation), #0); StartInfo.cb := SizeOf(TStartupInfo); - CreateOK := CreateProcess(PChar(ProgramName), nil, nil, nil,False, - CREATE_NEW_PROCESS_GROUP+NORMAL_PRIORITY_CLASS, - nil, nil, StartInfo, ProcInfo); + CreateOK := CreateProcess(PChar(ProgramName), nil, nil, nil, false, + CREATE_NEW_PROCESS_GROUP + NORMAL_PRIORITY_CLASS, nil, nil, StartInfo, + ProcInfo); // check if successful - if CreateOK then begin + if CreateOK then + begin if synchronous then WaitForSingleObject(ProcInfo.hProcess, INFINITE); end else - ShowMessage('Unable to run '+ProgramName); + ShowMessage('Unable to run ' + ProgramName); // close handles CloseHandle(ProcInfo.hProcess); @@ -789,9 +818,9 @@ procedure BrowseForFile(var ed: TEdit; filter, initDir: string); else openDialog.InitialDir := initDir; - openDialog.Filter := filter; + openDialog.filter := filter; if openDialog.Execute then - ed.Text := openDialog.FileName; + ed.Text := openDialog.filename; end; { @@ -820,10 +849,10 @@ procedure BrowseForFolder(var ed: TEdit; initDir: string); GetCSIDLShellFolder: Gets a folder by its integer CSID. } -function GetCSIDLShellFolder(CSIDLFolder: integer): string; +function GetCSIDLShellFolder(CSIDLFolder: Integer): string; begin SetLength(Result, MAX_PATH); - SHGetSpecialFolderPath(0, PChar(Result), CSIDLFolder, True); + SHGetSpecialFolderPath(0, PChar(Result), CSIDLFolder, true); SetLength(Result, StrLen(PChar(Result))); if (Result <> '') then Result := IncludeTrailingBackslash(Result); @@ -837,27 +866,29 @@ function GetFileSize(const aFilename: String): Int64; var info: TWin32FileAttributeData; begin - result := -1; + Result := -1; - if NOT GetFileAttributesEx(PWideChar(aFileName), GetFileExInfoStandard, @info) then - EXIT; + if NOT GetFileAttributesEx(PWideChar(aFilename), GetFileExInfoStandard, @info) + then + exit; - result := Int64(info.nFileSizeLow) or Int64(info.nFileSizeHigh shl 32); + Result := Int64(info.nFileSizeLow) or Int64(info.nFileSizeHigh shl 32); end; { GetLastModified: Gets the last time a file was modified. } -function GetLastModified(const aFileName: String): TDateTime; +function GetLastModified(const aFilename: String): TDateTime; var info: TWin32FileAttributeData; FileTime: TFileTime; LocalTime, SystemTime: TSystemTime; begin - result := 0; + Result := 0; // exit if can't get attributes - if not GetFileAttributesEx(PWideChar(aFileName), GetFileExInfoStandard, @info) then + if not GetFileAttributesEx(PWideChar(aFilename), GetFileExInfoStandard, @info) + then exit; // get last modified @@ -884,14 +915,17 @@ function SearchPathsForFile(sPaths, sFileName: string): string; begin slPaths := TStringList.Create; try - while (Pos(';', sPaths) > 0) do begin + while (Pos(';', sPaths) > 0) do + begin slPaths.Add(Copy(sPaths, 1, Pos(';', sPaths) - 1)); sPaths := Copy(sPaths, Pos(';', sPaths) + 1, Length(sPaths)); end; - for i := 0 to slPaths.Count - 1 do begin - if FindFirst(slPaths[i] + '\*', faDirectory, info) = 0 then begin + for i := 0 to slPaths.Count - 1 do + begin + if FindFirst(slPaths[i] + '\*', faDirectory, info) = 0 then + begin repeat - Result := FileSearch(sFileName, slPaths[i] + '\' + info.Name); + Result := FileSearch(sFileName, slPaths[i] + '\' + info.name); if (Result <> '') then break; until FindNext(info) <> 0; @@ -910,12 +944,14 @@ function SearchPathsForFile(sPaths, sFileName: string): string; MultFileSearch: Wraps around RecursiveFileSearch, allowing the searching of multiple paths. } -function MultFileSearch(paths, filenames, ignore: array of string; maxDepth: integer): string; +function MultFileSearch(paths, filenames, ignore: array of string; + maxDepth: Integer): string; var i: Integer; path: string; begin - for i := Low(paths) to High(paths) do begin + for i := Low(paths) to High(paths) do + begin path := RecursiveFileSearch(paths[i], filenames, ignore, maxDepth); if path <> '' then break; @@ -933,37 +969,43 @@ function MultFileSearch(paths, filenames, ignore: array of string; maxDepth: int AddMessage(p); } function RecursiveFileSearch(aPath: string; filenames, ignore: array of string; - maxDepth: integer): string; + maxDepth: Integer): string; var - skip: boolean; - i: integer; + skip: Boolean; + i: Integer; info: TSearchRec; begin Result := ''; aPath := AppendIfMissing(aPath, PathDelim); - if Result <> '' then exit; + if Result <> '' then + exit; // exit if no files in path if FindFirst(aPath + '*', faAnyFile, info) <> 0 then exit; // else loop through all files in path repeat - if IsDotFile(info.Name) then + if IsDotFile(info.name) then continue; // skip . and .. skip := false; - for i := Low(ignore) to High(ignore) do begin - skip := Lowercase(info.Name) = ignore[i]; + for i := Low(ignore) to High(ignore) do + begin + skip := LowerCase(info.name) = ignore[i]; if skip then break; end; - if not skip then begin - if ((info.attr and faDirectory) = faDirectory) and (maxDepth > 0) then begin - Result := RecursiveFileSearch(aPath+info.Name, filenames, ignore, maxDepth - 1); + if not skip then + begin + if ((info.attr and faDirectory) = faDirectory) and (maxDepth > 0) then + begin + Result := RecursiveFileSearch(aPath + info.name, filenames, ignore, + maxDepth - 1); end - else if MatchStr(info.Name, filenames) then - Result := aPath + info.Name; + else if MatchStr(info.name, filenames) then + Result := aPath + info.name; end; - if (Result <> '') then break; + if (Result <> '') then + break; until FindNext(info) <> 0; FindClose(info); end; @@ -980,7 +1022,7 @@ function RecursiveFileSearch(aPath: string; filenames, ignore: array of string; procedure CopyDirectory(src, dst: string; fIgnore, dIgnore: TStringList); var info: TSearchRec; - isDirectory: boolean; + isDirectory: Boolean; begin src := AppendIfMissing(src, PathDelim); dst := AppendIfMissing(dst, PathDelim); @@ -989,23 +1031,23 @@ procedure CopyDirectory(src, dst: string; fIgnore, dIgnore: TStringList); if (FindFirst(src + '*', faAnyFile, info) <> 0) then exit; repeat - isDirectory := (info.Attr and faDirectory = faDirectory); + isDirectory := (info.attr and faDirectory = faDirectory); // skip . and .. - if (info.Name = '.') or (info.Name = '..') then + if (info.name = '.') or (info.name = '..') then continue; // skip if ignored - if isDirectory and ContainsMatch(dIgnore, info.Name) then + if isDirectory and ContainsMatch(dIgnore, info.name) then continue - else if ContainsMatch(fIgnore, info.Name) then + else if ContainsMatch(fIgnore, info.name) then continue; // copy the file or recurse ForceDirectories(dst); if isDirectory then - CopyDirectory(src+info.Name, dst+info.Name, fIgnore, dIgnore) + CopyDirectory(src + info.name, dst + info.name, fIgnore, dIgnore) else - CopyFile(PChar(src+info.Name), PChar(dst+info.Name), false); + CopyFile(PChar(src + info.name), PChar(dst + info.name), false); until FindNext(info) <> 0; FindClose(info); @@ -1027,7 +1069,7 @@ procedure CopyDirectory(src, dst: string; fIgnore, dIgnore: TStringList); procedure GetFilesList(path: string; var fIgnore, dIgnore, list: TStringList); var info: TSearchRec; - isDirectory: boolean; + isDirectory: Boolean; begin path := AppendIfMissing(path, PathDelim); @@ -1035,24 +1077,25 @@ procedure GetFilesList(path: string; var fIgnore, dIgnore, list: TStringList); if (FindFirst(path + '*', faAnyFile, info) <> 0) then exit; repeat - isDirectory := (info.Attr and faDirectory = faDirectory); + isDirectory := (info.attr and faDirectory = faDirectory); // skip . and .. - if (info.Name = '.') or (info.Name = '..') then + if (info.name = '.') or (info.name = '..') then continue; // skip if ignored - if isDirectory then begin - if ContainsMatch(dIgnore, info.Name) then + if isDirectory then + begin + if ContainsMatch(dIgnore, info.name) then continue; end - else if ContainsMatch(fIgnore, info.Name) then + else if ContainsMatch(fIgnore, info.name) then continue; // copy the file or recurse if isDirectory then - GetFilesList(path + info.Name, fIgnore, dIgnore, list) + GetFilesList(path + info.name, fIgnore, dIgnore, list) else - list.Add(path + info.Name); + list.Add(path + info.name); until FindNext(info) <> 0; FindClose(info); @@ -1066,7 +1109,8 @@ procedure CopyFiles(src, dst: string; var list: TStringList); begin src := AppendIfMissing(src, PathDelim); dst := AppendIfMissing(dst, PathDelim); - for i := 0 to Pred(list.Count) do begin + for i := 0 to Pred(list.Count) do + begin srcFile := list[i]; dstFile := StringReplace(srcFile, src, dst, []); ForceDirectories(ExtractFilePath(dstFile)); @@ -1091,12 +1135,13 @@ function GetVersionMem: string; rs.Free; end; m.Position := 0; - if VerQueryValue(m.Memory, '\', Pointer(verblock), verlen) then begin - VersionMS := verblock.dwFileVersionMS; - VersionLS := verblock.dwFileVersionLS; + if VerQueryValue(m.Memory, '\', Pointer(verblock), verlen) then + begin + versionMS := verblock.dwFileVersionMS; + versionLS := verblock.dwFileVersionLS; Result := Format('%s.%s.%s.%s', [IntToStr(versionMS shr 16), - IntToStr(versionMS and $FFFF), IntToStr(VersionLS shr 16), - IntToStr(VersionLS and $FFFF)]); + IntToStr(versionMS and $FFFF), IntToStr(versionLS shr 16), + IntToStr(versionLS and $FFFF)]); end; finally m.Free; @@ -1104,26 +1149,25 @@ function GetVersionMem: string; end; { Get program version from disk } -function FileVersion(const FileName: string): String; +function FileVersion(const filename: string): String; var - VerInfoSize: Cardinal; - VerValueSize: Cardinal; - Dummy: Cardinal; + VerInfoSize: cardinal; + VerValueSize: cardinal; + Dummy: cardinal; PVerInfo: Pointer; - PVerValue: PVSFixedFileInfo; + PVerValue: PVSFIXEDFILEINFO; begin Result := ''; - VerInfoSize := GetFileVersionInfoSize(PChar(FileName), Dummy); + VerInfoSize := GetFileVersionInfoSize(PChar(filename), Dummy); GetMem(PVerInfo, VerInfoSize); try - if GetFileVersionInfo(PChar(FileName), 0, VerInfoSize, PVerInfo) then + if GetFileVersionInfo(PChar(filename), 0, VerInfoSize, PVerInfo) then if VerQueryValue(PVerInfo, '\', Pointer(PVerValue), VerValueSize) then with PVerValue^ do - Result := Format('%d.%d.%d.%d', [ - HiWord(dwFileVersionMS), //Major - LoWord(dwFileVersionMS), //Minor - HiWord(dwFileVersionLS), //Release - LoWord(dwFileVersionLS)]); //Build + Result := Format('%d.%d.%d.%d', [HiWord(dwFileVersionMS), // Major + LoWord(dwFileVersionMS), // Minor + HiWord(dwFileVersionLS), // Release + LoWord(dwFileVersionLS)]); // Build finally FreeMem(PVerInfo, VerInfoSize); end; @@ -1135,7 +1179,8 @@ function DeleteToRecycleBin(const path: string; Confirm: Boolean): Boolean; sh: TSHFileOpStruct; begin FillChar(sh, SizeOf(sh), 0); - with sh do begin + with sh do + begin Wnd := 0; wFunc := FO_DELETE; pFrom := PChar(path + #0); @@ -1222,14 +1267,13 @@ procedure PerformFileSystemTests(sBasePath: string); end; end; - -{******************************************************************************} +{ ****************************************************************************** } { GUI Helper Functions - ListView_CorrectWidth - ListView_FindNextMatch - ListView_HandleMatch } -{******************************************************************************} +{ ****************************************************************************** } procedure StringGrid_CorrectWidth(var sg: TStringGrid); var @@ -1253,7 +1297,8 @@ procedure ListView_CorrectWidth(var lv: TListView); w := lv.ClientWidth; // loop through columns keeping track of remaining width - for i := 0 to Pred(lv.Columns.Count) do begin + for i := 0 to Pred(lv.Columns.Count) do + begin col := lv.Columns[i]; if col.AutoSize then AutoSizedColumns.Add(col) @@ -1262,7 +1307,8 @@ procedure ListView_CorrectWidth(var lv: TListView); end; // set auotsized columns to fit client width - for i := 0 to Pred(AutoSizedColumns.Count) do begin + for i := 0 to Pred(AutoSizedColumns.Count) do + begin col := TListColumn(AutoSizedColumns[i]); col.Width := w div AutoSizedColumns.Count; end; @@ -1288,19 +1334,21 @@ function ListView_NextMatch(ListView: TListView; sSearch: string; // is an item selected if Assigned(ListView.Selected) then iStart := ListView.Selected.Index - // Else start at 0, the first item + // Else start at 0, the first item else iStart := 0; // Loop through items looking for a match - for i := iStart to Pred(ListView.Items.Count) do begin + for i := iStart to Pred(ListView.Items.Count) do + begin ListItem := ListView.Items[i]; if iIndex = 0 then sCaption := ListItem.Caption else sCaption := ListItem.SubItems[iIndex - 1]; sCompare := Copy(sCaption, 1, Length(sSearch)); - if SameText(sSearch, sCompare) then begin + if SameText(sSearch, sCompare) then + begin Result := i; break; end; @@ -1322,6 +1370,7 @@ procedure ListView_HandleMatch(ListView: TListView; iFoundIndex: Integer; end; initialization + begin bAllowHelp := false; enFormatSettings := TFormatSettings.Create('en-us'); @@ -1329,4 +1378,4 @@ initialization enFormatSettings.ThousandSeparator := ','; end; -end. \ No newline at end of file +end. diff --git a/lib/mte/mteLogger.pas b/lib/mte/mteLogger.pas old mode 100644 new mode 100755 index c99b0d3..9a0cff1 --- a/lib/mte/mteLogger.pas +++ b/lib/mte/mteLogger.pas @@ -9,26 +9,29 @@ interface TLogger = class private - FLogEvent : TLogEvent; + FLogEvent: TLogEvent; public procedure Write(const group, &label, text: string); property OnLogEvent: TLogEvent read FLogEvent write FLogEvent; end; -var Logger : TLogger; +var + Logger: TLogger; implementation procedure TLogger.Write(const group, &label, text: string); begin - if Assigned(FLogEvent) then - FLogEvent(group, &label, text); + if Assigned(FLogEvent) then + FLogEvent(group, &label, text); end; initialization - Logger := TLogger.Create; + +Logger := TLogger.Create; finalization - FreeAndNil(Logger); + +FreeAndNil(Logger); end. diff --git a/lib/mte/mteLogging.pas b/lib/mte/mteLogging.pas old mode 100644 new mode 100755 index 30f1e80..7aa9613 --- a/lib/mte/mteLogging.pas +++ b/lib/mte/mteLogging.pas @@ -25,7 +25,8 @@ TFilter = class(TObject) constructor Create(group: string; enabled: boolean); Overload; constructor Create(group, &label: string; enabled: boolean); Overload; end; - TLogMessage = class (TObject) + + TLogMessage = class(TObject) public time: string; appTime: string; @@ -36,11 +37,11 @@ TLogMessage = class (TObject) end; { Log methods } - procedure RebuildLog; - procedure SaveLog(var Log: TList); - function MessageEnabled(msg: TLogMessage): boolean; - procedure ShowProgressForm(parent: TForm; var pf: TProgressForm; - sCaption, sLogSubPath: string); +procedure RebuildLog; +procedure SaveLog(var Log: TList); +function MessageEnabled(msg: TLogMessage): boolean; +procedure ShowProgressForm(parent: TForm; var pf: TProgressForm; + sCaption, sLogSubPath: string); var BaseLog, Log, LabelFilters, GroupFilters: TList; @@ -74,7 +75,7 @@ constructor TLogMessage.Create(time, appTime, group, &label, text: string); self.text := text; end; -{******************************************************************************} +{ ****************************************************************************** } { Log methods Set of methods for logging @@ -84,7 +85,7 @@ constructor TLogMessage.Create(time, appTime, group, &label, text: string); - SaveLog - MessageGroupEnabled } -{******************************************************************************} +{ ****************************************************************************** } procedure RebuildLog; var @@ -92,7 +93,8 @@ procedure RebuildLog; msg: TLogMessage; begin Log.Clear; - for i := 0 to Pred(BaseLog.Count) do begin + for i := 0 to Pred(BaseLog.Count) do + begin msg := TLogMessage(BaseLog[i]); if MessageEnabled(msg) then Log.Add(msg); @@ -107,13 +109,15 @@ procedure SaveLog(var Log: TList); fdt: string; begin sl := TStringList.Create; - for i := 0 to Pred(Log.Count) do begin + for i := 0 to Pred(Log.Count) do + begin msg := TLogMessage(Log[i]); - sl.Add(Format('[%s] (%s) %s: %s', [msg.time, msg.group, msg.&label, msg.text])); + sl.Add(Format('[%s] (%s) %s: %s', [msg.time, msg.group, msg.&label, + msg.text])); end; fdt := FormatDateTime('mmddyy_hhnnss', TDateTime(Now)); - ForceDirectories(LogPath+'main\'); - sl.SaveToFile(LogPath+'main\log_'+fdt+'.txt'); + ForceDirectories(LogPath + 'main\'); + sl.SaveToFile(LogPath + 'main\log_' + fdt + '.txt'); sl.Free; end; @@ -123,9 +127,11 @@ function GetGroupFilter(msg: TLogMessage): TFilter; filter: TFilter; begin Result := nil; - for i := 0 to Pred(GroupFilters.Count) do begin + for i := 0 to Pred(GroupFilters.Count) do + begin filter := TFilter(GroupFilters[i]); - if filter.group = msg.group then begin + if filter.group = msg.group then + begin Result := filter; exit; end; @@ -138,9 +144,11 @@ function GetLabelFilter(msg: TLogMessage): TFilter; filter: TFilter; begin Result := nil; - for i := 0 to Pred(LabelFilters.Count) do begin + for i := 0 to Pred(LabelFilters.Count) do + begin filter := TFilter(LabelFilters[i]); - if (filter.&label = msg.&label) and (filter.group = msg.group) then begin + if (filter.&label = msg.&label) and (filter.group = msg.group) then + begin Result := filter; exit; end; @@ -167,11 +175,12 @@ procedure ShowProgressForm(parent: TForm; var pf: TProgressForm; pf.pfLogPath := LogPath + sLogSubPath + '\'; pf.PopupParent := parent; pf.Caption := sCaption; - pf.SetMaxProgress(IntegerListSum(timeCosts, Pred(timeCosts.Count))); + pf.SetMaxProgress(IntegerListSum(TimeCosts, Pred(TimeCosts.Count))); pf.Show; end; initialization + begin BaseLog := TList.Create; Log := TList.Create; @@ -180,6 +189,7 @@ initialization end; finalization + begin FreeList(BaseLog); Log.Free; diff --git a/lib/mte/mtePluginSelectionForm.dfm b/lib/mte/mtePluginSelectionForm.dfm old mode 100644 new mode 100755 index 40e6315..e121693 --- a/lib/mte/mtePluginSelectionForm.dfm +++ b/lib/mte/mtePluginSelectionForm.dfm @@ -127,7 +127,7 @@ object PluginSelectionForm: TPluginSelectionForm Left = 136 Top = 24 Bitmap = { - 494C010103003400600011001100FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 494C010103003400040011001100FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 0000000000003600000028000000440000001100000001002000000000001012 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 diff --git a/lib/mte/mtePluginSelectionForm.pas b/lib/mte/mtePluginSelectionForm.pas old mode 100644 new mode 100755 index 424da27..0819520 --- a/lib/mte/mtePluginSelectionForm.pas +++ b/lib/mte/mtePluginSelectionForm.pas @@ -4,7 +4,7 @@ interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, - Dialogs, StdCtrls, CommCtrl, Menus, ComCtrls, ImgList; + Dialogs, StdCtrls, CommCtrl, Menus, ComCtrls, ImgList, System.ImageList; type TPluginListItem = class(TObject) @@ -14,8 +14,10 @@ TPluginListItem = class(TObject) constructor Create; virtual; destructor Destroy; override; end; + TStringFunction = function(s: string): string of object; TStringListProcedure = procedure(fn: string; var sl: TStringList) of object; + TPluginSelectionForm = class(TForm) lvPlugins: TListView; btnCancel: TButton; @@ -44,13 +46,13 @@ TPluginSelectionForm = class(TForm) procedure lvPluginsChange(Sender: TObject; Item: TListItem; Change: TItemChange); procedure lvPluginsKeyPress(Sender: TObject; var Key: Char); - procedure DrawCheckbox(aCanvas: TCanvas; var x, y: Integer; state: Integer); + procedure DrawCheckbox(aCanvas: TCanvas; var X, Y: Integer; state: Integer); procedure DrawSubItems(ListView: TListView; var R: TRect; Item: TListItem); procedure DrawItem(ListView: TListView; var R: TRect; Item: TListItem); procedure lvPluginsDrawItem(Sender: TCustomListView; Item: TListItem; - Rect: TRect; State: TOwnerDrawState); - procedure lvPluginsMouseMove(Sender: TObject; Shift: TShiftState; X, - Y: Integer); + Rect: TRect; state: TOwnerDrawState); + procedure lvPluginsMouseMove(Sender: TObject; Shift: TShiftState; + X, Y: Integer); function GetMasterStatus(filename: string): Integer; procedure lvPluginsData(Sender: TObject; Item: TListItem); procedure FormClose(Sender: TObject; var Action: TCloseAction); @@ -119,7 +121,8 @@ procedure TPluginSelectionForm.btnOKClick(Sender: TObject); // clear checked plugins list slCheckedPlugins.Clear; // add checked plugins to slCheckedPlugins - for i := 0 to Pred(lvPlugins.Items.Count) do begin + for i := 0 to Pred(lvPlugins.Items.Count) do + begin ListItem := lvPlugins.Items[i]; if ListItem.StateIndex = cChecked then slCheckedPlugins.Add(ListItem.Caption); @@ -133,7 +136,7 @@ procedure TPluginSelectionForm.LoadFields(aListItem: TPluginListItem; i: Integer; begin // add plugin filename - aListItem.fields.Add(sPlugin); + aListItem.Fields.Add(sPlugin); // get comma separated plugin info in a TStringList sl := TStringList.Create; @@ -158,7 +161,8 @@ procedure TPluginSelectionForm.UpdateDisabled; slDisabled.Clear; sl := TStringList.Create; try - for i := 0 to Pred(lvPlugins.Items.Count) do begin + for i := 0 to Pred(lvPlugins.Items.Count) do + begin ListItem := TPluginListItem(ListItems[i]); filename := ListItem.Fields[0]; // if unchecked, skip @@ -166,7 +170,8 @@ procedure TPluginSelectionForm.UpdateDisabled; continue; // if checked, make sure its masters are checked GetPluginMasters(filename, sl); - for j := 0 to Pred(sl.Count) do begin + for j := 0 to Pred(sl.Count) do + begin index := slAllPlugins.IndexOf(sl[j]); // if master is not found, continue if (index = -1) then @@ -190,8 +195,10 @@ procedure TPluginSelectionForm.UpdateDisabled; procedure ToggleState(ListItem: TPluginListItem); begin case ListItem.StateIndex of - cChecked: ListItem.StateIndex := cUnChecked; - cUnChecked: ListItem.StateIndex := cChecked; + cChecked: + ListItem.StateIndex := cUnChecked; + cUnChecked: + ListItem.StateIndex := cChecked; end; end; @@ -204,10 +211,12 @@ procedure TPluginSelectionForm.lvPluginsChange(Sender: TObject; Item: TListItem; // update slMasters and slDependencies slMasters.Clear; slDependencies.Clear; - for i := 0 to Pred(lvPlugins.Items.Count) do begin + for i := 0 to Pred(lvPlugins.Items.Count) do + begin filename := TPluginListItem(ListItems[i]).Fields[0]; with lvPlugins.Items[i] do - if Selected then begin + if Selected then + begin GetPluginMasters(filename, slMasters); GetPluginDependencies(filename, slDependencies); end; @@ -223,14 +232,16 @@ function TPluginSelectionForm.GetMasterStatus(filename: string): Integer; begin // if file has masters that are missing from slAllPlugins, // return mstMissing - if slMissing.IndexOf(filename) > -1 then begin + if slMissing.IndexOf(filename) > -1 then + begin Result := mstMissing; exit; end; // if file has masters that are disabled, // return mstDisabled - if slDisabled.IndexOf(filename) > -1 then begin + if slDisabled.IndexOf(filename) > -1 then + begin Result := mstDisabled; exit; end; @@ -248,36 +259,42 @@ procedure TPluginSelectionForm.lvPluginsData(Sender: TObject; Item: TListItem); i: Integer; begin // get item data - aListItem := ListItems[Item.Index]; + aListItem := ListItems[Item.index]; Item.Caption := aListItem.Fields[0]; Item.StateIndex := aListItem.StateIndex; // get subitems - for i := 1 to Pred(aListItem.fields.Count) do - Item.SubItems.Add(aListItem.fields[i]); + for i := 1 to Pred(aListItem.Fields.Count) do + Item.SubItems.Add(aListItem.Fields[i]); // set font color based on master status of item lvPlugins.Canvas.Font.Style := [fsBold]; MasterStatus := GetMasterStatus(Item.Caption); case MasterStatus of - mstNone: begin - lvPlugins.Canvas.Font.Style := []; - lvPlugins.Canvas.Font.Color := clBlack; - end; - mstMaster: lvPlugins.Canvas.Font.Color := clGreen; - mstDependency: lvPlugins.Canvas.Font.Color := clMaroon; - mstBoth: lvPlugins.Canvas.Font.Color := clPurple; - mstMissing: begin - lvPlugins.Canvas.Font.Style := [fsItalic]; - lvPlugins.Canvas.Font.Color := clGray; - end; - mstDisabled: begin - lvPlugins.Canvas.Font.Style := [fsItalic]; - lvPlugins.Canvas.Font.Color := clRed; - end; + mstNone: + begin + lvPlugins.Canvas.Font.Style := []; + lvPlugins.Canvas.Font.Color := clBlack; + end; + mstMaster: + lvPlugins.Canvas.Font.Color := clGreen; + mstDependency: + lvPlugins.Canvas.Font.Color := clMaroon; + mstBoth: + lvPlugins.Canvas.Font.Color := clPurple; + mstMissing: + begin + lvPlugins.Canvas.Font.Style := [fsItalic]; + lvPlugins.Canvas.Font.Color := clGray; + end; + mstDisabled: + begin + lvPlugins.Canvas.Font.Style := [fsItalic]; + lvPlugins.Canvas.Font.Color := clRed; + end; end; end; -procedure TPluginSelectionForm.DrawCheckbox(aCanvas: TCanvas; var x, y: Integer; +procedure TPluginSelectionForm.DrawCheckbox(aCanvas: TCanvas; var X, Y: Integer; state: Integer); var icon: TIcon; @@ -286,8 +303,8 @@ procedure TPluginSelectionForm.DrawCheckbox(aCanvas: TCanvas; var x, y: Integer; exit; icon := TIcon.Create; StateImages.GetIcon(state, icon); - aCanvas.Draw(x, y, icon); - Inc(x, 17); + aCanvas.Draw(X, Y, icon); + Inc(X, 17); icon.Free; end; @@ -296,7 +313,8 @@ procedure TPluginSelectionForm.DrawSubItems(ListView: TListView; var R: TRect; var i: Integer; begin - for i := 0 to Pred(Item.SubItems.Count) do begin + for i := 0 to Pred(Item.SubItems.Count) do + begin // redefine rect to draw in the space for the column // use trailing padding to keep items lined up on columns R.Left := R.Right; @@ -330,13 +348,14 @@ procedure TPluginSelectionForm.DrawItem(ListView: TListView; var R: TRect; end; procedure TPluginSelectionForm.lvPluginsDrawItem(Sender: TCustomListView; - Item: TListItem; Rect: TRect; State: TOwnerDrawState); + Item: TListItem; Rect: TRect; state: TOwnerDrawState); var ListView: TListView; begin // draw background color ListView := TListView(Sender); - if Item.Selected then begin + if Item.Selected then + begin ListView.Canvas.Brush.Color := $FFEEDD; ListView.Canvas.FillRect(Rect); end; @@ -362,21 +381,26 @@ procedure TPluginSelectionForm.lvPluginsKeyPress(Sender: TObject; // If we are within the buffer delay append the key to a // temporary buffer and search for next item matching the // buffer in the list view items. - if fBufferDiff < fBufferDelay then begin + if fBufferDiff < fBufferDelay then + begin fLastBufferTime := Now; sTempBuffer := sBuffer + Key; iFoundIndex := ListView_NextMatch(lvPlugins, sTempBuffer, 0); // If we found a match, handle it - if iFoundIndex > -1 then begin + if iFoundIndex > -1 then + begin ListView_HandleMatch(lvPlugins, iFoundIndex, sBuffer, sTempBuffer); Key := #0; end; end - else begin + else + begin // Allow user to use space to toggle checkbox state // for all selected items - if Key = ' ' then begin - for i := 0 to Pred(lvPlugins.Items.Count) do begin + if Key = ' ' then + begin + for i := 0 to Pred(lvPlugins.Items.Count) do + begin ListItem := lvPlugins.Items[i]; if ListItem.Selected then if slMissing.IndexOf(slAllPlugins[i]) = -1 then @@ -395,16 +419,17 @@ procedure TPluginSelectionForm.lvPluginsKeyPress(Sender: TObject; lvPlugins.ClearSelection; iFoundIndex := ListView_NextMatch(lvPlugins, sTempBuffer, 0); // If we found a match, handle it - if iFoundIndex > -1 then begin + if iFoundIndex > -1 then + begin ListView_HandleMatch(lvPlugins, iFoundIndex, sBuffer, sTempBuffer); Key := #0; end; end; end; -function OnStateIcon(X, Y: Integer): Boolean; +function OnStateIcon(X, Y: Integer): boolean; begin - Result := (x >= 2) and (x <= 14); + Result := (X >= 2) and (X <= 14); end; procedure TPluginSelectionForm.lvPluginsMouseDown(Sender: TObject; @@ -414,9 +439,10 @@ procedure TPluginSelectionForm.lvPluginsMouseDown(Sender: TObject; begin // toggle checkbox state ListItem := lvPlugins.GetItemAt(X, Y); - if OnStateIcon(X, Y) then begin - if slMissing.IndexOf(slAllPlugins[ListItem.Index]) = -1 then - ToggleState(TPluginListItem(ListItems[ListItem.Index])); + if OnStateIcon(X, Y) then + begin + if slMissing.IndexOf(slAllPlugins[ListItem.index]) = -1 then + ToggleState(TPluginListItem(ListItems[ListItem.index])); // repaint to show updated checkbox state UpdateDisabled; @@ -428,7 +454,7 @@ procedure TPluginSelectionForm.lvPluginsMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var pt: TPoint; - li : TListItem; + li: TListItem; hint, str: string; slTempMasters, slTempReq: TStringList; i: Integer; @@ -442,7 +468,8 @@ procedure TPluginSelectionForm.lvPluginsMouseMove(Sender: TObject; slTempMasters := TStringList.Create; try GetPluginMasters(li.Caption, slTempMasters); - if slMissing.IndexOf(li.Caption) > -1 then begin + if slMissing.IndexOf(li.Caption) > -1 then + begin str := ''; for i := 0 to Pred(slTempMasters.Count) do if slAllPlugins.IndexOf(slTempMasters[i]) = -1 then @@ -469,10 +496,11 @@ procedure TPluginSelectionForm.lvPluginsMouseMove(Sender: TObject; hint := Trim(hint); // activate hint if it differs from previously displayed hint - if (hint <> sLastHint) then begin + if (hint <> sLastHint) then + begin sLastHint := hint; - lvPlugins.ShowHint := True; - lvPlugins.Hint := hint; + lvPlugins.ShowHint := true; + lvPlugins.hint := hint; Application.ActivateHint(Mouse.CursorPos); end; end; @@ -507,7 +535,8 @@ procedure TPluginSelectionForm.FormShow(Sender: TObject); try sl.CommaText := sColumns; iColumnSize := (lvPlugins.ClientWidth - 300) div (sl.Count - 1); - for i := 0 to Pred(sl.Count) do begin + for i := 0 to Pred(sl.Count) do + begin aColumn := lvPlugins.Columns.Add; aColumn.Caption := sl[i]; aColumn.Width := IfThenInt(i = 0, 300, iColumnSize); @@ -519,7 +548,8 @@ procedure TPluginSelectionForm.FormShow(Sender: TObject); end; // add plugin items to list - for i := 0 to Pred(slAllPlugins.Count) do begin + for i := 0 to Pred(slAllPlugins.Count) do + begin sPlugin := slAllPlugins[i]; aListItem := TPluginListItem.Create; // check ListItem if it's in the CheckedPlugins list @@ -534,12 +564,14 @@ procedure TPluginSelectionForm.FormShow(Sender: TObject); // are missing sl := TStringList.Create; try - for i := 0 to Pred(slAllPlugins.Count) do begin + for i := 0 to Pred(slAllPlugins.Count) do + begin sPlugin := slAllPlugins[i]; aListItem := TPluginListItem(ListItems[i]); GetPluginMasters(sPlugin, sl); for j := 0 to Pred(sl.Count) do - if slAllPlugins.IndexOf(sl[j]) = -1 then begin + if slAllPlugins.IndexOf(sl[j]) = -1 then + begin slMissing.Add(sPlugin); aListItem.StateIndex := cUnChecked; break; @@ -561,7 +593,7 @@ procedure TPluginSelectionForm.FormShow(Sender: TObject); procedure TPluginSelectionForm.PluginsPopupMenuPopup(Sender: TObject); var - bHasMasters, bHasDependencies: Boolean; + bHasMasters, bHasDependencies: boolean; begin bHasMasters := slMasters.Count > 0; bHasDependencies := slDependencies.Count > 0; @@ -612,7 +644,8 @@ procedure TPluginSelectionForm.CheckMastersItemClick(Sender: TObject); i, index: Integer; begin // loop through masters of selected plugins - for i := 0 to Pred(slMasters.Count) do begin + for i := 0 to Pred(slMasters.Count) do + begin index := slAllPlugins.IndexOf(slMasters[i]); // if the masters isn't loaded, skip it if index = -1 then @@ -631,7 +664,8 @@ procedure TPluginSelectionForm.UncheckMastersItemClick(Sender: TObject); i, index: Integer; begin // loop through masters of selected plugins - for i := 0 to Pred(slMasters.Count) do begin + for i := 0 to Pred(slMasters.Count) do + begin index := slAllPlugins.IndexOf(slMasters[i]); // if the masters isn't loaded, skip it if index = -1 then @@ -650,7 +684,8 @@ procedure TPluginSelectionForm.CheckDependenciesItemClick(Sender: TObject); i, index: Integer; begin // loop through dependencies of selected plugins - for i := 0 to Pred(slDependencies.Count) do begin + for i := 0 to Pred(slDependencies.Count) do + begin index := slAllPlugins.IndexOf(slDependencies[i]); // check it TPluginListItem(ListItems[index]).StateIndex := cChecked; @@ -666,7 +701,8 @@ procedure TPluginSelectionForm.UncheckDependenciesItemClick(Sender: TObject); i, index: Integer; begin // loop through dependencies of selected plugins - for i := 0 to Pred(slDependencies.Count) do begin + for i := 0 to Pred(slDependencies.Count) do + begin index := slAllPlugins.IndexOf(slDependencies[i]); // uncheck it TPluginListItem(ListItems[index]).StateIndex := cUnChecked; diff --git a/lib/mte/mteProgressForm.dfm b/lib/mte/mteProgressForm.dfm old mode 100644 new mode 100755 diff --git a/lib/mte/mteProgressForm.pas b/lib/mte/mteProgressForm.pas old mode 100644 new mode 100755 index 1970cd2..6ba36a9 --- a/lib/mte/mteProgressForm.pas +++ b/lib/mte/mteProgressForm.pas @@ -32,27 +32,29 @@ TProgressForm = class(TForm) private { Private declarations } public - bDetailsVisible: boolean; + bDetailsVisible: Boolean; pfLogPath: string; end; implementation var - lastHeight: integer; + lastHeight: Integer; {$R *.dfm} procedure TProgressForm.ToggleDetails(Sender: TObject); begin bDetailsVisible := not bDetailsVisible; - if bDetailsVisible then begin + if bDetailsVisible then + begin self.Height := lastHeight; DetailsMemo.Visible := true; DetailsButton.Caption := 'Hide details'; DetailsMemo.Height := self.Height - 135; end - else begin + else + begin DetailsMemo.Visible := false; DetailsButton.Caption := 'Show details'; lastHeight := self.Height; @@ -80,8 +82,9 @@ procedure TProgressForm.FormClose(Sender: TObject; var Action: TCloseAction); procedure TProgressForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin CanClose := (fsModal in FormState); - //Tracker.Write('CanClose = '+BoolToStr(CanClose, true)); - if not (CanClose or Tracker.Cancel) then begin + // Tracker.Write('CanClose = '+BoolToStr(CanClose, true)); + if not(CanClose or Tracker.Cancel) then + begin Tracker.Write('Cancelling...'); SetTaskbarProgressState(tbpsError); Tracker.Cancel := true; @@ -105,12 +108,14 @@ procedure TProgressForm.FormCreate(Sender: TObject); procedure TProgressForm.FormShow(Sender: TObject); begin - if (fsModal in FormState) then begin + if (fsModal in FormState) then + begin CancelButton.Caption := 'Close'; if not bDetailsVisible then ToggleDetails(nil); end - else if not bDetailsVisible then begin + else if not bDetailsVisible then + begin bDetailsVisible := false; DetailsMemo.Visible := false; DetailsButton.Caption := 'Show details'; @@ -153,9 +158,10 @@ procedure TProgressForm.SaveLog; try ForceDirectories(pfLogPath); fdt := FormatDateTime('mmddyy_hhnnss', TDateTime(Now)); - DetailsMemo.Lines.SaveToFile(pfLogPath + 'log_'+fdt+'.txt'); - except on Exception do - // nothing to do + DetailsMemo.Lines.SaveToFile(pfLogPath + 'log_' + fdt + '.txt'); + except + on Exception do + // nothing to do end; end; diff --git a/lib/mte/mteTaskHandler.pas b/lib/mte/mteTaskHandler.pas old mode 100644 new mode 100755 index f79b50e..8ff3cf2 --- a/lib/mte/mteTaskHandler.pas +++ b/lib/mte/mteTaskHandler.pas @@ -9,17 +9,20 @@ interface type TProcedure = procedure of object; - TTask = class (TObject) + + TTask = class(TObject) private - FExecute : TProcedure; + FExecute: TProcedure; public name: string; rate: real; lastExecuted: TDateTime; - constructor Create(name: string; rate: real; FExecute: TProcedure); Overload; + constructor Create(name: string; rate: real; FExecute: TProcedure); + Overload; property OnExecute: TProcedure read FExecute write FExecute; procedure Execute; end; + TTaskHandler = class(TObject) public TaskList: TList; @@ -48,9 +51,11 @@ procedure TTaskHandler.RemoveTask(taskName: string); if not Assigned(TaskList) then exit; - for i := Pred(TaskList.Count) downto 0 do begin + for i := Pred(TaskList.Count) downto 0 do + begin task := TTask(TaskList[i]); - if task.name = taskName then begin + if task.name = taskName then + begin TaskList.Delete(i); break; end; @@ -68,9 +73,11 @@ procedure TTaskHandler.ExecTasks; bExecutingTasks := true; // loop through task list, executing tasks that are ready to be executed - for i := Pred(TaskList.Count) downto 0 do begin + for i := Pred(TaskList.Count) downto 0 do + begin task := TTask(TaskList[i]); - if (Now - task.lastExecuted >= task.rate) then begin + if (Now - task.lastExecuted >= task.rate) then + begin if bLogTasks and (task.rate > 60.0 * seconds) then Logger.Write('TASK', 'Execute', task.name); task.lastExecuted := Now; @@ -87,12 +94,11 @@ constructor TTaskHandler.Create; TaskList := TList.Create; end; - -{******************************************************************************} +{ ****************************************************************************** } { Task methods Object methods for TTask } -{******************************************************************************} +{ ****************************************************************************** } constructor TTask.Create(name: string; rate: real; FExecute: TProcedure); begin @@ -106,9 +112,8 @@ constructor TTask.Create(name: string; rate: real; FExecute: TProcedure); procedure TTask.Execute; begin - if Assigned(FExecute) then - FExecute; + if Assigned(FExecute) then + FExecute; end; end. - From 9c10cfd45c7ac133104e4f1f30de5a5e897e782c Mon Sep 17 00:00:00 2001 From: chuck <> Date: Thu, 29 Jul 2021 18:01:16 -0400 Subject: [PATCH 43/76] Fix arrays maybe? --- frontend/MatorSmash.dpr | 22 ++++++++++++---------- frontend/MatorSmash.res | Bin 6852 -> 6852 bytes frontend/msAlgorithm.pas | 5 +++-- frontend/msCore.pas | 5 +++++ frontend/msLoader.pas | 1 + 5 files changed, 21 insertions(+), 12 deletions(-) diff --git a/frontend/MatorSmash.dpr b/frontend/MatorSmash.dpr index 8bf8842..499c299 100755 --- a/frontend/MatorSmash.dpr +++ b/frontend/MatorSmash.dpr @@ -1,5 +1,6 @@ { ******************************************************************************* + The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at @@ -54,18 +55,19 @@ uses msChoicePanel in 'msChoicePanel.pas', msSmash in 'msSmash.pas', msAlgorithm in 'msAlgorithm.pas', - msProfileForm in 'msProfileForm.pas' {ProfileForm}, + msProfileForm in 'msProfileForm.pas' {ProfileForm} , msProfilePanel in 'msProfilePanel.pas', - msSmashForm in 'msSmashForm.pas' {SmashForm}, + msSmashForm in 'msSmashForm.pas' {SmashForm} , msThreads in 'msThreads.pas', - msOptionsForm in 'msOptionsForm.pas' {OptionsForm}, - msSplashForm in 'msSplashForm.pas' {SplashForm}, - msEditForm in 'msEditForm.pas' {EditForm}, - msSettingsManager in 'msSettingsManager.pas' {SettingsManager}, - msPluginSelectionForm in 'msPluginSelectionForm.pas' {MiniPluginSelectionForm}, - msConflictForm in 'msConflictForm.pas' {ConflictForm}, - msTagManager in 'msTagManager.pas' {TagManager}, - msTagHelper in 'msTagHelper.pas' {TagHelper}, + msOptionsForm in 'msOptionsForm.pas' {OptionsForm} , + msSplashForm in 'msSplashForm.pas' {SplashForm} , + msEditForm in 'msEditForm.pas' {EditForm} , + msSettingsManager in 'msSettingsManager.pas' {SettingsManager} , + msPluginSelectionForm + in 'msPluginSelectionForm.pas' {MiniPluginSelectionForm} , + msConflictForm in 'msConflictForm.pas' {ConflictForm} , + msTagManager in 'msTagManager.pas' {TagManager} , + msTagHelper in 'msTagHelper.pas' {TagHelper} , Vcl.Themes, Vcl.Styles; diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 284475d0a12150676a59418c3a1f604db9da836e..b7294eb585344f9dc2d9ab71c317c7a71aa608cb 100755 GIT binary patch delta 13 UcmX?Ndc<@>3Ddpj8_WEp04_`hO#lD@ delta 13 UcmX?Ndc<@>2@`|N#xg%C03{&=qyPW_ diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas index b2547a2..82392fe 100755 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -340,11 +340,12 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; begin a_ndx := Min(i + align_ndx, dstCont.ElementCount); if settings.debugArrays then - Tracker.Write(' > Adding element at ' + dst.Path + + Tracker.Write(' > Adding element at ' + dstCont.FullPath + ' at index ' + a_ndx.ToString + ' with key: ' + slSrc[i]); - dstCont.InsertElement(a_ndx, se); + de := dstCont.Assign(a_ndx, se, false); align_ndx := align_ndx + 1; slDst.Insert(a_ndx, slSrc[i]); + // slDst.Add(slSrc[i]); end; end diff --git a/frontend/msCore.pas b/frontend/msCore.pas index 4f87a12..fbb4838 100755 --- a/frontend/msCore.pas +++ b/frontend/msCore.pas @@ -466,6 +466,11 @@ procedure TPlugin.Save; FileStream := nil; try FileStream := TFileStream.Create(path, fmCreate); + // Force xedit to save everything in file? + _File.MarkModifiedRecursive([etFile, etMainRecord, etGroupRecord, + etSubRecord, etSubRecordStruct, etSubRecordArray, etSubRecordUnion, + etArray, etStruct, etValue, etFlag, etStringListTerminator, etUnion, + etStructChapter]); _File.WriteToStream(FileStream, TwbResetModified.rmNo); if SavedPluginPaths.IndexOf(path) = -1 then SavedPluginPaths.Add(dataPath + filename); diff --git a/frontend/msLoader.pas b/frontend/msLoader.pas index 12e09c4..7515c0d 100755 --- a/frontend/msLoader.pas +++ b/frontend/msLoader.pas @@ -113,6 +113,7 @@ function InitBase: boolean; wbSourceName := 'Plugins'; wbToolMode := tmEdit; wbToolName := 'Edit'; + wbAlignArrayElements := True; // INITIALIZE DEFINITIONS Logger.Write('GENERAL', 'Definitions', 'Using ' + wbAppName + From ec79b5be2544714ee53dcc6e46cddd1222a0f396 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Thu, 29 Jul 2021 18:34:58 -0400 Subject: [PATCH 44/76] Use FullPath instead of Path in debug messages --- frontend/MatorSmash.res | Bin 6852 -> 6852 bytes frontend/msAlgorithm.pas | 58 +++++++++++++++++++-------------------- frontend/msSmash.pas | 2 +- 3 files changed, 30 insertions(+), 30 deletions(-) diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index b7294eb585344f9dc2d9ab71c317c7a71aa608cb..c0d386e570fa06300eb33eab54895d50988c421f 100755 GIT binary patch delta 13 UcmX?Ndc<@>2~#2C#xg%C04G2M`Tzg` delta 13 UcmX?Ndc<@>3Ddpj8_WEp04_`hO#lD@ diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas index 82392fe..057863a 100755 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -98,14 +98,14 @@ function HandleElementLife(srcCont, dstCont, mstCont: IwbContainerElementRef; if not process then begin if settings.debugSkips then - Tracker.Write(' Skipping element creation at ' + element.Path); + Tracker.Write(' Skipping element creation at ' + element.FullPath); continue; end; // copy element try if settings.debugChanges then - Tracker.Write(' Created element at ' + element.Path); + Tracker.Write(' Created element at ' + element.FullPath); dstCont.AddIfMissing(element, false, true, '', '', '', '', true); // if another element is linked to the element, copy it @@ -119,7 +119,7 @@ function HandleElementLife(srcCont, dstCont, mstCont: IwbContainerElementRef; except on x: Exception do Tracker.Write(' HandleElementLife: Failed to copy ' + - element.Path + ', ' + x.Message); + element.FullPath + ', ' + x.Message); end; end; end; @@ -143,13 +143,13 @@ function HandleElementLife(srcCont, dstCont, mstCont: IwbContainerElementRef; if not process then begin if settings.debugSkips then - Tracker.Write(' Skipping element deletion at ' + element.Path); + Tracker.Write(' Skipping element deletion at ' + element.FullPath); continue; end; // remove element if settings.debugChanges then - Tracker.Write(' Deleted element at ' + element.Path); + Tracker.Write(' Deleted element at ' + element.FullPath); dstCont.RemoveElement(element); // if another element is linked to the element, copy it @@ -304,7 +304,7 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if (d_ndx = -1) then continue; if settings.debugArrays then - Tracker.Write(' > Removing element at ' + dst.Path + + Tracker.Write(' > Removing element at ' + dst.FullPath + ' with key: ' + slMst[i]); dstCont.RemoveElement(d_ndx); slDst.Delete(d_ndx); @@ -331,7 +331,7 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if bSorted then begin if settings.debugArrays then - Tracker.Write(' > Adding element at ' + dst.Path + + Tracker.Write(' > Adding element at ' + dst.FullPath + ' with key: ' + slSrc[i]); de := dstCont.Assign(dstCont.ElementCount, se, false); slDst.Insert(dstCont.IndexOf(de), slSrc[i]); @@ -356,7 +356,7 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; begin if settings.debugArrays then begin - Tracker.Write(' > Traversing element ' + se.Path + + Tracker.Write(' > Traversing element ' + se.FullPath + ' with key: ' + slSrc[i]); Tracker.Write(' > Source Element: ' + GetAllValues(se)); Tracker.Write(' > Destination Element: ' + @@ -372,7 +372,7 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; except on x: Exception do begin - Tracker.Write(' rcore: Exception at ' + se.Path + ': ' + + Tracker.Write(' rcore: Exception at ' + se.FullPath + ': ' + x.Message); end; end; @@ -461,7 +461,7 @@ function MergeFlags(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if (d_ndx = -1) then continue; if settings.debugArrays then - Tracker.Write(' > Removing element at ' + dst.Path + + Tracker.Write(' > Removing element at ' + dst.FullPath + ' with key: ' + slMst[i]); fi := (mstCont.Elements[i].Def as IwbFlagDef).FlagIndex; val := dstCont.EditValue; @@ -488,7 +488,7 @@ function MergeFlags(src, mst, dst: IwbElement; dstRec: IwbMainRecord; exit; // add element to destination if settings.debugArrays then - Tracker.Write(' > Adding flag at ' + dst.Path + ' with key: ' + + Tracker.Write(' > Adding flag at ' + dst.FullPath + ' with key: ' + slSrc[i]); fi := (se.Def as IwbFlagDef).FlagIndex; val := dstCont.EditValue.PadRight(fi + 1, '0'); @@ -515,7 +515,7 @@ procedure CopyElementValue(se, me, de: IwbElement); begin if settings.debugChanges then begin - Tracker.Write(' Unable to copy element value on ' + se.Path); + Tracker.Write(' Unable to copy element value on ' + se.FullPath); Tracker.Write(' Element is not editable'); end; exit; @@ -524,7 +524,7 @@ procedure CopyElementValue(se, me, de: IwbElement); if Assigned(me) and settings.debugChanges then begin if (not settings.debugTraversal) then - Tracker.Write(' ' + se.Path); + Tracker.Write(' ' + se.FullPath); Tracker.Write(' > Found differing values: ' + se.EditValue + ', ' + me.EditValue); end; @@ -573,7 +573,7 @@ procedure CopyLinkedElement(srcCont, dstCont: IwbContainerElementRef; if Assigned(le) then begin if settings.debugLinks then - Tracker.Write(' Copying linked element ' + le.Path); + Tracker.Write(' Copying linked element ' + le.FullPath); if Assigned(de) then de.Assign(Low(Integer), le, false) else @@ -623,7 +623,7 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; Tracker.Write(' Source and destination types don''t match'); Tracker.Write(' ' + stToString(srcType) + ' != ' + stToString(dstType)); - Tracker.Write(' Skipping ' + se.Path); + Tracker.Write(' Skipping ' + se.FullPath); end; Result := true; exit; @@ -639,7 +639,7 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; if settings.debugSkips then begin Tracker.Write(' Master element not found!'); - Tracker.Write(' Skipping ' + se.Path); + Tracker.Write(' Skipping ' + se.FullPath); end; exit; end; @@ -647,7 +647,7 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; // debug messages if settings.debugTraversal then - Tracker.Write(' ' + se.Path); + Tracker.Write(' ' + se.FullPath); if settings.debugTypes then begin Tracker.Write(' bCanAdd: ' + BoolToStr(bCanAdd, true)); @@ -665,7 +665,7 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; bOverride); except on x: Exception do - Tracker.Write(' MergeArray: Exception at ' + se.Path + ': ' + + Tracker.Write(' MergeArray: Exception at ' + se.FullPath + ': ' + x.Message); end; end @@ -679,7 +679,7 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; bOverride); except on x: Exception do - Tracker.Write(' MergeFlags: Exception at ' + se.Path + ': ' + + Tracker.Write(' MergeFlags: Exception at ' + se.FullPath + ': ' + x.Message); end; end @@ -692,7 +692,7 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; Result := rcore(se, me, de, dstRec, obj, bSingle, bDeletions, bOverride); except on x: Exception do - Tracker.Write(' rcore: Exception at ' + se.Path + ': ' + + Tracker.Write(' rcore: Exception at ' + se.FullPath + ': ' + x.Message); end; end @@ -760,7 +760,7 @@ function rcore(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if settings.debugSkips then begin Tracker.Write(' Source element not a container.'); - Tracker.Write(' Skipping ' + src.Path); + Tracker.Write(' Skipping ' + src.FullPath); end; exit; end; @@ -769,7 +769,7 @@ function rcore(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if settings.debugSkips then begin Tracker.Write(' Destination element not a container.'); - Tracker.Write(' Skipping ' + src.Path); + Tracker.Write(' Skipping ' + src.FullPath); end; exit; end; @@ -778,7 +778,7 @@ function rcore(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if settings.debugSkips then begin Tracker.Write(' Master element not a container.'); - Tracker.Write(' Skipping ' + src.Path); + Tracker.Write(' Skipping ' + src.FullPath); end; exit; end; @@ -790,7 +790,7 @@ function rcore(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if bSingle and Result then begin if settings.debugSingle then - Tracker.Write(' Single entity change found at ' + src.Path); + Tracker.Write(' Single entity change found at ' + src.FullPath); exit; end; @@ -808,7 +808,7 @@ function rcore(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if settings.debugSkips then begin Tracker.Write(' Destination element not found!'); - Tracker.Write(' Skipping ' + se.Path); + Tracker.Write(' Skipping ' + se.FullPath); end; continue; end; @@ -819,7 +819,7 @@ function rcore(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if not process then begin if settings.debugSkips then - Tracker.Write(' Skipping ' + se.Path); + Tracker.Write(' Skipping ' + se.FullPath); continue; end; @@ -837,7 +837,7 @@ function rcore(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if bSingle and Result then begin if settings.debugSingle then - Tracker.Write(' Single entity change found at ' + se.Path); + Tracker.Write(' Single entity change found at ' + se.FullPath); break; end; @@ -846,11 +846,11 @@ function rcore(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if eSingle and (not bSingle) and Result then try if settings.debugSingle then - Tracker.Write(Format(' Copying single entity %s', [se.Path])); + Tracker.Write(Format(' Copying single entity %s', [se.FullPath])); de.Assign(Low(Integer), se, false); except on x: Exception do - Tracker.Write(' rcore: Failed to copy ' + se.Path + ', ' + + Tracker.Write(' rcore: Failed to copy ' + se.FullPath + ', ' + x.Message); end; diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index ad9223f..f48c389 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -308,7 +308,7 @@ procedure UpdateCounts(var rec: IwbMainRecord); element.NativeValue := arrayContainer.ElementCount; except on x: Exception do - Tracker.Write(' Exception updating count at ' + element.Path); + Tracker.Write(' Exception updating count at ' + element.FullPath); end; end; end; From bb42cac00f48b8584833d6dd6c43dade75038b7b Mon Sep 17 00:00:00 2001 From: chuck <> Date: Thu, 29 Jul 2021 23:21:28 -0400 Subject: [PATCH 45/76] Tweak to picking record masters It still works wrong for USMP for some reason... --- frontend/MatorSmash.res | Bin 6852 -> 6852 bytes frontend/msAlgorithm.pas | 2 +- frontend/msSmash.pas | 4 ++-- lib/mte/mteBase.pas | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index c0d386e570fa06300eb33eab54895d50988c421f..50663277e2eaaa62004d27b53646f863ab65554f 100755 GIT binary patch delta 13 UcmX?Ndc<@>2~&{A#xg%C04M1MA^-pY delta 13 UcmX?Ndc<@>2~#2C#xg%C04G2M`Tzg` diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas index 057863a..4e0a9a7 100755 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -461,7 +461,7 @@ function MergeFlags(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if (d_ndx = -1) then continue; if settings.debugArrays then - Tracker.Write(' > Removing element at ' + dst.FullPath + + Tracker.Write(' > Removing flag at ' + dst.FullPath + ' with key: ' + slMst[i]); fi := (mstCont.Elements[i].Def as IwbFlagDef).FlagIndex; val := dstCont.EditValue; diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index f48c389..5184d36 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -432,8 +432,8 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); mst := e as IwbMainRecord else mst := WinningOverrideInFiles(rec, plugin.Masters); - Tracker.Write(Format(' Smashing override of %s from: %s, master: %s', - [ovr.Name, f.filename, mst._File.filename])); + Tracker.Write(Format(' Smashing override of %s from: %s, master: %s, masters: %s', + [ovr.Name, f.filename, mst._File.filename, String.join(',', plugin.masters.ToStringArray)])); AddRequiredMasters(patch.plugin._File, ovr); rcore(IwbElement(ovr), IwbElement(mst), IwbElement(patchRec), patchRec, recObj, false, bDeletions, bOverride); diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index b304ab8..6a339b1 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -712,7 +712,7 @@ function WinningOverrideInFiles(rec: IwbMainRecord; var sl: TStringList) i: Integer; ovr: IwbMainRecord; begin - Result := rec; + Result := rec.MasterOrSelf; for i := Pred(rec.OverrideCount) downto 0 do begin ovr := rec.Overrides[i]; From 6f3dede1e28f8ceb860dddfaf36f761700c65db3 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Thu, 29 Jul 2021 23:22:46 -0400 Subject: [PATCH 46/76] Various tweaks to my Smash.All --- frontend/settings/Skyrim/Smash.All.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/settings/Skyrim/Smash.All.json b/frontend/settings/Skyrim/Smash.All.json index 4ac6713..e8dfbf3 100755 --- a/frontend/settings/Skyrim/Smash.All.json +++ b/frontend/settings/Skyrim/Smash.All.json @@ -1 +1 @@ -{"records":"ACHR,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,Play,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,AACT","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 12\/13\/2020.","tree":{"records":[{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"s":1,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"s":1,"p":1,"n":"Relations","d":1,"c":[{"t":6,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"s":1,"p":1,"n":"Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level"},{"t":3,"p":1,"n":"Calc max level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"s":1,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"p":1,"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"OneHanded"},{"t":3,"p":1,"n":"TwoHanded"},{"t":3,"p":1,"n":"Marksman"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"HeavyArmor"},{"t":3,"p":1,"n":"LightArmor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speechcraft"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"Sound Types","d":1,"c":[{"t":6,"p":1,"n":"Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"s":1,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"Player Reference","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"Stages","d":1,"c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unused"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"s":1,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALLS - Location Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords"},{"t":3,"p":1,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"ALFC - Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"Targets","d":1,"c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":7,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Playable"},{"t":4,"n":"FaceGen Head"},{"t":4,"n":"Child"},{"t":4,"n":"Tilt Front\/Back"},{"t":4,"n":"Tilt Left\/Right"},{"t":4,"n":"No Shadow"},{"t":4,"n":"Swims"},{"t":4,"n":"Flies"},{"t":4,"n":"Walks"},{"t":4,"n":"Immobile"},{"t":4,"n":"Not Pushable"},{"t":4,"n":"No Combat In Water"},{"t":4,"n":"No Rotating to Head-Track"},{"t":4,"n":"Don't Show Blood Spray"},{"t":4,"n":"Don't Show Blood Decal"},{"t":4,"n":"Uses Head Track Anims"},{"t":4,"n":"Spells Align w\/Magic Node"},{"t":4,"n":"Use World Raycasts For FootIK"},{"t":4,"n":"Allow Ragdoll Collision"},{"t":4,"n":"Regen HP In Combat"},{"t":4,"n":"Can't Open Doors"},{"t":4,"n":"Allow PC Dialogue"},{"t":4,"n":"No Knockdowns"},{"t":4,"n":"Allow Pickpocket"},{"t":4,"n":"Always Use Proxy Controller"},{"t":4,"n":"Don't Show Weapon Blood"},{"t":4,"n":"Overlay Head Part List"},{"t":4,"n":"Override Head Part List"},{"t":4,"n":"Can Pickup Items"},{"t":4,"n":"Allow Multiple Membrane Shaders"},{"t":4,"n":"Can Dual Wield"},{"t":4,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","c":[{"t":4,"n":"Use Advanced Avoidance"},{"t":4,"n":"Non-Hostile"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"p":1,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"p":1,"n":"Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"n":"VNAM - Equipment Flags","c":[{"t":4,"n":"Hand To Hand Melee"},{"t":4,"n":"One Hand Sword"},{"t":4,"n":"One Hand Dagger"},{"t":4,"n":"One Hand Axe"},{"t":4,"n":"One Hand Mace"},{"t":4,"n":"Two Hand Sword"},{"t":4,"n":"Two Hand Axe"},{"t":4,"n":"Bow"},{"t":4,"n":"Staff"},{"t":4,"n":"Spell"},{"t":4,"n":"Shield"},{"t":4,"n":"Torch"},{"t":4,"n":"Crossbow"}]},{"t":8,"p":1,"n":"Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"s":1,"p":1,"n":"Male Head Data","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":10,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Race Presets Male","c":[{"t":3,"n":"RPRM - Preset NPC"}]},{"t":8,"n":"Available Hair Colors Male","c":[{"t":3,"n":"AHCM - Hair Color"}]},{"t":8,"n":"Face Details Texture Set List Male","c":[{"t":3,"n":"FTSM - Texture Set"}]},{"t":3,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Head Data","c":[{"p":1,"n":"NAM0 - Head Data Marker"},{"p":1,"n":"FNAM - Female Data Marker"},{"t":10,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"n":"Available Morphs","c":[{"t":11,"n":"MPAI - Unknown"},{"t":6,"n":"MPAV - Nose Variants","c":[{"t":3,"n":"Nose Morph Flags","c":[{"t":4,"n":"NoseType0"},{"t":4,"n":"NoseType1"},{"t":4,"n":"NoseType2"},{"t":4,"n":"NoseType3"},{"t":4,"n":"NoseType4"},{"t":4,"n":"NoseType5"},{"t":4,"n":"NoseType6"},{"t":4,"n":"NoseType7"},{"t":4,"n":"NoseType8"},{"t":4,"n":"NoseType9"},{"t":4,"n":"NoseType10"},{"t":4,"n":"NoseType11"},{"t":4,"n":"NoseType12"},{"t":4,"n":"NoseType13"},{"t":4,"n":"NoseType14"},{"t":4,"n":"NoseType15"},{"t":4,"n":"NoseType16"},{"t":4,"n":"NoseType17"},{"t":4,"n":"NoseType18"},{"t":4,"n":"NoseType19"},{"t":4,"n":"NoseType20"},{"t":4,"n":"NoseType21"},{"t":4,"n":"NoseType22"},{"t":4,"n":"NoseType23"},{"t":4,"n":"NoseType24"},{"t":4,"n":"NoseType25"},{"t":4,"n":"NoseType26"},{"t":4,"n":"NoseType27"},{"t":4,"n":"NoseType28"},{"t":4,"n":"NoseType29"},{"t":4,"n":"NoseType30"},{"t":4,"n":"NoseType31"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Brow Variants","c":[{"t":3,"n":"Brow Morph Flags","c":[{"t":4,"n":"BrowType0"},{"t":4,"n":"BrowType1"},{"t":4,"n":"BrowType2"},{"t":4,"n":"BrowType3"},{"t":4,"n":"BrowType4"},{"t":4,"n":"BrowType5"},{"t":4,"n":"BrowType6"},{"t":4,"n":"BrowType7"},{"t":4,"n":"BrowType8"},{"t":4,"n":"BrowType9"},{"t":4,"n":"BrowType10"},{"t":4,"n":"BrowType11"},{"t":4,"n":"BrowType12"},{"t":4,"n":"BrowType13"},{"t":4,"n":"BrowType14"},{"t":4,"n":"BrowType15"},{"t":4,"n":"BrowType16"},{"t":4,"n":"BrowType17"},{"t":4,"n":"BrowType18"},{"t":4,"n":"BrowType19"},{"t":4,"n":"BrowType20"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Eye Variants","c":[{"t":3,"n":"Eye Morph Flags 1","c":[{"t":4,"n":"EyesType0"},{"t":4,"n":"EyesType1"},{"t":4,"n":"EyesType2"},{"t":4,"n":"EyesType3"},{"t":4,"n":"EyesType4"},{"t":4,"n":"EyesType5"},{"t":4,"n":"EyesType6"},{"t":4,"n":"EyesType7"},{"t":4,"n":"EyesType8"},{"t":4,"n":"EyesType9"},{"t":4,"n":"EyesType10"},{"t":4,"n":"EyesType11"},{"t":4,"n":"EyesType12"},{"t":4,"n":"EyesType13"},{"t":4,"n":"EyesType14"},{"t":4,"n":"EyesType15"},{"t":4,"n":"EyesType16"},{"t":4,"n":"EyesType17"},{"t":4,"n":"EyesType18"},{"t":4,"n":"EyesType19"},{"t":4,"n":"EyesType20"},{"t":4,"n":"EyesType21"},{"t":4,"n":"EyesType22"},{"t":4,"n":"EyesType23"},{"t":4,"n":"EyesType24"},{"t":4,"n":"EyesType25"},{"t":4,"n":"EyesType26"},{"t":4,"n":"EyesType27"},{"t":4,"n":"EyesType28"},{"t":4,"n":"EyesType29"},{"t":4,"n":"EyesType30"},{"t":4,"n":"EyesType31"}]},{"t":3,"n":"Eye Morph Flags 2","c":[{"t":4,"n":"EyesType32"},{"t":4,"n":"EyesType33"},{"t":4,"n":"EyesType34"},{"t":4,"n":"EyesType35"},{"t":4,"n":"EyesType36"},{"t":4,"n":"EyesType37"},{"t":4,"n":"EyesType38"}]},{"t":11,"n":"Unknown"}]},{"t":6,"n":"MPAV - Lip Variants","c":[{"t":3,"n":"Lip Morph Flags","c":[{"t":4,"n":"LipType0"},{"t":4,"n":"LipType1"},{"t":4,"n":"LipType2"},{"t":4,"n":"LipType3"},{"t":4,"n":"LipType4"},{"t":4,"n":"LipType5"},{"t":4,"n":"LipType6"},{"t":4,"n":"LipType7"},{"t":4,"n":"LipType8"},{"t":4,"n":"LipType9"},{"t":4,"n":"LipType10"},{"t":4,"n":"LipType11"},{"t":4,"n":"LipType12"},{"t":4,"n":"LipType13"},{"t":4,"n":"LipType14"},{"t":4,"n":"LipType15"},{"t":4,"n":"LipType16"},{"t":4,"n":"LipType17"},{"t":4,"n":"LipType18"},{"t":4,"n":"LipType19"},{"t":4,"n":"LipType20"},{"t":4,"n":"LipType21"},{"t":4,"n":"LipType22"},{"t":4,"n":"LipType23"},{"t":4,"n":"LipType24"},{"t":4,"n":"LipType25"},{"t":4,"n":"LipType26"},{"t":4,"n":"LipType27"},{"t":4,"n":"LipType28"},{"t":4,"n":"LipType29"},{"t":4,"n":"LipType30"},{"t":4,"n":"LipType31"}]},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Race Presets Female","c":[{"t":3,"n":"RPRF - Preset NPC"}]},{"t":8,"n":"Available Hair Colors Female","c":[{"t":3,"n":"AHCF - Hair Color"}]},{"t":8,"n":"Face Details Texture Set List Female","c":[{"t":3,"n":"FTSF - Texture Set"}]},{"t":3,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]}]},"name":"Smash.All","hash":"AEDCBDD2","color":128} \ No newline at end of file +{"records":"AACT,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,Play,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,ACHR","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 7\/29\/2021.","tree":{"records":[{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"p":1,"n":"Relations","d":1,"c":[{"t":6,"s":1,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Unknown 4"},{"t":4,"p":1,"n":"Unknown 5"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"p":1,"n":"Unknown 18"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Unknown 22"},{"t":4,"p":1,"n":"Unknown 23"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Unknown 27"},{"t":4,"p":1,"n":"Unknown 28"},{"t":4,"p":1,"n":"Unknown 29"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"p":1,"n":"Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","d":1,"c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unknown 7"},{"t":4,"p":1,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"p":1,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"p":1,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"s":1,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"s":1,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"s":1,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"p":1,"n":"Unknown 9"},{"t":4,"p":1,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Unknown 12"},{"t":4,"p":1,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"p":1,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"p":1,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"p":1,"n":"Unknown 22"},{"t":4,"p":1,"n":"Unknown 23"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level","lf":"Calc max level"},{"t":3,"p":1,"n":"Calc max level","lt":"Calc min level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"Sound Types","d":1,"c":[{"t":6,"p":1,"n":"Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"Player Reference","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"s":1,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"Stages","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"p":1,"n":"SCHR - Unused"},{"t":11,"p":1,"n":"SCTX - Unused"},{"t":11,"p":1,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"p":1,"n":"Unused"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","d":1,"c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"s":1,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"s":1,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"s":1,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"n":"Alias","c":[{"t":3,"n":"ALLS - Location Alias ID"},{"t":2,"n":"ALID - Alias Name"},{"t":6,"n":"FNAM - Alias Flags","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Reserves Location\/Reference"},{"t":4,"n":"Optional"},{"t":4,"n":"Quest Object"},{"t":4,"n":"Allow Reuse in Quest"},{"t":4,"n":"Allow Dead"},{"t":4,"n":"Matching Ref - In Loaded Area"},{"t":4,"n":"Essential"},{"t":4,"n":"Allow Disabled"},{"t":4,"n":"Stores Text"},{"t":4,"n":"Allow Reserved"},{"t":4,"n":"Protected"},{"t":4,"n":"Forced by Aliases?"},{"t":4,"n":"Allow Destroyed"},{"t":4,"n":"Matching Ref - Closest"},{"t":4,"n":"Uses Stored Text"},{"t":4,"n":"Initially Disabled"}]},{"t":3,"n":"Additional Flags","c":[{"t":4,"n":"Allow Cleared"},{"t":4,"n":"Clear Names When Removed"}]}]},{"t":3,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"n":"ALFL - Specific Location"},{"t":3,"n":"ALFR - Forced Reference"},{"t":3,"n":"ALUA - Unique Actor"},{"t":6,"n":"Location Alias Reference","c":[{"t":3,"n":"ALFA - Alias"},{"t":3,"n":"KNAM - Keyword"},{"t":3,"n":"ALRT - Ref Type"}]},{"t":6,"n":"External Alias Reference","c":[{"t":3,"n":"ALEQ - Quest"},{"t":3,"n":"ALEA - Alias"}]},{"t":6,"n":"Create Reference to Object","c":[{"t":3,"n":"ALCO - Object"},{"t":6,"n":"ALCA - Alias","c":[{"t":3,"n":"Alias"},{"t":3,"n":"Create"}]},{"t":3,"n":"ALCL - Level"}]},{"t":6,"n":"Find Matching Reference Near Alias","c":[{"t":3,"n":"ALNA - Alias"},{"t":3,"n":"ALNT - Type"}]},{"t":6,"n":"Find Matching Reference From Event","c":[{"t":2,"n":"ALFE - From Event"},{"t":11,"n":"ALFD - Event Data"}]},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"ALDN - Display Name"},{"t":8,"n":"Alias Spells","c":[{"t":3,"n":"ALSP - Spell"}]},{"t":8,"n":"ALFC - Alias Factions","c":[{"t":3,"n":"ALFC - Faction"}]},{"t":8,"n":"Alias Package Data","c":[{"t":3,"n":"ALPC - Package"}]},{"t":3,"n":"VTCK - Voice Types"},{"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"Targets","d":1,"c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","d":1,"c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":9,"s":1,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"Skill Boost","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"FaceGen Head"},{"t":4,"p":1,"n":"Child"},{"t":4,"p":1,"n":"Tilt Front\/Back"},{"t":4,"p":1,"n":"Tilt Left\/Right"},{"t":4,"p":1,"n":"No Shadow"},{"t":4,"p":1,"n":"Swims"},{"t":4,"p":1,"n":"Flies"},{"t":4,"p":1,"n":"Walks"},{"t":4,"p":1,"n":"Immobile"},{"t":4,"p":1,"n":"Not Pushable"},{"t":4,"p":1,"n":"No Combat In Water"},{"t":4,"p":1,"n":"No Rotating to Head-Track"},{"t":4,"p":1,"n":"Don't Show Blood Spray"},{"t":4,"p":1,"n":"Don't Show Blood Decal"},{"t":4,"p":1,"n":"Uses Head Track Anims"},{"t":4,"p":1,"n":"Spells Align w\/Magic Node"},{"t":4,"p":1,"n":"Use World Raycasts For FootIK"},{"t":4,"p":1,"n":"Allow Ragdoll Collision"},{"t":4,"p":1,"n":"Regen HP In Combat"},{"t":4,"p":1,"n":"Can't Open Doors"},{"t":4,"p":1,"n":"Allow PC Dialogue"},{"t":4,"p":1,"n":"No Knockdowns"},{"t":4,"p":1,"n":"Allow Pickpocket"},{"t":4,"p":1,"n":"Always Use Proxy Controller"},{"t":4,"p":1,"n":"Don't Show Weapon Blood"},{"t":4,"p":1,"n":"Overlay Head Part List"},{"t":4,"p":1,"n":"Override Head Part List"},{"t":4,"p":1,"n":"Can Pickup Items"},{"t":4,"p":1,"n":"Allow Multiple Membrane Shaders"},{"t":4,"p":1,"n":"Can Dual Wield"},{"t":4,"p":1,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","d":1,"c":[{"t":4,"p":1,"n":"Use Advanced Avoidance"},{"t":4,"p":1,"n":"Non-Hostile"},{"t":4,"p":1,"n":"Unknown 2"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"p":1,"n":"Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"p":1,"n":"VNAM - Equipment Flags","d":1,"c":[{"t":4,"p":1,"n":"Hand To Hand Melee"},{"t":4,"p":1,"n":"One Hand Sword"},{"t":4,"p":1,"n":"One Hand Dagger"},{"t":4,"p":1,"n":"One Hand Axe"},{"t":4,"p":1,"n":"One Hand Mace"},{"t":4,"p":1,"n":"Two Hand Sword"},{"t":4,"p":1,"n":"Two Hand Axe"},{"t":4,"p":1,"n":"Bow"},{"t":4,"p":1,"n":"Staff"},{"t":4,"p":1,"n":"Spell"},{"t":4,"p":1,"n":"Shield"},{"t":4,"p":1,"n":"Torch"},{"t":4,"p":1,"n":"Crossbow"}]},{"t":8,"p":1,"n":"Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"p":1,"n":"Male Head Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Male","c":[{"t":3,"p":1,"n":"RPRM - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Male","d":1,"c":[{"t":3,"p":1,"n":"AHCM - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Male","c":[{"t":3,"p":1,"n":"FTSM - Texture Set"}]},{"t":3,"p":1,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"p":1,"n":"Female Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Female","c":[{"t":3,"p":1,"n":"RPRF - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Female","d":1,"c":[{"t":3,"p":1,"n":"AHCF - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Female","c":[{"t":3,"p":1,"n":"FTSF - Texture Set"}]},{"t":3,"p":1,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","d":1,"c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","d":1,"c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]}]},"name":"Smash.All","hash":"D5006E97","color":128} \ No newline at end of file From b28e7620498575b3e94bf0c7144de39f7c4bd4e8 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Fri, 30 Jul 2021 16:23:56 -0400 Subject: [PATCH 47/76] Fix for silently failing to rename smashed patch I forget to close xedit a lot... --- frontend/MatorSmash.res | Bin 6852 -> 6852 bytes frontend/msCore.pas | 51 ++++++++++++++++++++++++++++------------ 2 files changed, 36 insertions(+), 15 deletions(-) diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 50663277e2eaaa62004d27b53646f863ab65554f..1d6ea5e3248104ede8ed1b7e0ac030fb325ba5f2 100755 GIT binary patch delta 14 WcmX?Ndc<@>3G;~uCpVV+N&x^iJO=sz delta 14 VcmX?Ndc<@>33HIgiH+sHQUEV)1?vC+ diff --git a/frontend/msCore.pas b/frontend/msCore.pas index fbb4838..cb08430 100755 --- a/frontend/msCore.pas +++ b/frontend/msCore.pas @@ -1478,27 +1478,48 @@ procedure RenameSavedPlugins; var i: integer; oldFileName, newFileName, bakFileName: string; + next: Boolean; begin // tracker message Tracker.Write(' '); Tracker.Write('Renaming saved plugins'); for i := Pred(SavedPluginPaths.Count) downto 0 do - try - oldFileName := SavedPluginPaths[i]; - newFileName := oldFileName + '.save'; - bakFileName := oldFileName + '.bak'; - Tracker.Write(Format(' Renaming %s to %s', - [ExtractFileName(newFileName), ExtractFileName(oldFileName)])); - if FileExists(bakFileName) then - DeleteFile(bakFileName); - RenameFile(oldFileName, bakFileName); - RenameFile(newFileName, oldFileName); - except - on x: Exception do - Tracker.Write(' Failed to rename ' + newFileName); - end; -end; + begin + next := false; + repeat + begin + try + oldFileName := SavedPluginPaths[i]; + newFileName := oldFileName + '.save'; + bakFileName := oldFileName + '.bak'; + Tracker.Write(Format(' Renaming %s to %s', + [ExtractFileName(newFileName), ExtractFileName(oldFileName)])); + if FileExists(oldFileName) and FileExists(bakFileName) then + DeleteFile(bakFileName); + RenameFile(oldFileName, bakFileName); + if not RenameFile(newFileName, oldFileName) then + raise Exception.Create('Failed to rename file'); + next := true; + except + on x: Exception do + begin + Tracker.Write(' Failed to rename ' + newFileName); + case MessageBox(0, PWideChar('Error saving ' + oldFileName + ': ' + + x.ToString), 'Save Error', MB_ICONWARNING or MB_ABORTRETRYIGNORE or + MB_DEFBUTTON2) of + IDABORT: + raise x; + IDRETRY: + next := false; + IDIGNORE: + next := true; + end; + end; + end; + end + until (next) end; + end; procedure UpdatePluginData; var From d47d1a287d135cc59fde91098512b98a3172e2e2 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sat, 31 Jul 2021 21:38:04 -0400 Subject: [PATCH 48/76] Better array alignment --- frontend/msAlgorithm.pas | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas index 4e0a9a7..e8db9cc 100755 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -256,7 +256,7 @@ procedure BuildKeyList(container: IwbContainerElementRef; var sl: TStringList; function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; obj: ISuperObject; bSingle, bDeletions, bOverride: boolean): boolean; var - i, s_ndx, m_ndx, d_ndx, a_ndx, align_ndx: Integer; + i, s_ndx, m_ndx, d_ndx, a_ndx: Integer; se, de: IwbElement; slMst, slDst, slSrc: TStringList; srcCont, dstCont, mstCont, seCont: IwbContainerElementRef; @@ -314,7 +314,6 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; // ELEMENT ADDITION: // Copy array elements in source that aren't in master // or destination - align_ndx := 0; for i := 0 to Pred(slSrc.Count) do begin d_ndx := slDst.IndexOf(slSrc[i]); @@ -338,14 +337,16 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; end else begin - a_ndx := Min(i + align_ndx, dstCont.ElementCount); + a_ndx := Min(i, dstCont.ElementCount); if settings.debugArrays then Tracker.Write(' > Adding element at ' + dstCont.FullPath + ' at index ' + a_ndx.ToString + ' with key: ' + slSrc[i]); - de := dstCont.Assign(a_ndx, se, false); - align_ndx := align_ndx + 1; + de := dstCont.Assign(dstCont.ElementCount, se, false); + dstCont.ResetMemoryOrder; + // Just inserting at a_ndx didn't work right... + while de.MemoryOrder > a_ndx do + de.MoveUp; slDst.Insert(a_ndx, slSrc[i]); - // slDst.Add(slSrc[i]); end; end @@ -378,6 +379,7 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; end; end; end; + //dstCont.ResetMemoryOrder; finally // free lists slMst.Free; From e1b465b3f9db7c9e5a98b4a65f327e8999636f00 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sat, 31 Jul 2021 22:41:27 -0400 Subject: [PATCH 49/76] Always compare array elements by SortKey? It exists even if the array is not sorted. Fixes error from confusion when mods change EditorID of elements. --- frontend/MatorSmash.res | Bin 6852 -> 6852 bytes frontend/msAlgorithm.pas | 15 +++++---------- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 1d6ea5e3248104ede8ed1b7e0ac030fb325ba5f2..a661bf7f5ceb36338d174db1d3cfd9a705147115 100755 GIT binary patch delta 14 VcmX?Ndc<@>2{V)Bsg32nQUEON1&#m! delta 14 WcmX?Ndc<@>3G;~uCpVV+N&x^iJO=sz diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas index e8db9cc..d954076 100755 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -212,8 +212,7 @@ function GetMasterElement(src, se: IwbElement; dstRec: IwbMainRecord) Creates a list of element keys for elements in @container in a stringlist @sl. Uses SortKey if @bUseSortKeys is true, else uses GetAllValues. } -procedure BuildKeyList(container: IwbContainerElementRef; var sl: TStringList; - bUseSortKeys: boolean); +procedure BuildKeyList(container: IwbContainerElementRef; var sl: TStringList); var i, n: Integer; childElement: IwbElement; @@ -224,11 +223,7 @@ procedure BuildKeyList(container: IwbContainerElementRef; var sl: TStringList; begin childElement := container.Elements[i]; - // use sort if bUseSortKeys is true, else use GetAllValues - if bUseSortKeys then - key := childElement.SortKey[false] - else - key := GetAllValues(childElement); + key := childElement.SortKey[false]; // find a non-colliding key n := 0; @@ -280,9 +275,9 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; slMst := TStringList.Create; slDst := TStringList.Create; try - BuildKeyList(srcCont, slSrc, bSorted); - BuildKeyList(mstCont, slMst, bSorted); - BuildKeyList(dstCont, slDst, bSorted); + BuildKeyList(srcCont, slSrc); + BuildKeyList(mstCont, slMst); + BuildKeyList(dstCont, slDst); // ELEMENT DELETION: // Remove elements that are in master and destination, but From 77b4c1ede807444e42453db4954ca55272f5a176 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 1 Aug 2021 19:21:27 -0400 Subject: [PATCH 50/76] Fix for smashing parents before children --- frontend/MatorSmash.dproj | 4 ++-- frontend/MatorSmash.res | Bin 6852 -> 4812 bytes frontend/msSmash.pas | 14 +++++++------- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index c9c1129..e496aa3 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -3,12 +3,12 @@ {12317C9C-736E-45A4-8CB7-E43FF92DD93C} MatorSmash.dpr True - Release + Debug Application VCL DCC32 18.8 - Win64 + Win32 3 Win32 diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index a661bf7f5ceb36338d174db1d3cfd9a705147115..6b5360d8ec5b84028d49ede15e6ca8074659f1a3 100755 GIT binary patch delta 116 zcmX?NdPa4Ef|3Ix1A_ts1H=FS0zeGp0D%DmCkvPXBpetgI_a@9F)%XdK0Q6LT$O17 z!^C+?qBTG%Mxa7xAhrZz69!iXlgXlt%DjdQdJINDYyiTOFEUmz@@)2E;uDb{n^6k`Y?` z09=Un&P(tLoDf%@CzL%i_GUK`Xm>{L>8`4-uj;ER&)*OJ^nRn--5o+GA>{J%LwrWK zBg7=*TiphiyE_+O>hBY>Lw3TyF3uk8WTT7UwP#R3e8TSc3GNBmBX>~#l%ymh zKpx|xNK7g`m!!s3lA`l`KscTyYK};bdqqwOx%lVv#wI$t+dhPRPd-J5hiE9t39cN? z=jgco#3;+r7I2MFQ=xZfX>YSc!Ls@PTWDdb$SJdG=BdD7i^H6IgszsUZpYaN| zF`w3Txoa4ku=PG{9iujm4(5h!nx64P@2>Nv?bX!+j541ZTYql=6rfZK(zML{4;0IP z6Xg)916icCte)EgRO@+@tg&Wc$hJ>*x>51w6^1(E1e8z+tng~%WGkrmH}&ju*%o+? z=5<=HI)+=8>s5)3fUu6O^}>SZC_LB}USE^eDE*Plb6K!QvZyPWso_T7biQu3-$7F@ zBCPAzusW7M0(PbEg1T``p8}mfrV(WFjN**7 zqYR3oEme!MlvPa=S<%h-(dQ|?hbUth7T(`jfcWl+&c#go8En(CTyMfG&-Iz>#2({b zlK?Z#KmdRvoWy*g8C^hcgFm?$+wm+Xh(gXh5h8XH2^N4Y7;kLXHEr8VLWj55Z<%^< zGqlU?#16n=o)d-4bzO@^JdBy}L*eqqaNM0h5*JRb5FA#y$*kJ}bBUhBcB Vaiv+?X2-YY`aca1FMs`b|6h3Db%Ou^ diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 5184d36..b695fa5 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -178,27 +178,27 @@ procedure ListParents(const rec: IwbMainRecord; var parents: TInterfaceList); begin if parents.IndexOf(grup.ChildrenOf) = -1 then begin - parents.Insert(0, grup.ChildrenOf); + parents.Add(grup.ChildrenOf); ListParents(grup.ChildrenOf, parents); end end; end; -procedure AddParents(var patch: TPatch; const rec: IwbElement); +procedure AddParents(var patchFile: IwbFile; const rec: IwbElement); var grup: IwbGroupRecord; begin if Supports(rec.Container, IwbGroupRecord, grup) and Assigned(grup.ChildrenOf) then begin - if not Assigned(patch.plugin._File.RecordByFormID[grup.ChildrenOf.FormID, + if not Assigned(patchFile.RecordByFormID[grup.ChildrenOf.FormID, true, true]) then begin - AddParents(patch, grup.ChildrenOf); + AddParents(patchFile, grup.ChildrenOf); Tracker.Write(Format('Copying parent record %s of %s', [grup.ChildrenOf.Name, rec.Name])); - AddRequiredMasters(patch.plugin._File, grup.ChildrenOf); - grup.ChildrenOf.CopyInto(patch.plugin._File, false, false, '', + AddRequiredMasters(patchFile, grup.ChildrenOf); + grup.ChildrenOf.CopyInto(patchFile, false, false, '', '', '', ''); end end; @@ -398,7 +398,7 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); else e := WinningOverrideInFiles(rec, patch.plugins); // be sure we include the parent? - AddParents(patch, e); + AddParents(patchFile, e); Tracker.Write(Format(' [%d] Copying record %s from %s', [i + 1, e.Name, e._File.Name])); AddRequiredMasters(patchFile, e); From be6e22327821d7a6cb2c3ff5370bcc24c4e75c92 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Mon, 2 Aug 2021 21:40:06 -0400 Subject: [PATCH 51/76] Better solution for changing editorid --- frontend/msAlgorithm.pas | 15 ++++++++++----- lib/mte/mteBase.pas | 6 ++++-- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas index d954076..889e24e 100755 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -212,7 +212,8 @@ function GetMasterElement(src, se: IwbElement; dstRec: IwbMainRecord) Creates a list of element keys for elements in @container in a stringlist @sl. Uses SortKey if @bUseSortKeys is true, else uses GetAllValues. } -procedure BuildKeyList(container: IwbContainerElementRef; var sl: TStringList); +procedure BuildKeyList(container: IwbContainerElementRef; var sl: TStringList; + bUseSortKeys: Boolean); var i, n: Integer; childElement: IwbElement; @@ -223,7 +224,11 @@ procedure BuildKeyList(container: IwbContainerElementRef; var sl: TStringList); begin childElement := container.Elements[i]; - key := childElement.SortKey[false]; + // use sort if bUseSortKeys is true, else use GetAllValues + if bUseSortKeys then + key := childElement.SortKey[false] + else + key := GetAllValues(childElement); // find a non-colliding key n := 0; @@ -275,9 +280,9 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; slMst := TStringList.Create; slDst := TStringList.Create; try - BuildKeyList(srcCont, slSrc); - BuildKeyList(mstCont, slMst); - BuildKeyList(dstCont, slDst); + BuildKeyList(srcCont, slSrc, bSorted); + BuildKeyList(mstCont, slMst, bSorted); + BuildKeyList(dstCont, slDst, bSorted); // ELEMENT DELETION: // Remove elements that are in master and destination, but diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index 6a339b1..64063ea 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -652,9 +652,11 @@ function GetAllValues(e: IwbElement): string; i: Integer; c: IwbContainerElementRef; begin - Result := e.EditValue; - if not Supports(e, IwbContainerElementRef, c) then + if (GetSmashType(e) = stInteger) or not Supports(e, IwbContainerElementRef, c) then begin + Result := e.SortKey[false]; exit; + end; + Result := e.EditValue; // loop through children elements for i := 0 to Pred(c.ElementCount) do From 59c3a372c13504a30f31b4b416ff176984fd369d Mon Sep 17 00:00:00 2001 From: chuck <> Date: Tue, 3 Aug 2021 14:39:43 -0400 Subject: [PATCH 52/76] Look at "diffs" relative to all masters. --- frontend/msSmash.pas | 31 ++++++++++++++++++++----------- lib/mte/mteBase.pas | 21 ++++++++++++++++++--- 2 files changed, 38 insertions(+), 14 deletions(-) diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index b695fa5..142d808 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -3,7 +3,7 @@ interface uses - Windows, SysUtils, Classes, ShellAPI, Controls, Dialogs, + Windows, SysUtils, Classes, ShellAPI, Controls, Dialogs, Generics.Collections, // superobject superobject, // mte units @@ -321,9 +321,10 @@ function HasPartialFormFlag(rec: IwbMainRecord): boolean; procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); var - i, j: Integer; + i, j, k: Integer; incProgress, currentProgress: Real; rec, mst, ovr, patchRec: IwbMainRecord; + msts: TList; f, patchFile, forceFile: IwbFile; plugin: TPlugin; aSetting: TSmashSetting; @@ -428,15 +429,23 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); if (wbGameMode = gmFO4) and HasPartialFormFlag(ovr) then bDeletions := false; bOverride := recObj.i['o'] = 1; - if bForce then - mst := e as IwbMainRecord - else - mst := WinningOverrideInFiles(rec, plugin.Masters); - Tracker.Write(Format(' Smashing override of %s from: %s, master: %s, masters: %s', - [ovr.Name, f.filename, mst._File.filename, String.join(',', plugin.masters.ToStringArray)])); - AddRequiredMasters(patch.plugin._File, ovr); - rcore(IwbElement(ovr), IwbElement(mst), IwbElement(patchRec), patchRec, - recObj, false, bDeletions, bOverride); + msts := TList.Create; + try + if bForce then + msts.Add(e as IwbMainRecord) + else + OverridesInFiles(rec, plugin.Masters, msts); + for k := 0 to Pred(msts.Count) do begin + mst := msts.Items[k]; + Tracker.Write(Format(' Smashing override of %s from: %s, master: %s, masters: %s', + [ovr.Name, f.filename, mst._File.filename, String.join(',', plugin.masters.ToStringArray)])); + AddRequiredMasters(patch.plugin._File, ovr); + rcore(IwbElement(ovr), IwbElement(mst), IwbElement(patchRec), patchRec, + recObj, false, bDeletions, bOverride); + end; + finally + msts.Free; + end except on x: Exception do begin diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index 64063ea..7bd2ae7 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -3,7 +3,7 @@ interface uses - Classes, Menus, + Classes, Menus, Generics.Collections, // third party libraries superobject, // mte units @@ -71,6 +71,7 @@ function HasStructChildren(e: IwbElement): boolean; function HasStructChildrenDef(def: IwbNamedDef): boolean; function WinningOverrideInFiles(rec: IwbMainRecord; var sl: TStringList) : IwbMainRecord; +procedure OverridesInFiles(rec: IwbMainRecord; var sl: TStringList; var rl: TList); function IsOverride(aRecord: IwbMainRecord): boolean; function ExtractFormID(filename: string): string; function RemoveFileIndex(formID: string): string; @@ -706,8 +707,7 @@ function HasStructChildren(e: IwbElement): boolean; Result := GetSmashType(Container.Elements[0]) = stStruct; end; -{ Returns the most-winning override of @rec from the - files listed in @sl } +{ Returns the most-winning override of @rec from the files listed in @sl } function WinningOverrideInFiles(rec: IwbMainRecord; var sl: TStringList) : IwbMainRecord; var @@ -726,6 +726,21 @@ function WinningOverrideInFiles(rec: IwbMainRecord; var sl: TStringList) end; end; +{ Returns the overrides of @rec from the files listed in @sl } +procedure OverridesInFiles(rec: IwbMainRecord; var sl: TStringList; var rl: TList); +var + i: Integer; + ovr: IwbMainRecord; +begin + rl.Add(rec.MasterOrSelf); + for i := 0 to Pred(rec.OverrideCount) do + begin + ovr := rec.Overrides[i]; + if sl.IndexOf(ovr._File.filename) > -1 then + rl.Add(ovr); + end; +end; + { Returns true if the input record is an override record } function IsOverride(aRecord: IwbMainRecord): boolean; begin From 59dfdb65c3d847b0a1327054a0d1c8730b1d2af1 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Tue, 3 Aug 2021 20:18:06 -0400 Subject: [PATCH 53/76] Treat non-existent master arrays as empty --- frontend/msAlgorithm.pas | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas index 889e24e..31cf823 100755 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -267,7 +267,7 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; // exit if input array elements can't be treated as a containers if not Supports(src, IwbContainerElementRef, srcCont) then exit; - if not Supports(mst, IwbContainerElementRef, mstCont) then + if Assigned(mst) and not Supports(mst, IwbContainerElementRef, mstCont) then exit; if not Supports(dst, IwbContainerElementRef, dstCont) then exit; @@ -281,7 +281,8 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; slDst := TStringList.Create; try BuildKeyList(srcCont, slSrc, bSorted); - BuildKeyList(mstCont, slMst, bSorted); + if Assigned(mst) then + BuildKeyList(mstCont, slMst, bSorted); BuildKeyList(dstCont, slDst, bSorted); // ELEMENT DELETION: @@ -634,9 +635,7 @@ function HandleElement(se, me, de: IwbElement; dstRec: IwbMainRecord; // exit if master element not assigned and not array if not Assigned(me) then begin - if bCanAdd and (srcType in stArrays) then - me := de - else + if not (bCanAdd and (srcType in stArrays)) then begin if settings.debugSkips then begin From 6619ecfdf21768949825a06095249fe9fc546355 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Wed, 4 Aug 2021 16:10:08 -0400 Subject: [PATCH 54/76] Fix for remove not always removing the element --- frontend/msAlgorithm.pas | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/frontend/msAlgorithm.pas b/frontend/msAlgorithm.pas index 31cf823..4058af4 100755 --- a/frontend/msAlgorithm.pas +++ b/frontend/msAlgorithm.pas @@ -307,7 +307,7 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; if settings.debugArrays then Tracker.Write(' > Removing element at ' + dst.FullPath + ' with key: ' + slMst[i]); - dstCont.RemoveElement(d_ndx); + dstCont.RemoveElement(d_ndx, true); slDst.Delete(d_ndx); end; end; @@ -380,7 +380,6 @@ function MergeArray(src, mst, dst: IwbElement; dstRec: IwbMainRecord; end; end; end; - //dstCont.ResetMemoryOrder; finally // free lists slMst.Free; From 1c7aaa2861e768e376c4f0740a750c898ef98aed Mon Sep 17 00:00:00 2001 From: chuck <> Date: Wed, 4 Aug 2021 20:07:49 -0400 Subject: [PATCH 55/76] Workaround for MasterOrSelf giving wrong master. Need to figure out what I do wrong to make that happen. Especially seems to happen with USMP? This workaround is not perfect, but less broken than before... --- frontend/msSmash.pas | 2 +- lib/mte/mteBase.pas | 18 +++++++++++------- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 142d808..42d09ed 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -434,7 +434,7 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); if bForce then msts.Add(e as IwbMainRecord) else - OverridesInFiles(rec, plugin.Masters, msts); + OverridesInMasters(ovr, msts); for k := 0 to Pred(msts.Count) do begin mst := msts.Items[k]; Tracker.Write(Format(' Smashing override of %s from: %s, master: %s, masters: %s', diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index 7bd2ae7..7520fc1 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -71,7 +71,7 @@ function HasStructChildren(e: IwbElement): boolean; function HasStructChildrenDef(def: IwbNamedDef): boolean; function WinningOverrideInFiles(rec: IwbMainRecord; var sl: TStringList) : IwbMainRecord; -procedure OverridesInFiles(rec: IwbMainRecord; var sl: TStringList; var rl: TList); +procedure OverridesInMasters(rec: IwbMainRecord; var rl: TList); function IsOverride(aRecord: IwbMainRecord): boolean; function ExtractFormID(filename: string): string; function RemoveFileIndex(formID: string): string; @@ -726,17 +726,21 @@ function WinningOverrideInFiles(rec: IwbMainRecord; var sl: TStringList) end; end; -{ Returns the overrides of @rec from the files listed in @sl } -procedure OverridesInFiles(rec: IwbMainRecord; var sl: TStringList; var rl: TList); +{ Returns the overrides of @rec from the masters of its file } +procedure OverridesInMasters(rec: IwbMainRecord; var rl: TList); var i: Integer; + f: IwbFile; + id: TwbFormID; ovr: IwbMainRecord; begin - rl.Add(rec.MasterOrSelf); - for i := 0 to Pred(rec.OverrideCount) do + f := rec._File; + id := rec.FormID; + // TODO: Why does rec.Master sometimes return the wrong record?? + for i := 0 to Pred(f.MasterCount[false]) do begin - ovr := rec.Overrides[i]; - if sl.IndexOf(ovr._File.filename) > -1 then + ovr := f.Masters[i, false].RecordByFormID[id, true, false]; + if Assigned(ovr) then rl.Add(ovr); end; end; From 4ba9b2fa36a2857f9e747c0c60453a164d7b1fc3 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Wed, 4 Aug 2021 20:11:39 -0400 Subject: [PATCH 56/76] Fix message indentation --- frontend/msSmash.pas | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 42d09ed..9c6d00f 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -124,7 +124,7 @@ procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); try el.ReportRequiredMasters(slMasters, false, true, false); if settings.debugMasters then - Tracker.Write('Element ' + el.Name + ' from ' + el._File.filename + + Tracker.Write(' Element ' + el.Name + ' from ' + el._File.filename + ' requires masters: ' + slMasters.CommaText); for i := 0 to Pred(aFile.MasterCount[true]) do @@ -152,7 +152,7 @@ procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); Logger.Write('PATCH', 'MASTERS', 'Added masters: ' + slMasters.CommaText); if settings.debugMasters then - Tracker.Write('Adding masters: ' + slMasters.CommaText); + Tracker.Write(' Adding masters: ' + slMasters.CommaText); end; except on x: Exception do From 0866bfeb89b6d4930f58ea4463738caa945b5038 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Wed, 4 Aug 2021 20:30:39 -0400 Subject: [PATCH 57/76] List myself as v2 author? --- frontend/msSmashForm.pas | 1 + frontend/msSplashForm.dfm | 19 +++++++++++++++++-- frontend/msSplashForm.pas | 1 + 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/frontend/msSmashForm.pas b/frontend/msSmashForm.pas index 938a99d..5cc0280 100755 --- a/frontend/msSmashForm.pas +++ b/frontend/msSmashForm.pas @@ -740,6 +740,7 @@ procedure TSmashForm.UpdateApplicationDetails; // add details items AddDetailsItem(GetLanguageString('msMain_Application'), 'Mator Smash'); AddDetailsItem(GetLanguageString('msMain_Author'), 'matortheeternal'); + AddDetailsItem('v2 ' + GetLanguageString('msMain_Author'), 'chuckseven1'); AddDetailsItem(GetLanguageString('msMain_Version'), ProgramStatus.Version); AddDetailsItem(GetLanguageString('msMain_DateBuilt'), DateTimeToStr(GetLastModified(ParamStr(0)))); diff --git a/frontend/msSplashForm.dfm b/frontend/msSplashForm.dfm index 65a3751..bde45f7 100755 --- a/frontend/msSplashForm.dfm +++ b/frontend/msSplashForm.dfm @@ -14044,9 +14044,9 @@ object SplashForm: TSplashForm object lblAuthor: TLabel Left = 24 Top = 168 - Width = 93 + Width = 133 Height = 13 - Caption = 'by matortheeternal' + Caption = 'created by matortheeternal' Color = clWhite Font.Charset = DEFAULT_CHARSET Font.Color = clBlack @@ -14089,4 +14089,19 @@ object SplashForm: TSplashForm ParentColor = False ParentFont = False end + object lblAuthor2: TLabel + Left = 24 + Top = 181 + Width = 92 + Height = 13 + Caption = 'v2 by chuckseven1' + Color = clWhite + Font.Charset = DEFAULT_CHARSET + Font.Color = clBlack + Font.Height = -11 + Font.Name = 'Tahoma' + Font.Style = [] + ParentColor = False + ParentFont = False + end end diff --git a/frontend/msSplashForm.pas b/frontend/msSplashForm.pas index 28e80f7..a077ab2 100755 --- a/frontend/msSplashForm.pas +++ b/frontend/msSplashForm.pas @@ -17,6 +17,7 @@ TSplashForm = class(TForm) lblAuthor: TLabel; lblProgress: TLabel; lblVersion: TLabel; + lblAuthor2: TLabel; procedure ProgressMessage(const s: string); procedure FormCreate(Sender: TObject); private From e9a227d45c0051334e337350849ba956538790a0 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Wed, 4 Aug 2021 20:31:42 -0400 Subject: [PATCH 58/76] More tweaks to my Smash.All --- frontend/settings/Skyrim/Smash.All.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/settings/Skyrim/Smash.All.json b/frontend/settings/Skyrim/Smash.All.json index e8dfbf3..f1940d8 100755 --- a/frontend/settings/Skyrim/Smash.All.json +++ b/frontend/settings/Skyrim/Smash.All.json @@ -1 +1 @@ -{"records":"AACT,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,Play,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,ACHR","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 7\/29\/2021.","tree":{"records":[{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"p":1,"n":"Relations","d":1,"c":[{"t":6,"s":1,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Unknown 4"},{"t":4,"p":1,"n":"Unknown 5"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"p":1,"n":"Unknown 18"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Unknown 22"},{"t":4,"p":1,"n":"Unknown 23"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Unknown 27"},{"t":4,"p":1,"n":"Unknown 28"},{"t":4,"p":1,"n":"Unknown 29"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"p":1,"n":"Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","d":1,"c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unknown 7"},{"t":4,"p":1,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"p":1,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"p":1,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"s":1,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"s":1,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"s":1,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"p":1,"n":"Unknown 9"},{"t":4,"p":1,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Unknown 12"},{"t":4,"p":1,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"p":1,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"p":1,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"p":1,"n":"Unknown 22"},{"t":4,"p":1,"n":"Unknown 23"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level","lf":"Calc max level"},{"t":3,"p":1,"n":"Calc max level","lt":"Calc min level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"Sound Types","d":1,"c":[{"t":6,"p":1,"n":"Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"Player Reference","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"s":1,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"Stages","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"p":1,"n":"SCHR - Unused"},{"t":11,"p":1,"n":"SCTX - Unused"},{"t":11,"p":1,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"p":1,"n":"Unused"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","d":1,"c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"s":1,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"s":1,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"s":1,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"n":"Alias","c":[{"t":3,"n":"ALLS - Location Alias ID"},{"t":2,"n":"ALID - Alias Name"},{"t":6,"n":"FNAM - Alias Flags","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Reserves Location\/Reference"},{"t":4,"n":"Optional"},{"t":4,"n":"Quest Object"},{"t":4,"n":"Allow Reuse in Quest"},{"t":4,"n":"Allow Dead"},{"t":4,"n":"Matching Ref - In Loaded Area"},{"t":4,"n":"Essential"},{"t":4,"n":"Allow Disabled"},{"t":4,"n":"Stores Text"},{"t":4,"n":"Allow Reserved"},{"t":4,"n":"Protected"},{"t":4,"n":"Forced by Aliases?"},{"t":4,"n":"Allow Destroyed"},{"t":4,"n":"Matching Ref - Closest"},{"t":4,"n":"Uses Stored Text"},{"t":4,"n":"Initially Disabled"}]},{"t":3,"n":"Additional Flags","c":[{"t":4,"n":"Allow Cleared"},{"t":4,"n":"Clear Names When Removed"}]}]},{"t":3,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"n":"ALFL - Specific Location"},{"t":3,"n":"ALFR - Forced Reference"},{"t":3,"n":"ALUA - Unique Actor"},{"t":6,"n":"Location Alias Reference","c":[{"t":3,"n":"ALFA - Alias"},{"t":3,"n":"KNAM - Keyword"},{"t":3,"n":"ALRT - Ref Type"}]},{"t":6,"n":"External Alias Reference","c":[{"t":3,"n":"ALEQ - Quest"},{"t":3,"n":"ALEA - Alias"}]},{"t":6,"n":"Create Reference to Object","c":[{"t":3,"n":"ALCO - Object"},{"t":6,"n":"ALCA - Alias","c":[{"t":3,"n":"Alias"},{"t":3,"n":"Create"}]},{"t":3,"n":"ALCL - Level"}]},{"t":6,"n":"Find Matching Reference Near Alias","c":[{"t":3,"n":"ALNA - Alias"},{"t":3,"n":"ALNT - Type"}]},{"t":6,"n":"Find Matching Reference From Event","c":[{"t":2,"n":"ALFE - From Event"},{"t":11,"n":"ALFD - Event Data"}]},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"ALDN - Display Name"},{"t":8,"n":"Alias Spells","c":[{"t":3,"n":"ALSP - Spell"}]},{"t":8,"n":"ALFC - Alias Factions","c":[{"t":3,"n":"ALFC - Faction"}]},{"t":8,"n":"Alias Package Data","c":[{"t":3,"n":"ALPC - Package"}]},{"t":3,"n":"VTCK - Voice Types"},{"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"Targets","d":1,"c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","d":1,"c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":9,"s":1,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"Skill Boost","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"FaceGen Head"},{"t":4,"p":1,"n":"Child"},{"t":4,"p":1,"n":"Tilt Front\/Back"},{"t":4,"p":1,"n":"Tilt Left\/Right"},{"t":4,"p":1,"n":"No Shadow"},{"t":4,"p":1,"n":"Swims"},{"t":4,"p":1,"n":"Flies"},{"t":4,"p":1,"n":"Walks"},{"t":4,"p":1,"n":"Immobile"},{"t":4,"p":1,"n":"Not Pushable"},{"t":4,"p":1,"n":"No Combat In Water"},{"t":4,"p":1,"n":"No Rotating to Head-Track"},{"t":4,"p":1,"n":"Don't Show Blood Spray"},{"t":4,"p":1,"n":"Don't Show Blood Decal"},{"t":4,"p":1,"n":"Uses Head Track Anims"},{"t":4,"p":1,"n":"Spells Align w\/Magic Node"},{"t":4,"p":1,"n":"Use World Raycasts For FootIK"},{"t":4,"p":1,"n":"Allow Ragdoll Collision"},{"t":4,"p":1,"n":"Regen HP In Combat"},{"t":4,"p":1,"n":"Can't Open Doors"},{"t":4,"p":1,"n":"Allow PC Dialogue"},{"t":4,"p":1,"n":"No Knockdowns"},{"t":4,"p":1,"n":"Allow Pickpocket"},{"t":4,"p":1,"n":"Always Use Proxy Controller"},{"t":4,"p":1,"n":"Don't Show Weapon Blood"},{"t":4,"p":1,"n":"Overlay Head Part List"},{"t":4,"p":1,"n":"Override Head Part List"},{"t":4,"p":1,"n":"Can Pickup Items"},{"t":4,"p":1,"n":"Allow Multiple Membrane Shaders"},{"t":4,"p":1,"n":"Can Dual Wield"},{"t":4,"p":1,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","d":1,"c":[{"t":4,"p":1,"n":"Use Advanced Avoidance"},{"t":4,"p":1,"n":"Non-Hostile"},{"t":4,"p":1,"n":"Unknown 2"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"p":1,"n":"Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"p":1,"n":"VNAM - Equipment Flags","d":1,"c":[{"t":4,"p":1,"n":"Hand To Hand Melee"},{"t":4,"p":1,"n":"One Hand Sword"},{"t":4,"p":1,"n":"One Hand Dagger"},{"t":4,"p":1,"n":"One Hand Axe"},{"t":4,"p":1,"n":"One Hand Mace"},{"t":4,"p":1,"n":"Two Hand Sword"},{"t":4,"p":1,"n":"Two Hand Axe"},{"t":4,"p":1,"n":"Bow"},{"t":4,"p":1,"n":"Staff"},{"t":4,"p":1,"n":"Spell"},{"t":4,"p":1,"n":"Shield"},{"t":4,"p":1,"n":"Torch"},{"t":4,"p":1,"n":"Crossbow"}]},{"t":8,"p":1,"n":"Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"p":1,"n":"Male Head Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Male","c":[{"t":3,"p":1,"n":"RPRM - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Male","d":1,"c":[{"t":3,"p":1,"n":"AHCM - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Male","c":[{"t":3,"p":1,"n":"FTSM - Texture Set"}]},{"t":3,"p":1,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"p":1,"n":"Female Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Female","c":[{"t":3,"p":1,"n":"RPRF - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Female","d":1,"c":[{"t":3,"p":1,"n":"AHCF - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Female","c":[{"t":3,"p":1,"n":"FTSF - Texture Set"}]},{"t":3,"p":1,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","d":1,"c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","d":1,"c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]}]},"name":"Smash.All","hash":"D5006E97","color":128} \ No newline at end of file +{"records":"AACT,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,Play,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,ACHR","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 8\/4\/2021.","tree":{"records":[{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"p":1,"n":"Relations","d":1,"c":[{"t":6,"s":1,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Unknown 4"},{"t":4,"p":1,"n":"Unknown 5"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"p":1,"n":"Unknown 18"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Unknown 22"},{"t":4,"p":1,"n":"Unknown 23"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Unknown 27"},{"t":4,"p":1,"n":"Unknown 28"},{"t":4,"p":1,"n":"Unknown 29"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"p":1,"n":"Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","d":1,"c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unknown 7"},{"t":4,"p":1,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"p":1,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"p":1,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"s":1,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"s":1,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"s":1,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level","lf":"Calc max level"},{"t":3,"p":1,"n":"Calc max level","lt":"Calc min level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","d":1,"c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"Sound Types","d":1,"c":[{"t":6,"p":1,"n":"Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"Player Reference","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"s":1,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"Stages","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"p":1,"n":"SCHR - Unused"},{"t":11,"p":1,"n":"SCTX - Unused"},{"t":11,"p":1,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"p":1,"n":"Unused"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","d":1,"c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"s":1,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"s":1,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"s":1,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"n":"Alias","c":[{"t":3,"n":"ALLS - Location Alias ID"},{"t":2,"n":"ALID - Alias Name"},{"t":6,"n":"FNAM - Alias Flags","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Reserves Location\/Reference"},{"t":4,"n":"Optional"},{"t":4,"n":"Quest Object"},{"t":4,"n":"Allow Reuse in Quest"},{"t":4,"n":"Allow Dead"},{"t":4,"n":"Matching Ref - In Loaded Area"},{"t":4,"n":"Essential"},{"t":4,"n":"Allow Disabled"},{"t":4,"n":"Stores Text"},{"t":4,"n":"Allow Reserved"},{"t":4,"n":"Protected"},{"t":4,"n":"Forced by Aliases?"},{"t":4,"n":"Allow Destroyed"},{"t":4,"n":"Matching Ref - Closest"},{"t":4,"n":"Uses Stored Text"},{"t":4,"n":"Initially Disabled"}]},{"t":3,"n":"Additional Flags","c":[{"t":4,"n":"Allow Cleared"},{"t":4,"n":"Clear Names When Removed"}]}]},{"t":3,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"n":"ALFL - Specific Location"},{"t":3,"n":"ALFR - Forced Reference"},{"t":3,"n":"ALUA - Unique Actor"},{"t":6,"n":"Location Alias Reference","c":[{"t":3,"n":"ALFA - Alias"},{"t":3,"n":"KNAM - Keyword"},{"t":3,"n":"ALRT - Ref Type"}]},{"t":6,"n":"External Alias Reference","c":[{"t":3,"n":"ALEQ - Quest"},{"t":3,"n":"ALEA - Alias"}]},{"t":6,"n":"Create Reference to Object","c":[{"t":3,"n":"ALCO - Object"},{"t":6,"n":"ALCA - Alias","c":[{"t":3,"n":"Alias"},{"t":3,"n":"Create"}]},{"t":3,"n":"ALCL - Level"}]},{"t":6,"n":"Find Matching Reference Near Alias","c":[{"t":3,"n":"ALNA - Alias"},{"t":3,"n":"ALNT - Type"}]},{"t":6,"n":"Find Matching Reference From Event","c":[{"t":2,"n":"ALFE - From Event"},{"t":11,"n":"ALFD - Event Data"}]},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"ALDN - Display Name"},{"t":8,"n":"Alias Spells","c":[{"t":3,"n":"ALSP - Spell"}]},{"t":8,"n":"ALFC - Alias Factions","c":[{"t":3,"n":"ALFC - Faction"}]},{"t":8,"n":"Alias Package Data","c":[{"t":3,"n":"ALPC - Package"}]},{"t":3,"n":"VTCK - Voice Types"},{"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"Targets","d":1,"c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","d":1,"c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":9,"s":1,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"Skill Boost","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"FaceGen Head"},{"t":4,"p":1,"n":"Child"},{"t":4,"p":1,"n":"Tilt Front\/Back"},{"t":4,"p":1,"n":"Tilt Left\/Right"},{"t":4,"p":1,"n":"No Shadow"},{"t":4,"p":1,"n":"Swims"},{"t":4,"p":1,"n":"Flies"},{"t":4,"p":1,"n":"Walks"},{"t":4,"p":1,"n":"Immobile"},{"t":4,"p":1,"n":"Not Pushable"},{"t":4,"p":1,"n":"No Combat In Water"},{"t":4,"p":1,"n":"No Rotating to Head-Track"},{"t":4,"p":1,"n":"Don't Show Blood Spray"},{"t":4,"p":1,"n":"Don't Show Blood Decal"},{"t":4,"p":1,"n":"Uses Head Track Anims"},{"t":4,"p":1,"n":"Spells Align w\/Magic Node"},{"t":4,"p":1,"n":"Use World Raycasts For FootIK"},{"t":4,"p":1,"n":"Allow Ragdoll Collision"},{"t":4,"p":1,"n":"Regen HP In Combat"},{"t":4,"p":1,"n":"Can't Open Doors"},{"t":4,"p":1,"n":"Allow PC Dialogue"},{"t":4,"p":1,"n":"No Knockdowns"},{"t":4,"p":1,"n":"Allow Pickpocket"},{"t":4,"p":1,"n":"Always Use Proxy Controller"},{"t":4,"p":1,"n":"Don't Show Weapon Blood"},{"t":4,"p":1,"n":"Overlay Head Part List"},{"t":4,"p":1,"n":"Override Head Part List"},{"t":4,"p":1,"n":"Can Pickup Items"},{"t":4,"p":1,"n":"Allow Multiple Membrane Shaders"},{"t":4,"p":1,"n":"Can Dual Wield"},{"t":4,"p":1,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","d":1,"c":[{"t":4,"p":1,"n":"Use Advanced Avoidance"},{"t":4,"p":1,"n":"Non-Hostile"},{"t":4,"p":1,"n":"Unknown 2"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"s":1,"p":1,"n":"Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"p":1,"n":"VNAM - Equipment Flags","d":1,"c":[{"t":4,"p":1,"n":"Hand To Hand Melee"},{"t":4,"p":1,"n":"One Hand Sword"},{"t":4,"p":1,"n":"One Hand Dagger"},{"t":4,"p":1,"n":"One Hand Axe"},{"t":4,"p":1,"n":"One Hand Mace"},{"t":4,"p":1,"n":"Two Hand Sword"},{"t":4,"p":1,"n":"Two Hand Axe"},{"t":4,"p":1,"n":"Bow"},{"t":4,"p":1,"n":"Staff"},{"t":4,"p":1,"n":"Spell"},{"t":4,"p":1,"n":"Shield"},{"t":4,"p":1,"n":"Torch"},{"t":4,"p":1,"n":"Crossbow"}]},{"t":8,"p":1,"n":"Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"p":1,"n":"Male Head Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Male","c":[{"t":3,"p":1,"n":"RPRM - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Male","d":1,"c":[{"t":3,"p":1,"n":"AHCM - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Male","c":[{"t":3,"p":1,"n":"FTSM - Texture Set"}]},{"t":3,"p":1,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"p":1,"n":"Female Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Female","c":[{"t":3,"p":1,"n":"RPRF - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Female","d":1,"c":[{"t":3,"p":1,"n":"AHCF - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Female","c":[{"t":3,"p":1,"n":"FTSF - Texture Set"}]},{"t":3,"p":1,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","d":1,"c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","d":1,"c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]}]},"name":"Smash.All","hash":"F8D95CA2","color":128} \ No newline at end of file From 3bacaff0fccfd2594bfb581a493cc33f9ebedeb1 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Wed, 4 Aug 2021 20:32:18 -0400 Subject: [PATCH 59/76] v2.0.0-beta+2 --- frontend/MatorSmash.dproj | 2 +- frontend/MatorSmash.res | Bin 4812 -> 6852 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index e496aa3..5e94bae 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -3,7 +3,7 @@ {12317C9C-736E-45A4-8CB7-E43FF92DD93C} MatorSmash.dpr True - Debug + Release Application VCL DCC32 diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 6b5360d8ec5b84028d49ede15e6ca8074659f1a3..52a47c35079d9d5bbfdb08d2522c816c1139564e 100755 GIT binary patch delta 2170 zcmbtV&5q+l5blf?q3jO=PAlNh80`hAiVj_s&f8%@TdDL)$Z;PLJ1+4m+#{< zz#Sn58Qy9)xZK^j_+s=fAv@&vPyW6*d$5xZE`HOVeTkL>G<5I@+TSO*CuEP@LHSdX zkdy#=#qF*-a%LrLbi zax|Zz5o38|x9d76k8kZIEl9f-LY>MZRf0!$+;-YcIZdXK+5a z^~cYH_dclaAR`n_FE8(3%i84Od6v>8lq!+=R5M40Mj?-+Nb>nqdv^Sk`5ILf&jn9q z4pVIfN_)6>@AiZ%1zDJ`C_2d1R9lq!u8K|}cSpj)cVoEOt%cf)xYoDwcfP7s$76xWD|Ys?=^rNlxjfghME6? zVtTKm971^@^Q4mHiPb|jo;S(rYZm%!yJROD6|Y}ns3lH70lB~muQpD$f@*(L&n}m3 zfoEu5CDp2BxM8_k71#&}Yg<|;%z1{wgKgnQYtm{pdL*+<=IoKot5T+_ztJ_FH!_-U zuPGKG*7Yk`9m^j8yV7$5H}o9SaiS?UQr7*);Umu!OW@m(sL3Pc^P)`4U+v`*bN?B>Pd5@l=a>s-RctJ-*&Syc)nn z-$vU6JJGwOn<>XZC~&~SB*kq0n}sXpIPwI~W%Ry39+-HabSN$@>H8N;yf{>B2tw?}j)rrJ+n8K&vDV`jRJ#~eFy z8F%X#m|^$=0Bm8$#&bG9d5;z4>oh{Fkp`3m@MQ$#Do_Jhu04G!1mt;dSu=VZpPl&i^d-F4KSHw*#W~z z4ViBXBld(LYCe7&aMQRM+Xo{abJJpB9NNe^_zWxHGRKdFYjD%$0e>DK=fmN!X+iy! Y9-Qb`nzd Date: Thu, 5 Aug 2021 15:04:42 -0400 Subject: [PATCH 60/76] Fix for smashing the same masters repeatedly. --- lib/mte/mteBase.pas | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index 7520fc1..a320c8e 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -730,7 +730,7 @@ function WinningOverrideInFiles(rec: IwbMainRecord; var sl: TStringList) procedure OverridesInMasters(rec: IwbMainRecord; var rl: TList); var i: Integer; - f: IwbFile; + f, mst: IwbFile; id: TwbFormID; ovr: IwbMainRecord; begin @@ -739,8 +739,10 @@ procedure OverridesInMasters(rec: IwbMainRecord; var rl: TList); // TODO: Why does rec.Master sometimes return the wrong record?? for i := 0 to Pred(f.MasterCount[false]) do begin - ovr := f.Masters[i, false].RecordByFormID[id, true, false]; - if Assigned(ovr) then + mst := f.Masters[i, false]; + ovr := mst.RecordByFormID[id, true, false]; + // TODO: Better way to get only if override is in Masters[i]?? + if Assigned(ovr) and ovr._File.Equals(mst) then rl.Add(ovr); end; end; From e11127cdb384e9be17a462012a6f63590ac696cd Mon Sep 17 00:00:00 2001 From: chuck <> Date: Thu, 5 Aug 2021 15:10:17 -0400 Subject: [PATCH 61/76] Log format fix --- frontend/msSmash.pas | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 9c6d00f..5793ef9 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -195,7 +195,7 @@ procedure AddParents(var patchFile: IwbFile; const rec: IwbElement); true, true]) then begin AddParents(patchFile, grup.ChildrenOf); - Tracker.Write(Format('Copying parent record %s of %s', + Tracker.Write(Format(' Copying parent record %s of %s', [grup.ChildrenOf.Name, rec.Name])); AddRequiredMasters(patchFile, grup.ChildrenOf); grup.ChildrenOf.CopyInto(patchFile, false, false, '', From de2d64957cac3f8bdeed94cad4d39737bc00bd05 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Fri, 6 Aug 2021 00:12:44 -0400 Subject: [PATCH 62/76] Switch to async logging for the tracker. Now the smashing thread does not get held up by logs. Mostly helps with speed when debugging is on, but seems slightly faster normally as well. TODO: Unify the tracker logs and the mte logs? --- .gitmodules | 3 +++ frontend/MatorSmash.dproj | 4 ++-- frontend/MatorSmash.res | Bin 6852 -> 4812 bytes frontend/msSmashForm.pas | 12 +++++------ frontend/msThreads.pas | 2 ++ lib/loggerpro | 1 + lib/mte/mteLogging.pas | 2 +- lib/mte/mteProgressForm.dfm | 1 + lib/mte/mteProgressForm.pas | 42 +++++++++++++++++++----------------- lib/mte/mteTracker.pas | 1 + 10 files changed, 39 insertions(+), 29 deletions(-) create mode 160000 lib/loggerpro mode change 100644 => 100755 lib/mte/mteTracker.pas diff --git a/.gitmodules b/.gitmodules index 5d337da..b14d842 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "lib/xedit"] path = lib/xedit url = git@github.com:TES5Edit/TES5Edit.git +[submodule "lib/loggerpro"] + path = lib/loggerpro + url = git@github.com:danieleteti/loggerpro.git diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index 5e94bae..3a1caad 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -3,7 +3,7 @@ {12317C9C-736E-45A4-8CB7-E43FF92DD93C} MatorSmash.dpr True - Release + Debug Application VCL DCC32 @@ -72,7 +72,7 @@ vcl;rtl;vclx;vclactnband;xmlrtl;VclSmp;vclimg;svnui;svn;bdertl;TeeUI;TeeDB;Tee;vcldb;dbrtl;vcldbx;vcltouch;dsnap;dsnapcon;vclib;ibxpress;adortl;IndyCore;IndySystem;IndyProtocols;inet;intrawebdb_110_150;Intraweb_110_150;vclie;websnap;webdsnap;inetdb;inetdbbde;inetdbxpress;soaprtl;vclribbon;dbexpress;DbxCommonDriver;DataSnapIndy10ServerTransport;DataSnapProviderClient;DataSnapClient;dbxcds;DbxClientDriver;DataSnapServer;AzureCloud;DBXInterBaseDriver;DBXMySQLDriver;DBXFirebirdDriver;DBXSybaseASEDriver;DBXSybaseASADriver;DBXOracleDriver;DBXMSSQLDriver;DBXInformixDriver;DBXDb2Driver;$(DCC_UsePackage) - ..\lib\Imaging\ZLib;..\lib\abbrevia\source;..\lib\Imaging;..\lib\xedit;..\lib\mte;..\lib\superobject;..\lib\xedit\lz4;..\lib\xedit\zlib;..\lib\xedit\FileContainer;..\lib\xedit\tools\BSArchive;..\lib\xedit\tools\BSArchive\TForge;$(DCC_UnitSearchPath) + ..\lib\Imaging\ZLib;..\lib\abbrevia\source;..\lib\Imaging;..\lib\xedit;..\lib\mte;..\lib\superobject;..\lib\xedit\lz4;..\lib\xedit\zlib;..\lib\xedit\FileContainer;..\lib\xedit\tools\BSArchive;..\lib\xedit\tools\BSArchive\TForge;..\lib\LoggerPro;$(DCC_UnitSearchPath) false false false diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 52a47c35079d9d5bbfdb08d2522c816c1139564e..301cacb75cbb7803c72cf30bf147552873f0345b 100755 GIT binary patch delta 116 zcmX?NdPa4Ef|3Ix1A_ts1H=FS0zeGp0D%DmCkvPXBpetgI_a@9F)%W?X`G)}uFAB4 zVd6X`(Hfu>BT%6;5L*JV34<$x$z)MRWnM!DJq9BnHUQzt7a1!Uc{Y17@d-|Dk#Yb4 DI4~9a delta 2170 zcmbtV&5q+l5blf?q3jO=PAlNh80`hAiVj_s&f8%@TdDL)$Z;PLJ1+4m+#{< zz#Sn58Qy9)xZK^j_+s=fAv@&vPyW6*d$5xZE`HOVeTkL>G<5I@+TSO*CuEP@LHSdX zkdy#=#qF*-a%LrLbi zax|Zz5o38|x9d76k8kZIEl9f-LY>MZRf0!$+;-YcIZdXK+5a z^~cYH_dclaAR`n_FE8(3%i84Od6v>8lq!+=R5M40Mj?-+Nb>nqdv^Sk`5ILf&jn9q z4pVIfN_)6>@AiZ%1zDJ`C_2d1R9lq!u8K|}cSpj)cVoEOt%cf)xYoDwcfP7s$76xWD|Ys?=^rNlxjfghME6? zVtTKm971^@^Q4mHiPb|jo;S(rYZm%!yJROD6|Y}ns3lH70lB~muQpD$f@*(L&n}m3 zfoEu5CDp2BxM8_k71#&}Yg<|;%z1{wgKgnQYtm{pdL*+<=IoKot5T+_ztJ_FH!_-U zuPGKG*7Yk`9m^j8yV7$5H}o9SaiS?UQr7*);Umu!OW@m(sL3Pc^P)`4U+v`*bN?B>Pd5@l=a>s-RctJ-*&Syc)nn z-$vU6JJGwOn<>XZC~&~SB*kq0n}sXpIPwI~W%Ry39+-HabSN$@>H8N;yf{>B2tw?}j)rrJ+n8K&vDV`jRJ#~eFy z8F%X#m|^$=0Bm8$#&bG9d5;z4>oh{Fkp`3m@MQ$#Do_Jhu04G!1mt;dSu=VZpPl&i^d-F4KSHw*#W~z z4ViBXBld(LYCe7&aMQRM+Xo{abJJpB9NNe^_zWxHGRKdFYjD%$0e>DK=fmN!X+iy! Y9-Qb`nzd 1 then - ProgressLabel.Caption := s; - DetailsMemo.SelLength := 0; - DetailsMemo.Lines.Add(s); + StatusMessage(s); + FLog.Info(s, Tracker.Tag); end; end. diff --git a/lib/mte/mteTracker.pas b/lib/mte/mteTracker.pas old mode 100644 new mode 100755 index c893018..499b1d9 --- a/lib/mte/mteTracker.pas +++ b/lib/mte/mteTracker.pas @@ -20,6 +20,7 @@ TProgressTracker = class FStatusEvent : TLogEvent; public Cancel: boolean; + Tag: string; procedure SetMaxProgress(const i: integer); property OnSetMaxEvent: TUpdateEvent read FMaxEvent write FMaxEvent; procedure SetProgress(const i: integer); From d189ee23572886e26ad900b2e6a69f0f80c53558 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sat, 7 Aug 2021 22:39:19 -0400 Subject: [PATCH 63/76] Support smashing record flags --- frontend/settings/Skyrim/Smash.All.json | 2 +- lib/mte/mteBase.pas | 12 +++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/frontend/settings/Skyrim/Smash.All.json b/frontend/settings/Skyrim/Smash.All.json index f1940d8..b2f1a40 100755 --- a/frontend/settings/Skyrim/Smash.All.json +++ b/frontend/settings/Skyrim/Smash.All.json @@ -1 +1 @@ -{"records":"AACT,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,Play,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,ACHR","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 8\/4\/2021.","tree":{"records":[{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"p":1,"n":"Relations","d":1,"c":[{"t":6,"s":1,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Unknown 4"},{"t":4,"p":1,"n":"Unknown 5"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"p":1,"n":"Unknown 18"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Unknown 22"},{"t":4,"p":1,"n":"Unknown 23"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Unknown 27"},{"t":4,"p":1,"n":"Unknown 28"},{"t":4,"p":1,"n":"Unknown 29"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"p":1,"n":"Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","d":1,"c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unknown 7"},{"t":4,"p":1,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"p":1,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"p":1,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"s":1,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"s":1,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"s":1,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level","lf":"Calc max level"},{"t":3,"p":1,"n":"Calc max level","lt":"Calc min level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","d":1,"c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"Sound Types","d":1,"c":[{"t":6,"p":1,"n":"Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"Player Reference","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"s":1,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"Stages","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"p":1,"n":"SCHR - Unused"},{"t":11,"p":1,"n":"SCTX - Unused"},{"t":11,"p":1,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"p":1,"n":"Unused"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","d":1,"c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"s":1,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"s":1,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"s":1,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"n":"Alias","c":[{"t":3,"n":"ALLS - Location Alias ID"},{"t":2,"n":"ALID - Alias Name"},{"t":6,"n":"FNAM - Alias Flags","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Reserves Location\/Reference"},{"t":4,"n":"Optional"},{"t":4,"n":"Quest Object"},{"t":4,"n":"Allow Reuse in Quest"},{"t":4,"n":"Allow Dead"},{"t":4,"n":"Matching Ref - In Loaded Area"},{"t":4,"n":"Essential"},{"t":4,"n":"Allow Disabled"},{"t":4,"n":"Stores Text"},{"t":4,"n":"Allow Reserved"},{"t":4,"n":"Protected"},{"t":4,"n":"Forced by Aliases?"},{"t":4,"n":"Allow Destroyed"},{"t":4,"n":"Matching Ref - Closest"},{"t":4,"n":"Uses Stored Text"},{"t":4,"n":"Initially Disabled"}]},{"t":3,"n":"Additional Flags","c":[{"t":4,"n":"Allow Cleared"},{"t":4,"n":"Clear Names When Removed"}]}]},{"t":3,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"n":"ALFL - Specific Location"},{"t":3,"n":"ALFR - Forced Reference"},{"t":3,"n":"ALUA - Unique Actor"},{"t":6,"n":"Location Alias Reference","c":[{"t":3,"n":"ALFA - Alias"},{"t":3,"n":"KNAM - Keyword"},{"t":3,"n":"ALRT - Ref Type"}]},{"t":6,"n":"External Alias Reference","c":[{"t":3,"n":"ALEQ - Quest"},{"t":3,"n":"ALEA - Alias"}]},{"t":6,"n":"Create Reference to Object","c":[{"t":3,"n":"ALCO - Object"},{"t":6,"n":"ALCA - Alias","c":[{"t":3,"n":"Alias"},{"t":3,"n":"Create"}]},{"t":3,"n":"ALCL - Level"}]},{"t":6,"n":"Find Matching Reference Near Alias","c":[{"t":3,"n":"ALNA - Alias"},{"t":3,"n":"ALNT - Type"}]},{"t":6,"n":"Find Matching Reference From Event","c":[{"t":2,"n":"ALFE - From Event"},{"t":11,"n":"ALFD - Event Data"}]},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"ALDN - Display Name"},{"t":8,"n":"Alias Spells","c":[{"t":3,"n":"ALSP - Spell"}]},{"t":8,"n":"ALFC - Alias Factions","c":[{"t":3,"n":"ALFC - Faction"}]},{"t":8,"n":"Alias Package Data","c":[{"t":3,"n":"ALPC - Package"}]},{"t":3,"n":"VTCK - Voice Types"},{"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"Targets","d":1,"c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","d":1,"c":[{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":9,"s":1,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"Skill Boost","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"FaceGen Head"},{"t":4,"p":1,"n":"Child"},{"t":4,"p":1,"n":"Tilt Front\/Back"},{"t":4,"p":1,"n":"Tilt Left\/Right"},{"t":4,"p":1,"n":"No Shadow"},{"t":4,"p":1,"n":"Swims"},{"t":4,"p":1,"n":"Flies"},{"t":4,"p":1,"n":"Walks"},{"t":4,"p":1,"n":"Immobile"},{"t":4,"p":1,"n":"Not Pushable"},{"t":4,"p":1,"n":"No Combat In Water"},{"t":4,"p":1,"n":"No Rotating to Head-Track"},{"t":4,"p":1,"n":"Don't Show Blood Spray"},{"t":4,"p":1,"n":"Don't Show Blood Decal"},{"t":4,"p":1,"n":"Uses Head Track Anims"},{"t":4,"p":1,"n":"Spells Align w\/Magic Node"},{"t":4,"p":1,"n":"Use World Raycasts For FootIK"},{"t":4,"p":1,"n":"Allow Ragdoll Collision"},{"t":4,"p":1,"n":"Regen HP In Combat"},{"t":4,"p":1,"n":"Can't Open Doors"},{"t":4,"p":1,"n":"Allow PC Dialogue"},{"t":4,"p":1,"n":"No Knockdowns"},{"t":4,"p":1,"n":"Allow Pickpocket"},{"t":4,"p":1,"n":"Always Use Proxy Controller"},{"t":4,"p":1,"n":"Don't Show Weapon Blood"},{"t":4,"p":1,"n":"Overlay Head Part List"},{"t":4,"p":1,"n":"Override Head Part List"},{"t":4,"p":1,"n":"Can Pickup Items"},{"t":4,"p":1,"n":"Allow Multiple Membrane Shaders"},{"t":4,"p":1,"n":"Can Dual Wield"},{"t":4,"p":1,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","d":1,"c":[{"t":4,"p":1,"n":"Use Advanced Avoidance"},{"t":4,"p":1,"n":"Non-Hostile"},{"t":4,"p":1,"n":"Unknown 2"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"s":1,"p":1,"n":"Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"p":1,"n":"VNAM - Equipment Flags","d":1,"c":[{"t":4,"p":1,"n":"Hand To Hand Melee"},{"t":4,"p":1,"n":"One Hand Sword"},{"t":4,"p":1,"n":"One Hand Dagger"},{"t":4,"p":1,"n":"One Hand Axe"},{"t":4,"p":1,"n":"One Hand Mace"},{"t":4,"p":1,"n":"Two Hand Sword"},{"t":4,"p":1,"n":"Two Hand Axe"},{"t":4,"p":1,"n":"Bow"},{"t":4,"p":1,"n":"Staff"},{"t":4,"p":1,"n":"Spell"},{"t":4,"p":1,"n":"Shield"},{"t":4,"p":1,"n":"Torch"},{"t":4,"p":1,"n":"Crossbow"}]},{"t":8,"p":1,"n":"Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"p":1,"n":"Male Head Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Male","c":[{"t":3,"p":1,"n":"RPRM - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Male","d":1,"c":[{"t":3,"p":1,"n":"AHCM - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Male","c":[{"t":3,"p":1,"n":"FTSM - Texture Set"}]},{"t":3,"p":1,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"p":1,"n":"Female Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Female","c":[{"t":3,"p":1,"n":"RPRF - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Female","d":1,"c":[{"t":3,"p":1,"n":"AHCF - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Female","c":[{"t":3,"p":1,"n":"FTSF - Texture Set"}]},{"t":3,"p":1,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","d":1,"c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","d":1,"c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]}]},"name":"Smash.All","hash":"F8D95CA2","color":128} \ No newline at end of file +{"records":"ACHR,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,Play,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,AACT","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 8\/7\/2021.","tree":{"records":[{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Starts Dead"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"No AI Acquire"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Has Tree LOD"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Must Update Anims"},{"t":4,"p":1,"n":"Hidden From Local Map"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"p":1,"n":"Dangerous"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Ignore Object Interaction"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"p":1,"n":"Is Marker"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"p":1,"n":"NavMesh Generation - Filter"},{"t":4,"p":1,"n":"NavMesh Generation - Bounding Box"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Child Can Use"},{"t":4,"p":1,"n":"NavMesh Generation - Ground"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Shield"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Off Limits"},{"t":4,"p":1,"n":"Compressed"},{"t":4,"p":1,"n":"Can't Wait"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"p":1,"n":"NavMesh Generation - Filter"},{"t":4,"p":1,"n":"NavMesh Generation - Bounding Box"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"NavMesh Generation - Ground"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Allow Dual Wielding"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"p":1,"n":"Is Marker"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"p":1,"n":"Relations","d":1,"c":[{"t":6,"s":1,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Unknown 4"},{"t":4,"p":1,"n":"Unknown 5"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"p":1,"n":"Unknown 18"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Unknown 22"},{"t":4,"p":1,"n":"Unknown 23"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Unknown 27"},{"t":4,"p":1,"n":"Unknown 28"},{"t":4,"p":1,"n":"Unknown 29"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"p":1,"n":"Is Marker"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Must Exit To Talk"},{"t":4,"p":1,"n":"Child Can Use"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Constant"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Child Can Use"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"p":1,"n":"Actor Changed"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"p":1,"n":"Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Compressed"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"p":1,"n":"Portal-strict"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Displays In Main Menu"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","d":1,"c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unknown 7"},{"t":4,"p":1,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"p":1,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"p":1,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"s":1,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"s":1,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"s":1,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Must Update Anims"},{"t":4,"p":1,"n":"Hidden From Local Map"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Has Currents"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"p":1,"n":"NavMesh Generation - Filter"},{"t":4,"p":1,"n":"NavMesh Generation - Bounding Box"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"NavMesh Generation - Ground"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Compressed"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"AutoGen"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"NavmeshGenCell"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Compressed"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level","lf":"Calc max level"},{"t":3,"p":1,"n":"Calc max level","lt":"Calc min level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","d":1,"c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"Sound Types","d":1,"c":[{"t":6,"p":1,"n":"Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"Player Reference","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"s":1,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"Stages","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"p":1,"n":"SCHR - Unused"},{"t":11,"p":1,"n":"SCTX - Unused"},{"t":11,"p":1,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"p":1,"n":"Unused"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","d":1,"c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"s":1,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"s":1,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"s":1,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"n":"Alias","c":[{"t":3,"n":"ALLS - Location Alias ID"},{"t":2,"n":"ALID - Alias Name"},{"t":6,"n":"FNAM - Alias Flags","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Reserves Location\/Reference"},{"t":4,"n":"Optional"},{"t":4,"n":"Quest Object"},{"t":4,"n":"Allow Reuse in Quest"},{"t":4,"n":"Allow Dead"},{"t":4,"n":"Matching Ref - In Loaded Area"},{"t":4,"n":"Essential"},{"t":4,"n":"Allow Disabled"},{"t":4,"n":"Stores Text"},{"t":4,"n":"Allow Reserved"},{"t":4,"n":"Protected"},{"t":4,"n":"Forced by Aliases?"},{"t":4,"n":"Allow Destroyed"},{"t":4,"n":"Matching Ref - Closest"},{"t":4,"n":"Uses Stored Text"},{"t":4,"n":"Initially Disabled"}]},{"t":3,"n":"Additional Flags","c":[{"t":4,"n":"Allow Cleared"},{"t":4,"n":"Clear Names When Removed"}]}]},{"t":3,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"n":"ALFL - Specific Location"},{"t":3,"n":"ALFR - Forced Reference"},{"t":3,"n":"ALUA - Unique Actor"},{"t":6,"n":"Location Alias Reference","c":[{"t":3,"n":"ALFA - Alias"},{"t":3,"n":"KNAM - Keyword"},{"t":3,"n":"ALRT - Ref Type"}]},{"t":6,"n":"External Alias Reference","c":[{"t":3,"n":"ALEQ - Quest"},{"t":3,"n":"ALEA - Alias"}]},{"t":6,"n":"Create Reference to Object","c":[{"t":3,"n":"ALCO - Object"},{"t":6,"n":"ALCA - Alias","c":[{"t":3,"n":"Alias"},{"t":3,"n":"Create"}]},{"t":3,"n":"ALCL - Level"}]},{"t":6,"n":"Find Matching Reference Near Alias","c":[{"t":3,"n":"ALNA - Alias"},{"t":3,"n":"ALNT - Type"}]},{"t":6,"n":"Find Matching Reference From Event","c":[{"t":2,"n":"ALFE - From Event"},{"t":11,"n":"ALFD - Event Data"}]},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"ALDN - Display Name"},{"t":8,"n":"Alias Spells","c":[{"t":3,"n":"ALSP - Spell"}]},{"t":8,"n":"ALFC - Alias Factions","c":[{"t":3,"n":"ALFC - Faction"}]},{"t":8,"n":"Alias Package Data","c":[{"t":3,"n":"ALPC - Package"}]},{"t":3,"n":"VTCK - Voice Types"},{"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"Targets","d":1,"c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Critter?"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":9,"s":1,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"Skill Boost","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"FaceGen Head"},{"t":4,"p":1,"n":"Child"},{"t":4,"p":1,"n":"Tilt Front\/Back"},{"t":4,"p":1,"n":"Tilt Left\/Right"},{"t":4,"p":1,"n":"No Shadow"},{"t":4,"p":1,"n":"Swims"},{"t":4,"p":1,"n":"Flies"},{"t":4,"p":1,"n":"Walks"},{"t":4,"p":1,"n":"Immobile"},{"t":4,"p":1,"n":"Not Pushable"},{"t":4,"p":1,"n":"No Combat In Water"},{"t":4,"p":1,"n":"No Rotating to Head-Track"},{"t":4,"p":1,"n":"Don't Show Blood Spray"},{"t":4,"p":1,"n":"Don't Show Blood Decal"},{"t":4,"p":1,"n":"Uses Head Track Anims"},{"t":4,"p":1,"n":"Spells Align w\/Magic Node"},{"t":4,"p":1,"n":"Use World Raycasts For FootIK"},{"t":4,"p":1,"n":"Allow Ragdoll Collision"},{"t":4,"p":1,"n":"Regen HP In Combat"},{"t":4,"p":1,"n":"Can't Open Doors"},{"t":4,"p":1,"n":"Allow PC Dialogue"},{"t":4,"p":1,"n":"No Knockdowns"},{"t":4,"p":1,"n":"Allow Pickpocket"},{"t":4,"p":1,"n":"Always Use Proxy Controller"},{"t":4,"p":1,"n":"Don't Show Weapon Blood"},{"t":4,"p":1,"n":"Overlay Head Part List"},{"t":4,"p":1,"n":"Override Head Part List"},{"t":4,"p":1,"n":"Can Pickup Items"},{"t":4,"p":1,"n":"Allow Multiple Membrane Shaders"},{"t":4,"p":1,"n":"Can Dual Wield"},{"t":4,"p":1,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","d":1,"c":[{"t":4,"p":1,"n":"Use Advanced Avoidance"},{"t":4,"p":1,"n":"Non-Hostile"},{"t":4,"p":1,"n":"Unknown 2"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"s":1,"p":1,"n":"Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"p":1,"n":"VNAM - Equipment Flags","d":1,"c":[{"t":4,"p":1,"n":"Hand To Hand Melee"},{"t":4,"p":1,"n":"One Hand Sword"},{"t":4,"p":1,"n":"One Hand Dagger"},{"t":4,"p":1,"n":"One Hand Axe"},{"t":4,"p":1,"n":"One Hand Mace"},{"t":4,"p":1,"n":"Two Hand Sword"},{"t":4,"p":1,"n":"Two Hand Axe"},{"t":4,"p":1,"n":"Bow"},{"t":4,"p":1,"n":"Staff"},{"t":4,"p":1,"n":"Spell"},{"t":4,"p":1,"n":"Shield"},{"t":4,"p":1,"n":"Torch"},{"t":4,"p":1,"n":"Crossbow"}]},{"t":8,"p":1,"n":"Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"p":1,"n":"Male Head Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Male","c":[{"t":3,"p":1,"n":"RPRM - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Male","d":1,"c":[{"t":3,"p":1,"n":"AHCM - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Male","c":[{"t":3,"p":1,"n":"FTSM - Texture Set"}]},{"t":3,"p":1,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"p":1,"n":"Female Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Female","c":[{"t":3,"p":1,"n":"RPRF - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Female","d":1,"c":[{"t":3,"p":1,"n":"AHCF - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Female","c":[{"t":3,"p":1,"n":"FTSF - Texture Set"}]},{"t":3,"p":1,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Is Full LOD"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Filter (Collision Geometry)"},{"t":4,"p":1,"n":"Bounding Box (Collision Geometry)"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Ground"},{"t":4,"p":1,"n":"Multibound"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Border Region"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Secret"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Treat spells as powers"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Can Hold NPC Soul"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Never Fades"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Has Tree LOD"},{"t":4,"p":1,"n":"Add-On LOD Object"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Hidden From Local Map"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Uses HD LOD Texture"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Has Currents"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"p":1,"n":"Is Marker"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"p":1,"n":"NavMesh Generation - Filter"},{"t":4,"p":1,"n":"NavMesh Generation - Bounding Box"},{"t":4,"p":1,"n":"Show In World Map"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"NavMesh Generation - Ground"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Hidden From Local Map"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"p":1,"n":"Radio Station"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Can't Wait"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","d":1,"c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","d":1,"c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]}]},"name":"Smash.All","hash":"5D89FB7F","color":128} \ No newline at end of file diff --git a/lib/mte/mteBase.pas b/lib/mte/mteBase.pas index a320c8e..f556e60 100755 --- a/lib/mte/mteBase.pas +++ b/lib/mte/mteBase.pas @@ -1619,10 +1619,15 @@ procedure BuildChildDefs(obj: ISuperObject; def: IwbNamedDef); if fDef.FlagCount = 0 then exit; obj.O['c'] := SA([]); - for i := 0 to Pred(fDef.FlagCount) do - BuildChildDef(fDef.FlagDef[i] as IwbNamedDef, obj); + for i := 0 to Pred(fDef.FlagCount) do begin + if fDef.Flags[i] = '' then + obj.a['c'][i] := BuildDef(fDef.FlagDef[i], 'Unknown ' + IntToStr(i)) + else + obj.a['c'][i] := BuildDef(fDef.FlagDef[i], fDef.Flags[i]); + //BuildChildDef(fDef.FlagDef[i] as IwbNamedDef, obj); + end; end - // try IwbRecordDef + // try IwbRecordDef 1 else if Supports(def, IwbRecordDef, recDef) then begin if recDef.MemberCount = 0 then @@ -1702,6 +1707,7 @@ function BuildRecordDef(sName: string; mrDef: IwbRecordDef; recObj.s['n'] := sName; recObj.i['t'] := Ord(stRecord); recObj.O['c'] := SA([]); + BuildChildDef(mrDef.RecordHeaderStruct as IwbNamedDef, recObj); for i := 0 to Pred(mrDef.MemberCount) do BuildChildDef(mrDef.Members[i] as IwbNamedDef, recObj); except From 024c27e0231bf60139580601b929c64f09b4a96b Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 8 Aug 2021 03:33:20 -0400 Subject: [PATCH 64/76] Decide overrides to smash before actually smashing --- frontend/msSmash.pas | 210 +++++++++++++++++++++++++------------------ 1 file changed, 125 insertions(+), 85 deletions(-) diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 5793ef9..e83c7d0 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -321,10 +321,11 @@ function HasPartialFormFlag(rec: IwbMainRecord): boolean; procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); var - i, j, k: Integer; + i, j, k, ndx: Integer; incProgress, currentProgress: Real; rec, mst, ovr, patchRec: IwbMainRecord; msts: TList; + ovrs: TStringList; f, patchFile, forceFile: IwbFile; plugin: TPlugin; aSetting: TSmashSetting; @@ -350,63 +351,50 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); currentProgress := currentProgress + incProgress; Tracker.SetProgress(Round(currentProgress)); - // loop through record's overrides - patchRec := nil; - forceFile := nil; - for j := 0 to Pred(rec.OverrideCount) do - begin - if Tracker.Cancel then - break; - ovr := rec.Overrides[j]; - f := ovr._File; - // skip overrides that are in plugins we aren't patching - if patch.plugins.IndexOf(f.filename) = -1 then - continue; - plugin := PluginByFileName(f.filename); - if not Assigned(plugin) then - continue; - // skip ctIdenticalToMaster overrides - if (ConflictThisForMainRecord(ovr) = ctIdenticalToMaster) then - continue; + // loop through record's overrides to find which ones to smash + ovrs := TStringList.Create; + try + for j := 0 to Pred(rec.OverrideCount) do + begin + ovr := rec.Overrides[j]; + f := ovr._File; + // skip overrides that are in plugins we aren't patching + if patch.plugins.IndexOf(f.filename) = -1 then + continue; + plugin := PluginByFileName(f.filename); + if not Assigned(plugin) then + continue; - // skip plugins that have the skip setting - if plugin.setting = 'Skip' then - continue; + // skip plugins that have the skip setting + if plugin.setting = 'Skip' then + continue; - // skip overrides according to smash setting - aSetting := plugin.smashSetting; - recObj := aSetting.GetRecordDef(ovr.Signature); - if not Assigned(recObj) then - continue; - if (recObj.i['p'] <> 1) then - continue; - bForce := recObj.i['f'] = 1; - if bForce then - begin - if Assigned(patchRec) then - begin - patchRec.Remove; - patchRec := nil; - end; - forceFile := f; + // skip overrides according to smash setting + aSetting := plugin.smashSetting; + recObj := aSetting.GetRecordDef(ovr.Signature); + if not Assigned(recObj) then + continue; + if (recObj.i['p'] <> 1) then + continue; + + // this is an override to smash + ovrs.AddObject(f.Name, Pointer(ovr)); + // don't bother to smash this override's masters? + for k := 0 to Pred(f.MasterCount[false]) do + if ovrs.Find(f.Masters[k,false].Name, ndx) then + ovrs.Delete(ndx); end; - // copy record to smashed patch if it hasn't been copied yet - if not Assigned(patchRec) then + // If only one override to smash just copy it in + if ovrs.Count = 1 then begin try - if bForce then - e := ovr - else - e := WinningOverrideInFiles(rec, patch.plugins); + e := IwbMainRecord(Pointer(ovrs.Objects[0])); // be sure we include the parent? AddParents(patchFile, e); Tracker.Write(Format(' [%d] Copying record %s from %s', [i + 1, e.Name, e._File.Name])); AddRequiredMasters(patchFile, e); - eCopy := e.CopyInto(patchFile, false, false, '', '', '', ''); - patchRec := eCopy as IwbMainRecord; - if bForce then - continue; + e.CopyInto(patchFile, false, false, '', '', '', ''); except on x: Exception do begin @@ -414,50 +402,102 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); ' from file ' + e._File.filename + ': ' + x.Message); patch.fails.Add('Exception copying record ' + ovr.Name + ' : ' + x.Message); - continue; end; end; - - // skip if we're forcing and plugin doesn't require forceFile - if Assigned(forceFile) and not bForce and - (plugin.Masters.IndexOf(forceFile.filename) = -1) then continue; + end; - // finally, recursively copy overridden elements - try - bDeletions := recObj.i['d'] = 1; - if (wbGameMode = gmFO4) and HasPartialFormFlag(ovr) then - bDeletions := false; - bOverride := recObj.i['o'] = 1; - msts := TList.Create; - try - if bForce then - msts.Add(e as IwbMainRecord) - else - OverridesInMasters(ovr, msts); - for k := 0 to Pred(msts.Count) do begin - mst := msts.Items[k]; - Tracker.Write(Format(' Smashing override of %s from: %s, master: %s, masters: %s', - [ovr.Name, f.filename, mst._File.filename, String.join(',', plugin.masters.ToStringArray)])); - AddRequiredMasters(patch.plugin._File, ovr); - rcore(IwbElement(ovr), IwbElement(mst), IwbElement(patchRec), patchRec, - recObj, false, bDeletions, bOverride); - end; - finally - msts.Free; - end - except - on x: Exception do + // loop through overrides to smash + patchRec := nil; + forceFile := nil; + for j := 0 to Pred(ovrs.Count) do + begin + if Tracker.Cancel then + break; + ovr := IwbMainRecord(Pointer(ovrs.Objects[j])); + f := ovr._File; + + bForce := recObj.i['f'] = 1; + if bForce then begin - Tracker.Write(' Exception smashing record: ' + ovr.Name + ' : ' + - x.Message); - patch.fails.Add('Exception smashing record: ' + ovr.Name + ' : ' + - x.Message); + if Assigned(patchRec) then + begin + patchRec.Remove; + patchRec := nil; + end; + forceFile := f; + end; + + // copy record to smashed patch if it hasn't been copied yet + if not Assigned(patchRec) then + try + if bForce then + e := ovr + else + e := WinningOverrideInFiles(rec, patch.plugins); + // be sure we include the parent? + AddParents(patchFile, e); + Tracker.Write(Format(' [%d] Copying record %s from %s', + [i + 1, e.Name, e._File.Name])); + AddRequiredMasters(patchFile, e); + eCopy := e.CopyInto(patchFile, false, false, '', '', '', ''); + patchRec := eCopy as IwbMainRecord; + if bForce then + continue; + except + on x: Exception do + begin + Tracker.Write(' Exception copying record ' + e.Name + + ' from file ' + e._File.filename + ': ' + x.Message); + patch.fails.Add('Exception copying record ' + ovr.Name + ' : ' + + x.Message); + continue; + end; + end; + + // skip if we're forcing and plugin doesn't require forceFile + if Assigned(forceFile) and not bForce and + (plugin.Masters.IndexOf(forceFile.filename) = -1) then + continue; + + // finally, recursively copy overridden elements + try + bDeletions := recObj.i['d'] = 1; + if (wbGameMode = gmFO4) and HasPartialFormFlag(ovr) then + bDeletions := false; + bOverride := recObj.i['o'] = 1; + msts := TList.Create; + try + if bForce then + msts.Add(e as IwbMainRecord) + else + OverridesInMasters(ovr, msts); + for k := 0 to Pred(msts.Count) do begin + mst := msts.Items[k]; + Tracker.Write(Format(' Smashing override of %s from: %s, master: %s, masters: %s', + [ovr.Name, f.filename, mst._File.filename, String.join(',', plugin.masters.ToStringArray)])); + AddRequiredMasters(patch.plugin._File, ovr); + rcore(IwbElement(ovr), IwbElement(mst), IwbElement(patchRec), patchRec, + recObj, false, bDeletions, bOverride); + end; + finally + msts.Free; + end + except + on x: Exception do + begin + Tracker.Write(' Exception smashing record: ' + ovr.Name + ' : ' + + x.Message); + patch.fails.Add('Exception smashing record: ' + ovr.Name + ' : ' + + x.Message); + end; end; - end; - // update any count elements on the record - UpdateCounts(patchRec); + // update any count elements on the record + UpdateCounts(patchRec); + end; + finally + ovrs.Free; end; end; end; From 1d209f33c4b16800575ed24b9ba055c818195f34 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 8 Aug 2021 12:52:41 -0400 Subject: [PATCH 65/76] Skip if only override to smash is winning override --- frontend/msSmash.pas | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index e83c7d0..17a5e78 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -387,14 +387,16 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); // If only one override to smash just copy it in if ovrs.Count = 1 then begin + ovr := IwbMainRecord(Pointer(ovrs.Objects[0])); + if ovr.IsWinningOverride then + continue; try - e := IwbMainRecord(Pointer(ovrs.Objects[0])); // be sure we include the parent? - AddParents(patchFile, e); + AddParents(patchFile, ovr); Tracker.Write(Format(' [%d] Copying record %s from %s', - [i + 1, e.Name, e._File.Name])); - AddRequiredMasters(patchFile, e); - e.CopyInto(patchFile, false, false, '', '', '', ''); + [i + 1, ovr.Name, ovr._File.Name])); + AddRequiredMasters(patchFile, ovr); + ovr.CopyInto(patchFile, false, false, '', '', '', ''); except on x: Exception do begin From f52bd8e8bb6495d269708d26db1b7d5e033556a0 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 8 Aug 2021 13:09:50 -0400 Subject: [PATCH 66/76] Sort masters --- frontend/msSmash.pas | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 17a5e78..001d9a3 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -698,8 +698,8 @@ procedure CleanPatch(var patch: TPatch); Tracker.Write(' Exception removing ITPOs: ' + x.Message); end; - // Tracker.Write('Sorting patch masters according to current load order'); - // patchFile.SortMasters; + Tracker.Write('Sorting patch masters according to current load order'); + patchFile.SortMasters; end; procedure SavePatchFiles(var patch: TPatch); From 2f2c2df70936992470b09e258597da2cdf912f46 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 8 Aug 2021 13:56:23 -0400 Subject: [PATCH 67/76] Logging tweaks --- frontend/msSmash.pas | 4 ++-- lib/mte/mteProgressForm.pas | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 001d9a3..233d518 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -476,8 +476,8 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); OverridesInMasters(ovr, msts); for k := 0 to Pred(msts.Count) do begin mst := msts.Items[k]; - Tracker.Write(Format(' Smashing override of %s from: %s, master: %s, masters: %s', - [ovr.Name, f.filename, mst._File.filename, String.join(',', plugin.masters.ToStringArray)])); + Tracker.Write(Format(' Smashing override of %s from: %s, master: %s', + [ovr.Name, f.filename, mst._File.filename])); AddRequiredMasters(patch.plugin._File, ovr); rcore(IwbElement(ovr), IwbElement(mst), IwbElement(patchRec), patchRec, recObj, false, bDeletions, bOverride); diff --git a/lib/mte/mteProgressForm.pas b/lib/mte/mteProgressForm.pas index 47f4d94..a574a6c 100755 --- a/lib/mte/mteProgressForm.pas +++ b/lib/mte/mteProgressForm.pas @@ -3,7 +3,7 @@ interface uses - Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Windows, Math, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, // mte components W7Taskbar, mteTracker, @@ -118,7 +118,7 @@ procedure TProgressForm.FormCreate(Sender: TObject); // Only useful for us in debug builds? TLoggerProOutputDebugStringAppender.Create(), {$ENDIF} - TLoggerProFileAppender.Create(), + TLoggerProFileAppender.Create(4, Floor(High(Integer) / 1024)), TVCLMemoLogAppender.Create(DetailsMemo) ]); end; From bfe6e50be68ec6425852b7e2fd53c79d53a97306 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 8 Aug 2021 16:00:51 -0400 Subject: [PATCH 68/76] Tell xedit to not build refs? --- frontend/msLoader.pas | 1 + 1 file changed, 1 insertion(+) diff --git a/frontend/msLoader.pas b/frontend/msLoader.pas index 7515c0d..d2bc5dc 100755 --- a/frontend/msLoader.pas +++ b/frontend/msLoader.pas @@ -98,6 +98,7 @@ function InitBase: boolean; LoadLanguage; // INITIALIZE XEDIT + wbBuildRefs := settings.buildRefs; wbDisplayLoadOrderFormID := True; wbSortSubRecords := True; wbDisplayShorterNames := True; From f6df9150e6af43d12f8bec18d2168b739990551d Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 8 Aug 2021 17:34:46 -0400 Subject: [PATCH 69/76] Smash RACE records --- frontend/msSettingsManager.pas | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/msSettingsManager.pas b/frontend/msSettingsManager.pas index be4eeea..9e0624e 100755 --- a/frontend/msSettingsManager.pas +++ b/frontend/msSettingsManager.pas @@ -779,8 +779,8 @@ procedure TSettingsManager.Autoset(parentNode: TTreeNode); const disabledElements: array [0 .. 2] of string = ('Record Header', 'Unused', 'Unknown'); - disabledRecords: array [0 .. 5] of string = ('DOBJ', 'LCTN', 'IDLE', 'NAVM', - 'NAVI', 'RACE'); + disabledRecords: array [0 .. 4] of string = ('DOBJ', 'LCTN', 'IDLE', 'NAVM', + 'NAVI'); var i: Integer; Node, nextNode: TTreeNode; From cf197f6d2d1b7e4ceae3f2f2281d99af4f18a9ba Mon Sep 17 00:00:00 2001 From: chuck <> Date: Tue, 10 Aug 2021 17:21:48 -0400 Subject: [PATCH 70/76] Don't leave stuff in the recycle bin --- lib/mte/mteHelpers.pas | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/mte/mteHelpers.pas b/lib/mte/mteHelpers.pas index 9c48dcd..6bcd342 100755 --- a/lib/mte/mteHelpers.pas +++ b/lib/mte/mteHelpers.pas @@ -1200,7 +1200,7 @@ procedure DeleteDirectory(const path: string); ShOp.wFunc := FO_DELETE; ShOp.pFrom := PChar(path + #0); ShOp.pTo := nil; - ShOp.fFlags := FOF_NOCONFIRMATION or FOF_ALLOWUNDO or FOF_NO_UI; + ShOp.fFlags := FOF_NOCONFIRMATION or FOF_NO_UI; SHFileOperation(ShOp); end; From bf9d2f869b7077646ef999423715d66625dbd664 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Mon, 6 Sep 2021 19:58:10 -0400 Subject: [PATCH 71/76] Fix ITPO removal --- frontend/msCore.pas | 2 ++ 1 file changed, 2 insertions(+) diff --git a/frontend/msCore.pas b/frontend/msCore.pas index cb08430..7e7d7c9 100755 --- a/frontend/msCore.pas +++ b/frontend/msCore.pas @@ -467,10 +467,12 @@ procedure TPlugin.Save; try FileStream := TFileStream.Create(path, fmCreate); // Force xedit to save everything in file? + { _File.MarkModifiedRecursive([etFile, etMainRecord, etGroupRecord, etSubRecord, etSubRecordStruct, etSubRecordArray, etSubRecordUnion, etArray, etStruct, etValue, etFlag, etStringListTerminator, etUnion, etStructChapter]); + } _File.WriteToStream(FileStream, TwbResetModified.rmNo); if SavedPluginPaths.IndexOf(path) = -1 then SavedPluginPaths.Add(dataPath + filename); From e1036e9d3fd19a2976922f148f45123e19b6f3e1 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Mon, 6 Sep 2021 19:58:33 -0400 Subject: [PATCH 72/76] Update Smash.All --- frontend/settings/Skyrim/Smash.All.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/settings/Skyrim/Smash.All.json b/frontend/settings/Skyrim/Smash.All.json index b2f1a40..052547a 100755 --- a/frontend/settings/Skyrim/Smash.All.json +++ b/frontend/settings/Skyrim/Smash.All.json @@ -1 +1 @@ -{"records":"ACHR,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,Play,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,AACT","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 8\/7\/2021.","tree":{"records":[{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Starts Dead"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"No AI Acquire"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Has Tree LOD"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Must Update Anims"},{"t":4,"p":1,"n":"Hidden From Local Map"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"p":1,"n":"Dangerous"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Ignore Object Interaction"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"p":1,"n":"Is Marker"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"p":1,"n":"NavMesh Generation - Filter"},{"t":4,"p":1,"n":"NavMesh Generation - Bounding Box"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Child Can Use"},{"t":4,"p":1,"n":"NavMesh Generation - Ground"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Shield"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Off Limits"},{"t":4,"p":1,"n":"Compressed"},{"t":4,"p":1,"n":"Can't Wait"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"p":1,"n":"NavMesh Generation - Filter"},{"t":4,"p":1,"n":"NavMesh Generation - Bounding Box"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"NavMesh Generation - Ground"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Allow Dual Wielding"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"p":1,"n":"Is Marker"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"p":1,"n":"Relations","d":1,"c":[{"t":6,"s":1,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Unknown 4"},{"t":4,"p":1,"n":"Unknown 5"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"p":1,"n":"Unknown 18"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Unknown 22"},{"t":4,"p":1,"n":"Unknown 23"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Unknown 27"},{"t":4,"p":1,"n":"Unknown 28"},{"t":4,"p":1,"n":"Unknown 29"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"p":1,"n":"Is Marker"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Must Exit To Talk"},{"t":4,"p":1,"n":"Child Can Use"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Constant"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Child Can Use"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"p":1,"n":"Actor Changed"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"p":1,"n":"Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Compressed"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"p":1,"n":"Portal-strict"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Displays In Main Menu"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","d":1,"c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unknown 7"},{"t":4,"p":1,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"p":1,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"p":1,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"s":1,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"s":1,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"s":1,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Must Update Anims"},{"t":4,"p":1,"n":"Hidden From Local Map"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Has Currents"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"p":1,"n":"NavMesh Generation - Filter"},{"t":4,"p":1,"n":"NavMesh Generation - Bounding Box"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"NavMesh Generation - Ground"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Compressed"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"AutoGen"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"NavmeshGenCell"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Compressed"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level","lf":"Calc max level"},{"t":3,"p":1,"n":"Calc max level","lt":"Calc min level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","d":1,"c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"Sound Types","d":1,"c":[{"t":6,"p":1,"n":"Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"Player Reference","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"s":1,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"Stages","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"p":1,"n":"SCHR - Unused"},{"t":11,"p":1,"n":"SCTX - Unused"},{"t":11,"p":1,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"p":1,"n":"Unused"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","d":1,"c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"s":1,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"s":1,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"s":1,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"n":"Alias","c":[{"t":3,"n":"ALLS - Location Alias ID"},{"t":2,"n":"ALID - Alias Name"},{"t":6,"n":"FNAM - Alias Flags","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Reserves Location\/Reference"},{"t":4,"n":"Optional"},{"t":4,"n":"Quest Object"},{"t":4,"n":"Allow Reuse in Quest"},{"t":4,"n":"Allow Dead"},{"t":4,"n":"Matching Ref - In Loaded Area"},{"t":4,"n":"Essential"},{"t":4,"n":"Allow Disabled"},{"t":4,"n":"Stores Text"},{"t":4,"n":"Allow Reserved"},{"t":4,"n":"Protected"},{"t":4,"n":"Forced by Aliases?"},{"t":4,"n":"Allow Destroyed"},{"t":4,"n":"Matching Ref - Closest"},{"t":4,"n":"Uses Stored Text"},{"t":4,"n":"Initially Disabled"}]},{"t":3,"n":"Additional Flags","c":[{"t":4,"n":"Allow Cleared"},{"t":4,"n":"Clear Names When Removed"}]}]},{"t":3,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"n":"ALFL - Specific Location"},{"t":3,"n":"ALFR - Forced Reference"},{"t":3,"n":"ALUA - Unique Actor"},{"t":6,"n":"Location Alias Reference","c":[{"t":3,"n":"ALFA - Alias"},{"t":3,"n":"KNAM - Keyword"},{"t":3,"n":"ALRT - Ref Type"}]},{"t":6,"n":"External Alias Reference","c":[{"t":3,"n":"ALEQ - Quest"},{"t":3,"n":"ALEA - Alias"}]},{"t":6,"n":"Create Reference to Object","c":[{"t":3,"n":"ALCO - Object"},{"t":6,"n":"ALCA - Alias","c":[{"t":3,"n":"Alias"},{"t":3,"n":"Create"}]},{"t":3,"n":"ALCL - Level"}]},{"t":6,"n":"Find Matching Reference Near Alias","c":[{"t":3,"n":"ALNA - Alias"},{"t":3,"n":"ALNT - Type"}]},{"t":6,"n":"Find Matching Reference From Event","c":[{"t":2,"n":"ALFE - From Event"},{"t":11,"n":"ALFD - Event Data"}]},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"ALDN - Display Name"},{"t":8,"n":"Alias Spells","c":[{"t":3,"n":"ALSP - Spell"}]},{"t":8,"n":"ALFC - Alias Factions","c":[{"t":3,"n":"ALFC - Faction"}]},{"t":8,"n":"Alias Package Data","c":[{"t":3,"n":"ALPC - Package"}]},{"t":3,"n":"VTCK - Voice Types"},{"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"Targets","d":1,"c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Critter?"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":9,"s":1,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"Skill Boost","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"FaceGen Head"},{"t":4,"p":1,"n":"Child"},{"t":4,"p":1,"n":"Tilt Front\/Back"},{"t":4,"p":1,"n":"Tilt Left\/Right"},{"t":4,"p":1,"n":"No Shadow"},{"t":4,"p":1,"n":"Swims"},{"t":4,"p":1,"n":"Flies"},{"t":4,"p":1,"n":"Walks"},{"t":4,"p":1,"n":"Immobile"},{"t":4,"p":1,"n":"Not Pushable"},{"t":4,"p":1,"n":"No Combat In Water"},{"t":4,"p":1,"n":"No Rotating to Head-Track"},{"t":4,"p":1,"n":"Don't Show Blood Spray"},{"t":4,"p":1,"n":"Don't Show Blood Decal"},{"t":4,"p":1,"n":"Uses Head Track Anims"},{"t":4,"p":1,"n":"Spells Align w\/Magic Node"},{"t":4,"p":1,"n":"Use World Raycasts For FootIK"},{"t":4,"p":1,"n":"Allow Ragdoll Collision"},{"t":4,"p":1,"n":"Regen HP In Combat"},{"t":4,"p":1,"n":"Can't Open Doors"},{"t":4,"p":1,"n":"Allow PC Dialogue"},{"t":4,"p":1,"n":"No Knockdowns"},{"t":4,"p":1,"n":"Allow Pickpocket"},{"t":4,"p":1,"n":"Always Use Proxy Controller"},{"t":4,"p":1,"n":"Don't Show Weapon Blood"},{"t":4,"p":1,"n":"Overlay Head Part List"},{"t":4,"p":1,"n":"Override Head Part List"},{"t":4,"p":1,"n":"Can Pickup Items"},{"t":4,"p":1,"n":"Allow Multiple Membrane Shaders"},{"t":4,"p":1,"n":"Can Dual Wield"},{"t":4,"p":1,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","d":1,"c":[{"t":4,"p":1,"n":"Use Advanced Avoidance"},{"t":4,"p":1,"n":"Non-Hostile"},{"t":4,"p":1,"n":"Unknown 2"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"s":1,"p":1,"n":"Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"p":1,"n":"VNAM - Equipment Flags","d":1,"c":[{"t":4,"p":1,"n":"Hand To Hand Melee"},{"t":4,"p":1,"n":"One Hand Sword"},{"t":4,"p":1,"n":"One Hand Dagger"},{"t":4,"p":1,"n":"One Hand Axe"},{"t":4,"p":1,"n":"One Hand Mace"},{"t":4,"p":1,"n":"Two Hand Sword"},{"t":4,"p":1,"n":"Two Hand Axe"},{"t":4,"p":1,"n":"Bow"},{"t":4,"p":1,"n":"Staff"},{"t":4,"p":1,"n":"Spell"},{"t":4,"p":1,"n":"Shield"},{"t":4,"p":1,"n":"Torch"},{"t":4,"p":1,"n":"Crossbow"}]},{"t":8,"p":1,"n":"Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"p":1,"n":"Male Head Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Male","c":[{"t":3,"p":1,"n":"RPRM - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Male","d":1,"c":[{"t":3,"p":1,"n":"AHCM - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Male","c":[{"t":3,"p":1,"n":"FTSM - Texture Set"}]},{"t":3,"p":1,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"p":1,"n":"Female Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Female","c":[{"t":3,"p":1,"n":"RPRF - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Female","d":1,"c":[{"t":3,"p":1,"n":"AHCF - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Female","c":[{"t":3,"p":1,"n":"FTSF - Texture Set"}]},{"t":3,"p":1,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Is Full LOD"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Filter (Collision Geometry)"},{"t":4,"p":1,"n":"Bounding Box (Collision Geometry)"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Ground"},{"t":4,"p":1,"n":"Multibound"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"s":1,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":8,"p":1,"n":"Linked Rooms","c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Border Region"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Secret"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Treat spells as powers"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Can Hold NPC Soul"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Never Fades"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Has Tree LOD"},{"t":4,"p":1,"n":"Add-On LOD Object"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Hidden From Local Map"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Uses HD LOD Texture"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Has Currents"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"p":1,"n":"Is Marker"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"p":1,"n":"NavMesh Generation - Filter"},{"t":4,"p":1,"n":"NavMesh Generation - Bounding Box"},{"t":4,"p":1,"n":"Show In World Map"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"NavMesh Generation - Ground"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Hidden From Local Map"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"p":1,"n":"Radio Station"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Can't Wait"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","d":1,"c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","d":1,"c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]}]},"name":"Smash.All","hash":"5D89FB7F","color":128} \ No newline at end of file +{"records":"ACHR,ACTI,ADDN,ALCH,AMMO,ANIO,APPA,ARMA,ARMO,ARTO,ASPC,ASTP,AVIF,BOOK,BPTD,CAMS,CELL,CLAS,CLDC,CLFM,CLMT,COBJ,COLL,CONT,CPTH,CSTY,DEBR,DIAL,DLBR,DLVW,DOOR,DUAL,ECZN,EFSH,ENCH,EQUP,EXPL,EYES,FACT,FLOR,FLST,FSTP,FSTS,FURN,GLOB,GMST,GRAS,HAIR,HAZD,HDPT,IDLM,IMAD,IMGS,INFO,INGR,IPCT,IPDS,KEYM,KYWD,LAND,LCRT,LENS,LGTM,LIGH,LSCR,LTEX,LVLI,LVLN,LVSP,MATO,MATT,MESG,MGEF,MISC,MOVT,MSTT,MUSC,MUST,NPC_,OTFT,PACK,PARW,PBAR,PBEA,PCON,PERK,PFLA,PGRE,PHZD,Play,PMIS,PROJ,PWAT,QUST,RACE,REFR,REGN,RELA,REVB,RFCT,RGDL,SCEN,SCOL,SCPT,SCRL,SHOU,SLGM,SMBN,SMEN,SMQN,SNCT,SNDR,SOPM,SOUN,SPEL,SPGD,STAT,TACT,TREE,TXST,VOLI,VTYP,WATR,WEAP,WOOP,WRLD,WTHR,AACT","description":"Smashes all the things. Produced using autoset attributes on all record types. Replaces the old \"Automatic\" setting.\r\n\r\nLast updated 8\/17\/2021.","tree":{"records":[{"t":1,"p":1,"n":"ACHR - Placed NPC","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Starts Dead"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"No AI Acquire"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":6,"s":1,"p":1,"n":"Patrol Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":3,"p":1,"n":"TNAM - Topic"}]},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XMRC - Merchant Container"},{"t":3,"p":1,"n":"XCNT - Count"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":5,"p":1,"n":"XHLP - Health"},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XCLP - Linked Reference Color","c":[{"t":6,"p":1,"n":"Link Start Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Link End Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XHOR - Horse"},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIBS - Ignored By Sandbox"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"ACTI - Activator","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Has Tree LOD"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Must Update Anims"},{"t":4,"p":1,"n":"Hidden From Local Map"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"p":1,"n":"Dangerous"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Ignore Object Interaction"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"p":1,"n":"Is Marker"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"p":1,"n":"NavMesh Generation - Filter"},{"t":4,"p":1,"n":"NavMesh Generation - Bounding Box"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Child Can Use"},{"t":4,"p":1,"n":"NavMesh Generation - Ground"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Marker Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"SNAM - Sound - Looping"},{"t":3,"p":1,"n":"VNAM - Sound - Activation"},{"t":3,"p":1,"n":"WNAM - Water Type"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"No Displacement"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"}]},{"t":1,"p":1,"n":"ADDN - Addon Node","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Node Index"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Master Particle System Cap"},{"t":3,"p":1,"n":"Flags"}]}]},{"t":1,"p":1,"n":"ALCH - Ingestible","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":5,"p":1,"n":"DATA - Weight"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":"Food Item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Medicine"},{"t":4,"p":1,"n":"Poison"}]},{"t":3,"p":1,"n":"Addiction"},{"t":5,"p":1,"n":"Addiction Chance"},{"t":3,"p":1,"n":"Sound - Consume"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"AMMO - Ammunition","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"p":1,"n":"Non-Bolt"}]},{"t":5,"p":1,"n":"Damage"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":2,"p":1,"n":"ONAM - Short Name"}]},{"t":1,"p":1,"n":"ANIO - Animated Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":2,"p":1,"n":"BNAM - Unload Event"}]},{"t":1,"p":1,"n":"APPA - Alchemical Apparatus","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"p":1,"n":"QUAL - Quality"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"ARMA - Armor Addon","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Male Priority"},{"t":3,"p":1,"n":"Female Priority"},{"t":3,"p":1,"n":"Weight slider - Male","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":3,"p":1,"n":"Weight slider - Female","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Enabled"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Detection Sound Value"},{"t":5,"p":1,"n":"Weapon Adjust"}]},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Male 1st Person","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Female 1st Person","c":[{"t":2,"p":1,"n":"MOD5 - Model FileName"},{"t":11,"p":1,"n":"MO5T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO5S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"NAM0 - Male Skin Texture"},{"t":3,"p":1,"n":"NAM1 - Female Skin texture"},{"t":3,"p":1,"n":"NAM2 - Male Skin Texture Swap List"},{"t":3,"p":1,"n":"NAM3 - Female Skin Texture Swap List"},{"t":8,"p":1,"n":"Additional Races","d":1,"c":[{"t":3,"p":1,"n":"MODL - Race"}]},{"t":3,"p":1,"n":"SNDD - Footstep Sound"},{"t":3,"p":1,"n":"ONAM - Art Object"}]},{"t":1,"p":1,"n":"ARMO - Armor","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Shield"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Male world model","c":[{"t":2,"p":1,"n":"MOD2 - Model FileName"},{"t":11,"p":1,"n":"MO2T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO2S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Female world model","c":[{"t":2,"p":1,"n":"MOD4 - Model FileName"},{"t":11,"p":1,"n":"MO4T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO4S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon 2 (female)","c":[{"t":2,"p":1,"n":"ICO2 - Large Icon FileName"},{"t":2,"p":1,"n":"MIC2 - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BODT - Body Template","lf":"BODT - Body Template"},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"p":1,"n":"30 - Head"},{"t":4,"p":1,"n":"31 - Hair"},{"t":4,"p":1,"n":"32 - Body"},{"t":4,"p":1,"n":"33 - Hands"},{"t":4,"p":1,"n":"34 - Forearms"},{"t":4,"p":1,"n":"35 - Amulet"},{"t":4,"p":1,"n":"36 - Ring"},{"t":4,"p":1,"n":"37 - Feet"},{"t":4,"p":1,"n":"38 - Calves"},{"t":4,"p":1,"n":"39 - Shield"},{"t":4,"p":1,"n":"40 - Tail"},{"t":4,"p":1,"n":"41 - LongHair"},{"t":4,"p":1,"n":"42 - Circlet"},{"t":4,"p":1,"n":"43 - Ears"},{"t":4,"p":1,"n":"44 - Unnamed"},{"t":4,"p":1,"n":"45 - Unnamed"},{"t":4,"p":1,"n":"46 - Unnamed"},{"t":4,"p":1,"n":"47 - Unnamed"},{"t":4,"p":1,"n":"48 - Unnamed"},{"t":4,"p":1,"n":"49 - Unnamed"},{"t":4,"p":1,"n":"50 - DecapitateHead"},{"t":4,"p":1,"n":"51 - Decapitate"},{"t":4,"p":1,"n":"52 - Unnamed"},{"t":4,"p":1,"n":"53 - Unnamed"},{"t":4,"p":1,"n":"54 - Unnamed"},{"t":4,"p":1,"n":"55 - Unnamed"},{"t":4,"p":1,"n":"56 - Unnamed"},{"t":4,"p":1,"n":"57 - Unnamed"},{"t":4,"p":1,"n":"58 - Unnamed"},{"t":4,"p":1,"n":"59 - Unnamed"},{"t":4,"p":1,"n":"60 - Unnamed"},{"t":4,"p":1,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}],"lt":"BOD2 - Biped Body Template","lf":"BOD2 - Biped Body Template"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":2,"p":1,"n":"BMCT - Ragdoll Constraint Template"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"RNAM - Race"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Armature","d":1,"c":[{"t":3,"p":1,"n":"MODL - Model FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"DNAM - Armor Rating"},{"t":3,"p":1,"n":"TNAM - Template Armor"}]},{"t":1,"p":1,"n":"ARTO - Art Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DNAM - Art Type"}]},{"t":1,"p":1,"n":"ASPC - Acoustic Space","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"SNAM - Ambient Sound"},{"t":3,"p":1,"n":"RDAT - Use Sound from Region (Interiors Only)"},{"t":3,"p":1,"n":"BNAM - Environment Type (reverb)"}]},{"t":1,"p":1,"n":"ASTP - Association Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MPRT - Male Parent Title"},{"t":2,"p":1,"n":"FPRT - Female Parent Title"},{"t":2,"p":1,"n":"MCHT - Male Child Title"},{"t":2,"p":1,"n":"FCHT - Female Child Title"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Family Association"}]}]},{"t":1,"p":1,"n":"AVIF - Actor Value Information","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"ANAM - Abbreviation"},{"t":11,"n":"CNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"AVSK - Skill","c":[{"t":5,"p":1,"n":"Skill Use Mult"},{"t":5,"p":1,"n":"Skill Offset Mult"},{"t":5,"p":1,"n":"Skill Improve Mult"},{"t":5,"p":1,"n":"Skill Improve Offset"}]},{"t":8,"s":1,"p":1,"n":"Perk Tree","d":1,"c":[{"t":6,"p":1,"n":"Node","c":[{"t":3,"p":1,"n":"PNAM - Perk"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"XNAM - Perk-Grid X"},{"t":3,"p":1,"n":"YNAM - Perk-Grid Y"},{"t":5,"p":1,"n":"HNAM - Horizontal Position"},{"t":5,"p":1,"n":"VNAM - Vertical Position"},{"t":3,"p":1,"n":"SNAM - Associated Skill"},{"t":8,"p":1,"n":"Connections","c":[{"t":3,"p":1,"n":"CNAM - Line to Index"}]},{"t":3,"p":1,"n":"INAM - Index"}]}]}]},{"t":1,"p":1,"n":"BOOK - Book","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Book Text"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Teaches Skill"},{"t":4,"p":1,"n":"Can't be Taken"},{"t":4,"p":1,"n":"Teaches Spell"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"INAM - Inventory Art"},{"t":2,"p":1,"n":"CNAM - Description"}]},{"t":1,"p":1,"n":"BPTD - Body Part Data","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":10,"p":1,"n":"Body Parts","d":1,"c":[{"t":6,"p":1,"n":"Body Part","c":[{"t":2,"p":1,"n":"BPTN - Part Name"},{"t":2,"p":1,"n":"PNAM - Pose Matching"},{"t":2,"p":1,"n":"BPNN - Part Node"},{"t":2,"p":1,"n":"BPNT - VATS Target"},{"t":2,"p":1,"n":"BPNI - IK Data - Start Node"},{"t":6,"p":1,"n":"BPND - BPND","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Severable"},{"t":4,"p":1,"n":"IK Data"},{"t":4,"p":1,"n":"IK Data - Biped Data"},{"t":4,"p":1,"n":"Explodable"},{"t":4,"p":1,"n":"IK Data - Is Head"},{"t":4,"p":1,"n":"IK Data - Headtracking"},{"t":4,"p":1,"n":"To Hit Chance - Absolute"}]},{"t":3,"p":1,"n":"Part Type"},{"t":3,"p":1,"n":"Health Percent"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"To Hit Chance"},{"t":3,"p":1,"n":"Explodable - Explosion Chance %"},{"t":3,"p":1,"n":"Explodable - Debris Count"},{"t":3,"p":1,"n":"Explodable - Debris"},{"t":3,"p":1,"n":"Explodable - Explosion"},{"t":5,"p":1,"n":"Tracking Max Angle"},{"t":5,"p":1,"n":"Explodable - Debris Scale"},{"t":3,"p":1,"n":"Severable - Debris Count"},{"t":3,"p":1,"n":"Severable - Debris"},{"t":3,"p":1,"n":"Severable - Explosion"},{"t":5,"p":1,"n":"Severable - Debris Scale"},{"t":6,"p":1,"n":"Gore Effects Positioning","c":[{"t":6,"p":1,"n":"Translate","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Severable - Impact DataSet"},{"t":3,"p":1,"n":"Explodable - Impact DataSet"},{"t":3,"p":1,"n":"Severable - Decal Count"},{"t":3,"p":1,"n":"Explodable - Decal Count"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Limb Replacement Scale"}]},{"t":2,"p":1,"n":"NAM1 - Limb Replacement Model"},{"t":2,"p":1,"n":"NAM4 - Gore Effects - Target Bone"},{"t":11,"p":1,"n":"NAM5 - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"CAMS - Camera Shot","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Action"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Position Follows Location"},{"t":4,"p":1,"n":"Rotation Follows Target"},{"t":4,"p":1,"n":"Don't Follow Bone"},{"t":4,"p":1,"n":"First Person Camera"},{"t":4,"p":1,"n":"No Tracer"},{"t":4,"p":1,"n":"Start At Time Zero"}]},{"t":6,"p":1,"n":"Time Multipliers","c":[{"t":5,"p":1,"n":"Player"},{"t":5,"p":1,"n":"Target"},{"t":5,"p":1,"n":"Global"}]},{"t":5,"p":1,"n":"Max Time"},{"t":5,"p":1,"n":"Min Time"},{"t":5,"p":1,"n":"Target % Between Actors"},{"t":5,"p":1,"n":"Near Target Distance"}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"}]},{"t":1,"p":1,"n":"CELL - Cell","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Off Limits"},{"t":4,"p":1,"n":"Compressed"},{"t":4,"p":1,"n":"Can't Wait"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Is Interior Cell"},{"t":4,"p":1,"n":"Has Water"},{"t":4,"p":1,"n":"Can't Travel From Here"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Public Area"},{"t":4,"p":1,"n":"Hand Changed"},{"t":4,"p":1,"n":"Show Sky"},{"t":4,"p":1,"n":"Use Sky Lighting"}]},{"t":6,"s":1,"p":1,"n":"XCLC - Grid","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Force Hide Land","c":[{"t":4,"p":1,"n":"Quad 1"},{"t":4,"p":1,"n":"Quad 2"},{"t":4,"p":1,"n":"Quad 3"},{"t":4,"p":1,"n":"Quad 4"}]}]},{"t":6,"s":1,"p":1,"n":"XCLL - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Distance"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":5,"p":1,"n":"Light Fade Begin"},{"t":5,"p":1,"n":"Light Fade End"},{"t":3,"p":1,"n":"Inherits","c":[{"t":4,"p":1,"n":"Ambient Color"},{"t":4,"p":1,"n":"Directional Color"},{"t":4,"p":1,"n":"Fog Color"},{"t":4,"p":1,"n":"Fog Near"},{"t":4,"p":1,"n":"Fog Far"},{"t":4,"p":1,"n":"Directional Rotation"},{"t":4,"p":1,"n":"Directional Fade"},{"t":4,"p":1,"n":"Clip Distance"},{"t":4,"p":1,"n":"Fog Power"},{"t":4,"p":1,"n":"Fog Max"},{"t":4,"p":1,"n":"Light Fade Distances"}]}]},{"t":11,"n":"TVDT - Occlusion Data"},{"t":11,"n":"MHDT - Max Height Data"},{"t":3,"p":1,"n":"LTMP - Lighting Template"},{"t":11,"n":"LNAM - Unknown"},{"t":5,"p":1,"n":"XCLW - Water Height"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":7,"p":1,"n":"XCLR - Regions","c":[{"t":3,"p":1,"n":"Region"}]},{"t":3,"p":1,"n":"XLCN - Location"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":3,"p":1,"n":"XCWT - Water"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XILL - Lock List"},{"t":2,"p":1,"n":"XWEM - Water Environment Map"},{"t":3,"p":1,"n":"XCCM - Sky\/Weather from Region"},{"t":3,"p":1,"n":"XCAS - Acoustic Space"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XCMO - Music Type"},{"t":3,"p":1,"n":"XCIM - Image Space"}]},{"t":1,"p":1,"n":"CLAS - Class","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Teaches"},{"t":3,"p":1,"n":"Maximum training level"},{"t":7,"p":1,"n":"Skill Weights","c":[{"t":3,"p":1,"n":"One Handed"},{"t":3,"p":1,"n":"Two Handed"},{"t":3,"p":1,"n":"Archery"},{"t":3,"p":1,"n":"Block"},{"t":3,"p":1,"n":"Smithing"},{"t":3,"p":1,"n":"Heavy Armor"},{"t":3,"p":1,"n":"Light Armor"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"p":1,"n":"Lockpicking"},{"t":3,"p":1,"n":"Sneak"},{"t":3,"p":1,"n":"Alchemy"},{"t":3,"p":1,"n":"Speech"},{"t":3,"p":1,"n":"Alteration"},{"t":3,"p":1,"n":"Conjuration"},{"t":3,"p":1,"n":"Destruction"},{"t":3,"p":1,"n":"Illusion"},{"t":3,"p":1,"n":"Restoration"},{"t":3,"p":1,"n":"Enchanting"}]},{"t":5,"p":1,"n":"Bleedout Default"},{"t":3,"p":1,"n":"Voice Points"},{"t":7,"p":1,"n":"Attribute Weights","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":3,"n":"Unknown"}]}]}]},{"t":1,"p":1,"n":"CLDC","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"CLFM - Color","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"FNAM - Playable"}]},{"t":1,"p":1,"n":"CLMT - Climate","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"WLST - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]},{"t":2,"p":1,"n":"FNAM - Sun Texture"},{"t":2,"p":1,"n":"GNAM - Sun Glare Texture"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"TNAM - Timing","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Begin"},{"t":3,"p":1,"n":"End"}]},{"t":3,"p":1,"n":"Volatility"},{"t":3,"p":1,"n":"Moons \/ Phase Length"}]}]},{"t":1,"p":1,"n":"COBJ - Constructible Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"CNAM - Created Object"},{"t":3,"p":1,"n":"BNAM - Workbench Keyword"},{"t":3,"p":1,"n":"NAM1 - Created Object Count"}]},{"t":1,"p":1,"n":"COLL - Collision Layer","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"p":1,"n":"BNAM - Index"},{"t":6,"s":1,"p":1,"n":"FNAM - Debug Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"n":"Unused"}]},{"t":3,"p":1,"n":"GNAM - Flags","c":[{"t":4,"p":1,"n":"Trigger Volume"},{"t":4,"p":1,"n":"Sensor"},{"t":4,"p":1,"n":"Navmesh Obstacle"}]},{"t":2,"p":1,"n":"MNAM - Name"},{"t":3,"n":"INTV - Interactables Count"},{"t":7,"p":1,"n":"CNAM - Collides With","c":[{"t":3,"p":1,"n":"Forms"}]}]},{"t":1,"p":1,"n":"CONT - Container","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"p":1,"n":"NavMesh Generation - Filter"},{"t":4,"p":1,"n":"NavMesh Generation - Bounding Box"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"NavMesh Generation - Ground"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Allow Sounds When Animation"},{"t":4,"p":1,"n":"Respawns"},{"t":4,"p":1,"n":"Show Owner"}]},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"QNAM - Sound - Close"}]},{"t":1,"p":1,"n":"CPTH - Camera Path","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"ANAM - Related Camera Paths","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Previous Sibling"}]},{"t":3,"p":1,"n":"DATA - Camera Zoom"},{"t":8,"s":1,"p":1,"n":"Camera Shots","d":1,"c":[{"t":3,"p":1,"n":"SNAM - Camera Shot"}]}]},{"t":1,"p":1,"n":"CSTY - Combat Style","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Allow Dual Wielding"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CSGD - General","c":[{"t":5,"p":1,"n":"Offensive Mult"},{"t":5,"p":1,"n":"Defensive Mult"},{"t":5,"p":1,"n":"Group Offensive Mult"},{"t":5,"p":1,"n":"Equipment Score Mult - Melee"},{"t":5,"p":1,"n":"Equipment Score Mult - Magic"},{"t":5,"p":1,"n":"Equipment Score Mult - Ranged"},{"t":5,"p":1,"n":"Equipment Score Mult - Shout"},{"t":5,"p":1,"n":"Equipment Score Mult - Unarmed"},{"t":5,"p":1,"n":"Equipment Score Mult - Staff"},{"t":5,"p":1,"n":"Avoid Threat Chance"}]},{"t":11,"n":"CSMD - Unknown"},{"t":6,"s":1,"p":1,"n":"CSME - Melee","c":[{"t":5,"p":1,"n":"Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Staggered Mult"},{"t":5,"p":1,"n":"Power Attack Blocking Mult"},{"t":5,"p":1,"n":"Bash Mult"},{"t":5,"p":1,"n":"Bash Recoil Mult"},{"t":5,"p":1,"n":"Bash Attack Mult"},{"t":5,"p":1,"n":"Bash Power Attack Mult"},{"t":5,"p":1,"n":"Special Attack Mult"}]},{"t":6,"s":1,"p":1,"n":"CSCR - Close Range","c":[{"t":5,"p":1,"n":"Circle Mult"},{"t":5,"p":1,"n":"Fallback Mult"},{"t":5,"p":1,"n":"Flank Distance"},{"t":5,"p":1,"n":"Stalk Time"}]},{"t":6,"s":1,"p":1,"n":"CSLR - Long Range","c":[{"t":5,"p":1,"n":"Strafe Mult"}]},{"t":6,"s":1,"p":1,"n":"CSFL - Flight","c":[{"t":5,"p":1,"n":"Hover Chance"},{"t":5,"p":1,"n":"Dive Bomb Chance"},{"t":5,"p":1,"n":"Ground Attack Chance"},{"t":5,"p":1,"n":"Hover Time"},{"t":5,"p":1,"n":"Ground Attack Time"},{"t":5,"p":1,"n":"Perch Attack Chance"},{"t":5,"p":1,"n":"Perch Attack Time"},{"t":5,"p":1,"n":"Flying Attack Chance"}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Dueling"},{"t":4,"p":1,"n":"Flanking"},{"t":4,"p":1,"n":"Allow Dual Wielding"}]}]},{"t":1,"p":1,"n":"DEBR - Debris","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Models","d":1,"c":[{"t":6,"p":1,"n":"Model","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Percentage"},{"t":2,"p":1,"n":"Model FileName"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Has Collision Data"}]}]},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"}]}]}]},{"t":1,"p":1,"n":"DIAL - Dialog Topic","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":5,"p":1,"n":"PNAM - Priority"},{"t":3,"p":1,"n":"BNAM - Branch"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Topic Flags","c":[{"t":4,"p":1,"n":"Do All Before Repeating"}]},{"t":3,"p":1,"n":"Category"},{"t":3,"p":1,"n":"Subtype"}]},{"t":2,"p":1,"n":"SNAM - Subtype Name"},{"t":3,"p":1,"n":"TIFC - Info Count"}]},{"t":1,"p":1,"n":"DLBR - Dialog Branch","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":3,"n":"TNAM - Unknown"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Top-Level"},{"t":4,"p":1,"n":"Blocking"},{"t":4,"p":1,"n":"Exclusive"}]},{"t":3,"p":1,"n":"SNAM - Starting Topic"}]},{"t":1,"p":1,"n":"DLVW - Dialog View","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"QNAM - Quest"},{"t":8,"s":1,"p":1,"n":"Branches","d":1,"c":[{"t":3,"p":1,"n":"BNAM - Branch"}]},{"t":8,"n":"Unknown TNAM","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"TNAM - Unknown"}]}]},{"t":11,"n":"ENAM - Unknown"},{"t":11,"n":"DNAM - Unknown"}]},{"t":1,"n":"DOBJ - Default Object Manager","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"DNAM - Objects","c":[{"t":6,"n":"Object","c":[{"t":3,"n":"Use"},{"t":3,"n":"Object ID"}]}]}]},{"t":1,"p":1,"n":"DOOR - Door","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"p":1,"n":"Is Marker"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"SNAM - Sound - Open"},{"t":3,"p":1,"n":"ANAM - Sound - Close"},{"t":3,"p":1,"n":"BNAM - Sound - Loop"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Automatic"},{"t":4,"p":1,"n":"Hidden"},{"t":4,"p":1,"n":"Minimal Use"},{"t":4,"p":1,"n":"Sliding"},{"t":4,"p":1,"n":"Do Not Open in Combat Search"}]}]},{"t":1,"p":1,"n":"DUAL - Dual Cast Data","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Effect Shader"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Inherit Scale","c":[{"t":4,"p":1,"n":"Hit Effect Art"},{"t":4,"p":1,"n":"Projectile"},{"t":4,"p":1,"n":"Explosion"}]}]}]},{"t":1,"p":1,"n":"ECZN - Encounter Zone","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Min Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Never Resets"},{"t":4,"p":1,"n":"Match PC Below Minimum Level"},{"t":4,"p":1,"n":"Disable Combat Boundary"}]},{"t":3,"p":1,"n":"Max Level"}]}]},{"t":1,"p":1,"n":"EFSH - Effect Shader","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"ICON - Fill Texture"},{"t":2,"p":1,"n":"ICO2 - Particle Shader Texture"},{"t":2,"p":1,"n":"NAM7 - Holes Texture"},{"t":2,"p":1,"n":"NAM8 - Membrane Palette Texture"},{"t":2,"p":1,"n":"NAM9 - Particle Palette Texture"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Membrane Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Membrane Shader - Blend Operation"},{"t":3,"p":1,"n":"Membrane Shader - Z Test Function"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 1","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Presistent Alpha Ratio"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Animation Speed (V)"},{"t":5,"p":1,"n":"Edge Effect - Fall Off"},{"t":6,"p":1,"n":"Edge Effect - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade In Time"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Time"},{"t":5,"p":1,"n":"Edge Effect - Alpha Fade Out Time"},{"t":5,"p":1,"n":"Edge Effect - Persistent Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Amplitude"},{"t":5,"p":1,"n":"Edge Effect - Alpha Pulse Frequency"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Full Alpha Ratio"},{"t":5,"p":1,"n":"Edge Effect - Full Alpha Ratio"},{"t":3,"p":1,"n":"Membrane Shader - Dest Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Source Blend Mode"},{"t":3,"p":1,"n":"Particle Shader - Blend Operation"},{"t":3,"p":1,"n":"Particle Shader - Z Test Function"},{"t":3,"p":1,"n":"Particle Shader - Dest Blend Mode"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Up Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Time"},{"t":5,"p":1,"n":"Particle Shader - Particle Birth Ramp Down Time"},{"t":5,"p":1,"n":"Particle Shader - Full Particle Birth Ratio"},{"t":5,"p":1,"n":"Particle Shader - Persistant Particle Count"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime"},{"t":5,"p":1,"n":"Particle Shader - Particle Lifetime +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Acceleration Along Normal"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #1"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #2"},{"t":5,"p":1,"n":"Particle Shader - Initial Velocity #3"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #1"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #2"},{"t":5,"p":1,"n":"Particle Shader - Acceleration #3"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 1 Time"},{"t":5,"p":1,"n":"Particle Shader - Scale Key 2 Time"},{"t":6,"p":1,"n":"Color Key 1 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 2 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Color Key 3 - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Color Key 1 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 2 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 3 - Color Alpha"},{"t":5,"p":1,"n":"Color Key 1 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 2 - Color Key Time"},{"t":5,"p":1,"n":"Color Key 3 - Color Key Time"},{"t":5,"p":1,"n":"Particle Shader - Initial Speed Along Normal +\/-"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg)"},{"t":5,"p":1,"n":"Particle Shader - Initial Rotation (deg) +\/-"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec)"},{"t":5,"p":1,"n":"Particle Shader - Rotation Speed (deg\/sec) +\/-"},{"t":3,"p":1,"n":"Addon Models"},{"t":5,"p":1,"n":"Holes - Start Time"},{"t":5,"p":1,"n":"Holes - End Time"},{"t":5,"p":1,"n":"Holes - Start Val"},{"t":5,"p":1,"n":"Holes - End Val"},{"t":5,"p":1,"n":"Edge Width (alpha units)"},{"t":6,"p":1,"n":"Edge Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Explosion Wind Speed"},{"t":3,"p":1,"n":"Texture Count U"},{"t":3,"p":1,"n":"Texture Count V"},{"t":5,"p":1,"n":"Addon Models - Fade In Time"},{"t":5,"p":1,"n":"Addon Models - Fade Out Time"},{"t":5,"p":1,"n":"Addon Models - Scale Start"},{"t":5,"p":1,"n":"Addon Models - Scale End"},{"t":5,"p":1,"n":"Addon Models - Scale In Time"},{"t":5,"p":1,"n":"Addon Models - Scale Out Time"},{"t":3,"p":1,"n":"Ambient Sound"},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 2","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key 3","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fill\/Texture Effect - Color Key Scale\/Time","c":[{"t":5,"p":1,"n":"Color Key 1 - Scale"},{"t":5,"p":1,"n":"Color Key 2 - Scale"},{"t":5,"p":1,"n":"Color Key 3 - Scale"},{"t":5,"p":1,"n":"Color Key 1 - Time"},{"t":5,"p":1,"n":"Color Key 2 - Time"},{"t":5,"p":1,"n":"Color Key 3 - Time"}]},{"t":5,"p":1,"n":"Color Scale"},{"t":5,"p":1,"n":"Birth Position Offset"},{"t":5,"p":1,"n":"Birth Position Offset Range +\/-"},{"t":6,"p":1,"n":"Particle Shader Animated","c":[{"t":3,"p":1,"n":"Start Frame"},{"t":3,"p":1,"n":"Start Frame Variation"},{"t":3,"p":1,"n":"End Frame"},{"t":3,"p":1,"n":"Loop Start Frame"},{"t":3,"p":1,"n":"Loop Start Variation"},{"t":3,"p":1,"n":"Frame Count"},{"t":3,"p":1,"n":"Frame Count Variation"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Membrane Shader"},{"t":4,"p":1,"n":"Membrane Grayscale Color"},{"t":4,"p":1,"n":"Membrane Grayscale Alpha"},{"t":4,"p":1,"n":"No Particle Shader"},{"t":4,"p":1,"n":"Edge Effect Inverse"},{"t":4,"p":1,"n":"Affect Skin Only"},{"t":4,"p":1,"n":"Ignore Alpha"},{"t":4,"p":1,"n":"Project UVs"},{"t":4,"p":1,"n":"Ignore Base Geometry Alpha"},{"t":4,"p":1,"n":"Lighting"},{"t":4,"p":1,"n":"No Weapons"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Particle Animated"},{"t":4,"p":1,"n":"Particle Grayscale Color"},{"t":4,"p":1,"n":"Particle Grayscale Alpha"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Use Blood Geometry"}]},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (U)"},{"t":5,"p":1,"n":"Fill\/Texture Effect - Texture Scale (V)"},{"t":3,"p":1,"n":"Scene Graph Emit Depth Limit (unused)"}]}]},{"t":1,"p":1,"n":"ENCH - Object Effect","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Enchantment Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Auto-Calc"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Extend Duration On Recast"}]},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Enchantment Amount"},{"t":3,"p":1,"n":"Target Type"},{"t":3,"p":1,"n":"Enchant Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Base Enchantment"},{"t":3,"p":1,"n":"Worn Restrictions"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"EQUP - Equip Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"PNAM - Slot Parents","c":[{"t":3,"p":1,"n":"Can Be Equipped"}]},{"t":3,"p":1,"n":"DATA - Use All Parents"}]},{"t":1,"p":1,"n":"EXPL - Explosion","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Sound 1"},{"t":3,"p":1,"n":"Sound 2"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Placed Object"},{"t":3,"p":1,"n":"Spawn Projectile"},{"t":5,"p":1,"n":"Force"},{"t":5,"p":1,"n":"Damage"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"IS Radius"},{"t":5,"p":1,"n":"Vertical Offset Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Always Uses World Orientation"},{"t":4,"p":1,"n":"Knock Down - Always"},{"t":4,"p":1,"n":"Knock Down - By Formula"},{"t":4,"p":1,"n":"Ignore LOS Check"},{"t":4,"p":1,"n":"Push Explosion Source Ref Only"},{"t":4,"p":1,"n":"Ignore Image Space Swap"},{"t":4,"p":1,"n":"Chain"},{"t":4,"p":1,"n":"No Controller Vibration"}]},{"t":3,"p":1,"n":"Sound Level"}]}]},{"t":1,"p":1,"n":"EYES - Eyes","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"ICON - Texture"},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Not Male"},{"t":4,"p":1,"n":"Not Female"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]}]},{"t":1,"p":1,"n":"FACT - Faction","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"p":1,"n":"Relations","d":1,"c":[{"t":6,"s":1,"p":1,"n":"XNAM - Relation","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Modifier"},{"t":3,"p":1,"n":"Group Combat Reaction"}]}]},{"t":6,"p":1,"n":"DATA - Flags","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Hidden From NPC"},{"t":4,"p":1,"n":"Special Combat"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Unknown 4"},{"t":4,"p":1,"n":"Unknown 5"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Track Crime"},{"t":4,"p":1,"n":"Ignore Crimes: Murder"},{"t":4,"p":1,"n":"Ignore Crimes: Assault"},{"t":4,"p":1,"n":"Ignore Crimes: Stealing"},{"t":4,"p":1,"n":"Ignore Crimes: Trespass"},{"t":4,"p":1,"n":"Do Not Report Crimes Against Members"},{"t":4,"p":1,"n":"Crime Gold - Use Defaults"},{"t":4,"p":1,"n":"Ignore Crimes: Pickpocket"},{"t":4,"p":1,"n":"Vendor"},{"t":4,"p":1,"n":"Can Be Owner"},{"t":4,"p":1,"n":"Ignore Crimes: Werewolf"},{"t":4,"p":1,"n":"Unknown 18"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Unknown 22"},{"t":4,"p":1,"n":"Unknown 23"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Unknown 27"},{"t":4,"p":1,"n":"Unknown 28"},{"t":4,"p":1,"n":"Unknown 29"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]}]},{"t":3,"p":1,"n":"JAIL - Exterior Jail Marker"},{"t":3,"p":1,"n":"WAIT - Follower Wait Marker"},{"t":3,"p":1,"n":"STOL - Stolen Goods Container"},{"t":3,"p":1,"n":"PLCN - Player Inventory Container"},{"t":3,"p":1,"n":"CRGR - Shared Crime Faction List"},{"t":3,"p":1,"n":"JOUT - Jail Outfit"},{"t":6,"s":1,"p":1,"n":"CRVA - Crime Values","c":[{"t":3,"p":1,"n":"Arrest"},{"t":3,"p":1,"n":"Attack On Sight"},{"t":3,"p":1,"n":"Murder"},{"t":3,"p":1,"n":"Assault"},{"t":3,"p":1,"n":"Trespass"},{"t":3,"p":1,"n":"Pickpocket"},{"t":3,"n":"Unknown"},{"t":5,"p":1,"n":"Steal Multiplier"},{"t":3,"p":1,"n":"Escape"},{"t":3,"p":1,"n":"Werewolf"}]},{"t":10,"p":1,"n":"Ranks","d":1,"c":[{"t":6,"p":1,"n":"Rank","c":[{"t":3,"p":1,"n":"RNAM - Rank#"},{"t":2,"p":1,"n":"MNAM - Male Title"},{"t":2,"p":1,"n":"FNAM - Female Title"},{"t":2,"n":"INAM - Insignia Unused"}]}]},{"t":3,"p":1,"n":"VEND - Vendor Buy\/Sell List"},{"t":3,"p":1,"n":"VENC - Merchant Container"},{"t":6,"s":1,"p":1,"n":"VENV - Vendor Values","c":[{"t":3,"p":1,"n":"Start Hour"},{"t":3,"p":1,"n":"End Hour"},{"t":3,"p":1,"n":"Radius"},{"t":11,"n":"Unknown 1"},{"t":3,"p":1,"n":"Only Buys Stolen Items"},{"t":3,"p":1,"n":"Not\/Sell Buy"},{"t":11,"n":"Unknown 2"}]},{"t":6,"s":1,"p":1,"n":"PLVD - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"FLOR - Flora","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"s":1,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":2,"p":1,"n":"RNAM - Activate Text Override"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Seasonal ingredient production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer "},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]}]},{"t":1,"p":1,"n":"FLST - FormID List","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"p":1,"n":"FormIDs","d":1,"c":[{"t":3,"p":1,"n":"LNAM - FormID"}]}]},{"t":1,"p":1,"n":"FSTP - Footstep","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DATA - Impact Data Set"},{"t":2,"p":1,"n":"ANAM - Tag"}]},{"t":1,"p":1,"n":"FSTS - Footstep Set","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"XCNT - Count","c":[{"t":3,"p":1,"n":"Walk Forward Sets"},{"t":3,"p":1,"n":"Run Forward Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate Sets"},{"t":3,"p":1,"n":"Run Forward Alternate Sets"},{"t":3,"p":1,"n":"Walk Forward Alternate 2 Sets"}]},{"t":7,"s":1,"p":1,"n":"DATA - Footstep Sets","c":[{"t":3,"p":1,"n":"Footstep"}]}]},{"t":1,"p":1,"n":"FURN - Furniture","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"p":1,"n":"Is Marker"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Must Exit To Talk"},{"t":4,"p":1,"n":"Child Can Use"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"p":1,"n":"Ignored By Sandbox"}]},{"t":3,"p":1,"n":"KNAM - Interaction Keyword"},{"t":3,"p":1,"n":"MNAM - Active Markers \/ Flags","c":[{"t":4,"p":1,"n":"Sit 0"},{"t":4,"p":1,"n":"Sit 1"},{"t":4,"p":1,"n":"Sit 2"},{"t":4,"p":1,"n":"Sit 3"},{"t":4,"p":1,"n":"Sit 4"},{"t":4,"p":1,"n":"Sit 5"},{"t":4,"p":1,"n":"Sit 6"},{"t":4,"p":1,"n":"Sit 7"},{"t":4,"p":1,"n":"Sit 8"},{"t":4,"p":1,"n":"Sit 9"},{"t":4,"p":1,"n":"Sit 10"},{"t":4,"p":1,"n":"Sit 11"},{"t":4,"p":1,"n":"Sit 12"},{"t":4,"p":1,"n":"Sit 13"},{"t":4,"p":1,"n":"Sit 14"},{"t":4,"p":1,"n":"Sit 15"},{"t":4,"p":1,"n":"Sit 16"},{"t":4,"p":1,"n":"Sit 17"},{"t":4,"p":1,"n":"Sit 18"},{"t":4,"p":1,"n":"Sit 19"},{"t":4,"p":1,"n":"Sit 20"},{"t":4,"p":1,"n":"Sit 21"},{"t":4,"p":1,"n":"Sit 22"},{"t":4,"p":1,"n":"Sit 23"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Disables Activation"},{"t":4,"p":1,"n":"Is Perch"},{"t":4,"p":1,"n":"Must Exit to Talk"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":6,"s":1,"p":1,"n":"WBDT - Workbench Data","c":[{"t":3,"p":1,"n":"Bench Type"},{"t":3,"p":1,"n":"Uses Skill"}]},{"t":3,"p":1,"n":"NAM1 - Associated Spell"},{"t":8,"s":1,"p":1,"n":"Markers","d":1,"c":[{"t":6,"p":1,"n":"Marker","c":[{"t":3,"p":1,"n":"ENAM - Marker Index"},{"t":6,"p":1,"n":"NAM0 - Disabled Entry Points","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Disabled Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]},{"t":3,"p":1,"n":"FNMK - Marker Keyword"}]}]},{"t":8,"s":1,"p":1,"n":"Marker Entry Points","d":1,"c":[{"t":6,"p":1,"n":"FNPR - Marker","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Entry Points","c":[{"t":4,"p":1,"n":"Front"},{"t":4,"p":1,"n":"Behind"},{"t":4,"p":1,"n":"Right"},{"t":4,"p":1,"n":"Left"},{"t":4,"p":1,"n":"Up"}]}]}]},{"t":2,"p":1,"n":"XMRK - Model FileName"}]},{"t":1,"p":1,"n":"GLOB - Global","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Constant"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Type"},{"t":5,"p":1,"n":"FLTV - Value"}]},{"t":1,"p":1,"n":"GMST - Game Setting","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"Name"},{"t":3,"p":1,"n":"Int"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"}]},{"t":1,"p":1,"n":"GRAS - Grass","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Units From Water"},{"t":3,"p":1,"n":"Units From Water Type"},{"t":5,"p":1,"n":"Position Range"},{"t":5,"p":1,"n":"Height Range"},{"t":5,"p":1,"n":"Color Range"},{"t":5,"p":1,"n":"Wave Period"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Vertex Lighting"},{"t":4,"p":1,"n":"Uniform Scaling"},{"t":4,"p":1,"n":"Fit to Slope"}]}]}]},{"t":1,"p":1,"n":"HAIR","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"HAZD - Hazard","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"MNAM - Image Space Modifier"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Limit"},{"t":5,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Image Space Radius"},{"t":5,"p":1,"n":"Target Interval"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Affects Player Only"},{"t":4,"p":1,"n":"Inherit Duration from Spawn Spell"},{"t":4,"p":1,"n":"Align to Impact Normal"},{"t":4,"p":1,"n":"Inherit Radius from Spawn Spell"},{"t":4,"p":1,"n":"Drop to Ground"}]},{"t":3,"p":1,"n":"Spell"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Impact Data Set"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":1,"p":1,"n":"HDPT - Head Part","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"Male"},{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Is Extra Part"},{"t":4,"p":1,"n":"Use Solid Tint"}]},{"t":3,"p":1,"n":"PNAM - Type"},{"t":8,"s":1,"p":1,"n":"Extra Parts","d":1,"c":[{"t":3,"p":1,"n":"HNAM - Part"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"NAM0 - Part Type"},{"t":2,"p":1,"n":"NAM1 - FileName"}]}]},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"CNAM - Color"},{"t":3,"p":1,"n":"RNAM - Valid Races"}]},{"t":1,"n":"IDLE - Idle Animation","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"n":"DNAM - FileName"},{"t":2,"n":"ENAM - Animation Event"},{"t":7,"n":"ANAM - Related Idle Animations","c":[{"t":3,"n":"Parent"},{"t":3,"n":"Previous Sibling"}]},{"t":6,"n":"DATA - Data (unused)","c":[{"t":6,"n":"Looping seconds (both 255 forever)","c":[{"t":3,"n":"Min"},{"t":3,"n":"Max"}]},{"t":3,"n":"Flags","c":[{"t":4,"n":"Parent"},{"t":4,"n":"Sequence"},{"t":4,"n":"No Attacking"},{"t":4,"n":"Blocking"}]},{"t":3,"n":"Animation Group Section"},{"t":3,"n":"Replay Delay"}]}]},{"t":1,"p":1,"n":"IDLM - Idle Marker","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Child Can Use"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"IDLF - Flags","c":[{"t":4,"p":1,"n":"Run in Sequence"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Do Once"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Ignored by Sandbox"}]},{"t":3,"p":1,"n":"IDLC - Animation Count"},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"IMAD - Image Space Adapter","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DNAM - Data Count","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Animatable"}]},{"t":5,"n":"Duration"},{"t":6,"n":"HDR","c":[{"t":3,"n":"Eye Adapt Speed Mult"},{"t":3,"n":"Eye Adapt Speed Add"},{"t":3,"n":"Bloom Blur Radius Mult"},{"t":3,"n":"Bloom Blur Radius Add"},{"t":3,"n":"Bloom Threshold Mult"},{"t":3,"n":"Bloom Threshold Add"},{"t":3,"n":"Bloom Scale Mult"},{"t":3,"n":"Bloom Scale Add"},{"t":3,"n":"Target Lum Min Mult"},{"t":3,"n":"Target Lum Min Add"},{"t":3,"n":"Target Lum Max Mult"},{"t":3,"n":"Target Lum Max Add"},{"t":3,"n":"Sunlight Scale Mult"},{"t":3,"n":"Sunlight Scale Add"},{"t":3,"n":"Sky Scale Mult"},{"t":3,"n":"Sky Scale Add"}]},{"t":3,"n":"Unknown08 Mult"},{"t":3,"n":"Unknown48 Add"},{"t":3,"n":"Unknown09 Mult"},{"t":3,"n":"Unknown49 Add"},{"t":3,"n":"Unknown0A Mult"},{"t":3,"n":"Unknown4A Add"},{"t":3,"n":"Unknown0B Mult"},{"t":3,"n":"Unknown4B Add"},{"t":3,"n":"Unknown0C Mult"},{"t":3,"n":"Unknown4C Add"},{"t":3,"n":"Unknown0D Mult"},{"t":3,"n":"Unknown4D Add"},{"t":3,"n":"Unknown0E Mult"},{"t":3,"n":"Unknown4E Add"},{"t":3,"n":"Unknown0F Mult"},{"t":3,"n":"Unknown4F Add"},{"t":3,"n":"Unknown10 Mult"},{"t":3,"n":"Unknown50 Add"},{"t":6,"n":"Cinematic","c":[{"t":3,"n":"Saturation Mult"},{"t":3,"n":"Saturation Add"},{"t":3,"n":"Brightness Mult"},{"t":3,"n":"Brightness Add"},{"t":3,"n":"Contrast Mult"},{"t":3,"n":"Contrast Add"}]},{"t":3,"n":"Unknown14 Mult"},{"t":3,"n":"Unknown54 Add"},{"t":3,"n":"Tint Color"},{"t":3,"n":"Blur Radius"},{"t":3,"n":"Double Vision Strength"},{"t":3,"n":"Radial Blur Strength"},{"t":3,"n":"Radial Blur Ramp Up"},{"t":3,"n":"Radial Blur Start"},{"t":3,"n":"Radial Blur Flags","c":[{"t":4,"n":"Use Target"}]},{"t":5,"n":"Radial Blur Center X"},{"t":5,"n":"Radial Blur Center Y"},{"t":3,"n":"DoF Strength"},{"t":3,"n":"DoF Distance"},{"t":3,"n":"DoF Range"},{"t":3,"n":"DoF Flags","c":[{"t":4,"n":"Use Target"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Mode - Front"},{"t":4,"n":"Mode - Back"},{"t":4,"n":"No Sky"},{"t":4,"n":"Blur Radius Bit 2"},{"t":4,"n":"Blur Radius Bit 1"},{"t":4,"n":"Blur Radius Bit 0"}]},{"t":3,"n":"Radial Blur Ramp Down"},{"t":3,"n":"Radial Blur Down Start"},{"t":3,"n":"Fade Color"},{"t":3,"n":"Motion Blur Strength"}]},{"t":7,"p":1,"n":"BNAM - Blur Radius","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"VNAM - Double Vision Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"TNAM - Tint Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"NAM3 - Fade Color","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"},{"t":5,"p":1,"n":"Alpha"}]}]},{"t":7,"p":1,"n":"RNAM - Radial Blur Strength"},{"t":7,"p":1,"n":"SNAM - Radial Blur Ramp Up"},{"t":7,"p":1,"n":"UNAM - Radial Blur Start"},{"t":7,"p":1,"n":"NAM1 - Radial Blur Ramp Down","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM2 - Radial Blur Down Start","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"WNAM - DoF Strength"},{"t":7,"p":1,"n":"XNAM - DoF Distance","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"YNAM - DoF Range","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"NAM4 - Motion Blur Strength","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":6,"s":1,"p":1,"n":"HDR","c":[{"t":7,"p":1,"n":"aIAD - Eye Adapt Speed Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"@IAD - Eye Adapt Speed Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"bIAD - Bloom Blur Radius Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"AIAD - Bloom Blur Radius Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"cIAD - Bloom Threshold Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"BIAD - Bloom Threshold Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"dIAD - Bloom Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"CIAD - Bloom Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"eIAD - Target Lum Min Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"DIAD - Target Lum Min Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"fIAD - Target Lum Max Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"EIAD - Target Lum Max Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"gIAD - Sunlight Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"FIAD - Sunlight Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"hIAD - Sky Scale Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"GIAD - Sky Scale Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"iIAD - Unknown"},{"t":11,"n":"HIAD - Unknown"},{"t":11,"n":"jIAD - Unknown"},{"t":11,"n":"IIAD - Unknown"},{"t":11,"n":"kIAD - Unknown"},{"t":11,"n":"JIAD - Unknown"},{"t":11,"n":"lIAD - Unknown"},{"t":11,"n":"KIAD - Unknown"},{"t":11,"n":"mIAD - Unknown"},{"t":11,"n":"LIAD - Unknown"},{"t":11,"n":"nIAD - Unknown"},{"t":11,"n":"MIAD - Unknown"},{"t":11,"n":"oIAD - Unknown"},{"t":11,"n":"NIAD - Unknown"},{"t":11,"n":"pIAD - Unknown"},{"t":11,"n":"OIAD - Unknown"},{"t":11,"n":"qIAD - Unknown"},{"t":11,"n":"PIAD - Unknown"},{"t":6,"s":1,"p":1,"n":"Cinematic","c":[{"t":7,"p":1,"n":"rIAD - Saturation Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"QIAD - Saturation Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"sIAD - Brightness Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"RIAD - Brightness Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"tIAD - Contrast Mult","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]},{"t":7,"p":1,"n":"SIAD - Contrast Add","c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"Time"},{"t":5,"p":1,"n":"Value"}]}]}]},{"t":11,"n":"uIAD - Unknown"},{"t":11,"n":"TIAD - Unknown"}]},{"t":1,"p":1,"n":"IMGS - Image Space","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"ENAM - Unknown"},{"t":6,"s":1,"p":1,"n":"HNAM - HDR","c":[{"t":5,"p":1,"n":"Eye Adapt Speed"},{"t":5,"p":1,"n":"Bloom Blur Radius"},{"t":5,"p":1,"n":"Bloom Threshold"},{"t":5,"p":1,"n":"Bloom Scale"},{"t":5,"p":1,"n":"Receive Bloom Threshold"},{"t":5,"p":1,"n":"White"},{"t":5,"p":1,"n":"Sunlight Scale"},{"t":5,"p":1,"n":"Sky Scale"},{"t":5,"p":1,"n":"Eye Adapt Strength"}]},{"t":6,"s":1,"p":1,"n":"CNAM - Cinematic","c":[{"t":5,"p":1,"n":"Saturation"},{"t":5,"p":1,"n":"Brightness"},{"t":5,"p":1,"n":"Contrast"}]},{"t":6,"s":1,"p":1,"n":"TNAM - Tint","c":[{"t":5,"p":1,"n":"Amount"},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Depth of Field","c":[{"t":5,"p":1,"n":"Strength"},{"t":5,"p":1,"n":"Distance"},{"t":5,"p":1,"n":"Range"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Sky \/ Blur Radius"}]}]},{"t":1,"p":1,"n":"INFO - Dialog response","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"p":1,"n":"Actor Changed"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Script Fragments","c":[{"t":3,"p":1,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":11,"n":"DATA - Unknown"},{"t":6,"s":1,"p":1,"n":"ENAM - Response flags","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Goodbye"},{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Say once"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"p":1,"n":"Random end"},{"t":4,"p":1,"n":"Invisible continue"},{"t":4,"p":1,"n":"Walk Away"},{"t":4,"p":1,"n":"Walk Away Invisible in Menu"},{"t":4,"p":1,"n":"Force subtitle"},{"t":4,"p":1,"n":"Can move while greeting"},{"t":4,"p":1,"n":"No LIP File"},{"t":4,"p":1,"n":"Requires post-processing"},{"t":4,"p":1,"n":"Audio Output Override"},{"t":4,"p":1,"n":"Spends favor points"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Reset Hours"}]},{"t":3,"p":1,"n":"TPIC - Topic"},{"t":3,"p":1,"n":"PNAM - Previous INFO"},{"t":3,"p":1,"n":"CNAM - Favor Level"},{"t":8,"p":1,"n":"Link To","d":1,"c":[{"t":3,"p":1,"n":"TCLT - Response"}]},{"t":3,"p":1,"n":"DNAM - Response Data"},{"t":8,"s":1,"p":1,"n":"Responses","d":1,"c":[{"t":6,"p":1,"n":"Response","c":[{"t":6,"p":1,"n":"TRDT - Response Data","c":[{"t":3,"p":1,"n":"Emotion Type"},{"t":3,"p":1,"n":"Emotion Value"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Response number"},{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Emotion Animation"}]}]},{"t":2,"p":1,"n":"NAM1 - Response Text"},{"t":2,"p":1,"n":"NAM2 - Script Notes"},{"t":2,"p":1,"n":"NAM3 - Edits"},{"t":3,"p":1,"n":"SNAM - Idle Animations: Speaker"},{"t":3,"p":1,"n":"LNAM - Idle Animations: Listener"}]}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":8,"n":"Unknown","c":[{"t":6,"n":"Unknown","c":[{"t":11,"n":"SCHR - Unknown"},{"t":3,"n":"QNAM - Unknown"},{"n":"NEXT - Marker"}]}]},{"t":2,"p":1,"n":"RNAM - Prompt"},{"t":3,"p":1,"n":"ANAM - Speaker"},{"t":3,"p":1,"n":"TWAT - Walk Away Topic"},{"t":3,"p":1,"n":"ONAM - Audio Output Override"}]},{"t":1,"p":1,"n":"INGR - Ingredient","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"ENIT - Effect Data","c":[{"t":3,"p":1,"n":"Ingredient Value"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No auto-calculation"},{"t":4,"p":1,"n":"Food item"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"References Persist"}]}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"IPCT - Impact","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":5,"p":1,"n":"Effect - Duration"},{"t":3,"p":1,"n":"Effect - Orientation"},{"t":5,"p":1,"n":"Angle Threshold"},{"t":5,"p":1,"n":"Placement Radius"},{"t":3,"p":1,"n":"Sound Level"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Decal Data"}]},{"t":3,"p":1,"n":"Impact Result"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Texture Set"},{"t":3,"p":1,"n":"ENAM - Secondary Texture Set"},{"t":3,"p":1,"n":"SNAM - Sound 1"},{"t":3,"p":1,"n":"NAM1 - Sound 2"},{"t":3,"p":1,"n":"NAM2 - Hazard"}]},{"t":1,"p":1,"n":"IPDS - Impact Data Set","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Data","d":1,"c":[{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Impact"}]}]}]},{"t":1,"p":1,"n":"KEYM - Key","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"KYWD - Keyword","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LAND - Landscape","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Compressed"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":11,"n":"DATA - Unknown"},{"t":11,"n":"VNML - Vertex Normals"},{"t":11,"n":"VHGT - Vertext Height Map"},{"t":11,"n":"VCLR - Vertex Colours"},{"t":8,"s":1,"p":1,"n":"Layers","d":1,"c":[{"t":6,"p":1,"n":"Base Layer","c":[{"t":6,"p":1,"n":"BTXT - Base Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]}]},{"t":6,"p":1,"n":"Alpha Layer","c":[{"t":6,"p":1,"n":"ATXT - Alpha Layer Header","c":[{"t":3,"p":1,"n":"Texture"},{"t":3,"p":1,"n":"Quadrant"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Layer"}]},{"t":11,"p":1,"n":"VTXT - Alpha Layer Data"}]}]},{"t":7,"p":1,"n":"VTEX - Textures","c":[{"t":3,"p":1,"n":"Texture"}]}]},{"t":1,"p":1,"n":"LCRT - Location Reference Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"n":"LCTN - Location","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":7,"n":"ACPR - Actor Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCPR - Location Cell Persistent Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCPR - Reference Cell Persistent Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACUN - Actor Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"LCUN - Location Cell Unique","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Location"}]}]},{"t":7,"n":"RCUN - Reference Cell Unique","c":[{"t":3,"n":"Actor"}]},{"t":7,"n":"ACSR - Actor Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCSR - Location Cell Static Reference","c":[{"t":6,"n":"","c":[{"t":3,"n":"Loc Ref Type"},{"t":3,"n":"Marker"},{"t":3,"n":"Location"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"RCSR - Reference Cell Static Reference","c":[{"t":3,"n":"Ref"}]},{"t":8,"n":"Actor Cell Encounter Cell","c":[{"t":6,"n":"ACEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Location Cell Encounter Cell","c":[{"t":6,"n":"LCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":8,"n":"Reference Cell Encounter Cell","c":[{"t":6,"n":"RCEC - Unknown","c":[{"t":3,"n":"Location"},{"t":7,"n":"Coordinates","c":[{"t":6,"n":"","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]}]}]},{"t":7,"n":"ACID - Actor Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"LCID - Location Cell Marker Reference","c":[{"t":3,"n":"Ref"}]},{"t":7,"n":"ACEP - Actor Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":7,"n":"LCEP - Location Cell Enable Point","c":[{"t":6,"n":"","c":[{"t":3,"n":"Actor"},{"t":3,"n":"Ref"},{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]}]},{"t":2,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords","c":[{"t":3,"n":"Keyword"}]},{"t":3,"n":"PNAM - Parent Location"},{"t":3,"n":"NAM1 - Music"},{"t":3,"n":"FNAM - Unreported Crime Faction"},{"t":3,"n":"MNAM - World Location Marker Ref"},{"t":5,"n":"RNAM - World Location Radius"},{"t":3,"n":"NAM0 - Horse Marker Ref"},{"t":6,"n":"CNAM - Color","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"LENS - Lens Flare","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Color Influence"},{"t":5,"p":1,"n":"DNAM - Fade Distance Radius Scale"},{"t":3,"n":"LFSP - Count"},{"t":8,"s":1,"p":1,"n":"Lens Flare Sprites","d":1,"c":[{"t":6,"p":1,"n":"Flare","c":[{"t":2,"p":1,"n":"DNAM - Lens Flare Sprite ID"},{"t":2,"p":1,"n":"FNAM - Texture"},{"t":6,"p":1,"n":"LFSD - Lens Flare Data","c":[{"t":6,"p":1,"n":"Tint","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"},{"t":5,"p":1,"n":"Position"},{"t":5,"p":1,"n":"Angular Fade"},{"t":5,"p":1,"n":"Opacity"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotates"},{"t":4,"p":1,"n":"Shrinks When Occluded"}]}]}]}]}]},{"t":1,"p":1,"n":"LGTM - Lighting Template","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Lighting","c":[{"t":6,"p":1,"n":"Ambient Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Directional Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Fog Color Near","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Near"},{"t":5,"p":1,"n":"Fog Far"},{"t":3,"p":1,"n":"Directional Rotation XY"},{"t":3,"p":1,"n":"Directional Rotation Z"},{"t":5,"p":1,"n":"Directional Fade"},{"t":5,"p":1,"n":"Fog Clip Dist"},{"t":5,"p":1,"n":"Fog Power"},{"t":6,"p":1,"n":"Ambient Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"Fog Color Far","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Fog Max"},{"t":6,"p":1,"n":"Light Fade Distances","c":[{"t":5,"p":1,"n":"Start"},{"t":5,"p":1,"n":"End"}]},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"DALC - Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":1,"p":1,"n":"LIGH - Light","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"p":1,"n":"Portal-strict"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Time"},{"t":3,"p":1,"n":"Radius"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Dynamic"},{"t":4,"p":1,"n":"Can be Carried"},{"t":4,"p":1,"n":"Negative"},{"t":4,"p":1,"n":"Flicker"},{"t":4,"n":"Unknown"},{"t":4,"p":1,"n":"Off By Default"},{"t":4,"p":1,"n":"Flicker Slow"},{"t":4,"p":1,"n":"Pulse"},{"t":4,"p":1,"n":"Pulse Slow"},{"t":4,"p":1,"n":"Spot Light"},{"t":4,"p":1,"n":"Shadow Spotlight"},{"t":4,"p":1,"n":"Shadow Hemisphere"},{"t":4,"p":1,"n":"Shadow Omnidirectional"},{"t":4,"p":1,"n":"Portal-strict"}]},{"t":5,"p":1,"n":"Falloff Exponent"},{"t":5,"p":1,"n":"FOV"},{"t":5,"p":1,"n":"Near Clip"},{"t":6,"p":1,"n":"Flicker Effect","c":[{"t":5,"p":1,"n":"Period"},{"t":5,"p":1,"n":"Intensity Amplitude"},{"t":5,"p":1,"n":"Movement Amplitude"}]},{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":5,"p":1,"n":"FNAM - Fade value"},{"t":3,"p":1,"n":"SNAM - Sound"}]},{"t":1,"p":1,"n":"LSCR - Load Screen","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Displays In Main Menu"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"NNAM - Loading Screen NIF"},{"t":5,"p":1,"n":"SNAM - Initial Scale"},{"t":6,"s":1,"p":1,"n":"RNAM - Initial Rotation","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"ONAM - Rotation Offset Constraints","c":[{"t":3,"p":1,"n":"Min"},{"t":3,"p":1,"n":"Max"}]},{"t":6,"s":1,"p":1,"n":"XNAM - Initial Translation Offset","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"MOD2 - Camera Path"}]},{"t":1,"p":1,"n":"LTEX - Landscape Texture","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"TNAM - Texture Set"},{"t":3,"p":1,"n":"MNAM - Material Type"},{"t":6,"s":1,"p":1,"n":"HNAM - Havok Data","c":[{"t":3,"p":1,"n":"Friction"},{"t":3,"p":1,"n":"Restitution"}]},{"t":3,"p":1,"n":"SNAM - Texture Specular Exponent"},{"t":8,"s":1,"p":1,"n":"Grasses","d":1,"c":[{"t":3,"p":1,"n":"GNAM - Grass"}]},{"t":3,"p":1,"n":"INAM - Flags","c":[{"t":4,"p":1,"n":"Is Snow"}]}]},{"t":1,"p":1,"n":"LVLI - Leveled Item","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","d":1,"c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All"},{"t":4,"p":1,"n":"Special Loot"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]}]},{"t":1,"p":1,"n":"LVLN - Leveled NPC","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"}]},{"t":3,"p":1,"n":"LVLG - Global"},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":1,"p":1,"n":"LVSP - Leveled Spell","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":3,"p":1,"n":"LVLD - Chance None"},{"t":3,"p":1,"n":"LVLF - Flags","c":[{"t":4,"p":1,"n":"Calculate from all levels <= player's level"},{"t":4,"p":1,"n":"Calculate for each item in count"},{"t":4,"p":1,"n":"Use All Spells"}]},{"t":3,"n":"LLCT - Count"},{"t":10,"p":1,"n":"Leveled List Entries","d":1,"c":[{"t":6,"p":1,"n":"Leveled List Entry","c":[{"t":6,"p":1,"n":"LVLO - Base Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Count"}]}]}]}]},{"t":1,"p":1,"n":"MATO - Material Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":8,"s":1,"p":1,"n":"Property Data","d":1,"c":[{"t":11,"p":1,"n":"DNAM - Data"}]},{"t":6,"s":1,"p":1,"n":"DATA - Directional Material Data","c":[{"t":5,"p":1,"n":"Falloff Scale"},{"t":5,"p":1,"n":"Falloff Bias"},{"t":5,"p":1,"n":"Noise UV Scale"},{"t":5,"p":1,"n":"Material UV Scale"},{"t":6,"p":1,"n":"Projection Vector","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":5,"p":1,"n":"Normal Dampener"},{"t":6,"p":1,"n":"Single Pass Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Single Pass"}]},{"t":11,"n":"Unused"}]}]},{"t":1,"p":1,"n":"MATT - Material Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Material Parent"},{"t":2,"p":1,"n":"MNAM - Material Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Havok Display Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"p":1,"n":"BNAM - Buoyancy"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Stair Material"},{"t":4,"p":1,"n":"Arrows Stick"}]},{"t":3,"p":1,"n":"HNAM - Havok Impact Data Set"}]},{"t":1,"p":1,"n":"MESG - Message","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"DESC - Description"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"INAM - Icon (unused)"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Message Box"},{"t":4,"p":1,"n":"Auto Display"}]},{"t":3,"p":1,"n":"TNAM - Display Time"},{"t":8,"s":1,"p":1,"n":"Menu Buttons","d":1,"c":[{"t":6,"p":1,"n":"Menu Button","c":[{"t":2,"p":1,"n":"ITXT - Button Text"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"MGEF - Magic Effect","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"Magic Effect Data","c":[{"t":6,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hostile"},{"t":4,"p":1,"n":"Recover"},{"t":4,"p":1,"n":"Detrimental"},{"t":4,"p":1,"n":"Snap to Navmesh"},{"t":4,"p":1,"n":"No Hit Event"},{"t":4,"p":1,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unknown 7"},{"t":4,"p":1,"n":"Unknown 8"},{"t":4,"p":1,"n":"Dispel with Keywords"},{"t":4,"p":1,"n":"No Duration"},{"t":4,"p":1,"n":"No Magnitude"},{"t":4,"p":1,"n":"No Area"},{"t":4,"p":1,"n":"FX Persist"},{"t":4,"p":1,"n":"Unknown 14"},{"t":4,"p":1,"n":"Gory Visuals"},{"t":4,"p":1,"n":"Hide in UI"},{"t":4,"p":1,"n":"Unknown 17"},{"t":4,"p":1,"n":"No Recast"},{"t":4,"p":1,"n":"Unknown 19"},{"t":4,"p":1,"n":"Unknown 20"},{"t":4,"p":1,"n":"Unknown 21"},{"t":4,"p":1,"n":"Power Affects Magnitude"},{"t":4,"p":1,"n":"Power Affects Duration"},{"t":4,"p":1,"n":"Unknown 24"},{"t":4,"p":1,"n":"Unknown 25"},{"t":4,"p":1,"n":"Unknown 26"},{"t":4,"p":1,"n":"Painless"},{"t":4,"p":1,"n":"No Hit Effect"},{"t":4,"p":1,"n":"No Death Dispel"},{"t":4,"p":1,"n":"Unknown 30"},{"t":4,"p":1,"n":"Unknown 31"},{"t":4,"p":1,"n":"Unknown 32"}]},{"t":5,"p":1,"n":"Base Cost"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Assoc. Item"},{"t":3,"p":1,"n":"Magic Skill"},{"t":3,"p":1,"n":"Resist Value"},{"t":3,"p":1,"n":"Counter Effect count"},{"t":3,"p":1,"n":"Casting Light"},{"t":5,"p":1,"n":"Taper Weight"},{"t":3,"p":1,"n":"Hit Shader"},{"t":3,"p":1,"n":"Enchant Shader"},{"t":3,"p":1,"n":"Minimum Skill Level"},{"t":6,"s":1,"p":1,"n":"Spellmaking","c":[{"t":3,"p":1,"n":"Area"},{"t":5,"p":1,"n":"Casting Time"}]},{"t":5,"p":1,"n":"Taper Curve"},{"t":5,"p":1,"n":"Taper Duration"},{"t":5,"p":1,"n":"Second AV Weight"},{"t":3,"p":1,"n":"Archtype"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Projectile"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Delivery"},{"t":3,"p":1,"n":"Second Actor Value"},{"t":3,"p":1,"n":"Casting Art"},{"t":3,"p":1,"n":"Hit Effect Art"},{"t":3,"p":1,"n":"Impact Data"},{"t":5,"p":1,"n":"Skill Usage Multiplier"},{"t":6,"s":1,"p":1,"n":"Dual Casting","c":[{"t":3,"p":1,"n":"Art"},{"t":5,"p":1,"n":"Scale"}]},{"t":3,"p":1,"n":"Enchant Art"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Equip Ability"},{"t":3,"p":1,"n":"Image Space Modifier"},{"t":3,"p":1,"n":"Perk to Apply"},{"t":3,"p":1,"n":"Casting Sound Level"},{"t":6,"s":1,"p":1,"n":"Script Effect AI","c":[{"t":5,"p":1,"n":"Score"},{"t":5,"p":1,"n":"Delay Time"}]}]}]},{"t":8,"s":1,"p":1,"n":"Counter Effects","d":1,"c":[{"t":3,"n":"ESCE - Effect"}]},{"t":7,"p":1,"n":"SNDD - Sounds","c":[{"t":6,"p":1,"n":"","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Sound"}]}]},{"t":2,"p":1,"n":"DNAM - Magic Item Description"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"MISC - Misc. Item","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]}]},{"t":1,"p":1,"n":"MOVT - Movement Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"MNAM - Name"},{"t":6,"s":1,"p":1,"n":"SPED - Default Data","c":[{"t":5,"p":1,"n":"Left Walk"},{"t":5,"p":1,"n":"Left Run"},{"t":5,"p":1,"n":"Right Walk"},{"t":5,"p":1,"n":"Right Run"},{"t":5,"p":1,"n":"Forward Walk"},{"t":5,"p":1,"n":"Forward Run"},{"t":5,"p":1,"n":"Back Walk"},{"t":5,"p":1,"n":"Back Run"},{"t":5,"p":1,"n":"Rotate in Place Walk"},{"t":5,"p":1,"n":"Rotate in Place Run"},{"t":5,"p":1,"n":"Rotate while Moving Run"}]},{"t":6,"s":1,"p":1,"n":"INAM - Anim Change Thresholds","c":[{"t":5,"p":1,"n":"Directional"},{"t":5,"p":1,"n":"Movement Speed"},{"t":5,"p":1,"n":"Rotation Speed"}]}]},{"t":1,"p":1,"n":"MSTT - Moveable Static","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Must Update Anims"},{"t":4,"p":1,"n":"Hidden From Local Map"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Has Currents"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"p":1,"n":"NavMesh Generation - Filter"},{"t":4,"p":1,"n":"NavMesh Generation - Bounding Box"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"NavMesh Generation - Ground"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"DATA - Flags","c":[{"t":4,"p":1,"n":"On Local Map"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"}]},{"t":3,"p":1,"n":"SNAM - Looping Sound"}]},{"t":1,"p":1,"n":"MUSC - Music Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Plays One Selection"},{"t":4,"p":1,"n":"Abrupt Transition"},{"t":4,"p":1,"n":"Cycle Tracks"},{"t":4,"p":1,"n":"Maintain Track Order"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Ducks Current Track"},{"t":4,"p":1,"n":"Doesn't Queue"}]},{"t":6,"s":1,"p":1,"n":"PNAM - Data","c":[{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Ducking (dB)"}]},{"t":5,"p":1,"n":"WNAM - Fade Duration"},{"t":7,"p":1,"n":"TNAM - Music Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"p":1,"n":"MUST - Music Track","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"CNAM - Track Type"},{"t":5,"p":1,"n":"FLTV - Duration"},{"t":5,"p":1,"n":"DNAM - Fade-Out"},{"t":2,"p":1,"n":"ANAM - Track FileName"},{"t":2,"p":1,"n":"BNAM - Finale FileName"},{"t":6,"s":1,"p":1,"n":"LNAM - Loop Data","c":[{"t":5,"p":1,"n":"Loop Begins"},{"t":5,"p":1,"n":"Loop Ends"},{"t":3,"p":1,"n":"Loop Count"}]},{"t":7,"p":1,"n":"FNAM - Cue Points","c":[{"t":5,"p":1,"n":"Point"}]},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":7,"p":1,"n":"SNAM - Tracks","c":[{"t":3,"p":1,"n":"Track"}]}]},{"t":1,"n":"NAVI - Navigation Mesh Info Map","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":3,"n":"NVER - Version"},{"t":8,"n":"Navigation Map Infos","c":[{"t":6,"n":"NVMI - Navigation Map Info","c":[{"t":3,"n":"Navigation Mesh"},{"t":11,"n":"Unknown"},{"t":5,"n":"X"},{"t":5,"n":"Y"},{"t":5,"n":"Z"},{"t":3,"n":"Preferred Merges Flag"},{"t":7,"n":"Merged To","c":[{"t":3,"n":"mesh"}]},{"t":7,"n":"Preferred Merges","c":[{"t":3,"n":"Mesh"}]},{"t":7,"n":"Linked Doors","c":[{"t":6,"n":"Door","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Door Ref"}]}]},{"t":3,"n":"Is Island"},{"t":11,"n":"Unused"},{"t":6,"n":"Island Data","c":[{"t":11,"n":"Unknown"},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]}]},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"}]}]},{"t":6,"n":"NVPP - Preferred Pathing","c":[{"t":7,"n":"NavMeshes","c":[{"t":7,"n":"Set","c":[{"t":3,"n":""}]}]},{"t":7,"n":"NavMesh Tree?","c":[{"t":6,"n":"","c":[{"t":3,"n":"NavMesh"},{"t":3,"n":"Index\/Node"}]}]}]},{"t":7,"n":"NVSI - Unknown","c":[{"t":3,"n":"Navigation Mesh"}]}]},{"t":1,"n":"NAVM - Navigation Mesh","c":[{"t":6,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"n":"Record Flags","c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Compressed"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"AutoGen"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"NavmeshGenCell"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":6,"n":"NVNM - Geometry","c":[{"t":3,"n":"Version"},{"t":11,"n":"Magic"},{"t":3,"n":"Parent Worldspace"},{"t":6,"n":"Coordinates","c":[{"t":3,"n":"Grid Y"},{"t":3,"n":"Grid X"}]},{"t":3,"n":"Parent Cell"},{"t":7,"n":"Vertices","c":[{"t":11,"n":"Vertex"}]},{"t":7,"n":"Triangles","c":[{"t":11,"n":"Triangle"}]},{"t":7,"n":"Edge Links","c":[{"t":6,"n":"Connection","c":[{"t":11,"n":"Unknown"},{"t":3,"n":"Mesh"},{"t":3,"n":"Triangle"}]}]},{"t":7,"n":"Door Triangles","c":[{"t":6,"n":"Door Triangle","c":[{"t":3,"n":"Triangle before door"},{"t":11,"n":"Unknown"},{"t":3,"n":"Door"}]}]},{"t":11,"n":"NavMeshGrid"}]},{"t":11,"n":"ONAM - Unknown"},{"t":11,"n":"PNAM - Unknown"},{"t":11,"n":"NNAM - Unknown"}]},{"t":1,"p":1,"n":"NPC_ - Non-Player Character (Actor)","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Compressed"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"p":1,"n":"ACBS - Configuration","c":[{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Female"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Is CharGen Face Preset"},{"t":4,"p":1,"n":"Respawn"},{"t":4,"p":1,"n":"Auto-calc stats"},{"t":4,"p":1,"n":"Unique"},{"t":4,"p":1,"n":"Doesn't affect stealth meter"},{"t":4,"p":1,"n":"PC Level Mult"},{"t":4,"p":1,"n":"Use Template?"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"p":1,"n":"Protected"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Summonable"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Doesn't bleed"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Bleedout Override"},{"t":4,"p":1,"n":"Opposite Gender Anims"},{"t":4,"p":1,"n":"Simple Actor"},{"t":4,"p":1,"n":"looped script?"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"looped audio?"},{"t":4,"p":1,"n":"Is Ghost"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Invulnerable"}]},{"t":3,"p":1,"n":"Magicka Offset"},{"t":3,"p":1,"n":"Stamina Offset"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Level Mult"},{"t":3,"p":1,"n":"Calc min level","lf":"Calc max level"},{"t":3,"p":1,"n":"Calc max level","lt":"Calc min level"},{"t":3,"p":1,"n":"Speed Multiplier"},{"t":3,"p":1,"n":"Disposition Base (unused)"},{"t":3,"p":1,"n":"Template Flags","d":1,"c":[{"t":4,"p":1,"n":"Use Traits"},{"t":4,"p":1,"n":"Use Stats"},{"t":4,"p":1,"n":"Use Factions"},{"t":4,"p":1,"n":"Use Spell List"},{"t":4,"p":1,"n":"Use AI Data"},{"t":4,"p":1,"n":"Use AI Packages"},{"t":4,"p":1,"n":"Use Model\/Animation?"},{"t":4,"p":1,"n":"Use Base Data"},{"t":4,"p":1,"n":"Use Inventory"},{"t":4,"p":1,"n":"Use Script"},{"t":4,"p":1,"n":"Use Def Pack List"},{"t":4,"p":1,"n":"Use Attack Data"},{"t":4,"p":1,"n":"Use Keywords"}]},{"t":3,"p":1,"n":"Health Offset"},{"t":3,"p":1,"n":"Bleedout Override"}]},{"t":8,"p":1,"n":"Factions","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Faction","c":[{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"INAM - Death item"},{"t":3,"p":1,"n":"VTCK - Voice"},{"t":3,"p":1,"n":"TPLT - Template"},{"t":3,"p":1,"n":"RNAM - Race","lt":"Tint Layers","lf":"NAM7 - Weight"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","d":1,"c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"WNAM - Worn Armor"},{"t":3,"p":1,"n":"ANAM - Far away model"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","d":1,"c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"p":1,"n":"Attack Flags","c":[{"t":4,"p":1,"n":"Ignore Weapon"},{"t":4,"p":1,"n":"Bash Attack"},{"t":4,"p":1,"n":"Power Attack"},{"t":4,"p":1,"n":"Left Attack"},{"t":4,"p":1,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"p":1,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"n":"PRKZ - Perk Count"},{"t":8,"s":1,"p":1,"n":"Perks","d":1,"c":[{"t":6,"p":1,"n":"PRKR - Perk","c":[{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unused"}]}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":6,"s":1,"p":1,"n":"AIDT - AI Data","c":[{"t":3,"p":1,"n":"Aggression"},{"t":3,"p":1,"n":"Confidence"},{"t":3,"p":1,"n":"Energy Level"},{"t":3,"p":1,"n":"Responsibility"},{"t":3,"p":1,"n":"Mood"},{"t":3,"p":1,"n":"Assistance"},{"t":6,"p":1,"n":"Aggro","c":[{"t":3,"p":1,"n":"Aggro Radius Behavior"},{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Warn"},{"t":3,"p":1,"n":"Warn\/Attack"},{"t":3,"p":1,"n":"Attack"}]}]},{"t":8,"s":1,"p":1,"n":"Packages","d":1,"c":[{"t":3,"p":1,"n":"PKID - Package"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"CNAM - Class"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"SHRT - Short Name"},{"n":"DATA - Marker"},{"t":6,"s":1,"p":1,"n":"DNAM - Player Skills","c":[{"t":7,"p":1,"n":"Skill Values","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":7,"p":1,"n":"Skill Offsets","c":[{"t":3,"p":1,"n":"Skill #0 (OneHanded)"},{"t":3,"p":1,"n":"Skill #1 (TwoHanded)"},{"t":3,"p":1,"n":"Skill #2 (Marksman)"},{"t":3,"p":1,"n":"Skill #3 (Block)"},{"t":3,"p":1,"n":"Skill #4 (Smithing)"},{"t":3,"p":1,"n":"Skill #5 (HeavyArmor)"},{"t":3,"p":1,"n":"Skill #6 (LightArmor)"},{"t":3,"p":1,"n":"Skill #7 (Pickpocket)"},{"t":3,"p":1,"n":"Skill #8 (Lockpicking)"},{"t":3,"p":1,"n":"Skill #9 (Sneak)"},{"t":3,"p":1,"n":"Skill #10 (Alchemy)"},{"t":3,"p":1,"n":"Skill #11 (Speechcraft)"},{"t":3,"p":1,"n":"Skill #12 (Alteration)"},{"t":3,"p":1,"n":"Skill #13 (Conjuration)"},{"t":3,"p":1,"n":"Skill #14 (Destruction)"},{"t":3,"p":1,"n":"Skill #15 (Illusion)"},{"t":3,"p":1,"n":"Skill #16 (Restoration)"},{"t":3,"p":1,"n":"Skill #17 (Enchanting)"}]},{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"Magicka"},{"t":3,"p":1,"n":"Stamina"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Far away model distance"},{"t":3,"p":1,"n":"Geared up weapons"}]},{"t":8,"s":1,"p":1,"n":"Head Parts","d":1,"c":[{"t":3,"p":1,"n":"PNAM - Head Part"}],"lt":"NAM6 - Height","lf":"HCLF - Hair Color"},{"t":3,"p":1,"n":"HCLF - Hair Color","lt":"Head Parts","lf":"FTST - Head texture"},{"t":3,"p":1,"n":"ZNAM - Combat Style"},{"t":3,"p":1,"n":"GNAM - Gift Filter"},{"t":11,"n":"NAM5 - Unknown"},{"t":5,"p":1,"n":"NAM6 - Height","lt":"NAM7 - Weight","lf":"Head Parts"},{"t":5,"p":1,"n":"NAM7 - Weight","lt":"RNAM - Race","lf":"NAM6 - Height"},{"t":3,"p":1,"n":"NAM8 - Sound Level"},{"t":10,"p":1,"n":"Sound Types","d":1,"c":[{"t":6,"p":1,"n":"Sound Type","c":[{"t":3,"p":1,"n":"CSDT - Type"},{"t":10,"p":1,"n":"Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"CSDI - Sound"},{"t":3,"p":1,"n":"CSDC - Sound Chance"}]}]}]}]},{"t":3,"p":1,"n":"CSCR - Inherits Sounds From"},{"t":3,"p":1,"n":"DOFT - Default outfit"},{"t":3,"p":1,"n":"SOFT - Sleeping outfit"},{"t":3,"p":1,"n":"DPLT - Default Package List"},{"t":3,"p":1,"n":"CRIF - Crime faction"},{"t":3,"p":1,"n":"FTST - Head texture","lt":"HCLF - Hair Color","lf":"QNAM - Texture lighting"},{"t":6,"s":1,"p":1,"n":"QNAM - Texture lighting","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}],"lt":"FTST - Head texture","lf":"NAM9 - Face morph"},{"t":6,"s":1,"p":1,"n":"NAM9 - Face morph","c":[{"t":5,"p":1,"n":"Nose Long\/Short"},{"t":5,"p":1,"n":"Nose Up\/Down"},{"t":5,"p":1,"n":"Jaw Up\/Down"},{"t":5,"p":1,"n":"Jaw Narrow\/Wide"},{"t":5,"p":1,"n":"Jaw Farward\/Back"},{"t":5,"p":1,"n":"Cheeks Up\/Down"},{"t":5,"p":1,"n":"Cheeks Farward\/Back"},{"t":5,"p":1,"n":"Eyes Up\/Down"},{"t":5,"p":1,"n":"Eyes In\/Out"},{"t":5,"p":1,"n":"Brows Up\/Down"},{"t":5,"p":1,"n":"Brows In\/Out"},{"t":5,"p":1,"n":"Brows Farward\/Back"},{"t":5,"p":1,"n":"Lips Up\/Down"},{"t":5,"p":1,"n":"Lips In\/Out"},{"t":5,"p":1,"n":"Chin Narrow\/Wide"},{"t":5,"p":1,"n":"Chin Up\/Down"},{"t":5,"p":1,"n":"Chin Underbite\/Overbite"},{"t":5,"p":1,"n":"Eyes Farward\/Back"},{"t":5,"n":"Unknown"}],"lt":"QNAM - Texture lighting","lf":"NAMA - Face parts"},{"t":6,"s":1,"p":1,"n":"NAMA - Face parts","c":[{"t":3,"p":1,"n":"Nose"},{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Eyes"},{"t":3,"p":1,"n":"Mouth"}],"lt":"NAM9 - Face morph","lf":"Tint Layers"},{"t":10,"p":1,"n":"Tint Layers","d":1,"c":[{"t":6,"p":1,"n":"Layer","c":[{"t":3,"p":1,"n":"TINI - Tint Index"},{"t":6,"p":1,"n":"TINC - Tint Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":3,"p":1,"n":"Alpha"}]},{"t":3,"p":1,"n":"TINV - Interpolation Value"},{"t":3,"p":1,"n":"TIAS - Preset"}]}],"lt":"NAMA - Face parts","lf":"RNAM - Race"}]},{"t":1,"p":1,"n":"OTFT - Outfit","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":7,"p":1,"n":"INAM - Items","d":1,"c":[{"t":3,"p":1,"n":"Item"}]}]},{"t":1,"p":1,"n":"PACK - Package","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"},{"t":4,"p":1,"n":"OnChange"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"PKDT - Pack Data","c":[{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Interrupt Override"},{"t":3,"p":1,"n":"Preferred Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]}]},{"t":6,"s":1,"p":1,"n":"PSDT - Schedule","c":[{"t":3,"p":1,"n":"Month"},{"t":3,"p":1,"n":"Day of week"},{"t":3,"p":1,"n":"Date"},{"t":3,"p":1,"n":"Hour"},{"t":3,"p":1,"n":"Minute"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Duration (minutes)"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"Idle Animations","c":[{"t":3,"p":1,"n":"IDLF - Flags"},{"t":6,"p":1,"n":"IDLC - IDLC","c":[{"t":3,"p":1,"n":"Animation Count"},{"t":11,"n":"Unknown"}]},{"t":5,"p":1,"n":"IDLT - Idle Timer Setting"},{"t":7,"p":1,"n":"IDLA - Animations","c":[{"t":3,"p":1,"n":"Animation"}]},{"t":11,"n":"IDLB - Unknown"}]},{"t":3,"p":1,"n":"CNAM - Combat Style"},{"t":3,"p":1,"n":"QNAM - Owner Quest"},{"t":6,"s":1,"p":1,"n":"PKCU - Counter","c":[{"t":3,"p":1,"n":"Data Input Count"},{"t":3,"p":1,"n":"Package Template"},{"t":3,"p":1,"n":"Version Counter (autoincremented)"}]},{"t":6,"s":1,"p":1,"n":"Package Data","c":[{"t":8,"p":1,"n":"Data Input Values","c":[{"t":6,"p":1,"n":"Value","c":[{"t":2,"p":1,"n":"ANAM - Type"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Bool"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":11,"n":"BNAM - Unknown"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]},{"t":6,"p":1,"n":"PLDT - Location","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Cell"},{"t":11,"p":1,"n":"Near Package Start Location"},{"t":11,"p":1,"n":"Near Editor Location"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Keyword"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Radius"}]},{"t":6,"p":1,"n":"PTDA - Target","c":[{"t":6,"p":1,"n":"Target Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Object ID"},{"t":3,"p":1,"n":"Object Type"},{"t":3,"p":1,"n":"Alias"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Count \/ Distance"}]}]},{"t":11,"n":"TPIC - Unknown"}]}]},{"t":8,"p":1,"n":"Data Inputs","c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]}]},{"t":11,"n":"XNAM - Marker"},{"t":6,"s":1,"p":1,"n":"Procedure Tree","c":[{"t":8,"p":1,"n":"Branches","c":[{"t":6,"p":1,"n":"Branch","c":[{"t":2,"p":1,"n":"ANAM - Branch Type"},{"t":3,"p":1,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"p":1,"n":"PRCB - Root","c":[{"t":3,"p":1,"n":"Branch Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Repeat when Complete"},{"t":4,"n":"Unknown 1"}]}]},{"t":2,"p":1,"n":"PNAM - Procedure Type"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Success Completes Package"}]},{"t":8,"p":1,"n":"Data Input Indexes","c":[{"t":3,"p":1,"n":"PKC2 - Index"}]},{"t":8,"p":1,"n":"Flags Override","c":[{"t":6,"p":1,"n":"PFO2 - Data","c":[{"t":3,"p":1,"n":"Set General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Clear General Flags","c":[{"t":4,"p":1,"n":"Offers Services"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Must complete"},{"t":4,"p":1,"n":"Maintain Speed at Goal"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Unlock doors at package start"},{"t":4,"p":1,"n":"Unlock doors at package end"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Continue if PC Near"},{"t":4,"p":1,"n":"Once per day"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"p":1,"n":"Preferred Speed"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"Always Sneak"},{"t":4,"p":1,"n":"Allow Swimming"},{"t":4,"n":"Unknown 20"},{"t":4,"p":1,"n":"Ignore Combat"},{"t":4,"p":1,"n":"Weapons Unequipped"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"Weapon Drawn"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"No Combat Alert"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Wear Sleep Outfit (unused)"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Set Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Clear Interrupt Flags","c":[{"t":4,"p":1,"n":"Hellos to player"},{"t":4,"p":1,"n":"Random conversations"},{"t":4,"p":1,"n":"Observe combat behavior"},{"t":4,"p":1,"n":"Greet corpse behavior"},{"t":4,"p":1,"n":"Reaction to player actions"},{"t":4,"p":1,"n":"Friendly fire comments"},{"t":4,"p":1,"n":"Aggro Radius Behavior"},{"t":4,"p":1,"n":"Allow Idle Chatter"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"World Interactions"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"}]},{"t":3,"p":1,"n":"Preferred Speed Override"},{"t":11,"n":"Unknown"}]}]},{"t":8,"n":"Unknown","c":[{"t":11,"n":"PFOR - Unknown"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Data Inputs","d":1,"c":[{"t":6,"p":1,"n":"Data Input","c":[{"t":3,"p":1,"n":"UNAM - Index"},{"t":2,"p":1,"n":"BNAM - Name"},{"t":3,"p":1,"n":"PNAM - Flags","c":[{"t":4,"p":1,"n":"Public"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnBegin","c":[{"p":1,"n":"POBA - OnBegin Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnEnd","c":[{"p":1,"n":"POEA - OnEnd Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]},{"t":6,"s":1,"p":1,"n":"OnChange","c":[{"p":1,"n":"POCA - OnChange Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCDA - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":11,"n":"QNAM - Unused"},{"t":11,"n":"TNAM - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":1,"p":1,"n":"PARW - Placed Arrow","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBAR - Placed Barrier","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PBEA - Placed Beam","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PCON - Placed Cone\/Voice","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PERK - Perk","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Fragment Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Trait"},{"t":3,"p":1,"n":"Level"},{"t":3,"p":1,"n":"Num Ranks"},{"t":3,"p":1,"n":"Playable"},{"t":3,"p":1,"n":"Hidden"}]},{"t":3,"p":1,"n":"NNAM - Next Perk"},{"t":10,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":6,"p":1,"n":"PRKE - Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Rank"},{"t":3,"p":1,"n":"Priority"}]},{"t":6,"p":1,"n":"Quest + Stage","c":[{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Quest Stage"},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"Ability"},{"t":6,"p":1,"n":"Entry Point","c":[{"t":3,"p":1,"n":"Entry Point"},{"t":3,"p":1,"n":"Function"},{"t":3,"p":1,"n":"Perk Condition Tab Count"}]},{"t":10,"p":1,"n":"Perk Conditions","c":[{"t":6,"p":1,"n":"Perk Condition","c":[{"t":3,"p":1,"n":"PRKC - Run On (Tab Index)"},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]},{"t":6,"p":1,"n":"Function Parameters","c":[{"t":3,"p":1,"n":"EPFT - Type"},{"t":2,"p":1,"n":"EPF2 - Button Label"},{"t":6,"p":1,"n":"EPF3 - Script Flags","c":[{"t":3,"p":1,"n":"Script Flags","c":[{"t":4,"p":1,"n":"Run Immediately"},{"t":4,"p":1,"n":"Replace Default"}]},{"t":3,"p":1,"n":"Fragment Index"}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Float"},{"t":6,"p":1,"n":"Float, Float","c":[{"t":5,"p":1,"n":"Float 1"},{"t":5,"p":1,"n":"Float 2"}]},{"t":3,"p":1,"n":"Leveled Item"},{"t":3,"p":1,"n":"Spell"},{"t":2,"p":1,"n":"Text"},{"t":6,"p":1,"n":"Actor Value, Float","c":[{"t":3,"p":1,"n":"Actor Value"},{"t":5,"p":1,"n":"Float"}]}]},{"p":1,"n":"PRKF - End Marker"}]}]}]},{"t":1,"p":1,"n":"PFLA - Placed Flame","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PGRE - Placed Projectile","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PHZD - Placed Hazard","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"Player Reference","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PLYR - Player"}]},{"t":1,"p":1,"n":"PMIS - Placed Missile","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Turn Off Fire"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"p":1,"n":"Don't Havok Settle"},{"t":4,"p":1,"n":"No Respawn"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Projectile"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"PROJ - Projectile","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Hitscan"},{"t":4,"p":1,"n":"Explosion"},{"t":4,"p":1,"n":"Alt. Trigger"},{"t":4,"p":1,"n":"Muzzle Flash"},{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Can Be Disabled"},{"t":4,"p":1,"n":"Can Be Picked Up"},{"t":4,"p":1,"n":"Supersonic"},{"t":4,"p":1,"n":"Pins Limbs"},{"t":4,"p":1,"n":"Pass Through Small Transparent"},{"t":4,"p":1,"n":"Disable Combat Aim Correction"},{"t":4,"p":1,"n":"Rotation"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Gravity"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Light"},{"t":3,"p":1,"n":"Muzzle Flash - Light"},{"t":5,"p":1,"n":"Tracer Chance"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Proximity"},{"t":5,"p":1,"n":"Explosion - Alt. Trigger - Timer"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Sound"},{"t":5,"p":1,"n":"Muzzle Flash - Duration"},{"t":5,"p":1,"n":"Fade Duration"},{"t":5,"p":1,"n":"Impact Force"},{"t":3,"p":1,"n":"Sound - Countdown"},{"t":3,"p":1,"n":"Sound - Disable"},{"t":3,"p":1,"n":"Default Weapon Source"},{"t":5,"p":1,"n":"Cone Spread"},{"t":5,"p":1,"n":"Collision Radius"},{"t":5,"p":1,"n":"Lifetime"},{"t":5,"p":1,"n":"Relaunch Interval"},{"t":3,"p":1,"n":"Decal Data"},{"t":3,"p":1,"n":"Collision Layer"}]},{"t":6,"s":1,"p":1,"n":"Muzzle Flash Model","c":[{"t":2,"p":1,"n":"NAM1 - Model FileName"},{"t":11,"p":1,"n":"NAM2 - Texture Files Hashes"}]},{"t":3,"p":1,"n":"VNAM - Sound Level"}]},{"t":1,"p":1,"n":"PWAT","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"QUST - Quest","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"FragmentCount"},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Unknown"},{"t":3,"p":1,"n":"Quest Stage Index"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]},{"t":7,"p":1,"n":"Aliases","c":[{"t":6,"s":1,"p":1,"n":"Alias","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Alias Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]}]}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"DNAM - General","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Start Game Enabled"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow repeated stages"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Run Once"},{"t":4,"p":1,"n":"Exclude from dialogue export"},{"t":4,"p":1,"n":"Warn on alias fill failure"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"}]},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"Form Version"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":2,"p":1,"n":"ENAM - Event"},{"t":8,"s":1,"p":1,"n":"Text Display Globals","d":1,"c":[{"t":3,"p":1,"n":"QTGL - Global"}]},{"t":2,"p":1,"n":"FLTR - Object Window Filter"},{"t":6,"s":1,"p":1,"n":"Quest Dialogue Conditions","c":[{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":10,"s":1,"p":1,"n":"Stages","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"INDX - Stage Index","c":[{"t":3,"p":1,"n":"Stage Index"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Unknown 1"},{"t":4,"p":1,"n":"Start Up Stage"},{"t":4,"p":1,"n":"Shut Down Stage"},{"t":4,"p":1,"n":"Keep Instance Data From Here On"}]},{"t":3,"p":1,"n":"Unknown"}]},{"t":8,"p":1,"n":"Log Entries","c":[{"t":6,"p":1,"n":"Log Entry","c":[{"t":3,"p":1,"n":"QSDT - Stage Flags","c":[{"t":4,"p":1,"n":"Complete Quest"},{"t":4,"p":1,"n":"Fail Quest"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":2,"p":1,"n":"CNAM - Log Entry"},{"t":3,"p":1,"n":"NAM0 - Next Quest"},{"t":11,"p":1,"n":"SCHR - Unused"},{"t":11,"p":1,"n":"SCTX - Unused"},{"t":11,"p":1,"n":"QNAM - Unused"}]}]}]}]},{"t":8,"s":1,"p":1,"n":"Objectives","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Objective","c":[{"t":3,"p":1,"n":"QOBJ - Objective Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"ORed With Previous"}]},{"t":2,"p":1,"n":"NNAM - Display Text"},{"t":8,"p":1,"n":"Targets","c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"p":1,"n":"Unused"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]}]},{"t":3,"p":1,"n":"ANAM - Next Alias ID"},{"t":8,"p":1,"n":"Aliases","d":1,"c":[{"t":6,"p":1,"n":"Alias","c":[{"t":3,"p":1,"n":"ALST - Reference Alias ID"},{"t":2,"p":1,"n":"ALID - Alias Name"},{"t":6,"p":1,"n":"FNAM - Alias Flags","d":1,"c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Reserves Location\/Reference"},{"t":4,"p":1,"n":"Optional"},{"t":4,"p":1,"n":"Quest Object"},{"t":4,"p":1,"n":"Allow Reuse in Quest"},{"t":4,"p":1,"n":"Allow Dead"},{"t":4,"p":1,"n":"Matching Ref - In Loaded Area"},{"t":4,"p":1,"n":"Essential"},{"t":4,"p":1,"n":"Allow Disabled"},{"t":4,"p":1,"n":"Stores Text"},{"t":4,"p":1,"n":"Allow Reserved"},{"t":4,"p":1,"n":"Protected"},{"t":4,"p":1,"n":"Forced by Aliases?"},{"t":4,"p":1,"n":"Allow Destroyed"},{"t":4,"p":1,"n":"Matching Ref - Closest"},{"t":4,"p":1,"n":"Uses Stored Text"},{"t":4,"p":1,"n":"Initially Disabled"}]},{"t":3,"p":1,"n":"Additional Flags","c":[{"t":4,"p":1,"n":"Allow Cleared"},{"t":4,"p":1,"n":"Clear Names When Removed"}]}]},{"t":3,"p":1,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"p":1,"n":"ALFL - Specific Location"},{"t":3,"p":1,"n":"ALFR - Forced Reference"},{"t":3,"p":1,"n":"ALUA - Unique Actor"},{"t":6,"s":1,"p":1,"n":"Location Alias Reference","c":[{"t":3,"p":1,"n":"ALFA - Alias"},{"t":3,"p":1,"n":"KNAM - Keyword"},{"t":3,"p":1,"n":"ALRT - Ref Type"}]},{"t":6,"s":1,"p":1,"n":"External Alias Reference","c":[{"t":3,"p":1,"n":"ALEQ - Quest"},{"t":3,"p":1,"n":"ALEA - Alias"}]},{"t":6,"s":1,"p":1,"n":"Create Reference to Object","c":[{"t":3,"p":1,"n":"ALCO - Object"},{"t":6,"p":1,"n":"ALCA - Alias","c":[{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Create"}]},{"t":3,"p":1,"n":"ALCL - Level"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference Near Alias","c":[{"t":3,"p":1,"n":"ALNA - Alias"},{"t":3,"p":1,"n":"ALNT - Type"}]},{"t":6,"s":1,"p":1,"n":"Find Matching Reference From Event","c":[{"t":2,"p":1,"n":"ALFE - From Event"},{"t":11,"p":1,"n":"ALFD - Event Data"}]},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"p":1,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"p":1,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"n":"COCT - Count"},{"t":10,"p":1,"n":"Items","d":1,"c":[{"t":6,"p":1,"n":"Item","c":[{"t":6,"p":1,"n":"CNTO - Item","c":[{"t":3,"p":1,"n":"Item"},{"t":3,"p":1,"n":"Count"}]},{"t":6,"p":1,"n":"COED - Extra Data","c":[{"t":3,"p":1,"n":"Owner"},{"t":11,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Global Variable"},{"t":3,"p":1,"n":"Required Rank"},{"t":5,"p":1,"n":"Item Condition"}]}]}]},{"t":3,"p":1,"n":"SPOR - Spectator override package list"},{"t":3,"p":1,"n":"OCOR - Observe dead body override package list"},{"t":3,"p":1,"n":"GWOR - Guard warn override package list"},{"t":3,"p":1,"n":"ECOR - Combat override package list"},{"t":3,"p":1,"n":"ALDN - Display Name"},{"t":8,"p":1,"n":"Alias Spells","c":[{"t":3,"p":1,"n":"ALSP - Spell"}]},{"t":8,"p":1,"n":"Alias Factions","c":[{"t":3,"p":1,"n":"ALFC - Faction"}]},{"t":8,"p":1,"n":"Alias Package Data","c":[{"t":3,"p":1,"n":"ALPC - Package"}]},{"t":3,"p":1,"n":"VTCK - Voice Types"},{"p":1,"n":"ALED - Alias End"}]},{"t":6,"n":"Alias","c":[{"t":3,"n":"ALLS - Location Alias ID"},{"t":2,"n":"ALID - Alias Name"},{"t":6,"n":"FNAM - Alias Flags","c":[{"t":3,"n":"Flags","c":[{"t":4,"n":"Reserves Location\/Reference"},{"t":4,"n":"Optional"},{"t":4,"n":"Quest Object"},{"t":4,"n":"Allow Reuse in Quest"},{"t":4,"n":"Allow Dead"},{"t":4,"n":"Matching Ref - In Loaded Area"},{"t":4,"n":"Essential"},{"t":4,"n":"Allow Disabled"},{"t":4,"n":"Stores Text"},{"t":4,"n":"Allow Reserved"},{"t":4,"n":"Protected"},{"t":4,"n":"Forced by Aliases?"},{"t":4,"n":"Allow Destroyed"},{"t":4,"n":"Matching Ref - Closest"},{"t":4,"n":"Uses Stored Text"},{"t":4,"n":"Initially Disabled"}]},{"t":3,"n":"Additional Flags","c":[{"t":4,"n":"Allow Cleared"},{"t":4,"n":"Clear Names When Removed"}]}]},{"t":3,"n":"ALFI - Force Into Alias When Filled"},{"t":3,"n":"ALFL - Specific Location"},{"t":3,"n":"ALFR - Forced Reference"},{"t":3,"n":"ALUA - Unique Actor"},{"t":6,"n":"Location Alias Reference","c":[{"t":3,"n":"ALFA - Alias"},{"t":3,"n":"KNAM - Keyword"},{"t":3,"n":"ALRT - Ref Type"}]},{"t":6,"n":"External Alias Reference","c":[{"t":3,"n":"ALEQ - Quest"},{"t":3,"n":"ALEA - Alias"}]},{"t":6,"n":"Create Reference to Object","c":[{"t":3,"n":"ALCO - Object"},{"t":6,"n":"ALCA - Alias","c":[{"t":3,"n":"Alias"},{"t":3,"n":"Create"}]},{"t":3,"n":"ALCL - Level"}]},{"t":6,"n":"Find Matching Reference Near Alias","c":[{"t":3,"n":"ALNA - Alias"},{"t":3,"n":"ALNT - Type"}]},{"t":6,"n":"Find Matching Reference From Event","c":[{"t":2,"n":"ALFE - From Event"},{"t":11,"n":"ALFD - Event Data"}]},{"t":10,"n":"Conditions","c":[{"t":6,"n":"Condition","c":[{"t":6,"n":"CTDA - CTDA","c":[{"t":3,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"n":"Comparison Value - Float"},{"t":3,"n":"Comparison Value - Global"},{"t":3,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"n":"Integer"},{"t":5,"n":"Float"},{"t":3,"n":"Variable Name"},{"t":3,"n":"Sex"},{"t":3,"n":"Actor Value"},{"t":3,"n":"Crime Type"},{"t":3,"n":"Axis"},{"t":3,"n":"Quest Stage (unused)"},{"t":3,"n":"Misc Stat"},{"t":3,"n":"Alignment"},{"t":3,"n":"Equip Type"},{"t":3,"n":"Form Type"},{"t":3,"n":"Critical Stage"},{"t":3,"n":"Object Reference"},{"t":3,"n":"Inventory Object"},{"t":3,"n":"Actor"},{"t":3,"n":"Voice Type"},{"t":3,"n":"Idle"},{"t":3,"n":"Form List"},{"t":3,"n":"Quest"},{"t":3,"n":"Faction"},{"t":3,"n":"Cell"},{"t":3,"n":"Class"},{"t":3,"n":"Race"},{"t":3,"n":"Actor Base"},{"t":3,"n":"Global"},{"t":3,"n":"Weather"},{"t":3,"n":"Package"},{"t":3,"n":"Encounter Zone"},{"t":3,"n":"Perk"},{"t":3,"n":"Owner"},{"t":3,"n":"Furniture"},{"t":3,"n":"Effect Item"},{"t":3,"n":"Base Effect"},{"t":3,"n":"Worldspace"},{"t":3,"n":"VATS Value Function"},{"t":3,"n":"VATS Value Param (INVALID)"},{"t":3,"n":"Referenceable Object"},{"t":3,"n":"Region"},{"t":3,"n":"Keyword"},{"t":3,"n":"Player Action"},{"t":3,"n":"Casting Type"},{"t":3,"n":"Shout"},{"t":3,"n":"Location"},{"t":3,"n":"Location Ref Type"},{"t":3,"n":"Alias"},{"t":3,"n":"Packdata ID"},{"t":3,"n":"Association Type"},{"t":3,"n":"Furniture Anim"},{"t":3,"n":"Furniture Entry"},{"t":3,"n":"Scene"},{"t":3,"n":"Ward State"},{"t":3,"n":"Event"},{"t":3,"n":"Event Data"},{"t":3,"n":"Knowable"},{"t":3,"n":"Quest Stage"},{"t":3,"n":"Weapon"},{"t":3,"n":"Weapon List"},{"t":3,"n":"Target"},{"t":3,"n":"Target List"},{"t":3,"n":"Target Part"},{"t":3,"n":"VATS Action"},{"t":3,"n":"Critical Effect"},{"t":3,"n":"Critical Effect List"},{"t":3,"n":"Weapon Type"},{"t":3,"n":"Projectile Type"},{"t":3,"n":"Delivery Type"},{"t":3,"n":"Run On"},{"t":3,"n":"Reference"},{"t":3,"n":"Parameter #3"}]},{"t":2,"n":"CIS1 - Parameter #1"},{"t":2,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"n":"KWDA - Keywords"},{"t":3,"n":"COCT - Count"},{"t":10,"n":"Items","c":[{"t":6,"n":"Item","c":[{"t":6,"n":"CNTO - Item","c":[{"t":3,"n":"Item"},{"t":3,"n":"Count"}]},{"t":6,"n":"COED - Extra Data","c":[{"t":3,"n":"Owner"},{"t":11,"n":"Unused"},{"t":3,"n":"Global Variable"},{"t":3,"n":"Required Rank"},{"t":5,"n":"Item Condition"}]}]}]},{"t":3,"n":"SPOR - Spectator override package list"},{"t":3,"n":"OCOR - Observe dead body override package list"},{"t":3,"n":"GWOR - Guard warn override package list"},{"t":3,"n":"ECOR - Combat override package list"},{"t":3,"n":"ALDN - Display Name"},{"t":8,"n":"Alias Spells","c":[{"t":3,"n":"ALSP - Spell"}]},{"t":8,"n":"ALFC - Alias Factions","c":[{"t":3,"n":"ALFC - Faction"}]},{"t":8,"n":"Alias Package Data","c":[{"t":3,"n":"ALPC - Package"}]},{"t":3,"n":"VTCK - Voice Types"},{"n":"ALED - Alias End"}]}]},{"t":2,"p":1,"n":"NNAM - Description"},{"t":8,"s":1,"p":1,"n":"Targets","d":1,"c":[{"t":6,"p":1,"n":"Target","c":[{"t":6,"p":1,"n":"QSTA - Target","c":[{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Compass Marker Ignores Locks"}]},{"t":11,"n":"Unknown"}]},{"t":10,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"RACE - Race","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Critter?"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"DESC - Description"},{"t":3,"n":"SPCT - Count"},{"t":8,"s":1,"p":1,"n":"Actor Effects","c":[{"t":3,"p":1,"n":"SPLO - Actor Effect"}]},{"t":3,"p":1,"n":"WNAM - Skin"},{"t":6,"s":1,"p":1,"n":"BOD2 - Biped Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":6,"s":1,"p":1,"n":"BODT - Body Template","c":[{"t":3,"p":1,"n":"First Person Flags","c":[{"t":4,"n":"30 - Head"},{"t":4,"n":"31 - Hair"},{"t":4,"n":"32 - Body"},{"t":4,"n":"33 - Hands"},{"t":4,"n":"34 - Forearms"},{"t":4,"n":"35 - Amulet"},{"t":4,"n":"36 - Ring"},{"t":4,"n":"37 - Feet"},{"t":4,"n":"38 - Calves"},{"t":4,"n":"39 - Shield"},{"t":4,"n":"40 - Tail"},{"t":4,"n":"41 - LongHair"},{"t":4,"n":"42 - Circlet"},{"t":4,"n":"43 - Ears"},{"t":4,"n":"44 - Unnamed"},{"t":4,"n":"45 - Unnamed"},{"t":4,"n":"46 - Unnamed"},{"t":4,"n":"47 - Unnamed"},{"t":4,"n":"48 - Unnamed"},{"t":4,"n":"49 - Unnamed"},{"t":4,"n":"50 - DecapitateHead"},{"t":4,"n":"51 - Decapitate"},{"t":4,"n":"52 - Unnamed"},{"t":4,"n":"53 - Unnamed"},{"t":4,"n":"54 - Unnamed"},{"t":4,"n":"55 - Unnamed"},{"t":4,"n":"56 - Unnamed"},{"t":4,"n":"57 - Unnamed"},{"t":4,"n":"58 - Unnamed"},{"t":4,"n":"59 - Unnamed"},{"t":4,"n":"60 - Unnamed"},{"t":4,"n":"61 - FX01"}]},{"t":3,"p":1,"n":"General Flags","c":[{"t":4,"n":"(ARMA)Modulates Voice"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"(ARMO)Non-Playable"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"}]},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Armor Type"}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"p":1,"n":"DATA - DATA","c":[{"t":9,"s":1,"p":1,"n":"Skill Boosts","c":[{"t":6,"p":1,"n":"Skill Boost","c":[{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Boost"}]}]},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Male Height"},{"t":5,"p":1,"n":"Female Height"},{"t":5,"p":1,"n":"Male Weight"},{"t":5,"p":1,"n":"Female Weight"},{"t":3,"p":1,"n":"Flags","d":1,"c":[{"t":4,"p":1,"n":"Playable"},{"t":4,"p":1,"n":"FaceGen Head"},{"t":4,"p":1,"n":"Child"},{"t":4,"p":1,"n":"Tilt Front\/Back"},{"t":4,"p":1,"n":"Tilt Left\/Right"},{"t":4,"p":1,"n":"No Shadow"},{"t":4,"p":1,"n":"Swims"},{"t":4,"p":1,"n":"Flies"},{"t":4,"p":1,"n":"Walks"},{"t":4,"p":1,"n":"Immobile"},{"t":4,"p":1,"n":"Not Pushable"},{"t":4,"p":1,"n":"No Combat In Water"},{"t":4,"p":1,"n":"No Rotating to Head-Track"},{"t":4,"p":1,"n":"Don't Show Blood Spray"},{"t":4,"p":1,"n":"Don't Show Blood Decal"},{"t":4,"p":1,"n":"Uses Head Track Anims"},{"t":4,"p":1,"n":"Spells Align w\/Magic Node"},{"t":4,"p":1,"n":"Use World Raycasts For FootIK"},{"t":4,"p":1,"n":"Allow Ragdoll Collision"},{"t":4,"p":1,"n":"Regen HP In Combat"},{"t":4,"p":1,"n":"Can't Open Doors"},{"t":4,"p":1,"n":"Allow PC Dialogue"},{"t":4,"p":1,"n":"No Knockdowns"},{"t":4,"p":1,"n":"Allow Pickpocket"},{"t":4,"p":1,"n":"Always Use Proxy Controller"},{"t":4,"p":1,"n":"Don't Show Weapon Blood"},{"t":4,"p":1,"n":"Overlay Head Part List"},{"t":4,"p":1,"n":"Override Head Part List"},{"t":4,"p":1,"n":"Can Pickup Items"},{"t":4,"p":1,"n":"Allow Multiple Membrane Shaders"},{"t":4,"p":1,"n":"Can Dual Wield"},{"t":4,"p":1,"n":"Avoids Roads"}]},{"t":5,"p":1,"n":"Starting Health"},{"t":5,"p":1,"n":"Starting Magicka"},{"t":5,"p":1,"n":"Starting Stamina"},{"t":5,"p":1,"n":"Base Carry Weight"},{"t":5,"p":1,"n":"Base Mass"},{"t":5,"p":1,"n":"Acceleration rate"},{"t":5,"p":1,"n":"Deceleration rate"},{"t":3,"p":1,"n":"Size"},{"t":3,"p":1,"n":"Head Biped Object"},{"t":3,"p":1,"n":"Hair Biped Object"},{"t":5,"p":1,"n":"Injured Health Pct"},{"t":3,"p":1,"n":"Shield Biped Object"},{"t":5,"p":1,"n":"Health Regen"},{"t":5,"p":1,"n":"Magicka Regen"},{"t":5,"p":1,"n":"Stamina Regen"},{"t":5,"p":1,"n":"Unarmed Damage"},{"t":5,"p":1,"n":"Unarmed Reach"},{"t":3,"p":1,"n":"Body Biped Object"},{"t":5,"p":1,"n":"Aim Angle Tolerance"},{"t":5,"p":1,"n":"Flight Radius"},{"t":5,"p":1,"n":"Angular Acceleration Rate"},{"t":5,"p":1,"n":"Angular Tolerance"},{"t":3,"p":1,"n":"Flags 2","d":1,"c":[{"t":4,"p":1,"n":"Use Advanced Avoidance"},{"t":4,"p":1,"n":"Non-Hostile"},{"t":4,"p":1,"n":"Unknown 2"},{"t":4,"p":1,"n":"Unknown 3"},{"t":4,"p":1,"n":"Allow Mounted Combat"}]},{"t":6,"p":1,"n":"Mount Data","c":[{"t":5,"p":1,"n":"Offset X"},{"t":5,"p":1,"n":"Offset Y"},{"t":5,"n":"Unknown"}]}]},{"p":1,"n":"MNAM - Male Marker"},{"t":2,"p":1,"n":"ANAM - Male Skeletal Model"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"p":1,"n":"FNAM - Female Marker"},{"t":2,"p":1,"n":"ANAM - Female Skeletal Model"},{"p":1,"n":"NAM2 - Marker NAM2 #1"},{"t":8,"p":1,"n":"MTNM - Movement Type Names","c":[{"t":2,"p":1,"n":"MTNM - Name"}]},{"t":7,"p":1,"n":"VTCK - Voices","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"DNAM - Decapitate Armors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":7,"p":1,"n":"HCLF - Default Hair Colors","c":[{"t":3,"p":1,"n":"Male"},{"t":3,"p":1,"n":"Female"}]},{"t":3,"n":"TINL - Total Number of Tints in List"},{"t":5,"p":1,"n":"PNAM - FaceGen - Main clamp"},{"t":5,"p":1,"n":"UNAM - FaceGen - Face clamp"},{"t":3,"p":1,"n":"ATKR - Attack Race"},{"t":10,"p":1,"n":"Attacks","c":[{"t":6,"p":1,"n":"Attack","c":[{"t":6,"p":1,"n":"ATKD - Attack Data","c":[{"t":5,"p":1,"n":"Damage Mult"},{"t":5,"p":1,"n":"Attack Chance"},{"t":3,"p":1,"n":"Attack Spell"},{"t":3,"n":"Attack Flags","c":[{"t":4,"n":"Ignore Weapon"},{"t":4,"n":"Bash Attack"},{"t":4,"n":"Power Attack"},{"t":4,"n":"Left Attack"},{"t":4,"n":"Rotating Attack"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Override Data"}]},{"t":5,"p":1,"n":"Attack Angle"},{"t":5,"p":1,"n":"Strike Angle"},{"t":5,"p":1,"n":"Stagger"},{"t":3,"p":1,"n":"Attack Type"},{"t":5,"p":1,"n":"Knockdown"},{"t":5,"p":1,"n":"Recovery Time"},{"t":5,"p":1,"n":"Stamina Mult"}]},{"t":2,"p":1,"n":"ATKE - Attack Event"}]}]},{"t":6,"p":1,"n":"Body Data","c":[{"n":"NAM1 - Body Data Marker"},{"t":6,"p":1,"n":"Male Body Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]},{"t":6,"p":1,"n":"Female Body Data","c":[{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"INDX - Index"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]}]}]},{"t":7,"p":1,"n":"HNAM - Hairs","c":[{"t":3,"p":1,"n":"Hair"}]},{"t":7,"p":1,"n":"ENAM - Eyes","c":[{"t":3,"p":1,"n":"Eye"}]},{"t":3,"p":1,"n":"GNAM - Body Part Data"},{"p":1,"n":"NAM2 - Marker NAM2 #2"},{"p":1,"n":"NAM3 - Marker NAM3 #3"},{"t":6,"s":1,"p":1,"n":"Male Behavior Graph","c":[{"p":1,"n":"MNAM - Male Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"Female Behavior Graph","c":[{"p":1,"n":"FNAM - Female Data Marker"},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"NAM4 - Material Type"},{"t":3,"p":1,"n":"NAM5 - Impact Data Set"},{"t":3,"p":1,"n":"NAM7 - Decapitation FX"},{"t":3,"p":1,"n":"ONAM - Open Loot Sound"},{"t":3,"p":1,"n":"LNAM - Close Loot Sound"},{"t":8,"s":1,"p":1,"n":"Biped Object Names","c":[{"t":2,"p":1,"n":"NAME - Name"}]},{"t":10,"n":"Movement Types","c":[{"t":6,"n":"Movement Types","c":[{"t":3,"n":"MTYP - Movement Type"},{"t":6,"n":"SPED - Override Values","c":[{"t":5,"n":"Left - Walk"},{"t":5,"n":"Left - Run"},{"t":5,"n":"Right - Walk"},{"t":5,"n":"Right - Run"},{"t":5,"n":"Forward - Walk"},{"t":5,"n":"Forward - Run"},{"t":5,"n":"Back - Walk"},{"t":5,"n":"Back - Run"},{"t":5,"n":"Rotate - Walk"},{"t":5,"n":"Unknown"}]}]}]},{"t":3,"p":1,"n":"VNAM - Equipment Flags","d":1,"c":[{"t":4,"p":1,"n":"Hand To Hand Melee"},{"t":4,"p":1,"n":"One Hand Sword"},{"t":4,"p":1,"n":"One Hand Dagger"},{"t":4,"p":1,"n":"One Hand Axe"},{"t":4,"p":1,"n":"One Hand Mace"},{"t":4,"p":1,"n":"Two Hand Sword"},{"t":4,"p":1,"n":"Two Hand Axe"},{"t":4,"p":1,"n":"Bow"},{"t":4,"p":1,"n":"Staff"},{"t":4,"p":1,"n":"Spell"},{"t":4,"p":1,"n":"Shield"},{"t":4,"p":1,"n":"Torch"},{"t":4,"p":1,"n":"Crossbow"}]},{"t":8,"p":1,"n":"Equip Slots","c":[{"t":3,"p":1,"n":"QNAM - Equip Slot"}]},{"t":3,"n":"UNES - Unarmed Equip Slot"},{"t":8,"n":"Phoneme Target Names","c":[{"t":2,"n":"PHTN - Name"}]},{"t":6,"n":"FaceFX Phonemes","c":[{"t":6,"n":"IY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"IH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"EY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AE","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AA","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AO","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OY","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"OW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"UW","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ER","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"AX","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"S","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Z","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"ZH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"F","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"TH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"V","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"DH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"M","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"N","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"NG","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"L","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"R","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"W","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"Y","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"HH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"B","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"D","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"JH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"G","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"P","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"T","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"K","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"CH","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"SHOTSIL","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]},{"t":6,"n":"FLAP","c":[{"t":6,"n":"PHWT - Phoneme Target Weight","c":[{"t":5,"n":"Aah \/ LipBigAah"},{"t":5,"n":"BigAah \/ LipDST"},{"t":5,"n":"BMP \/ LipEee"},{"t":5,"n":"ChJsh \/ LipFV"},{"t":5,"n":"DST \/ LipK"},{"t":5,"n":"Eee \/ LipL"},{"t":5,"n":"Eh \/ LipR"},{"t":5,"n":"FV \/ LipTh"},{"t":5,"n":"I"},{"t":5,"n":"K"},{"t":5,"n":"N"},{"t":5,"n":"Oh"},{"t":5,"n":"OohQ"},{"t":5,"n":"R"},{"t":5,"n":"TH"},{"t":5,"n":"W"}]}]}]},{"t":3,"n":"WKMV - Base Movement Default - Walk"},{"t":3,"n":"RNMV - Base Movement Default - Run"},{"t":3,"n":"SWMV - Base Movement Default - Swim"},{"t":3,"n":"FLMV - Base Movement Default - Fly"},{"t":3,"n":"SNMV - Base Movement Default - Sneak"},{"t":3,"n":"SPMV - Base Movement Default - Sprint"},{"t":6,"p":1,"n":"Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"t":6,"p":1,"n":"Male Head Data","c":[{"n":"MNAM - Male Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Male","c":[{"t":3,"p":1,"n":"RPRM - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Male","d":1,"c":[{"t":3,"p":1,"n":"AHCM - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Male","c":[{"t":3,"p":1,"n":"FTSM - Texture Set"}]},{"t":3,"p":1,"n":"DFTM - Default Face Texture Male"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"p":1,"n":"Female Head Data","c":[{"n":"NAM0 - Head Data Marker"},{"n":"FNAM - Female Data Marker"},{"t":10,"s":1,"p":1,"n":"Head Parts","c":[{"t":6,"p":1,"n":"Head Part","c":[{"t":3,"p":1,"n":"INDX - Head Part Number"},{"t":3,"p":1,"n":"HEAD - Head"}]}]},{"t":6,"p":1,"n":"Available Morphs","c":[{"t":11,"p":1,"n":"MPAI - Unknown"},{"t":6,"p":1,"n":"MPAV - Nose Variants","c":[{"t":3,"p":1,"n":"Nose Morph Flags","c":[{"t":4,"p":1,"n":"NoseType0"},{"t":4,"p":1,"n":"NoseType1"},{"t":4,"p":1,"n":"NoseType2"},{"t":4,"p":1,"n":"NoseType3"},{"t":4,"p":1,"n":"NoseType4"},{"t":4,"p":1,"n":"NoseType5"},{"t":4,"p":1,"n":"NoseType6"},{"t":4,"p":1,"n":"NoseType7"},{"t":4,"p":1,"n":"NoseType8"},{"t":4,"p":1,"n":"NoseType9"},{"t":4,"p":1,"n":"NoseType10"},{"t":4,"p":1,"n":"NoseType11"},{"t":4,"p":1,"n":"NoseType12"},{"t":4,"p":1,"n":"NoseType13"},{"t":4,"p":1,"n":"NoseType14"},{"t":4,"p":1,"n":"NoseType15"},{"t":4,"p":1,"n":"NoseType16"},{"t":4,"p":1,"n":"NoseType17"},{"t":4,"p":1,"n":"NoseType18"},{"t":4,"p":1,"n":"NoseType19"},{"t":4,"p":1,"n":"NoseType20"},{"t":4,"p":1,"n":"NoseType21"},{"t":4,"p":1,"n":"NoseType22"},{"t":4,"p":1,"n":"NoseType23"},{"t":4,"p":1,"n":"NoseType24"},{"t":4,"p":1,"n":"NoseType25"},{"t":4,"p":1,"n":"NoseType26"},{"t":4,"p":1,"n":"NoseType27"},{"t":4,"p":1,"n":"NoseType28"},{"t":4,"p":1,"n":"NoseType29"},{"t":4,"p":1,"n":"NoseType30"},{"t":4,"p":1,"n":"NoseType31"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Brow Variants","c":[{"t":3,"p":1,"n":"Brow Morph Flags","c":[{"t":4,"p":1,"n":"BrowType0"},{"t":4,"p":1,"n":"BrowType1"},{"t":4,"p":1,"n":"BrowType2"},{"t":4,"p":1,"n":"BrowType3"},{"t":4,"p":1,"n":"BrowType4"},{"t":4,"p":1,"n":"BrowType5"},{"t":4,"p":1,"n":"BrowType6"},{"t":4,"p":1,"n":"BrowType7"},{"t":4,"p":1,"n":"BrowType8"},{"t":4,"p":1,"n":"BrowType9"},{"t":4,"p":1,"n":"BrowType10"},{"t":4,"p":1,"n":"BrowType11"},{"t":4,"p":1,"n":"BrowType12"},{"t":4,"p":1,"n":"BrowType13"},{"t":4,"p":1,"n":"BrowType14"},{"t":4,"p":1,"n":"BrowType15"},{"t":4,"p":1,"n":"BrowType16"},{"t":4,"p":1,"n":"BrowType17"},{"t":4,"p":1,"n":"BrowType18"},{"t":4,"p":1,"n":"BrowType19"},{"t":4,"p":1,"n":"BrowType20"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Eye Variants","c":[{"t":3,"p":1,"n":"Eye Morph Flags 1","c":[{"t":4,"p":1,"n":"EyesType0"},{"t":4,"p":1,"n":"EyesType1"},{"t":4,"p":1,"n":"EyesType2"},{"t":4,"p":1,"n":"EyesType3"},{"t":4,"p":1,"n":"EyesType4"},{"t":4,"p":1,"n":"EyesType5"},{"t":4,"p":1,"n":"EyesType6"},{"t":4,"p":1,"n":"EyesType7"},{"t":4,"p":1,"n":"EyesType8"},{"t":4,"p":1,"n":"EyesType9"},{"t":4,"p":1,"n":"EyesType10"},{"t":4,"p":1,"n":"EyesType11"},{"t":4,"p":1,"n":"EyesType12"},{"t":4,"p":1,"n":"EyesType13"},{"t":4,"p":1,"n":"EyesType14"},{"t":4,"p":1,"n":"EyesType15"},{"t":4,"p":1,"n":"EyesType16"},{"t":4,"p":1,"n":"EyesType17"},{"t":4,"p":1,"n":"EyesType18"},{"t":4,"p":1,"n":"EyesType19"},{"t":4,"p":1,"n":"EyesType20"},{"t":4,"p":1,"n":"EyesType21"},{"t":4,"p":1,"n":"EyesType22"},{"t":4,"p":1,"n":"EyesType23"},{"t":4,"p":1,"n":"EyesType24"},{"t":4,"p":1,"n":"EyesType25"},{"t":4,"p":1,"n":"EyesType26"},{"t":4,"p":1,"n":"EyesType27"},{"t":4,"p":1,"n":"EyesType28"},{"t":4,"p":1,"n":"EyesType29"},{"t":4,"p":1,"n":"EyesType30"},{"t":4,"p":1,"n":"EyesType31"}]},{"t":3,"p":1,"n":"Eye Morph Flags 2","c":[{"t":4,"p":1,"n":"EyesType32"},{"t":4,"p":1,"n":"EyesType33"},{"t":4,"p":1,"n":"EyesType34"},{"t":4,"p":1,"n":"EyesType35"},{"t":4,"p":1,"n":"EyesType36"},{"t":4,"p":1,"n":"EyesType37"},{"t":4,"p":1,"n":"EyesType38"}]},{"t":11,"p":1,"n":"Unknown"}]},{"t":6,"p":1,"n":"MPAV - Lip Variants","c":[{"t":3,"p":1,"n":"Lip Morph Flags","c":[{"t":4,"p":1,"n":"LipType0"},{"t":4,"p":1,"n":"LipType1"},{"t":4,"p":1,"n":"LipType2"},{"t":4,"p":1,"n":"LipType3"},{"t":4,"p":1,"n":"LipType4"},{"t":4,"p":1,"n":"LipType5"},{"t":4,"p":1,"n":"LipType6"},{"t":4,"p":1,"n":"LipType7"},{"t":4,"p":1,"n":"LipType8"},{"t":4,"p":1,"n":"LipType9"},{"t":4,"p":1,"n":"LipType10"},{"t":4,"p":1,"n":"LipType11"},{"t":4,"p":1,"n":"LipType12"},{"t":4,"p":1,"n":"LipType13"},{"t":4,"p":1,"n":"LipType14"},{"t":4,"p":1,"n":"LipType15"},{"t":4,"p":1,"n":"LipType16"},{"t":4,"p":1,"n":"LipType17"},{"t":4,"p":1,"n":"LipType18"},{"t":4,"p":1,"n":"LipType19"},{"t":4,"p":1,"n":"LipType20"},{"t":4,"p":1,"n":"LipType21"},{"t":4,"p":1,"n":"LipType22"},{"t":4,"p":1,"n":"LipType23"},{"t":4,"p":1,"n":"LipType24"},{"t":4,"p":1,"n":"LipType25"},{"t":4,"p":1,"n":"LipType26"},{"t":4,"p":1,"n":"LipType27"},{"t":4,"p":1,"n":"LipType28"},{"t":4,"p":1,"n":"LipType29"},{"t":4,"p":1,"n":"LipType30"},{"t":4,"p":1,"n":"LipType31"}]},{"t":11,"p":1,"n":"Unknown"}]}]},{"t":8,"p":1,"n":"Race Presets Female","c":[{"t":3,"p":1,"n":"RPRF - Preset NPC"}]},{"t":8,"p":1,"n":"Available Hair Colors Female","d":1,"c":[{"t":3,"p":1,"n":"AHCF - Hair Color"}]},{"t":8,"p":1,"n":"Face Details Texture Set List Female","c":[{"t":3,"p":1,"n":"FTSF - Texture Set"}]},{"t":3,"p":1,"n":"DFTF - Default Face Texture Female"},{"t":8,"p":1,"n":"Tint Masks","c":[{"t":6,"p":1,"n":"Tint Assets","c":[{"t":8,"p":1,"n":"Tint Layer","c":[{"t":6,"p":1,"n":"Texture","c":[{"t":3,"p":1,"n":"TINI - Index"},{"t":2,"p":1,"n":"TINT - File Name"},{"t":3,"p":1,"n":"TINP - Mask Type"},{"t":3,"p":1,"n":"TIND - Preset Default"}]}]},{"t":8,"p":1,"n":"Presets","c":[{"t":6,"p":1,"n":"Preset","c":[{"t":3,"p":1,"n":"TINC - Color"},{"t":5,"p":1,"n":"TINV - Default Value"},{"t":3,"p":1,"n":"TIRS - Index"}]}]}]}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]}]},{"t":3,"n":"NAM8 - Morph race"},{"t":3,"n":"RNAM - Armor race"}]},{"t":1,"p":1,"n":"REFR - Placed Object","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"p":1,"n":"Persistent"},{"t":4,"p":1,"n":"Initially Disabled"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Is Full LOD"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"p":1,"n":"Filter (Collision Geometry)"},{"t":4,"p":1,"n":"Bounding Box (Collision Geometry)"},{"t":4,"p":1,"n":"Reflected By Auto Water"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"Ground"},{"t":4,"p":1,"n":"Multibound"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":3,"p":1,"n":"NAME - Base"},{"t":6,"s":1,"p":1,"n":"XMBO - Bound Half Extents","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"XPRM - Primitive","c":[{"t":6,"p":1,"n":"Bounds","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Color","c":[{"t":5,"p":1,"n":"Red"},{"t":5,"p":1,"n":"Green"},{"t":5,"p":1,"n":"Blue"}]},{"t":5,"n":"Unknown"},{"t":3,"p":1,"n":"Type"}]},{"t":11,"n":"XORD - Unknown"},{"t":6,"s":1,"p":1,"n":"XOCP - Occlusion Plane Data","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":7,"p":1,"n":"XPOD - Portal Data","c":[{"t":6,"p":1,"n":"References","c":[{"t":3,"p":1,"n":"Origin"},{"t":3,"p":1,"n":"Destination"}]}]},{"t":6,"s":1,"p":1,"n":"XPTL - Room Portal (unused)","c":[{"t":6,"p":1,"n":"Size","c":[{"t":5,"p":1,"n":"Width"},{"t":5,"p":1,"n":"Height"}]},{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation (Quaternion?)","c":[{"t":5,"p":1,"n":"q1"},{"t":5,"p":1,"n":"q2"},{"t":5,"p":1,"n":"q3"},{"t":5,"p":1,"n":"q4"}]}]},{"t":6,"p":1,"n":"Bound Data","c":[{"t":6,"p":1,"n":"XRMR - Header","c":[{"t":3,"p":1,"n":"Linked Rooms Count"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Has Image Space"},{"t":4,"p":1,"n":"Has Lighting Template"}]},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"LNAM - Lighting Template","lt":"INAM - Image Space"},{"t":3,"p":1,"n":"INAM - Image Space","lf":"LNAM - Lighting Template"},{"t":8,"s":1,"p":1,"n":"Linked Rooms","d":1,"c":[{"t":3,"p":1,"n":"XLRM - Linked Room"}]}]},{"p":1,"n":"XMBP - MultiBound Primitive Marker"},{"t":11,"n":"XRGD - Ragdoll Data"},{"t":11,"n":"XRGB - Ragdoll Biped Data"},{"t":5,"p":1,"n":"XRDS - Radius"},{"t":8,"s":1,"p":1,"n":"Reflected\/Refracted By","d":1,"c":[{"t":6,"p":1,"n":"XPWR - Water","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Type","c":[{"t":4,"p":1,"n":"Reflection"},{"t":4,"p":1,"n":"Refraction"}]}]}]},{"t":8,"s":1,"p":1,"n":"Lit Water","d":1,"c":[{"t":3,"p":1,"n":"XLTW - Water"}]},{"t":3,"p":1,"n":"XEMI - Emittance"},{"t":6,"s":1,"p":1,"n":"XLIG - Light Data","c":[{"t":5,"p":1,"n":"FOV 90+\/-"},{"t":5,"p":1,"n":"Fade 1.35+\/-"},{"t":5,"p":1,"n":"End Distance Cap"},{"t":5,"p":1,"n":"Shadow Depth Bias"},{"t":11,"n":"Unknown"}]},{"t":6,"s":1,"p":1,"n":"XALP - Alpha","c":[{"t":3,"p":1,"n":"Cutoff"},{"t":3,"p":1,"n":"Base"}]},{"t":6,"s":1,"p":1,"n":"XTEL - Teleport Destination","c":[{"t":3,"p":1,"n":"Door"},{"t":6,"p":1,"n":"Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"No Alarm"}]}]},{"t":3,"p":1,"n":"XTNM - Teleport Message Box"},{"t":3,"p":1,"n":"XMBR - MultiBound Reference"},{"t":11,"n":"XWCN - Unknown"},{"t":11,"n":"XWCS - Unknown"},{"t":6,"s":1,"p":1,"n":"XWCU - Water Velocity","c":[{"t":5,"p":1,"n":"X Offset"},{"t":5,"p":1,"n":"Y Offset"},{"t":5,"p":1,"n":"Z Offset"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"X Angle"},{"t":5,"p":1,"n":"Y Angle"},{"t":5,"p":1,"n":"Z Angle"}]},{"t":6,"n":"XCVL - Unknown","c":[{"t":11,"n":"Unknown"},{"t":5,"n":"X Angle"}]},{"t":3,"n":"XCZR - Unknown"},{"t":11,"n":"XCZA - Unknown"},{"t":3,"n":"XCZC - Unknown"},{"t":5,"p":1,"n":"XSCL - Scale"},{"t":3,"p":1,"n":"XSPC - Spawn Container"},{"t":6,"s":1,"p":1,"n":"Activate Parents","c":[{"t":3,"p":1,"n":"XAPD - Flags","c":[{"t":4,"p":1,"n":"Parent Activate Only"}]},{"t":8,"p":1,"n":"Activate Parent Refs","c":[{"t":6,"p":1,"n":"XAPR - Activate Parent Ref","c":[{"t":3,"p":1,"n":"Reference"},{"t":5,"p":1,"n":"Delay"}]}]}]},{"t":3,"p":1,"n":"XLIB - Leveled Item Base Object"},{"t":3,"p":1,"n":"XLCM - Level Modifier"},{"t":3,"p":1,"n":"XLCN - Persistent Location"},{"t":3,"p":1,"n":"XTRI - Collision Layer"},{"t":6,"s":1,"p":1,"n":"XLOC - Lock Data","c":[{"t":3,"p":1,"n":"Level"},{"t":11,"n":"Unused"},{"t":3,"p":1,"n":"Key"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":""},{"t":4,"p":1,"n":"Leveled Lock"}]}]},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":6,"s":1,"p":1,"n":"XNDP - Navigation Door Link","c":[{"t":3,"p":1,"n":"Navigation Mesh"},{"t":3,"p":1,"n":"Teleport Marker Triangle"},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"XLRT - Location Ref Type","c":[{"t":3,"p":1,"n":"Ref"}]},{"p":1,"n":"XIS2 - Ignored by Sandbox"},{"t":6,"s":1,"p":1,"n":"Ownership","c":[{"t":3,"p":1,"n":"XOWN - Owner"},{"t":3,"p":1,"n":"XRNK - Faction rank"}]},{"t":3,"p":1,"n":"XCNT - Item Count"},{"t":5,"p":1,"n":"XCHG - Charge"},{"t":3,"p":1,"n":"XLRL - Location Reference"},{"t":6,"s":1,"p":1,"n":"XESP - Enable Parent","c":[{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Set Enable State to Opposite of Parent"},{"t":4,"p":1,"n":"Pop In"}]},{"t":11,"n":"Unused"}]},{"t":8,"s":1,"p":1,"n":"Linked References","d":1,"c":[{"t":6,"p":1,"n":"XLKR - Linked Reference","c":[{"t":3,"p":1,"n":"Keyword\/Ref"},{"t":3,"p":1,"n":"Ref"}]}]},{"t":8,"s":1,"p":1,"n":"Patrol","d":1,"c":[{"t":6,"p":1,"n":"Data","c":[{"t":5,"p":1,"n":"XPRD - Idle Time"},{"p":1,"n":"XPPA - Patrol Script Marker"},{"t":3,"p":1,"n":"INAM - Idle"},{"t":11,"n":"SCHR - Unused"},{"t":11,"n":"SCTX - Unused"},{"t":8,"p":1,"n":"Topic","c":[{"t":6,"p":1,"n":"PDTO - Topic Data","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Topic"},{"t":2,"p":1,"n":"Subtype"}]}]}]}]},{"t":3,"p":1,"n":"XACT - Action Flag","c":[{"t":4,"p":1,"n":"Use Default"},{"t":4,"p":1,"n":"Activate"},{"t":4,"p":1,"n":"Open"},{"t":4,"p":1,"n":"Open by Default"}]},{"t":5,"p":1,"n":"XHTW - Head-Tracking Weight"},{"t":5,"p":1,"n":"XFVC - Favor Cost"},{"p":1,"n":"ONAM - Open by Default"},{"t":6,"s":1,"p":1,"n":"Map Marker","c":[{"p":1,"n":"XMRK - Map Marker Data"},{"t":3,"p":1,"n":"FNAM - Map Flags","c":[{"t":4,"p":1,"n":"Visible"},{"t":4,"p":1,"n":"Can Travel To"},{"t":4,"p":1,"n":"\"Show All\" Hidden"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"p":1,"n":"TNAM - TNAM","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"XATR - Attach Ref"},{"t":7,"p":1,"n":"XLOD - Distant LOD Data","c":[{"t":5,"p":1,"n":""}]},{"t":6,"s":1,"p":1,"n":"DATA - Position\/Rotation","c":[{"t":6,"p":1,"n":"Position","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"p":1,"n":"Rotation","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]}]}]},{"t":1,"p":1,"n":"REGN - Region","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Border Region"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"RCLR - Map Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]},{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":8,"s":1,"p":1,"n":"Region Areas","d":1,"c":[{"t":6,"p":1,"n":"Region Area","c":[{"t":3,"p":1,"n":"RPLI - Edge Fall-off"},{"t":7,"p":1,"n":"RPLD - Region Point List Data","c":[{"t":6,"p":1,"n":"Point","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]}]}]},{"t":10,"p":1,"n":"Region Data Entries","d":1,"c":[{"t":6,"p":1,"n":"Region Data Entry","c":[{"t":6,"p":1,"n":"RDAT - Data Header","c":[{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Override"}]},{"t":3,"p":1,"n":"Priority"},{"t":11,"n":"Unknown"}]},{"t":6,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"RDMO - Music"},{"t":7,"p":1,"n":"RDSA - Sounds","c":[{"t":6,"p":1,"n":"Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Flags"},{"t":5,"p":1,"n":"Chance"}]}]},{"t":2,"p":1,"n":"RDMP - Map Name"},{"t":7,"p":1,"n":"RDOT - Objects","c":[{"t":6,"p":1,"n":"Object","c":[{"t":3,"p":1,"n":"Object"},{"t":3,"p":1,"n":"Parent Index"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Density"},{"t":3,"p":1,"n":"Clustering"},{"t":3,"p":1,"n":"Min Slope"},{"t":3,"p":1,"n":"Max Slope"},{"t":3,"p":1,"n":"Flags"},{"t":3,"p":1,"n":"Radius wrt Parent"},{"t":3,"p":1,"n":"Radius"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Sink"},{"t":5,"p":1,"n":"Sink Variance"},{"t":5,"p":1,"n":"Size Variance"},{"t":6,"p":1,"n":"Angle Variance","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"Z"}]}]}]},{"t":7,"p":1,"n":"RDGS - Grasses","c":[{"t":6,"p":1,"n":"Grass","c":[{"t":3,"p":1,"n":"Grass"},{"t":11,"n":"Unknown"}]}]},{"t":7,"p":1,"n":"RDWT - Weather Types","c":[{"t":6,"p":1,"n":"Weather Type","c":[{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Chance"},{"t":3,"p":1,"n":"Global"}]}]}]}]}]},{"t":1,"p":1,"n":"RELA - Relationship","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Secret"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Parent"},{"t":3,"p":1,"n":"Child"},{"t":3,"p":1,"n":"Rank"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"p":1,"n":"Secret"}]},{"t":3,"p":1,"n":"Association Type"}]}]},{"t":1,"p":1,"n":"REVB - Reverb Parameters","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Decay Time (ms)"},{"t":3,"p":1,"n":"HF Reference (Hz)"},{"t":3,"p":1,"n":"Room Filter"},{"t":3,"p":1,"n":"Room HF Filter"},{"t":3,"p":1,"n":"Reflections"},{"t":3,"p":1,"n":"Reverb Amp"},{"t":3,"p":1,"n":"Decay HF Ratio"},{"t":3,"p":1,"n":"Reflect Delay (ms), scaled"},{"t":3,"p":1,"n":"Reverb Delay (ms)"},{"t":3,"p":1,"n":"Diffusion %"},{"t":3,"p":1,"n":"Density %"},{"t":3,"n":"Unknown"}]}]},{"t":1,"p":1,"n":"RFCT - Visual Effect","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Effect Data","c":[{"t":3,"p":1,"n":"Effect Art"},{"t":3,"p":1,"n":"Shader"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Rotate to Face Target"},{"t":4,"p":1,"n":"Attach to Camera"},{"t":4,"p":1,"n":"Inherit Rotation"}]}]}]},{"t":1,"p":1,"n":"RGDL","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCEN - Scene","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]},{"t":6,"p":1,"n":"Script Fragments","c":[{"t":3,"n":"Unknown"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"OnBegin"},{"t":4,"p":1,"n":"OnEnd"}]},{"t":2,"p":1,"n":"FileName"},{"t":7,"p":1,"n":"Fragments","c":[{"t":6,"p":1,"n":"Fragment","c":[{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]},{"t":7,"p":1,"n":"Phase Fragments","c":[{"t":6,"p":1,"n":"Phase Fragment","c":[{"t":3,"p":1,"n":"Phase Flag"},{"t":3,"p":1,"n":"Phase Index"},{"t":3,"n":"Unknown"},{"t":2,"p":1,"n":"scriptName"},{"t":2,"p":1,"n":"fragmentName"}]}]}]}]},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Begin on Quest Start"},{"t":4,"p":1,"n":"Stop on Quest End"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"Repeat Conditions While True"},{"t":4,"p":1,"n":"Interruptible"}]},{"t":8,"s":1,"p":1,"n":"Phases","d":1,"c":[{"t":6,"p":1,"n":"Phase","c":[{"p":1,"n":"HNAM - Marker Phase Start"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":6,"p":1,"n":"Start Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"p":1,"n":"NEXT - Marker"},{"t":6,"p":1,"n":"Completion Conditions","c":[{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"t":3,"p":1,"n":"WNAM - Editor Width"},{"p":1,"n":"HNAM - Marker Phase End"}]}]},{"t":8,"s":1,"p":1,"n":"Actors","d":1,"c":[{"t":6,"p":1,"n":"Actor","c":[{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":3,"p":1,"n":"LNAM - Flags","c":[{"t":4,"p":1,"n":"No Player Activation"},{"t":4,"p":1,"n":"Optional"}]},{"t":3,"p":1,"n":"DNAM - Behaviour Flags","c":[{"t":4,"p":1,"n":"Death Pause (unsused)"},{"t":4,"p":1,"n":"Death End"},{"t":4,"p":1,"n":"Combat Pause"},{"t":4,"p":1,"n":"Combat End"},{"t":4,"p":1,"n":"Dialogue Pause"},{"t":4,"p":1,"n":"Dialogue End"},{"t":4,"p":1,"n":"OBS_COM Pause"},{"t":4,"p":1,"n":"OBS_COM End"}]}]}]},{"t":8,"s":1,"p":1,"n":"Actions","d":1,"c":[{"t":6,"p":1,"n":"Action","c":[{"t":3,"p":1,"n":"ANAM - Type"},{"t":2,"p":1,"n":"NAM0 - Name"},{"t":3,"p":1,"n":"ALID - Actor ID"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"INAM - Index"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Face Target"},{"t":4,"p":1,"n":"Looping"},{"t":4,"p":1,"n":"Headtrack Player"}]},{"t":3,"p":1,"n":"SNAM - Start Phase"},{"t":3,"p":1,"n":"ENAM - End Phase"},{"t":5,"p":1,"n":"SNAM - Timer Seconds"},{"t":8,"p":1,"n":"Packages","c":[{"t":3,"p":1,"n":"PNAM - Package"}]},{"t":3,"p":1,"n":"DATA - Topic"},{"t":3,"p":1,"n":"HTID - Headtrack Actor ID"},{"t":5,"p":1,"n":"DMAX - Looping - Max"},{"t":5,"p":1,"n":"DMIN - Looping - Min"},{"t":3,"p":1,"n":"DEMO - Emotion Type"},{"t":3,"p":1,"n":"DEVA - Emotion Value"},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"ANAM - End Marker"}]}]},{"t":6,"n":"Unused","c":[{"t":11,"n":"SCHR - Unknown"},{"t":11,"n":"SCDA - Unknown"},{"t":11,"n":"SCTX - Unknown"},{"t":11,"n":"QNAM - Unknown"},{"t":11,"n":"SCRO - Unknown"}]},{"p":1,"n":"NEXT - Marker"},{"t":3,"p":1,"n":"PNAM - Quest"},{"t":3,"p":1,"n":"INAM - Last Action Index"},{"t":11,"n":"VNAM - Unknown"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]},{"t":1,"p":1,"n":"SCOL - Static Collection","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures"}]},{"t":8,"s":1,"p":1,"n":"Parts","d":1,"c":[{"t":6,"p":1,"n":"Part","c":[{"t":3,"p":1,"n":"ONAM - Static"},{"t":7,"p":1,"n":"DATA - Placements"}]}]}]},{"t":1,"p":1,"n":"SCPT","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"}]},{"t":1,"p":1,"n":"SCRL - Scroll","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":6,"s":1,"p":1,"n":"DATA - Item","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SHOU - Shout","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"p":1,"n":"Treat spells as powers"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":2,"p":1,"n":"DESC - Description"},{"t":8,"s":1,"p":1,"n":"Words of Power","d":1,"c":[{"t":6,"p":1,"n":"SNAM - SNAM","c":[{"t":3,"p":1,"n":"Word"},{"t":3,"p":1,"n":"Spell"},{"t":5,"p":1,"n":"Recovery Time"}]}]}]},{"t":1,"p":1,"n":"SLGM - Soul Gem","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Can Hold NPC Soul"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":6,"s":1,"p":1,"n":"DATA - DATA","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"}]},{"t":3,"p":1,"n":"SOUL - Contained Soul"},{"t":3,"p":1,"n":"SLCP - Maximum Capacity"},{"t":3,"p":1,"n":"NAM0 - Linked To"}]},{"t":1,"p":1,"n":"SMBN - Story Manager Branch Node","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"}]},{"t":1,"p":1,"n":"SMEN - Story Manager Event Node","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":11,"n":"XNAM - Unknown"},{"t":2,"p":1,"n":"ENAM - Type"}]},{"t":1,"p":1,"n":"SMQN - Story Manager Quest Node","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"PNAM - Parent "},{"t":3,"p":1,"n":"SNAM - Previous Sibling "},{"t":3,"n":"CITC - Condition Count"},{"t":10,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Flags","c":[{"t":3,"p":1,"n":"Node Flags","c":[{"t":4,"p":1,"n":"Random"},{"t":4,"p":1,"n":"Warn if no child quest started"}]},{"t":3,"p":1,"n":"Quest Flags","c":[{"t":4,"p":1,"n":"Do all before repeating"},{"t":4,"p":1,"n":"Shares event"},{"t":4,"p":1,"n":"Num quests to run"}]}]},{"t":3,"p":1,"n":"XNAM - Max concurrent quests"},{"t":3,"p":1,"n":"MNAM - Num quests to run"},{"t":3,"n":"QNAM - Quest Count"},{"t":10,"p":1,"n":"Quests","d":1,"c":[{"t":6,"p":1,"n":"Quest","c":[{"t":3,"p":1,"n":"NNAM - Quest"},{"t":11,"n":"FNAM - Unknown"},{"t":5,"p":1,"n":"RNAM - Hours until reset"}]}]}]},{"t":1,"p":1,"n":"SNCT - Sound Category","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"p":1,"n":"FNAM - Flags","c":[{"t":4,"p":1,"n":"Mute When Submerged"},{"t":4,"p":1,"n":"Should Appear on Menu"}]},{"t":3,"p":1,"n":"PNAM - Parent"},{"t":3,"p":1,"n":"VNAM - Static Volume Multiplier"},{"t":3,"p":1,"n":"UNAM - Default Menu Value"}]},{"t":1,"p":1,"n":"SNDR - Sound Descriptor","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":11,"n":"CNAM - Unknown"},{"t":3,"p":1,"n":"GNAM - Category"},{"t":3,"p":1,"n":"SNAM - Alternate Sound For"},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"Sound Files","c":[{"t":2,"p":1,"n":"ANAM - File Name"}]}]},{"t":3,"p":1,"n":"ONAM - Output Model"},{"t":2,"p":1,"n":"FNAM - String"},{"t":10,"s":1,"p":1,"n":"Conditions","d":1,"c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]},{"t":6,"s":1,"p":1,"n":"LNAM - Values","c":[{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Looping"},{"t":3,"p":1,"n":"Rumble Send Value = (Small \/ 7) + ((Big \/ 7) * 16)"}]},{"t":6,"s":1,"p":1,"n":"BNAM - Values","c":[{"t":3,"p":1,"n":"% Frequency Shift"},{"t":3,"p":1,"n":"% Frequency Variance"},{"t":3,"p":1,"n":"Priority"},{"t":3,"p":1,"n":"db Variance"},{"t":3,"p":1,"n":"Static Attenuation (db)"}]}]},{"t":1,"p":1,"n":"SOPM - Sound Output Model","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"NAM1 - Data","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Attenuates With Distance"},{"t":4,"p":1,"n":"Allows Rumble"}]},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Reverb Send %"}]},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Type"},{"t":11,"n":"CNAM - Unknown"},{"t":11,"n":"SNAM - Unknown"},{"t":6,"s":1,"p":1,"n":"ONAM - Output Values","c":[{"t":7,"p":1,"n":"Channels","c":[{"t":6,"p":1,"n":"Channel 0","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 1","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]},{"t":6,"p":1,"n":"Channel 2? (unused)","c":[{"t":3,"p":1,"n":"L"},{"t":3,"p":1,"n":"R"},{"t":3,"p":1,"n":"C"},{"t":3,"p":1,"n":"LFE"},{"t":3,"p":1,"n":"RL"},{"t":3,"p":1,"n":"RR"},{"t":3,"p":1,"n":"BL"},{"t":3,"p":1,"n":"BR"}]}]}]},{"t":6,"s":1,"p":1,"n":"ANAM - Attenuation Values","c":[{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Min Distance"},{"t":5,"p":1,"n":"Max Distance"},{"t":7,"p":1,"n":"Curve","c":[{"t":3,"p":1,"n":""}]}]}]},{"t":1,"p":1,"n":"SOUN - Sound Marker","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":11,"n":"FNAM - Unknown"},{"t":11,"n":"SNDD - Unknown"},{"t":3,"p":1,"n":"SDSC - Sound Descriptor"}]},{"t":1,"p":1,"n":"SPEL - Spell","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":3,"p":1,"n":"MDOB - Menu Display Object"},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"SPIT - Data","c":[{"t":3,"p":1,"n":"Base Cost"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Manual Cost Calc"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"p":1,"n":"PC Start Spell"},{"t":4,"n":"Unknown 19"},{"t":4,"p":1,"n":"Area Effect Ignores LOS"},{"t":4,"p":1,"n":"Ignore Resistance"},{"t":4,"p":1,"n":"No Absorb\/Reflect"},{"t":4,"n":"Unknown 23"},{"t":4,"p":1,"n":"No Dual Cast Modification"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"},{"t":4,"n":"Unknown 32"}]},{"t":3,"p":1,"n":"Type"},{"t":5,"p":1,"n":"Charge Time"},{"t":3,"p":1,"n":"Cast Type"},{"t":3,"p":1,"n":"Target Type"},{"t":5,"p":1,"n":"Cast Duration"},{"t":5,"p":1,"n":"Range"},{"t":3,"p":1,"n":"Half-cost Perk"}]},{"t":8,"s":1,"p":1,"n":"Effects","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Effect","c":[{"t":3,"p":1,"n":"EFID - Base Effect"},{"t":6,"p":1,"n":"EFIT - EFIT","c":[{"t":5,"p":1,"n":"Magnitude"},{"t":3,"p":1,"n":"Area"},{"t":3,"p":1,"n":"Duration"}]},{"t":10,"s":1,"p":1,"n":"Conditions","c":[{"t":6,"p":1,"n":"Condition","c":[{"t":6,"p":1,"n":"CTDA - CTDA","c":[{"t":3,"p":1,"n":"Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Comparison Value - Float"},{"t":3,"p":1,"n":"Comparison Value - Global"},{"t":3,"p":1,"n":"Function"},{"t":11,"n":"Unknown"},{"t":11,"p":1,"n":"None"},{"t":3,"p":1,"n":"Integer"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Variable Name"},{"t":3,"p":1,"n":"Sex"},{"t":3,"p":1,"n":"Actor Value"},{"t":3,"p":1,"n":"Crime Type"},{"t":3,"p":1,"n":"Axis"},{"t":3,"p":1,"n":"Quest Stage (unused)"},{"t":3,"p":1,"n":"Misc Stat"},{"t":3,"p":1,"n":"Alignment"},{"t":3,"p":1,"n":"Equip Type"},{"t":3,"p":1,"n":"Form Type"},{"t":3,"p":1,"n":"Critical Stage"},{"t":3,"p":1,"n":"Object Reference"},{"t":3,"p":1,"n":"Inventory Object"},{"t":3,"p":1,"n":"Actor"},{"t":3,"p":1,"n":"Voice Type"},{"t":3,"p":1,"n":"Idle"},{"t":3,"p":1,"n":"Form List"},{"t":3,"p":1,"n":"Quest"},{"t":3,"p":1,"n":"Faction"},{"t":3,"p":1,"n":"Cell"},{"t":3,"p":1,"n":"Class"},{"t":3,"p":1,"n":"Race"},{"t":3,"p":1,"n":"Actor Base"},{"t":3,"p":1,"n":"Global"},{"t":3,"p":1,"n":"Weather"},{"t":3,"p":1,"n":"Package"},{"t":3,"p":1,"n":"Encounter Zone"},{"t":3,"p":1,"n":"Perk"},{"t":3,"p":1,"n":"Owner"},{"t":3,"p":1,"n":"Furniture"},{"t":3,"p":1,"n":"Effect Item"},{"t":3,"p":1,"n":"Base Effect"},{"t":3,"p":1,"n":"Worldspace"},{"t":3,"p":1,"n":"VATS Value Function"},{"t":3,"p":1,"n":"VATS Value Param (INVALID)"},{"t":3,"p":1,"n":"Referenceable Object"},{"t":3,"p":1,"n":"Region"},{"t":3,"p":1,"n":"Keyword"},{"t":3,"p":1,"n":"Player Action"},{"t":3,"p":1,"n":"Casting Type"},{"t":3,"p":1,"n":"Shout"},{"t":3,"p":1,"n":"Location"},{"t":3,"p":1,"n":"Location Ref Type"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Packdata ID"},{"t":3,"p":1,"n":"Association Type"},{"t":3,"p":1,"n":"Furniture Anim"},{"t":3,"p":1,"n":"Furniture Entry"},{"t":3,"p":1,"n":"Scene"},{"t":3,"p":1,"n":"Ward State"},{"t":3,"p":1,"n":"Event"},{"t":3,"p":1,"n":"Event Data"},{"t":3,"p":1,"n":"Knowable"},{"t":3,"p":1,"n":"Quest Stage"},{"t":3,"p":1,"n":"Weapon"},{"t":3,"p":1,"n":"Weapon List"},{"t":3,"p":1,"n":"Target"},{"t":3,"p":1,"n":"Target List"},{"t":3,"p":1,"n":"Target Part"},{"t":3,"p":1,"n":"VATS Action"},{"t":3,"p":1,"n":"Critical Effect"},{"t":3,"p":1,"n":"Critical Effect List"},{"t":3,"p":1,"n":"Weapon Type"},{"t":3,"p":1,"n":"Projectile Type"},{"t":3,"p":1,"n":"Delivery Type"},{"t":3,"p":1,"n":"Run On"},{"t":3,"p":1,"n":"Reference"},{"t":3,"p":1,"n":"Parameter #3"}]},{"t":2,"p":1,"n":"CIS1 - Parameter #1"},{"t":2,"p":1,"n":"CIS2 - Parameter #2"}]}]}]}]}]},{"t":1,"p":1,"n":"SPGD - Shader Particle Geometry","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":5,"p":1,"n":"Gravity Velocity"},{"t":11,"n":"Unknown"},{"t":5,"p":1,"n":"Rotation Velocity"},{"t":5,"p":1,"n":"Particle Size X"},{"t":5,"p":1,"n":"Particle Size Y"},{"t":5,"p":1,"n":"Center Offset Min"},{"t":5,"p":1,"n":"Center Offset Max"},{"t":5,"p":1,"n":"Initial Rotation Range"},{"t":3,"p":1,"n":"# of Subtextures X"},{"t":3,"p":1,"n":"# of Subtextures Y"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Box Size"},{"t":5,"p":1,"n":"Particle Density"}]},{"t":2,"p":1,"n":"ICON - Particle Texture"}]},{"t":1,"p":1,"n":"STAT - Static","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Never Fades"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"p":1,"n":"Has Tree LOD"},{"t":4,"p":1,"n":"Add-On LOD Object"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Hidden From Local Map"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"n":"Unknown 12"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"n":"Unknown 16"},{"t":4,"p":1,"n":"Uses HD LOD Texture"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Has Currents"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"p":1,"n":"Is Marker"},{"t":4,"n":"Unknown 24"},{"t":4,"p":1,"n":"Obstacle"},{"t":4,"p":1,"n":"NavMesh Generation - Filter"},{"t":4,"p":1,"n":"NavMesh Generation - Bounding Box"},{"t":4,"p":1,"n":"Show In World Map"},{"t":4,"n":"Unknown 29"},{"t":4,"p":1,"n":"NavMesh Generation - Ground"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"DNAM - Direction Material","c":[{"t":5,"p":1,"n":"Max Angle (30-120)"},{"t":3,"p":1,"n":"Material"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Considered Snow"}]},{"t":11,"n":"Unused"}]},{"t":7,"p":1,"n":"MNAM - Distant LOD","c":[{"t":6,"p":1,"n":"Level 0","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 1","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 2","c":[{"t":2,"p":1,"n":"Mesh"}]},{"t":6,"p":1,"n":"Level 3","c":[{"t":2,"p":1,"n":"Mesh"}]}]}]},{"t":1,"p":1,"n":"TACT - Talking Activator","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Hidden From Local Map"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"p":1,"n":"Random Anim Start"},{"t":4,"p":1,"n":"Radio Station"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":11,"n":"PNAM - Unknown"},{"t":3,"p":1,"n":"SNAM - Looping Sound"},{"t":11,"n":"FNAM - Unknown"},{"t":3,"p":1,"n":"VNAM - Voice Type"}]},{"t":1,"p":1,"n":"TREE - Tree","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"p":1,"n":"Has Distant LOD"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","c":[{"t":6,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":3,"p":1,"n":"PFIG - Ingredient"},{"t":3,"p":1,"n":"SNAM - Harvest Sound"},{"t":6,"s":1,"p":1,"n":"PFPC - Ingredient Production","c":[{"t":3,"p":1,"n":"Spring"},{"t":3,"p":1,"n":"Summer"},{"t":3,"p":1,"n":"Fall"},{"t":3,"p":1,"n":"Winter"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"CNAM - Tree Data","c":[{"t":5,"p":1,"n":"Trunk Flexibility"},{"t":5,"p":1,"n":"Branch Flexibility"},{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Leaf Amplitude"},{"t":5,"p":1,"n":"Leaf Frequency"}]}]},{"t":1,"p":1,"n":"TXST - Texture Set","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":6,"s":1,"p":1,"n":"Textures (RGB\/A)","c":[{"t":2,"p":1,"n":"TX00 - Difuse"},{"t":2,"p":1,"n":"TX01 - Normal\/Gloss"},{"t":2,"p":1,"n":"TX02 - Environment Mask\/Subsurface Tint"},{"t":2,"p":1,"n":"TX03 - Glow\/Detail Map"},{"t":2,"p":1,"n":"TX04 - Height"},{"t":2,"p":1,"n":"TX05 - Environment"},{"t":2,"p":1,"n":"TX06 - Multilayer"},{"t":2,"p":1,"n":"TX07 - Backlight Mask\/Specular"}]},{"t":6,"s":1,"p":1,"n":"DODT - Decal Data","c":[{"t":5,"p":1,"n":"Min Width"},{"t":5,"p":1,"n":"Max Width"},{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Depth"},{"t":5,"p":1,"n":"Shininess"},{"t":6,"p":1,"n":"Parallax","c":[{"t":5,"p":1,"n":"Scale"},{"t":3,"p":1,"n":"Passes"}]},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Parallax"},{"t":4,"p":1,"n":"Alpha - Blending"},{"t":4,"p":1,"n":"Alpha - Testing"},{"t":4,"p":1,"n":"No Subtextures"}]},{"t":11,"n":"Unknown"},{"t":6,"p":1,"n":"Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"No Specular Map"},{"t":4,"p":1,"n":"Facegen Textures"},{"t":4,"p":1,"n":"Has Model Space Normal Map"}]}]},{"t":1,"p":1,"n":"VOLI - Volumetric Lighting","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":5,"p":1,"n":"CNAM - Intensity"},{"t":5,"p":1,"n":"DNAM - Custom Color - Contribution"},{"t":5,"p":1,"n":"ENAM - Red"},{"t":5,"p":1,"n":"FNAM - Green"},{"t":5,"p":1,"n":"GNAM - Blue"},{"t":5,"p":1,"n":"HNAM - Density - Contribution"},{"t":5,"p":1,"n":"INAM - Density - Size"},{"t":5,"p":1,"n":"JNAM - Density - Wind Speed"},{"t":5,"p":1,"n":"KNAM - Density - Falling Speed"},{"t":5,"p":1,"n":"LNAM - Phase Function - Contribution"},{"t":5,"p":1,"n":"MNAM - Phase Function - Scattering"},{"t":5,"p":1,"n":"NNAM - Sampling Repartition - Range Factor"}]},{"t":1,"p":1,"n":"VTYP - Voice Type","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":3,"p":1,"n":"DNAM - Flags","c":[{"t":4,"p":1,"n":"Allow Default Dialog"},{"t":4,"p":1,"n":"Female"}]}]},{"t":1,"p":1,"n":"WATR - Water","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":8,"n":"Unused","c":[{"t":2,"n":"NNAM - Noise Map"}]},{"t":3,"p":1,"n":"ANAM - Opacity"},{"t":3,"p":1,"n":"FNAM - Flags","d":1,"c":[{"t":4,"p":1,"n":"Causes Damage"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"p":1,"n":"Enable Flowmap"},{"t":4,"p":1,"n":"Blend Normals"},{"t":4,"n":"Unknown 5"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"}]},{"t":11,"n":"MNAM - Unused"},{"t":3,"p":1,"n":"TNAM - Material"},{"t":3,"p":1,"n":"SNAM - Open Sound"},{"t":3,"p":1,"n":"XNAM - Spell"},{"t":3,"p":1,"n":"INAM - Image Space"},{"t":3,"p":1,"n":"DATA - Unused"},{"t":6,"s":1,"p":1,"n":"DNAM - Visual Data","c":[{"t":5,"n":"Unknown"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Power"},{"t":5,"p":1,"n":"Water Properties - Reflectivity Amount"},{"t":5,"p":1,"n":"Water Properties - Fresnel Amount"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Distance - Far Plane"},{"t":6,"p":1,"n":"Shallow Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Deep Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Reflection Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Displacement Simulator - Starting Size"},{"t":5,"p":1,"n":"Displacement Simulator - Force"},{"t":5,"p":1,"n":"Displacement Simulator - Velocity"},{"t":5,"p":1,"n":"Displacement Simulator - Falloff"},{"t":5,"p":1,"n":"Displacement Simulator - Dampner"},{"t":5,"p":1,"n":"Noise Properties - Noise Falloff"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Direction"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Wind Speed"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Wind Speed"},{"t":5,"p":1,"n":"Fog Properties - Above Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Amount"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Near Plane"},{"t":5,"p":1,"n":"Fog Properties - Under Water - Fog Distance - Far Plane"},{"t":5,"p":1,"n":"Water Properties - Refraction Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Specular Power"},{"t":5,"p":1,"n":"Specular Properties - Specular Radius"},{"t":5,"p":1,"n":"Specular Properties - Specular Brightness"},{"t":5,"p":1,"n":"Noise Properties - Layer One - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - UV Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer One - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Two - Amplitude Scale"},{"t":5,"p":1,"n":"Noise Properties - Layer Three - Amplitude Scale"},{"t":5,"p":1,"n":"Water Properties - Reflection Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Magnitude"},{"t":5,"p":1,"n":"Specular Properties - Sun Specular Magnitude"},{"t":5,"p":1,"n":"Depth Properties - Reflections"},{"t":5,"p":1,"n":"Depth Properties - Refraction"},{"t":5,"p":1,"n":"Depth Properties - Normals"},{"t":5,"p":1,"n":"Depth Properties - Specular Lighting"},{"t":5,"p":1,"n":"Specular Properties - Sun Sparkle Power"},{"t":5,"p":1,"n":"Noise Properties - Flowmap Scale"}]},{"t":11,"n":"GNAM - Unused"},{"t":6,"s":1,"p":1,"n":"NAM0 - Linear Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":6,"s":1,"p":1,"n":"NAM1 - Angular Velocity","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"},{"t":5,"p":1,"n":"Z"}]},{"t":2,"p":1,"n":"NAM2 - Noise Layer One - Noise Texture"},{"t":2,"p":1,"n":"NAM3 - Noise Layer Two - Noise Texture"},{"t":2,"p":1,"n":"NAM4 - Noise Layer Three - Noise Texture"},{"t":2,"p":1,"n":"NAM5 - Flow Normals - Noise Texture"}]},{"t":1,"p":1,"n":"WEAP - Weapon","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"p":1,"n":"Non-Playable"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"p":1,"n":"VMAD - Virtual Machine Adapter","c":[{"t":3,"p":1,"n":"Version"},{"t":3,"p":1,"n":"Object Format"},{"t":7,"p":1,"n":"Scripts","d":1,"c":[{"t":6,"s":1,"p":1,"n":"Script","c":[{"t":2,"p":1,"n":"scriptName"},{"t":3,"p":1,"n":"Flags"},{"t":7,"p":1,"n":"Properties","c":[{"t":6,"p":1,"n":"Property","c":[{"t":2,"p":1,"n":"propertyName"},{"t":3,"p":1,"n":"Type"},{"t":3,"p":1,"n":"Flags"},{"t":11,"p":1,"n":"Unused"},{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]},{"t":2,"p":1,"n":"String"},{"t":3,"p":1,"n":"Int32"},{"t":5,"p":1,"n":"Float"},{"t":3,"p":1,"n":"Bool"},{"t":7,"p":1,"n":"Array of Object","c":[{"t":6,"p":1,"n":"Object v2","c":[{"t":3,"p":1,"n":"Unused"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"FormID"}]},{"t":6,"p":1,"n":"Object v1","c":[{"t":3,"p":1,"n":"FormID"},{"t":3,"p":1,"n":"Alias"},{"t":3,"p":1,"n":"Unused"}]}]},{"t":7,"p":1,"n":"Array of String","c":[{"t":2,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Int32","c":[{"t":3,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Float","c":[{"t":5,"p":1,"n":"Element"}]},{"t":7,"p":1,"n":"Array of Bool","c":[{"t":3,"p":1,"n":"Element"}]}]}]}]}]}]},{"t":6,"s":1,"p":1,"n":"OBND - Object Bounds","c":[{"t":3,"p":1,"n":"X1"},{"t":3,"p":1,"n":"Y1"},{"t":3,"p":1,"n":"Z1"},{"t":3,"p":1,"n":"X2"},{"t":3,"p":1,"n":"Y2"},{"t":3,"p":1,"n":"Z2"}]},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":6,"s":1,"p":1,"n":"Icon","c":[{"t":2,"p":1,"n":"ICON - Large Icon FileName"},{"t":2,"p":1,"n":"MICO - Small Icon FileName"}]},{"t":3,"p":1,"n":"EITM - Object Effect"},{"t":3,"p":1,"n":"EAMT - Enchantment Amount"},{"t":6,"s":1,"p":1,"n":"Destructible","c":[{"t":6,"p":1,"n":"DEST - Header","c":[{"t":3,"p":1,"n":"Health"},{"t":3,"p":1,"n":"DEST Count"},{"t":3,"p":1,"n":"VATS Targetable"},{"t":11,"n":"Unknown"}]},{"t":8,"p":1,"n":"Stages","c":[{"t":6,"p":1,"n":"Stage","c":[{"t":6,"p":1,"n":"DSTD - Destruction Stage Data","c":[{"t":3,"p":1,"n":"Health %"},{"t":3,"p":1,"n":"Index"},{"t":3,"p":1,"n":"Model Damage Stage"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Cap Damage"},{"t":4,"p":1,"n":"Disable"},{"t":4,"p":1,"n":"Destroy"},{"t":4,"p":1,"n":"Ignore External Dmg"}]},{"t":3,"p":1,"n":"Self Damage per Second"},{"t":3,"p":1,"n":"Explosion"},{"t":3,"p":1,"n":"Debris"},{"t":3,"p":1,"n":"Debris Count"}]},{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"DMDL - Model FileName"},{"t":11,"p":1,"n":"DMDT - Texture Files Hashes"},{"t":7,"p":1,"n":"DMDS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"p":1,"n":"DSTF - End Marker"}]}]}]},{"t":3,"p":1,"n":"ETYP - Equipment Type"},{"t":3,"p":1,"n":"BIDS - Block Bash Impact Data Set"},{"t":3,"p":1,"n":"BAMT - Alternate Block Material"},{"t":3,"p":1,"n":"YNAM - Sound - Pick Up"},{"t":3,"p":1,"n":"ZNAM - Sound - Put Down"},{"t":3,"n":"KSIZ - Keyword Count"},{"t":7,"p":1,"n":"KWDA - Keywords","d":1,"c":[{"t":3,"p":1,"n":"Keyword"}]},{"t":2,"p":1,"n":"DESC - Description"},{"t":6,"s":1,"p":1,"n":"Has Scope","c":[{"t":2,"p":1,"n":"MOD3 - Model FileName"},{"t":11,"p":1,"n":"MO3T - Texture Files Hashes"},{"t":7,"p":1,"n":"MO3S - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]},{"t":11,"n":"NNAM - Unused"},{"t":3,"p":1,"n":"INAM - Impact Data Set"},{"t":3,"p":1,"n":"WNAM - 1st Person Model Object"},{"t":3,"p":1,"n":"SNAM - Attack Sound"},{"t":3,"p":1,"n":"XNAM - Attack Sound 2D"},{"t":3,"p":1,"n":"NAM7 - Attack Loop Sound"},{"t":3,"p":1,"n":"TNAM - Attack Fail Sound"},{"t":3,"p":1,"n":"UNAM - Idle Sound"},{"t":3,"p":1,"n":"NAM9 - Equip Sound"},{"t":3,"p":1,"n":"NAM8 - Unequip Sound"},{"t":6,"s":1,"p":1,"n":"DATA - Game Data","c":[{"t":3,"p":1,"n":"Value"},{"t":5,"p":1,"n":"Weight"},{"t":3,"p":1,"n":"Damage"}]},{"t":6,"s":1,"p":1,"n":"DNAM - Data","c":[{"t":3,"p":1,"n":"Animation Type"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"Speed"},{"t":5,"p":1,"n":"Reach"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Ignores Normal Weapon Resistance"},{"t":4,"p":1,"n":"Automatic (unused)"},{"t":4,"p":1,"n":"Has Scope (unused)"},{"t":4,"p":1,"n":"Can't Drop"},{"t":4,"p":1,"n":"Hide Backpack (unused)"},{"t":4,"p":1,"n":"Embedded Weapon (unused)"},{"t":4,"p":1,"n":"Don't Use 1st Person IS Anim (unused)"},{"t":4,"p":1,"n":"Non-playable"}]},{"t":5,"p":1,"n":"Sight FOV"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Base VATS To-Hit Chance"},{"t":3,"p":1,"n":"Attack Animation"},{"t":3,"p":1,"n":"# Projectiles"},{"t":3,"p":1,"n":"Embedded Weapon AV (unused)"},{"t":5,"p":1,"n":"Range Min"},{"t":5,"p":1,"n":"Range Max"},{"t":3,"p":1,"n":"On Hit"},{"t":3,"p":1,"n":"Flags2","c":[{"t":4,"p":1,"n":"Player Only"},{"t":4,"p":1,"n":"NPCs Use Ammo"},{"t":4,"p":1,"n":"No Jam After Reload (unused)"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Minor Crime"},{"t":4,"p":1,"n":"Range Fixed"},{"t":4,"p":1,"n":"Not Used in Normal Combat"},{"t":4,"n":"Unknown 8"},{"t":4,"p":1,"n":"Don't Use 3rd Person IS Anim (unused)"},{"t":4,"p":1,"n":"Burst Shot"},{"t":4,"p":1,"n":"Rumble - Alternate"},{"t":4,"p":1,"n":"Long Bursts"},{"t":4,"p":1,"n":"Non-hostile"},{"t":4,"p":1,"n":"Bound Weapon"}]},{"t":5,"p":1,"n":"Animation Attack Mult"},{"t":5,"p":1,"n":"Rumble - Left Motor Strength"},{"t":5,"p":1,"n":"Rumble - Right Motor Strength"},{"t":5,"p":1,"n":"Rumble - Duration"},{"t":3,"p":1,"n":"Skill"},{"t":3,"p":1,"n":"Resist"},{"t":5,"p":1,"n":"Stagger"}]},{"t":6,"s":1,"p":1,"n":"CRDT - Critical Data","c":[{"t":3,"p":1,"n":"Damage"},{"t":11,"n":"Unused"},{"t":5,"p":1,"n":"% Mult"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"On Death"}]},{"t":3,"p":1,"n":"Effect"}]},{"t":3,"p":1,"n":"VNAM - Detection Sound Level"},{"t":3,"p":1,"n":"CNAM - Template"}]},{"t":1,"p":1,"n":"WOOP - Word of Power","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"FULL - Name"},{"t":2,"p":1,"n":"TNAM - Translation"}]},{"t":1,"p":1,"n":"WRLD - Worldspace","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"p":1,"n":"Can't Wait"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":8,"s":1,"p":1,"n":"Large References","d":1,"c":[{"t":6,"p":1,"n":"RNAM - Grid","c":[{"t":3,"p":1,"n":"Y"},{"t":3,"p":1,"n":"X"},{"t":7,"p":1,"n":"References","c":[{"t":6,"n":"Reference","c":[{"t":3,"n":"Ref"},{"t":3,"n":"Y"},{"t":3,"n":"X"}]}]}]}]},{"t":11,"n":"MHDT - Max Height Data"},{"t":2,"p":1,"n":"FULL - Name"},{"t":6,"s":1,"p":1,"n":"WCTR - Fixed Dimensions Center Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":3,"p":1,"n":"LTMP - Interior Lighting"},{"t":3,"p":1,"n":"XEZN - Encounter Zone"},{"t":3,"p":1,"n":"XLCN - Location"},{"t":6,"s":1,"p":1,"n":"Parent","c":[{"t":3,"p":1,"n":"WNAM - Worldspace"},{"t":6,"p":1,"n":"PNAM - PNAM","c":[{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Use Land Data"},{"t":4,"p":1,"n":"Use LOD Data"},{"t":4,"p":1,"n":"Use Map Data"},{"t":4,"p":1,"n":"Use Water Data"},{"t":4,"p":1,"n":"Use Climate Data"},{"t":4,"p":1,"n":"Use Image Space Data (unused)"},{"t":4,"p":1,"n":"Use Sky Cell"}]},{"t":11,"n":"Unknown"}]}]},{"t":3,"p":1,"n":"CNAM - Climate"},{"t":3,"p":1,"n":"NAM2 - Water"},{"t":3,"p":1,"n":"NAM3 - LOD Water Type"},{"t":5,"p":1,"n":"NAM4 - LOD Water Height"},{"t":6,"s":1,"p":1,"n":"DNAM - Land Data","c":[{"t":5,"p":1,"n":"Default Land Height"},{"t":5,"p":1,"n":"Default Water Height"}]},{"t":2,"p":1,"n":"ICON - Map Image"},{"t":6,"s":1,"p":1,"n":"Cloud Model","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":6,"s":1,"p":1,"n":"MNAM - Map Data","c":[{"t":6,"p":1,"n":"Usable Dimensions","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"Cell Coordinates","c":[{"t":6,"p":1,"n":"NW Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"SE Cell","c":[{"t":3,"p":1,"n":"X"},{"t":3,"p":1,"n":"Y"}]}]},{"t":6,"p":1,"n":"Camera Data","c":[{"t":5,"p":1,"n":"Min Height"},{"t":5,"p":1,"n":"Max Height"},{"t":5,"p":1,"n":"Initial Pitch"}]}]},{"t":6,"s":1,"p":1,"n":"ONAM - World Map Offset Data","c":[{"t":5,"p":1,"n":"World Map Scale"},{"t":5,"p":1,"n":"Cell X Offset"},{"t":5,"p":1,"n":"Cell Y Offset"},{"t":5,"p":1,"n":"Cell Z Offset"}]},{"t":5,"p":1,"n":"NAMA - Distant LOD Multiplier"},{"t":3,"p":1,"n":"DATA - Flags","d":1,"c":[{"t":4,"p":1,"n":"Small World"},{"t":4,"p":1,"n":"Can't Fast Travel"},{"t":4,"n":"Unknown 3"},{"t":4,"p":1,"n":"No LOD Water"},{"t":4,"p":1,"n":"No Landscape"},{"t":4,"p":1,"n":"No Sky"},{"t":4,"p":1,"n":"Fixed Dimensions"},{"t":4,"p":1,"n":"No Grass"}]},{"t":6,"s":1,"p":1,"n":"Object Bounds","c":[{"t":6,"p":1,"n":"NAM0 - Min","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]},{"t":6,"p":1,"n":"NAM9 - Max","c":[{"t":5,"p":1,"n":"X"},{"t":5,"p":1,"n":"Y"}]}]},{"t":3,"p":1,"n":"ZNAM - Music"},{"t":2,"p":1,"n":"NNAM - Canopy Shadow (unused)"},{"t":2,"p":1,"n":"XNAM - Water Noise Texture"},{"t":2,"p":1,"n":"TNAM - HD LOD Diffuse Texture"},{"t":2,"p":1,"n":"UNAM - HD LOD Normal Texture"},{"t":2,"p":1,"n":"XWEM - Water Environment Map (unused)"},{"t":11,"n":"OFST - Offset Data"}]},{"t":1,"p":1,"n":"WTHR - Weather","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":2,"p":1,"n":"00TX - Cloud Texture Layer #0"},{"t":2,"p":1,"n":"10TX - Cloud Texture Layer #1"},{"t":2,"p":1,"n":"20TX - Cloud Texture Layer #2"},{"t":2,"p":1,"n":"30TX - Cloud Texture Layer #3"},{"t":2,"p":1,"n":"40TX - Cloud Texture Layer #4"},{"t":2,"p":1,"n":"50TX - Cloud Texture Layer #5"},{"t":2,"p":1,"n":"60TX - Cloud Texture Layer #6"},{"t":2,"p":1,"n":"70TX - Cloud Texture Layer #7"},{"t":2,"p":1,"n":"80TX - Cloud Texture Layer #8"},{"t":2,"p":1,"n":"90TX - Cloud Texture Layer #9"},{"t":2,"p":1,"n":":0TX - Cloud Texture Layer #10"},{"t":2,"p":1,"n":";0TX - Cloud Texture Layer #11"},{"t":2,"p":1,"n":"<0TX - Cloud Texture Layer #12"},{"t":2,"p":1,"n":"=0TX - Cloud Texture Layer #13"},{"t":2,"p":1,"n":">0TX - Cloud Texture Layer #14"},{"t":2,"p":1,"n":"?0TX - Cloud Texture Layer #15"},{"t":2,"p":1,"n":"@0TX - Cloud Texture Layer #16"},{"t":2,"p":1,"n":"A0TX - Cloud Texture Layer #17"},{"t":2,"p":1,"n":"B0TX - Cloud Texture Layer #18"},{"t":2,"p":1,"n":"C0TX - Cloud Texture Layer #19"},{"t":2,"p":1,"n":"D0TX - Cloud Texture Layer #20"},{"t":2,"p":1,"n":"E0TX - Cloud Texture Layer #21"},{"t":2,"p":1,"n":"F0TX - Cloud Texture Layer #22"},{"t":2,"p":1,"n":"G0TX - Cloud Texture Layer #23"},{"t":2,"p":1,"n":"H0TX - Cloud Texture Layer #24"},{"t":2,"p":1,"n":"I0TX - Cloud Texture Layer #25"},{"t":2,"p":1,"n":"J0TX - Cloud Texture Layer #26"},{"t":2,"p":1,"n":"K0TX - Cloud Texture Layer #27"},{"t":2,"p":1,"n":"L0TX - Cloud Texture Layer #28"},{"t":11,"n":"DNAM - Unused"},{"t":11,"n":"CNAM - Unused"},{"t":11,"n":"ANAM - Unused"},{"t":11,"n":"BNAM - Unused"},{"t":11,"n":"LNAM - Unknown"},{"t":3,"p":1,"n":"MNAM - Precipitation Type"},{"t":3,"p":1,"n":"NNAM - Visual Effect"},{"t":11,"n":"ONAM - Unused"},{"t":6,"s":1,"p":1,"n":"Cloud Speed","c":[{"t":7,"p":1,"n":"RNAM - Y Speed","c":[{"t":3,"p":1,"n":"Layer"}]},{"t":7,"p":1,"n":"QNAM - X Speed","c":[{"t":3,"p":1,"n":"Layer"}]}]},{"t":7,"s":1,"p":1,"n":"PNAM - Cloud Colors","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":7,"s":1,"p":1,"n":"JNAM - Cloud Alphas","c":[{"t":6,"p":1,"n":"Layer","c":[{"t":5,"p":1,"n":"Sunrise"},{"t":5,"p":1,"n":"Day"},{"t":5,"p":1,"n":"Sunset"},{"t":5,"p":1,"n":"Night"}]}]},{"t":6,"s":1,"p":1,"n":"NAM0 - Weather Colors","c":[{"t":6,"p":1,"n":"Sky-Upper","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Near","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"n":"Unknown","c":[{"t":6,"n":"Sunrise","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Day","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Sunset","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"n":"Night","c":[{"t":3,"n":"Red"},{"t":3,"n":"Green"},{"t":3,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sunlight","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Stars","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky-Lower","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Horizon","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Effect Lighting","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Diffuse","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Cloud LOD Ambient","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Fog Far","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sky Statics","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Water Multiplier","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Sun Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Moon Glare","c":[{"t":6,"p":1,"n":"Sunrise","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Day","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Sunset","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Night","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]}]},{"t":6,"s":1,"p":1,"n":"FNAM - Fog Distance","c":[{"t":5,"p":1,"n":"Day - Near"},{"t":5,"p":1,"n":"Day - Far"},{"t":5,"p":1,"n":"Night - Near"},{"t":5,"p":1,"n":"Night - Far"},{"t":5,"p":1,"n":"Day - Power"},{"t":5,"p":1,"n":"Night - Power"},{"t":5,"p":1,"n":"Day - Max"},{"t":5,"p":1,"n":"Night - Max"}]},{"t":6,"s":1,"p":1,"n":"DATA - Data","c":[{"t":3,"p":1,"n":"Wind Speed"},{"t":11,"n":"Unknown"},{"t":3,"p":1,"n":"Trans Delta"},{"t":3,"p":1,"n":"Sun Glare"},{"t":3,"p":1,"n":"Sun Damage"},{"t":3,"p":1,"n":"Precipitation - Begin Fade In"},{"t":3,"p":1,"n":"Precipitation - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Begin Fade In"},{"t":3,"p":1,"n":"Thunder\/Lightning - End Fade Out"},{"t":3,"p":1,"n":"Thunder\/Lightning - Frequency"},{"t":3,"p":1,"n":"Flags","c":[{"t":4,"p":1,"n":"Weather - Pleasant"},{"t":4,"p":1,"n":"Weather - Cloudy"},{"t":4,"p":1,"n":"Weather - Rainy"},{"t":4,"p":1,"n":"Weather - Snow"},{"t":4,"p":1,"n":"Sky Statics - Always Visible"},{"t":4,"p":1,"n":"Sky Statics - Follows Sun Position"}]},{"t":6,"p":1,"n":"Lightning Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"}]},{"t":3,"p":1,"n":"Visual Effect - Begin"},{"t":3,"p":1,"n":"Visual Effect - End"},{"t":3,"p":1,"n":"Wind Direction"},{"t":3,"p":1,"n":"Wind Direction Range"}]},{"t":3,"p":1,"n":"NAM1 - Disabled Cloud Layers","d":1,"c":[{"t":4,"p":1,"n":"0"},{"t":4,"p":1,"n":"1"},{"t":4,"p":1,"n":"2"},{"t":4,"p":1,"n":"3"},{"t":4,"p":1,"n":"4"},{"t":4,"p":1,"n":"5"},{"t":4,"p":1,"n":"6"},{"t":4,"p":1,"n":"7"},{"t":4,"p":1,"n":"8"},{"t":4,"p":1,"n":"9"},{"t":4,"p":1,"n":"10"},{"t":4,"p":1,"n":"11"},{"t":4,"p":1,"n":"12"},{"t":4,"p":1,"n":"13"},{"t":4,"p":1,"n":"14"},{"t":4,"p":1,"n":"15"},{"t":4,"p":1,"n":"16"},{"t":4,"p":1,"n":"17"},{"t":4,"p":1,"n":"18"},{"t":4,"p":1,"n":"19"},{"t":4,"p":1,"n":"20"},{"t":4,"p":1,"n":"21"},{"t":4,"p":1,"n":"22"},{"t":4,"p":1,"n":"23"},{"t":4,"p":1,"n":"24"},{"t":4,"p":1,"n":"25"},{"t":4,"p":1,"n":"26"},{"t":4,"p":1,"n":"27"},{"t":4,"p":1,"n":"28"},{"t":4,"p":1,"n":"29"},{"t":4,"p":1,"n":"30"},{"t":4,"p":1,"n":"31"}]},{"t":8,"s":1,"p":1,"n":"Sounds","d":1,"c":[{"t":6,"p":1,"n":"SNAM - Sound","c":[{"t":3,"p":1,"n":"Sound"},{"t":3,"p":1,"n":"Type"}]}]},{"t":8,"s":1,"p":1,"n":"Sky Statics","d":1,"c":[{"t":3,"p":1,"n":"TNAM - Static"}]},{"t":6,"s":1,"p":1,"n":"IMSP - Image Spaces","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"HNAM - Volumetric Lighting","c":[{"t":3,"p":1,"n":"Sunrise"},{"t":3,"p":1,"n":"Day"},{"t":3,"p":1,"n":"Sunset"},{"t":3,"p":1,"n":"Night"}]},{"t":6,"s":1,"p":1,"n":"Directional Ambient Lighting Colors","c":[{"t":6,"p":1,"n":"DALC - Sunrise","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Day","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Sunset","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]},{"t":6,"p":1,"n":"DALC - Night","c":[{"t":6,"p":1,"n":"Directional","c":[{"t":6,"p":1,"n":"X+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"X-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Y-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z+","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":6,"p":1,"n":"Z-","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]}]},{"t":6,"p":1,"n":"Specular","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unused"}]},{"t":5,"p":1,"n":"Scale"}]}]},{"t":11,"n":"NAM2 - Unused"},{"t":11,"n":"NAM3 - Unused"},{"t":6,"s":1,"p":1,"n":"Aurora","c":[{"t":6,"p":1,"n":"Model","c":[{"t":2,"p":1,"n":"MODL - Model FileName"},{"t":11,"p":1,"n":"MODT - Texture Files Hashes"},{"t":7,"p":1,"n":"MODS - Alternate Textures","c":[{"t":6,"p":1,"n":"Alternate Texture","c":[{"t":2,"p":1,"n":"3D Name"},{"t":3,"p":1,"n":"New Texture"},{"t":3,"p":1,"n":"3D Index"}]}]}]}]},{"t":3,"p":1,"n":"GNAM - Sun Glare Lens Flare"}]},{"t":1,"p":1,"n":"AACT - Action","d":1,"c":[{"t":6,"p":1,"n":"Record Header","c":[{"t":2,"n":"Signature"},{"t":3,"n":"Data Size"},{"t":3,"p":1,"n":"Record Flags","d":1,"c":[{"t":4,"n":"Unknown 0"},{"t":4,"n":"Unknown 1"},{"t":4,"n":"Unknown 2"},{"t":4,"n":"Unknown 3"},{"t":4,"n":"Unknown 4"},{"t":4,"p":1,"n":"Deleted"},{"t":4,"n":"Unknown 6"},{"t":4,"n":"Unknown 7"},{"t":4,"n":"Unknown 8"},{"t":4,"n":"Unknown 9"},{"t":4,"n":"Unknown 10"},{"t":4,"n":"Unknown 11"},{"t":4,"p":1,"n":"Ignored"},{"t":4,"n":"Unknown 13"},{"t":4,"n":"Unknown 14"},{"t":4,"n":"Unknown 15"},{"t":4,"n":"Unknown 16"},{"t":4,"n":"Unknown 17"},{"t":4,"n":"Unknown 18"},{"t":4,"n":"Unknown 19"},{"t":4,"n":"Unknown 20"},{"t":4,"n":"Unknown 21"},{"t":4,"n":"Unknown 22"},{"t":4,"n":"Unknown 23"},{"t":4,"n":"Unknown 24"},{"t":4,"n":"Unknown 25"},{"t":4,"n":"Unknown 26"},{"t":4,"n":"Unknown 27"},{"t":4,"n":"Unknown 28"},{"t":4,"n":"Unknown 29"},{"t":4,"n":"Unknown 30"},{"t":4,"n":"Unknown 31"}]},{"t":3,"n":"FormID"},{"t":11,"n":"Version Control Info 1"},{"t":3,"n":"Form Version"},{"t":11,"n":"Version Control Info 2"}]},{"t":2,"p":1,"n":"EDID - Editor ID"},{"t":6,"s":1,"p":1,"n":"CNAM - Color","c":[{"t":3,"p":1,"n":"Red"},{"t":3,"p":1,"n":"Green"},{"t":3,"p":1,"n":"Blue"},{"t":11,"n":"Unknown"}]}]}]},"name":"Smash.All","hash":"011B7A28","color":128} \ No newline at end of file From 0fa3e9c23bdf7297ebc06cea8509febec580a811 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Mon, 6 Sep 2021 21:56:35 -0400 Subject: [PATCH 73/76] Fix load ordering for "ghost"ed files --- frontend/msLoader.pas | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/frontend/msLoader.pas b/frontend/msLoader.pas index d2bc5dc..fe0414d 100755 --- a/frontend/msLoader.pas +++ b/frontend/msLoader.pas @@ -366,7 +366,10 @@ procedure RemoveMissingFiles(var sl: TStringList); begin for i := Pred(sl.Count) downto 0 do if not FileExists(wbDataPath + sl.Strings[i]) then - sl.Delete(i); + if FileExists(wbDataPath + sl.Strings[i] + csDotGhost) then + sl.Strings[i] := sl.Strings[i] + csDotGhost + else + sl.Delete(i); end; { Remove smashed patch plugins from stringlist } From 1a3f0cd14c06b74d4f39c386d64cc5b1d14f3017 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 12 Sep 2021 19:44:33 -0400 Subject: [PATCH 74/76] Most fixes for ghosted files --- frontend/msConflict.pas | 3 + frontend/msSmash.pas | 175 ++++++++++++---------------------------- 2 files changed, 55 insertions(+), 123 deletions(-) diff --git a/frontend/msConflict.pas b/frontend/msConflict.pas index 957fa79..49a8c6a 100755 --- a/frontend/msConflict.pas +++ b/frontend/msConflict.pas @@ -993,6 +993,9 @@ function IsITPO(rec: IwbMainRecord): Boolean; for i := 0 to Pred(mRec.OverrideCount) do begin ovr := mRec.Overrides[i]; + if ovr._File.FileName.EndsWith(csDotGhost) then + // Skip ghosted overrides + continue; if ovr.Equals(rec) then Break; prevOvr := ovr; diff --git a/frontend/msSmash.pas b/frontend/msSmash.pas index 233d518..186060b 100755 --- a/frontend/msSmash.pas +++ b/frontend/msSmash.pas @@ -1,7 +1,5 @@ unit msSmash; - interface - uses Windows, SysUtils, Classes, ShellAPI, Controls, Dialogs, Generics.Collections, // superobject @@ -12,12 +10,9 @@ interface msCore, msConfiguration, msConflict, msAlgorithm, // xEdit units wbInterface, wbImplementation; - procedure BuildPatch(var patch: TPatch); procedure RebuildPatch(var patch: TPatch); - implementation - procedure BuildPluginsList(var patch: TPatch; var lst: TList); var i: Integer; @@ -31,7 +26,6 @@ procedure BuildPluginsList(var patch: TPatch; var lst: TList); lst.Add(plugin); end; end; - procedure SetPatchAttributes(var patch: TPatch); var patchFile: IwbFile; @@ -48,7 +42,6 @@ procedure SetPatchAttributes(var patch: TPatch); // set ESL flag fileHeader.IsESL := settings.flagESL; end; - function GetPatchFile(var patch: TPatch; var lst: TList): IwbFile; var plugin: TPlugin; @@ -70,11 +63,9 @@ function GetPatchFile(var patch: TPatch; var lst: TList): IwbFile; bUsedExistingFile := false; patch.plugin := CreateNewPlugin(patch.filename); end; - // don't patch if patchFile not assigned if not Assigned(patch.plugin) then raise Exception.Create('Couldn''t assign patch file'); - // don't patch if patchFile is at an invalid load order position relative // to the plugins being patched if bUsedExistingFile then @@ -87,19 +78,16 @@ function GetPatchFile(var patch: TPatch; var lst: TList): IwbFile; (Format('%s is at a lower load order position than %s', [plugin.filename, patch.filename])); end; - // clean up the patch file patchFile := patch.plugin._File; for i := Pred(patchFile.RecordCount) downto 0 do patchFile.Records[i].Remove; end; - // set result Result := patch.plugin._File; Tracker.Write(' '); Tracker.Write('Patch is using plugin: ' + patch.plugin.filename); end; - function CompareLoadOrder(List: TStringList; Index1, Index2: Integer): Integer; begin if Index1 = Index2 then @@ -107,11 +95,9 @@ function CompareLoadOrder(List: TStringList; Index1, Index2: Integer): Integer; Result := 0; Exit; end; - Result := CmpI32(IwbFile(Pointer(List.Objects[Index1])).LoadOrder, IwbFile(Pointer(List.Objects[Index2])).LoadOrder); end; - procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); var slMasters: TStringList; @@ -126,13 +112,11 @@ procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); if settings.debugMasters then Tracker.Write(' Element ' + el.Name + ' from ' + el._File.filename + ' requires masters: ' + slMasters.CommaText); - for i := 0 to Pred(aFile.MasterCount[true]) do if slMasters.Find(aFile.Masters[i, true].filename, j) then slMasters.Delete(j); if slMasters.Find(aFile.filename, j) then slMasters.Delete(j); - if slMasters.Count > 0 then begin for i := 0 to Pred(slMasters.Count) do @@ -141,13 +125,10 @@ procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); raise Exception.Create('The required master "' + slMasters[i] + '" can not be added to "' + aFile.filename + '" as it has a higher load order'); - slMasters.Sorted := false; slMasters.CustomSort(CompareLoadOrder); - if (aFile.MasterCount[true] + slMasters.Count >= 253) then aFile.CleanMasters; - aFile.AddMasters(slMasters); Logger.Write('PATCH', 'MASTERS', 'Added masters: ' + slMasters.CommaText); @@ -168,7 +149,6 @@ procedure AddRequiredMasters(var aFile: IwbFile; const el: IwbElement); raise Exception.Create('User cancelled smashing.'); end; end; - procedure ListParents(const rec: IwbMainRecord; var parents: TInterfaceList); var grup: IwbGroupRecord; @@ -183,7 +163,6 @@ procedure ListParents(const rec: IwbMainRecord; var parents: TInterfaceList); end end; end; - procedure AddParents(var patchFile: IwbFile; const rec: IwbElement); var grup: IwbGroupRecord; @@ -203,7 +182,6 @@ procedure AddParents(var patchFile: IwbFile; const rec: IwbElement); end end; end; - procedure BuildOverridesList(var patch: TPatch; var lst: TList; var Records: TInterfaceList); var @@ -211,7 +189,7 @@ procedure BuildOverridesList(var patch: TPatch; var lst: TList; plugin: TPlugin; aSetting: TSmashSetting; aFile: IwbFile; - rec: IwbMainRecord; + rec, ovr: IwbMainRecord; recObj: ISuperObject; begin Tracker.Write(' '); @@ -221,61 +199,70 @@ procedure BuildOverridesList(var patch: TPatch; var lst: TList; if Tracker.Cancel then break; plugin := TPlugin(lst[i]); - // get file and setting for later use aFile := plugin._File; aSetting := plugin.smashSetting; - + Tracker.Write('Processing ' + aFile.Name); // loop through file records - Tracker.Write('Processing ' + plugin._File.Name); recCount := Pred(aFile.RecordCount); - for j := 0 to recCount do - begin - if Tracker.Cancel then - break; - rec := aFile.Records[j]; - if j mod 500 = 499 then - Tracker.UpdateProgress(500); - - try - // skip non-override records - if rec.IsMaster then - continue; - rec := rec.Master; - - if OverrideCountInFiles(rec, patch.plugins) < 2 then - continue; - - // skip records according to smash setting - recObj := aSetting.GetRecordDef(rec.Signature); - if not Assigned(recObj) then - continue; - if (recObj.i['p'] <> 1) then - continue; - // skip non-conflicting records - if ConflictAllForMainRecord(rec) < caConflict then - continue; - + if aFile.Name.EndsWith(csDotGhost) then begin + for j := 0 to recCount do begin + rec := aFile.Records[j]; // add parent record(s) to list first so they get smashed first? ListParents(rec, Records); - + rec := rec.Master; // add record to overrides list if Records.IndexOf(rec) = -1 then Records.Add(rec); - except - on x: Exception do - begin - Tracker.Write(' Error processing ' + rec.Name + ', ' + x.Message); - continue; + end; + // update progress bar for file + Tracker.UpdateProgress(recCount); + end + else begin + for j := 0 to recCount do + begin + if Tracker.Cancel then + break; + rec := aFile.Records[j]; + ovr := rec; + if j mod 500 = 499 then + Tracker.UpdateProgress(500); + try + // skip non-override records + if rec.IsMaster then + continue; + rec := rec.Master; + { + if (OverrideCountInFiles(rec, patch.plugins) < 2) then + continue; + } + // skip records according to smash setting + recObj := aSetting.GetRecordDef(rec.Signature); + if not Assigned(recObj) then + continue; + if (recObj.i['p'] <> 1) then + continue; + // skip non-conflicting records + if ConflictAllForMainRecord(rec) < caConflict then + continue; + // add parent record(s) to list first so they get smashed first? + ListParents(ovr, Records); + // add record to overrides list + if Records.IndexOf(rec) = -1 then + Records.Add(rec); + except + on x: Exception do + begin + Tracker.Write(' Error processing ' + rec.Name + ', ' + x.Message); + continue; + end; end; end; + // update progress bar for file + Tracker.UpdateProgress(recCount mod 500); end; - - // update progress bar for file - Tracker.UpdateProgress(recCount mod 500); end; end; - procedure UpdateCounts(var rec: IwbMainRecord); var Container, arrayContainer: IwbContainerElementRef; @@ -285,11 +272,9 @@ procedure UpdateCounts(var rec: IwbMainRecord); // if reocrd is not editable, exit if not rec.IsEditable then Exit; - // if record can't be treated as a container, exit if not Supports(rec, IwbContainerElementRef, Container) then Exit; - // loop through top-level elements for i := 0 to Container.ElementCount - 2 do begin @@ -297,7 +282,6 @@ procedure UpdateCounts(var rec: IwbMainRecord); nextElement := Container.Elements[i + 1]; if not Supports(nextElement, IwbContainerElementRef, arrayContainer) then continue; - // if next element is an array element and current element has the // word count in its name update the count to be the number of elements // in the array @@ -312,13 +296,11 @@ procedure UpdateCounts(var rec: IwbMainRecord); end; end; end; - function HasPartialFormFlag(rec: IwbMainRecord): boolean; begin Result := ((rec.Signature = 'QUST') or (rec.Signature = 'LCTN')) and (rec.Flags._Flags and $00004000 <> 0); end; - procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); var i, j, k, ndx: Integer; @@ -336,7 +318,6 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); Tracker.Write(' '); Tracker.Write('Smashing records'); patchFile := patch.plugin._File; - // loop through records to smash currentProgress := Tracker.GetProgress; incProgress := (Tracker.GetMaxProgress - Tracker.GetProgress) / Records.Count; @@ -350,7 +331,6 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); [i + 1, Records.Count])); currentProgress := currentProgress + incProgress; Tracker.SetProgress(Round(currentProgress)); - // loop through record's overrides to find which ones to smash ovrs := TStringList.Create; try @@ -364,11 +344,9 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); plugin := PluginByFileName(f.filename); if not Assigned(plugin) then continue; - // skip plugins that have the skip setting if plugin.setting = 'Skip' then continue; - // skip overrides according to smash setting aSetting := plugin.smashSetting; recObj := aSetting.GetRecordDef(ovr.Signature); @@ -376,7 +354,6 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); continue; if (recObj.i['p'] <> 1) then continue; - // this is an override to smash ovrs.AddObject(f.Name, Pointer(ovr)); // don't bother to smash this override's masters? @@ -384,12 +361,13 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); if ovrs.Find(f.Masters[k,false].Name, ndx) then ovrs.Delete(ndx); end; - // If only one override to smash just copy it in if ovrs.Count = 1 then begin ovr := IwbMainRecord(Pointer(ovrs.Objects[0])); + { if ovr.IsWinningOverride then continue; + } try // be sure we include the parent? AddParents(patchFile, ovr); @@ -408,7 +386,6 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); end; continue; end; - // loop through overrides to smash patchRec := nil; forceFile := nil; @@ -418,7 +395,6 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); break; ovr := IwbMainRecord(Pointer(ovrs.Objects[j])); f := ovr._File; - bForce := recObj.i['f'] = 1; if bForce then begin @@ -429,7 +405,6 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); end; forceFile := f; end; - // copy record to smashed patch if it hasn't been copied yet if not Assigned(patchRec) then try @@ -456,12 +431,10 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); continue; end; end; - // skip if we're forcing and plugin doesn't require forceFile if Assigned(forceFile) and not bForce and (plugin.Masters.IndexOf(forceFile.filename) = -1) then continue; - // finally, recursively copy overridden elements try bDeletions := recObj.i['d'] = 1; @@ -494,7 +467,6 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); x.Message); end; end; - // update any count elements on the record UpdateCounts(patchRec); end; @@ -503,12 +475,10 @@ procedure SmashRecords(var patch: TPatch; var Records: TInterfaceList); end; end; end; - function IsChildGroup(group: IwbGroupRecord): boolean; begin Result := group.GroupType in [1, 6, 7]; end; - function NativeContainer(element: IwbElement): IwbContainer; var group: IwbGroupRecord; @@ -520,7 +490,6 @@ function NativeContainer(element: IwbElement): IwbContainer; if not Assigned(Result) then raise Exception.Create('Could not find container for ' + element.Name); end; - procedure RemoveEmptyContainers(aContainer: IwbContainer); var Container, nextContainer: IwbContainer; @@ -534,19 +503,16 @@ procedure RemoveEmptyContainers(aContainer: IwbContainer); // break if container still has elements in it if Container.ElementCount > 0 then Exit; - // else remove it and traverse up to next container nextContainer := NativeContainer(Container); Container.Remove; Container := nextContainer; end; - // exit if record is not ITM or ITPO bITM := IsITM(rec); bITPO := IsITPO(rec); if not(bITM or bITPO) then Exit; - // else remove MainRecord and recurse if bITM then Tracker.Write(' Removing ITM: ' + rec.Name) @@ -556,25 +522,20 @@ procedure RemoveEmptyContainers(aContainer: IwbContainer); rec.Remove; RemoveEmptyContainers(nextContainer); end; - function FindITPO(e: IwbMainRecord): boolean; begin // skip master records if e.IsMaster then Exit(false); - // skip records that have elements in child group (WRLD, CELL, DIAL) if Assigned(e.ChildGroup) and (e.ChildGroup.ElementCount > 0) then Exit(false); - // remove record if no conflicts if not IsITPO(e) then Exit(false); - Result := true; Tracker.Write(' Removing ITPO: ' + e.Name); end; - type TITPOThread = class(TThread) private @@ -584,13 +545,11 @@ TITPOThread = class(TThread) constructor Create(const e: IwbMainRecord); property ReturnValue; end; - constructor TITPOThread.Create; begin inherited Create(false); Fe := e; end; - procedure TITPOThread.Execute; begin if FindITPO(Fe) then @@ -598,7 +557,6 @@ procedure TITPOThread.Execute; else ReturnValue := 0; end; - procedure RemoveITPOs(aFile: IwbFile); var i, CountITPO: Integer; @@ -611,27 +569,22 @@ procedure RemoveITPOs(aFile: IwbFile); Tracker.Write(' '); Tracker.Write('Removing ITPO records from patch'); CountITPO := 0; - if settings.multiThreadedSmash then begin SetLength(ThreadRefs, aFile.RecordCount); SetLength(ThreadHandles, aFile.RecordCount); - // loop through file's records for i := Pred(aFile.RecordCount) downto 0 do begin if Tracker.Cancel then break; e := aFile.Records[i]; - ThreadRefs[i] := TITPOThread.Create(e); ThreadHandles[i] := ThreadRefs[i].Handle; end; - // Wait for Threads WaitForMultipleObjects(Length(ThreadRefs), Pointer(ThreadHandles), true, INFINITE); - // loop through threads and get results for i := Pred(Length(ThreadRefs)) downto 0 do begin @@ -651,7 +604,6 @@ procedure RemoveITPOs(aFile: IwbFile); for i := Pred(aFile.RecordCount) downto 0 do begin e := aFile.Records[i]; - if FindITPO(e) then begin // add ITPO to list of records to remove @@ -661,7 +613,6 @@ procedure RemoveITPOs(aFile: IwbFile); end; end; end; - // remove the records for i := Pred(Length(ITPOs)) downto 0 do begin @@ -676,17 +627,14 @@ procedure RemoveITPOs(aFile: IwbFile); x.Message); end; end; - // finalization message Tracker.Write(Format(' Removed %d ITPO records', [CountITPO])); end; - procedure CleanPatch(var patch: TPatch); var patchFile: IwbFile; begin patchFile := patch.plugin._File; - try // remove ITPOs if not settings.preserveITPOs then @@ -697,11 +645,9 @@ procedure CleanPatch(var patch: TPatch); on x: Exception do Tracker.Write(' Exception removing ITPOs: ' + x.Message); end; - Tracker.Write('Sorting patch masters according to current load order'); patchFile.SortMasters; end; - procedure SavePatchFiles(var patch: TPatch); var patchFilePrefix, patchPath: string; @@ -709,21 +655,17 @@ procedure SavePatchFiles(var patch: TPatch); // update patch plugin hashes and settings patch.UpdateHashes; patch.UpdateSettings; - // get path to save file at patchPath := patch.dataPath + 'smash\'; ForceDirectories(patchPath); - // save patch plugin patch.plugin.dataPath := patch.dataPath; patch.plugin.Save; - // save files, fails, plugins patchFilePrefix := patchPath + ChangeFileExt(patch.filename, ''); patch.fails.SaveToFile(patchFilePrefix + '_fails.txt'); patch.plugins.SaveToFile(patchFilePrefix + '_plugins.txt'); end; - procedure BuildPatch(var patch: TPatch); var patchFile: IwbFile; @@ -738,44 +680,34 @@ procedure BuildPatch(var patch: TPatch); patch.fails.Clear; pluginsToPatch := TList.Create; msg := 'User cancelled smashing patches.'; - try // build list of plugins to patch BuildPluginsList(patch, pluginsToPatch); HandleCanceled(msg); - // identify or create patch file patchFile := GetPatchFile(patch, pluginsToPatch); SetPatchAttributes(patch); - // add masters to patch file // AddRequiredMasters(patch, pluginsToPatch); // HandleCanceled(msg); - // build list of overrides recordsList := TInterfaceList.Create; BuildOverridesList(patch, pluginsToPatch, recordsList); HandleCanceled(msg); - // stop smashing if no records to smash if recordsList.Count = 0 then raise Exception.Create('No records to patch!'); - // smash records SmashRecords(patch, recordsList); HandleCanceled(msg); - // clean patch (ITPOs) CleanPatch(patch); - // save patch and associated files SavePatchFiles(patch); - // update statistics if patch.status = psBuildReady then Inc(sessionStatistics.pluginsPatched, patch.plugins.Count); Inc(sessionStatistics.patchesBuilt); - // finalization messages time := (Now - time) * 86400; patch.dateBuilt := Now; @@ -788,15 +720,12 @@ procedure BuildPatch(var patch: TPatch); Tracker.Write(Format('Failed to patch %s, %s', [patch.Name, x.Message])); end; end; - // clean up TryToFree(pluginsToPatch); TryToFree(recordsList); end; - procedure RebuildPatch(var patch: TPatch); begin BuildPatch(patch); end; - end. From a9d3872c5ba41a76a9f0cf019b91a79841324ab4 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 3 Oct 2021 15:48:48 -0400 Subject: [PATCH 75/76] Add smashGhosts setting --- frontend/msConfiguration.pas | 1 + frontend/msLoader.pas | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/frontend/msConfiguration.pas b/frontend/msConfiguration.pas index a708174..b720ab8 100755 --- a/frontend/msConfiguration.pas +++ b/frontend/msConfiguration.pas @@ -41,6 +41,7 @@ TSettings = class(TObject) preserveTempPath: boolean; allowTagging: boolean; flagESL: boolean; + smashGhosts: boolean; multiThreadedSmash: boolean; smashSound: boolean; [IniSection('Patching')] diff --git a/frontend/msLoader.pas b/frontend/msLoader.pas index fe0414d..7831c92 100755 --- a/frontend/msLoader.pas +++ b/frontend/msLoader.pas @@ -567,7 +567,8 @@ procedure ProcessAsterisks(var sl: TStringList; index: integer; if s[1] <> '*' then begin if not noDelete then - sl.Delete(index); + if not (settings.smashGhosts and s.EndsWith(csDotGhost)) then + sl.Delete(index); end else sl[index] := Copy(s, 2, Length(s)); From c19b8357ecb8a1df79e8201cfa03ac52961daa01 Mon Sep 17 00:00:00 2001 From: chuck <> Date: Sun, 3 Oct 2021 16:52:25 -0400 Subject: [PATCH 76/76] stuff --- frontend/MatorSmash.dproj | 215 +++++++++++++++++++++++++++++++++++++- frontend/MatorSmash.res | Bin 4812 -> 6852 bytes frontend/msSmashForm.dfm | 8 -- 3 files changed, 211 insertions(+), 12 deletions(-) diff --git a/frontend/MatorSmash.dproj b/frontend/MatorSmash.dproj index 3a1caad..d62cda5 100755 --- a/frontend/MatorSmash.dproj +++ b/frontend/MatorSmash.dproj @@ -3,12 +3,12 @@ {12317C9C-736E-45A4-8CB7-E43FF92DD93C} MatorSmash.dpr True - Debug + Release Application VCL DCC32 - 18.8 - Win32 + 19.2 + Win64 3 Win32 @@ -297,7 +297,7 @@ True True - True + False @@ -473,6 +473,16 @@ 1 + + + res\drawable-xxxhdpi + 1 + + + res\drawable-xxxhdpi + 1 + + res\drawable-ldpi @@ -703,6 +713,32 @@ 0 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + 1 @@ -802,6 +838,16 @@ 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + 1 @@ -813,6 +859,66 @@ 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + 1 @@ -912,6 +1018,16 @@ 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + 1 @@ -923,6 +1039,16 @@ 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + 1 @@ -967,6 +1093,86 @@ 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + + ..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset + 1 + + 1 @@ -988,6 +1194,7 @@ + 1 diff --git a/frontend/MatorSmash.res b/frontend/MatorSmash.res index 301cacb75cbb7803c72cf30bf147552873f0345b..fd692260f965d33db6a340dde50181913d0b0c63 100755 GIT binary patch delta 2171 zcmbtVUvJ|?5Z_dXAiX;TJRx{sG4O)4{%^;wlAg-_5fKzB+Uq^9z2nrv_8PB~HiE++ zfETKJ=S%Pvc;uDObBvwDx!$z`-6is7cV>2eGryT}{{G@G?{})**&&1yLY_Z=51#?< z2rf)$QRn#Di_hK~Tnujg z`Rm}__nX^qZ)p4QTH4071 zyWiR@oEyAsoj4joQ;Ohdy~oQkOJiPR==&(`<>zT3nZ(s3T5535CE4FV{{sg8E=x&pww;fv0F* zr}eU9xMjIsme>dg>)2W^EO?H>!%gA!6={vq@5?-w1-mbcx{{gN-sqdo*Uk33)s*uH z>-r5WPvnn)UFmzF7x}K`x^bLXBH3DIyqL}T43WRw3d>5y$darMswO^5Yl!Q4)tML@ z=B~{eN#3&4v4w?J^|VOjreUsa@+O%$byh6^Jp3Mq=nq%vOII7Y`n!ybEw#3Hl zwGS`wX4}x;!UD3MT}rd|JkhwC77Jvh+NMkCJUxipj3-*cGX-0fvBfufh?fHx8=Gj` zV8=$EbUWoZ2qg|!lxCRCf3tAK9B01K_UYZ-;rPW#Z3V;er;MGP0i8ae5oGe5;*7PU z42q&HRr9ixRZSCF(e?Pz(-hxBlrano@2@RDe1A-*Vxs*FwrN?eH)59O`pk7=k8!U_ zfSG0>0KgGWVm{T3E}+-JAKi@Yc$O1HA!nWl5j%+l3&0kPH@54Vw(TXM!&~gvOg*?6 z+U0g)2jDQzi9+VOuEioA#!UF3aCzf$ADrM#pmpnJa4YdgemwG7V1mV5+X)#?YQzFZ zn29e;(eTlmfLrFx*a4Wyh+8&`lE^{MAz)YmkGVl2Jd;}<5Bbv&IUf#(Z3`MN_2AgJ U(yVQ><6Cp}pN5BLzkP7u?d4KgUMu3MrB?@20aENAT|Ku$rl+b7